版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、.電力系統(tǒng)交流二次回路絕緣監(jiān)測裝置(I)設(shè)計(jì)者情況比賽編號:_A11438_日期: 2002/10/07 首名設(shè)計(jì)者為聯(lián)絡(luò)代表人。姓名: 侯玉星(中文)Hou Yu Xing (英文)職業(yè):硬件工程師姓名: 楊 宇(中文)Yang Yu (英文)職業(yè):碩士研究生姓名: 鄭 擘(中文)Zheng Bo (英文)職業(yè):軟件工程師姓名: 牛志剛(中文)Niu Zhi Gang(英文)職業(yè):碩士生導(dǎo)師通訊地址:山西太原營西街18號 郵編:030009 電子郵箱:hou_yx電話傳真8017推派單位名稱:山西晉能集團(tuán)、上海電力學(xué)院單位地址:山西太原營
2、西街18號單位電話:8008 單位傳真8017目錄1 引言42 系統(tǒng)概述52.1 交流二次回路絕緣監(jiān)測裝置的工作原理:52.2 特點(diǎn)62.3 裝置外觀簡介63 系統(tǒng)硬件結(jié)構(gòu)103.1 主控模塊-MCU103.2 電源與外部晶振103.3 信號產(chǎn)生電路113.4 電壓,電流采集回路113.5 時(shí)鐘芯片123.6 網(wǎng)絡(luò)接口123.7 打印接口123.8 顯示模塊123.9 鍵盤電路133.10 液晶背光133.11 看門狗電路133.12 開入、開出電路133.13 抗干擾措施134 系統(tǒng)軟件結(jié)構(gòu)154.1 軟件結(jié)構(gòu)154.2 軟件模塊功能1
3、84.3 中斷服務(wù)程序184.4 人機(jī)界面模塊184.5 網(wǎng)絡(luò)功能204.6 軟件優(yōu)化205 特殊算法說明225.1 傅氏算法225.2 求有功分量和電阻分量算法235.3 快速開方算法26電力系統(tǒng)交流二次回路絕緣監(jiān)測裝置侯玉星 楊 宇 鄭 擘 牛志剛山西晉能集團(tuán)、上海電力學(xué)院摘要:二次系統(tǒng)對保證電力生產(chǎn)安全及向用戶提供高質(zhì)量的電能起著極為重要的作用,但目前尚沒有一種能在線監(jiān)測交流二次回路是否存在多點(diǎn)接地的在線監(jiān)測裝置。本文研制的RSJ820交流二次回路絕緣監(jiān)測裝置能有效的防止交流二次回路發(fā)生多點(diǎn)接地,提高了電網(wǎng)的安全與穩(wěn)定,填補(bǔ)了電網(wǎng)二次回路缺乏絕緣監(jiān)測的空白。經(jīng)過現(xiàn)場試運(yùn)行,表明了RSJ8
4、20達(dá)到了設(shè)計(jì)目的,能滿足實(shí)際運(yùn)行需要。關(guān)鍵詞:電力系統(tǒng);二次回路;絕緣監(jiān)測 1 引言電力系統(tǒng)的二次回路對保障電力系統(tǒng)的安全運(yùn)行起著非常重要的作用。系統(tǒng)正常運(yùn)行情況下,為了保證人身和設(shè)備的安全,電力作業(yè)現(xiàn)場安全規(guī)程規(guī)定電流互感器、電壓互感器二次回路的一個(gè)電氣連接必須有一個(gè)可靠的接地點(diǎn)。同時(shí)為了保證繼電保護(hù)和自動(dòng)裝置的正確工作,一個(gè)電氣連接的二次回路又只能存在一個(gè)接地點(diǎn)。但是,大型電廠和變電站電流和電壓二次回路連接設(shè)備繁多,延伸范圍廣,常常由于人為的接線錯(cuò)誤或一些不可避免的自然規(guī)律,如絕緣的老化等,出現(xiàn)在一個(gè)電氣連接的二次回路中出現(xiàn)多點(diǎn)接地,而且系統(tǒng)的二次回路大部分在室外,絕緣損壞的幾率大,多點(diǎn)
5、接地導(dǎo)致保護(hù)的不正確動(dòng)作,造成大面積停電事故的在系統(tǒng)屢屢發(fā)生。 目前電力系統(tǒng)缺少一種能在線監(jiān)測二次交流電壓回路中性線發(fā)生兩點(diǎn)接地或各種差動(dòng)電流回路發(fā)生兩點(diǎn)接地的在線監(jiān)測裝置,在這種情況下,二次回路一旦發(fā)生兩點(diǎn)接地,由于不能被及時(shí)發(fā)現(xiàn),當(dāng)一次接地系統(tǒng)發(fā)生接地故障時(shí),短路電流就可能流過變電所地網(wǎng),在二次兩接地點(diǎn)間形成電位差,造成了保護(hù)裝置的不正確動(dòng)作,如圖1所示。這類事故在歷年來的電網(wǎng)安全事故通報(bào)上屢見不鮮,給系統(tǒng)造成嚴(yán)重的后果,導(dǎo)致電網(wǎng)出現(xiàn)大面積停電的惡性事故。該產(chǎn)品可解決電力系統(tǒng)中長期困擾人們的交流二次回路多點(diǎn)接地問題,能夠及時(shí)發(fā)現(xiàn)交流二次回路的多點(diǎn)接地,避免了因交流二次多點(diǎn)接地造成的保護(hù)誤動(dòng)
6、和拒動(dòng),提高了電網(wǎng)的安全運(yùn)行,填補(bǔ)了交流二次回路缺乏絕緣監(jiān)測裝置的空白,有著廣闊的市場前景。2 系統(tǒng)概述2.1 交流二次回路絕緣監(jiān)測裝置的工作原理:鑒于目前電網(wǎng)二次系統(tǒng)缺乏絕緣監(jiān)測的現(xiàn)狀,我們認(rèn)為有必要在交流二次回路中安裝絕緣監(jiān)測裝置。如圖2所示,在原二次回路一點(diǎn)接地處使用互感器向回路中注入一個(gè)低壓信號,定時(shí)巡檢,如回路發(fā)生多點(diǎn)接地,就可檢測到回路中有電流流過。在實(shí)際裝置中,我們可以通過定時(shí)向被檢測回路注入低壓信號,然后測量注入信號的電壓和回路中的電流大小,從而獲得被測回路的絕緣電阻值。為了保證裝置的接入,對原回路的工作不造成任何影響,在裝置的接口處用兩對繼電器的常閉接點(diǎn)與裝置并接,相當(dāng)于正常
7、運(yùn)行中,裝置并未接入原回路,只有在裝置巡檢期間,繼電器J的常閉接點(diǎn)才打開,將該裝置短時(shí)接入原交流回路中。裝置的工作方式可由用戶根據(jù)實(shí)際運(yùn)行情況通過人機(jī)界面軟件設(shè)定,用戶可選擇連續(xù)兩次自動(dòng)巡檢的間隔時(shí)間、每次巡檢的持續(xù)時(shí)間、接地電阻報(bào)警值、是否記錄手動(dòng)檢測報(bào)告等工作方式。2.2 特點(diǎn)l 在國內(nèi)首次將MOTOROLA公司16位MCU MC68HC912DG128A用于電力系統(tǒng)自動(dòng)裝置中,該芯片內(nèi)配置有大容量的程序存儲器、RAM和EEPROM,具有極強(qiáng)的數(shù)據(jù)處理、邏輯運(yùn)算和信息存儲能力。MCU工作在Single_Chip模式下,數(shù)據(jù)或地址總線不引出MCU,因此在穩(wěn)定性、抗干擾性、可靠性等方面有良好的
8、表現(xiàn)。l 免調(diào)試?yán)砟睿籽b置中不設(shè)計(jì)任何硬件調(diào)整器件,所有的調(diào)整均通過軟件來實(shí)現(xiàn),在抗振動(dòng)方面的性能突出,非常適合現(xiàn)場就地安裝。l 全漢化的液晶顯示、打印界面。l 6鍵操作,簡潔方便。l 良好的圖標(biāo)化人機(jī)界面,操作極其簡單方便,一般專業(yè)人員無需說明書即可正確操作裝置。l 定值以漢字表格方式輸出,非常適合定值整定部門和現(xiàn)場人員使用。 l 裝置具有232串行接口和CAN現(xiàn)場總線接口,適合組網(wǎng)運(yùn)行或獨(dú)立連接打印機(jī)運(yùn)行。l 軟件可調(diào)液晶背光,對比度,延長液晶使用壽命。l 可按時(shí)間順序存儲最新的32次報(bào)告,并且報(bào)告及時(shí)鐘掉電不丟失。l 具有比較完善的軟件,硬件自檢功能,能有效地檢測出片內(nèi)各存貯單元、片
9、外的時(shí)鐘芯片、AD采樣電路等異常情況或軟件異常時(shí)都能可靠發(fā)出告警信號。2.3 裝置外觀簡介裝置面板由液晶、按鍵、指示燈、復(fù)歸按鈕和電源開關(guān)組成,用來實(shí)現(xiàn)人機(jī)對話及指示裝置的工作狀態(tài)。面板布置如圖3所示。圖 3 裝置面板布置圖 山西省晉能集團(tuán)有限公司運(yùn) 行復(fù)歸 RSJ820 交流電壓電流二次回路絕緣監(jiān)測及保安裝置裝置異常巡檢指示接地信號電源 裝置背板設(shè)計(jì)如圖4所示,主要包括RS-232和CAN通訊插頭、電源端子、開入開出端子以及CPU插件和電源插件。端子排 端子排2RS-2321CAN電源插件CPU插件圖 4 裝置背板示意圖端子排1的說明如下表所示:序號功能1220V+23220V-4JKD5開
10、入4-信號復(fù)歸6開入37開入28開入19開入公共端10裝置異常11接地信號12信號公共端 端子排1端子排1的說明如下表所示:序號123456789101112功能GN600(N310) 端子排2LCD的菜單是人機(jī)界面的主要組成部分,菜單使用全中文,菜單中列出了我們設(shè)計(jì)要實(shí)現(xiàn)的具體功能,如圖5所示。一級菜單 二級菜單 三級菜單 運(yùn)行主畫面 手動(dòng)檢測 報(bào)告顯示 顯示檢測報(bào)告 顯示異常報(bào)告 打印檢測報(bào)告 時(shí)鐘調(diào)整 幫 助 關(guān)于圖標(biāo) 服務(wù)信息 版本信息 調(diào)試狀態(tài) 采樣測試 定值顯示 定值修改 報(bào)告管理 密碼管理 出口傳動(dòng) 背光調(diào)整 通訊地址圖 5 菜單結(jié)構(gòu)示意圖3 系統(tǒng)硬件結(jié)構(gòu)3.1 主控模塊-MCU
11、如圖6所示,為RSJ820的交流二次絕緣監(jiān)測裝置硬件框圖。交流二次回路絕緣監(jiān)測裝置主要由四部分組成:(1)電源;(2)輸入、輸出;(3)MCU單元;(4)測量部分和功率注圖6 RSJ820交流二次絕緣監(jiān)測裝置硬件框圖模擬量開入低通濾波MC912DG128AASCI 1CANSCI 2SPIIICPWMA口串口打印機(jī)外部看門狗12位AD備用硬時(shí)鐘CAN通訊串行通訊人機(jī)界面鍵盤人機(jī)界面LCDK口I/O口AD光電隔離B口I/O口I/O口D/A轉(zhuǎn)換放大輸出發(fā)信、報(bào)警入部分。MCU部分采用的MOTOROLA 公司的16位單片機(jī)MC68HC912DG128A,內(nèi)含128K FLASH,8K RAM。16位
12、MCU是裝置的核心,開發(fā)中充分利用MC68HC912DG128A集成度高、模塊功能強(qiáng)的優(yōu)點(diǎn),裝置的軟件存放在片內(nèi)大容量FLASH EEPROM,片內(nèi)RAM存放實(shí)時(shí)數(shù)據(jù)、程序中變量等,E2PROM內(nèi)存放定值。數(shù)據(jù)、地址總線不引出MCU,具有良好的抗干擾性能,而且A口、B口可用來擴(kuò)展并行接口的設(shè)備,如LCD和D/A轉(zhuǎn)換。IIC口驅(qū)動(dòng)時(shí)鐘芯片,時(shí)鐘芯片帶有后備電池,供CPU讀取日期、時(shí)間。使用K口驅(qū)動(dòng)鍵盤, SPI口外接12位AD轉(zhuǎn)換,作為需要較高測量精度的備用AD,在RSJ820中沒有使用。SCI可用來驅(qū)動(dòng)通訊和打印,CAN口也適合于作通訊使用,通過通訊功能可實(shí)現(xiàn)遠(yuǎn)方對定值修改和對回路巡檢,增強(qiáng)的
13、定時(shí)器模塊可用來產(chǎn)生能精確到微秒級的中斷,PWM驅(qū)動(dòng)LCD的背光,同時(shí)使用內(nèi)部和外部兩級看門狗確保裝置正常運(yùn)行。3.2 電源與外部晶振電源是整個(gè)裝置提高抗干擾能力的關(guān)鍵模塊,選用內(nèi)阻抗小,輸出電壓平穩(wěn)的優(yōu)質(zhì)電源,能極大的提高裝置工作的可靠性。MCU單元使用正5伏供電,繼電器使用24伏供電,AD部分使用獨(dú)立電源,確保AD精度,減少由于電源干擾造成的AD誤差。所有電源都進(jìn)出線加裝有磁珠,增強(qiáng)抗干擾能力。晶振使用高精度一體化晶體,確保軟時(shí)鐘和定時(shí)器的精度。3.3 信號產(chǎn)生電路交流二次回路絕緣監(jiān)測裝置中,需要產(chǎn)生一個(gè)信號從二次回路接地點(diǎn)G注入二次回路,通過監(jiān)測回路電流的大小判斷是否發(fā)生了多點(diǎn)接地。在裝
14、置中注入的信號采用了一個(gè)低壓的正弦信號。圖 7通過DA數(shù)模轉(zhuǎn)換產(chǎn)生正弦波也是軟件產(chǎn)生正弦波的一種常見方法。如圖7,MCU通過數(shù)據(jù)接口和控制總線,按正弦波形輸出相應(yīng)的數(shù)據(jù)到DA轉(zhuǎn)換,DA轉(zhuǎn)換將輸入的數(shù)據(jù)變換成對應(yīng)的電平輸出。如果需要輸出的正弦波周期為T,幅值為U,DA轉(zhuǎn)換使用8位DA 轉(zhuǎn)換,MCU每個(gè)周期向DA轉(zhuǎn)換送256個(gè)數(shù)據(jù),則MCU送入DA的第個(gè)數(shù)據(jù)可用公式1計(jì)算出后取整得到。1 通過實(shí)驗(yàn)證明波形精度滿足裝置要求。波形的幅值調(diào)整可以通過調(diào)整送入DA轉(zhuǎn)換中的數(shù)據(jù)來改變,波形的頻率調(diào)整也可以通過送入DA轉(zhuǎn)換數(shù)據(jù)的間隔來改變。幅頻調(diào)整的范圍基本滿足裝置要求,而且所有的幅頻調(diào)整都可通過軟件進(jìn)行調(diào)整
15、,方便了現(xiàn)場的使用。3.4 電壓,電流采集回路 裝置使用MC912DG128A的片內(nèi)十位AD對電壓電流的進(jìn)行采樣。上文提到的信號產(chǎn)生回路中所產(chǎn)生的低壓的信號,在注入到被巡檢回路中后,由裝置中的電壓互感器和電流互感器在不改動(dòng)原回路的基礎(chǔ)上進(jìn)行間接測量,然后經(jīng)過必要的低通濾波及放大回路,送入AD采樣。3.5 時(shí)鐘芯片 采用具有IIC接口的高精度時(shí)鐘芯片PCF8583,有效的節(jié)省了MCU的口線資源。同時(shí)時(shí)鐘芯片備有后備電池,在裝置斷電時(shí),仍可正常工作。具體硬件如圖8虛線框中所示:圖 83.6 網(wǎng)絡(luò)接口 裝置提供RS232及CAN現(xiàn)場總線網(wǎng)絡(luò)接口。分別使用MC912DG128A的SCI和MSCAN模塊
16、配以相應(yīng)的外圍電路構(gòu)成。RS232及CAN總線都是在現(xiàn)場使用十分廣泛的兩種網(wǎng)絡(luò)接口,其具有抗干擾能力強(qiáng),傳輸速率快等優(yōu)點(diǎn)。3.7 打印接口 裝置具有在線打印功能,從后背板的RS232接口上連接串行打印機(jī)可打印定值單及檢測報(bào)告。3.8 顯示模塊 裝置采用全漢化、圖標(biāo)式顯示界面,為現(xiàn)場運(yùn)行人員提供了良好的人機(jī)界面。液晶背光軟件可調(diào),有利于延長液晶壽命。所有的信息均顯示在前面板的大屏幕液晶(LCD)上,方便人機(jī)對話。3.9 鍵盤電路鍵盤采用常用的六鍵操作,方便簡潔。使用DG128A提供的K口其中的6根口線,為確??煽啃裕獠咳允褂昧松侠娮?,采用低電平觸發(fā)方式。在MCU中屏蔽K口相應(yīng)口線的中斷標(biāo)志,
17、通過在主程序循環(huán)中檢測相應(yīng)的標(biāo)志位,確認(rèn)相應(yīng)的鍵是否按下,然后跳轉(zhuǎn)到相應(yīng)的處理程序執(zhí)行。3.10 液晶背光為滿足不同場合的需求,同時(shí)增加液晶的壽命,交流二次回路絕緣檢測裝置中,液晶背光及對比度軟件可調(diào)。在裝置中使用PWM模塊產(chǎn)生占空比可調(diào)的PWM波形,然后通過相應(yīng)的整形和濾波電路,輸出到液晶模塊。通過軟件改變PWM的占空比,從而實(shí)現(xiàn)液晶背光、對比度的調(diào)節(jié)。具體操作中可通過裝置面板的按鍵,方便地調(diào)節(jié)液晶的對比度和背光亮度。3.11 看門狗電路交流二次回路絕緣檢測裝置中同時(shí)使用了外部看門狗電路和DG128A片內(nèi)本身提供的看門狗,確保裝置可靠運(yùn)行,最大可能的避免裝置發(fā)生死機(jī)現(xiàn)象。片內(nèi)看門狗通過查詢是
18、否定時(shí)在確定的地址寫入相應(yīng)的數(shù)據(jù),確保實(shí)時(shí)數(shù)據(jù)處理部分正常運(yùn)行,否則程序重新跳轉(zhuǎn)到復(fù)位向量處執(zhí)行。片外看門狗通過查詢相應(yīng)輸出端口是否有實(shí)時(shí)數(shù)據(jù)中斷服務(wù)程序送出交替變化的電平,否則將MCU的RESET端口下拉至低電平,使復(fù)位整個(gè)系統(tǒng)。3.12 開入、開出電路交流二次回路絕緣檢測裝置的主要開入有信號復(fù)歸開入,開出有信號和告警開出。所有的開入和開出都使用單獨(dú)的I/O口線,保證了開入、開出的可靠性。為了提高裝置的抗干擾能力,所有的開入和開出回路都設(shè)有光電隔離。具體硬件實(shí)現(xiàn)電路如圖9所示。3.13 抗干擾措施目前在電子和電氣設(shè)備中,電磁兼容性已成為設(shè)備投入市場和運(yùn)行最基本的要求,不同的國家和地區(qū)都有其各
19、自的標(biāo)準(zhǔn)。提高設(shè)備的電磁兼容性是保證設(shè)備正常運(yùn)行和正確動(dòng)作的基本條件,作為電力行業(yè)的自動(dòng)裝置,RSJ820通過電力設(shè)備儀表檢測中心的抗干擾測試。(1) 提高系統(tǒng)電磁兼容性硬件方法提高系統(tǒng)的電磁兼容性可從硬件和軟件的兩方面著手解決:硬件方面我們主要采用了印刷電路版的布線、電源供電方案、接地的選擇和可靠屏蔽等方法。1)器件的合理布局是印刷電路板布線的核心內(nèi)容。在印刷電路版布線過程中首先處理重要單元和高頻部分,振蕩器是主要的射頻干擾源,布線時(shí)盡可能將振蕩器靠近MCU的輸圖 8入管腳。在振蕩器周圍形成地環(huán),減少的電磁輻射。同時(shí)避免高頻信號靠近振蕩器。使用表貼元件,減小導(dǎo)體的表面積。使用多層印刷電路版工
20、藝,能提供較多的電源點(diǎn)和接地點(diǎn),還能大大降低電源的內(nèi)阻抗。使用單片模式,避免數(shù)據(jù)總線和地址總線引出CPU。對模擬部分和數(shù)字部分進(jìn)行隔離,避免模擬與數(shù)字互相串?dāng)_。2)合理、正確的接地方法是抗干擾的有效方法。為了有效抑制共模干擾,裝置內(nèi)部的零電位全部浮空,不與屏蔽地相連,并盡量提高屏蔽零電位與工作零電位之間的絕緣,當(dāng)共模干擾侵入時(shí),系統(tǒng)各點(diǎn)對屏蔽地電位一起浮動(dòng),而各個(gè)器件間的相互電位保持不變,能得到較好的效果。根據(jù)頻率的高低對低頻部分一點(diǎn)接地,高頻部分多點(diǎn)接地,對數(shù)字地、模擬低分別一點(diǎn)接地。屏蔽和隔離也是防止電磁干擾的重要手段,對MCU板和電源板隔離,并在其間用金屬板屏蔽,使用金屬機(jī)箱都能有效提高
21、裝置整體的抗干擾能力。3)電源供電方面提高電磁兼容性可采用的方法主要有:單獨(dú)供電的交流電源。交流電源進(jìn)入裝置前應(yīng)首先經(jīng)過低通濾波和隔離變壓器,可吸收電網(wǎng)中的大部分毛刺。正負(fù)5V工作電源進(jìn)入PCB前加裝磁珠,每一個(gè)電源引入口線使用高頻特性好、電感小的陶瓷去耦電容,它一方面能旁路該器件的高頻噪音,另一方面能為本集成電路的蓄能電容,提供和吸收該集成電路開門和關(guān)門的瞬間充放電能量。地線和電源線要盡量加寬 ,以消除其電阻耦合。對于大功率器件可單獨(dú)供電??蓪㈦娫床糠职才旁谝粋€(gè)單獨(dú)的PCB版上。4)MCU管腳中復(fù)位引腳和外部中斷引腳是容易受干擾的部分,正常運(yùn)行時(shí)通過上拉或下拉電阻將它們固定在需要的電平值。在
22、系統(tǒng)初始化加電時(shí),通過上拉或下拉電阻將輸出或輸入口線的電平固定在確定的電平值,防止裝置誤動(dòng)。使用上拉或下拉電阻避免信號線浮空。避免易受干擾信號與大電流、快速瞬變信號平行布線。對所有進(jìn)入印刷電路版的電源和信號全部進(jìn)行濾波。5)模擬量的輸入都經(jīng)過模擬低通濾波,有效消除差模干擾。數(shù)字開入量都經(jīng)過光電隔離措施。(2)提高系統(tǒng)電磁兼容性軟件方法良好的硬件設(shè)計(jì)是抗干擾措施的第一道防線,但是在一些偶然因素下它仍可能侵入CPU,導(dǎo)致軟件工作不正常,甚至誤動(dòng),因此軟件設(shè)計(jì)中的抗干擾措施同樣重要。1)根據(jù)輸入模擬量之間的規(guī)律對不良數(shù)據(jù)進(jìn)行剔除。這種輸入量的冗余還可檢查數(shù)據(jù)采集系統(tǒng)的硬件損壞故障。2)對某一物理量同
23、一點(diǎn)進(jìn)行冗余采樣,取其平均值來進(jìn)行計(jì)算消弱不良數(shù)據(jù)對計(jì)算結(jié)果的影響。3)看門狗電路有MCU片內(nèi)和MCU片外兩級確保裝置正常工作。如果程序不能定時(shí)刷新相應(yīng)的存儲器或定時(shí)交替輸出高低電平,則復(fù)位系統(tǒng)。4)對于RAM中的重要數(shù)據(jù)采用冗余存儲的方法來防止干擾對數(shù)據(jù)的破壞。對于重要數(shù)據(jù)同時(shí)在RAM中不同區(qū)域存放多個(gè)備份,使用數(shù)據(jù)前首先檢查它們內(nèi)容是否相同。如果發(fā)現(xiàn)錯(cuò)誤可將不良數(shù)據(jù)剔除或通過備份的多塊數(shù)據(jù)進(jìn)行不良數(shù)據(jù)辨別。5)繼電保護(hù)裝置中定值一般存放EEPROM,如果因?yàn)楦蓴_破壞了EEPROM中的數(shù)據(jù),將對裝置的正確動(dòng)作構(gòu)成了很大的威脅,為保證EEPROM中的數(shù)據(jù)不被破壞,可存放多個(gè)備份并對EEPROM
24、中的數(shù)據(jù)是否被破壞做在線自檢,發(fā)現(xiàn)問題立即閉鎖出口并報(bào)警。4 系統(tǒng)軟件結(jié)構(gòu)4.1 軟件結(jié)構(gòu)在程序結(jié)構(gòu)安排上,我們把采樣計(jì)算、軟時(shí)鐘計(jì)數(shù)、正弦信號產(chǎn)生等對實(shí)時(shí)性要求較高的部分放在中斷服務(wù)程序中來處理;而諸如按鍵處理、顯示處理、打印服務(wù)等對實(shí)時(shí)性要求不高的部分放在主程序中來處理。定時(shí)器0中斷設(shè)置為MCU中的最高級別的中斷,定時(shí)向DA轉(zhuǎn)換送入數(shù)據(jù),發(fā)生正弦波,通過變壓器向二次回路注入低壓信號,其流程圖如圖10。定時(shí)器1中斷,主要完成數(shù)據(jù)的采集、實(shí)時(shí)數(shù)據(jù)處理和判斷接地電阻大小等任務(wù),它的優(yōu)先級僅低于定時(shí)器0中斷,其流程圖如圖11。主程序的軟件流程圖如圖12。裝置一經(jīng)通電或復(fù)位,首先進(jìn)行全面的靜態(tài)自檢,
25、如果自檢出某一插件出錯(cuò),則轉(zhuǎn)向自檢出錯(cuò)處理程序。靜態(tài)自檢通過后,進(jìn)行初始化程序。初始化程序包括保護(hù)用存儲器和I/O接口等的初始化。然后開中斷,允許DA產(chǎn)生波形程序和AD采樣功能程序以固定頻率周期性的執(zhí)行。 中斷返回定時(shí)器0中斷入口設(shè)置中斷計(jì)數(shù)器送入DA波形數(shù)據(jù)圖 10 正弦波產(chǎn)生流程圖設(shè)置中斷計(jì)數(shù)器數(shù)據(jù)窗內(nèi)數(shù)據(jù)已滿否計(jì)算接地電阻值報(bào)警,置新報(bào)告標(biāo)志計(jì)數(shù)器增1啟動(dòng)下次AD采樣接地電阻小于定值否定時(shí)器1中斷入口中斷返回圖 11AD采樣中斷流程圖YYNN圖12 主程序流程圖系統(tǒng)上電是否有新報(bào)告是否有復(fù)歸開入置巡檢標(biāo)志巡檢持續(xù)時(shí)間到否是否正在巡檢清除巡檢標(biāo)志按鍵是否按下按鍵處理靜態(tài)自檢、初始化是否與硬
26、時(shí)鐘校對時(shí)間對時(shí)處理存儲報(bào)告復(fù)歸處理YYYYYN巡檢間隔時(shí)間到否YYNNNNN液晶顯示處理4.2 軟件模塊功能軟件主要要完成了三部分的功能產(chǎn)生正弦信號、采集檢測信號量、人機(jī)界面等。它們分別對應(yīng)于定時(shí)器中斷0、定時(shí)器中斷1和主程序4.3 中斷服務(wù)程序中斷服務(wù)程序1中主要完成了二次回路信號的產(chǎn)生,這一功能主要通過定時(shí)器通道0定時(shí)向DA轉(zhuǎn)換送入輸入,再通過功率放大回路,向被測回路注入信號,定時(shí)器0通道在系統(tǒng)中具有最高級別的優(yōu)先級,從而保證了信號的精度。中斷服務(wù)程序2由定時(shí)器通道1產(chǎn)生,它主要完成了二次回路中電壓和電流信號的采集和運(yùn)算,它也是系統(tǒng)軟時(shí)鐘的時(shí)鐘源。它定時(shí)啟動(dòng)和讀取AD轉(zhuǎn)換的結(jié)果,再通過相
27、應(yīng)的算法,求解接地電阻的大小。作為軟時(shí)鐘的時(shí)鐘源,它利用定時(shí)器定時(shí)中斷特性,在中斷中利用累加器計(jì)時(shí),一定時(shí)間后,防止計(jì)時(shí)誤差過大,與硬時(shí)鐘校時(shí)。4.4 人機(jī)界面模塊本裝置采用LCD漢字點(diǎn)陣式液晶顯示器,6鍵操作,簡潔方便。通過DG128A的B口的8條口線作為數(shù)據(jù)線和K口的部分口線作為控制線,驅(qū)動(dòng)LED。顯示部分的功能主要在主程序中完成。采用64X128點(diǎn)陣,可顯示“8X8”字符8行,每行16個(gè);或顯示“16X16”漢字4行,每行8個(gè)漢字。在液晶顯示器內(nèi)部有顯示RAM區(qū),RAM中的每一位數(shù)對應(yīng)LCD屏上的一個(gè)點(diǎn)的亮、滅狀態(tài):“1”表示亮,“0”表示暗。我們將要用來顯示的字符或漢字的字模按順序預(yù)存
28、在一個(gè)以dat為后綴名的文件中(按數(shù)組存放),顯示時(shí)通過查找取得對應(yīng)的字模,送如顯示緩沖區(qū)。為了提高查找的速度,我們在這個(gè)過程中使用了二分查找法。 鍵盤采用6鍵操作,通過DG128A的H口驅(qū)動(dòng),屏蔽H口的中斷功能,通過在主程序中檢測相應(yīng)的標(biāo)志位是否設(shè)置來判斷鍵盤是否按下。鍵盤在單片機(jī)應(yīng)用系統(tǒng)中是一個(gè)很關(guān)鍵的部件,它能實(shí)現(xiàn)向計(jì)算機(jī)輸入數(shù)據(jù)、傳送命令等功能,是人工干預(yù)計(jì)算機(jī)的主要手段。前面已經(jīng)提到,在我們的裝置面板上共設(shè)置了六個(gè)按鍵,分別是上、下、左、右、確認(rèn)、取消。為此我們定義了六個(gè)枚舉類型的變量,KUP、KDOWN、KLEFT、KRIGHT、KENTER、KCANCEL分別與六個(gè)按鍵一一對應(yīng),
29、這六個(gè)變量的值是由于按鍵觸發(fā)而由硬件電路產(chǎn)生的,我們稱其為“鍵值”。此外,為了實(shí)際應(yīng)用中對顯示屏的刷新等的實(shí)現(xiàn),我們定義了另外幾個(gè)枚舉類型的變量:KBAK、KFOR、KSTART、KRETURN。由于,它們的值是由軟件來設(shè)置的,我們稱其為“擴(kuò)展鍵值”,簡稱為“擴(kuò)展值”。如圖13所示。鍵的閉合與否,反應(yīng)在電壓上就是呈現(xiàn)出高電平或低電平,如果高電平表示斷開的話,那么低電平則表示閉合,所以通過電平的高低狀態(tài)的檢測,便可確認(rèn)鍵按下與否。為了確保CPU對一次按鍵動(dòng)作只確認(rèn)一次按鍵,必須消除抖動(dòng)的影響。在實(shí)際的應(yīng)用中我們把按鍵當(dāng)作外部RAM某一工作單元的位來對待,通過讀片外RAM的方法,識別按鍵的工作狀態(tài)
30、。采用軟件消抖的方法,以查詢工作方式檢測各按鍵的狀態(tài)。當(dāng)有且僅有一鍵按下時(shí)才予以識別,如有兩個(gè)或多個(gè)鍵同時(shí)按下將不予以處理。定時(shí)掃描工作方式是利用單片機(jī)內(nèi)部定時(shí)器產(chǎn)生定時(shí)中斷,CPU響應(yīng)中斷后對鍵盤進(jìn)行掃描,并在有鍵按下時(shí)識別出該鍵并執(zhí)行相應(yīng)鍵功能程序。在單片機(jī)片內(nèi)RAM中設(shè)置兩個(gè)標(biāo)志位,第1個(gè)為去除抖動(dòng)標(biāo)志位K1ST,第2個(gè)為已識別完按鍵的標(biāo)志位K2CD。初始時(shí)將其均置為0,中斷服務(wù)的時(shí)候,首先判斷有無鍵閉合,如無鍵閉合,則K1ST、K2CD置0返回,如有鍵閉合,則檢查K1ST標(biāo)志。當(dāng)K1ST=0時(shí),表示還沒有進(jìn)行去除抖動(dòng)的處理,此時(shí)置K1ST=1,并中斷返回。因?yàn)橹袛喾祷睾笮杞?jīng)10ms才可
31、能再次中斷,相當(dāng)于實(shí)現(xiàn)了10ms的延時(shí)效果,因而程序中不再需要延時(shí)處理。當(dāng)K1ST=1時(shí),說明已經(jīng)完成了去除抖動(dòng)的處理,這時(shí)查K2CD是否為1,如不為1,則置1并進(jìn)行按鍵識別處理和執(zhí)行相應(yīng)按鍵的功能子程序,最后中斷返回。如果為1,則說明此次按鍵已作過識別處理,只是還沒釋放按鍵而已,中斷返回。當(dāng)按鍵釋放后,K1ST和K2CD將置為初始的0狀態(tài),為下次按鍵識別作好準(zhǔn)備。鍵盤處理子程序框圖 讀取按鍵值是否有按鍵Inkey=鍵值結(jié) 束Y計(jì) 數(shù)Inkey=擴(kuò)展值N圖 13 4.5 網(wǎng)絡(luò)功能交流二次回路絕緣監(jiān)測裝置提RS232和CAN2.0A/B供兩種不同的網(wǎng)絡(luò)接口,它們分別由DG128A的SCI和CAN
32、口驅(qū)動(dòng),在實(shí)際中只需提供相應(yīng)的協(xié)議,即可組網(wǎng)運(yùn)行。4.6 軟件優(yōu)化在嵌入式系統(tǒng)中,實(shí)時(shí)性是一個(gè)核心問題,所以程序的執(zhí)行速度是衡量一個(gè)嵌入式實(shí)時(shí)系統(tǒng)優(yōu)劣的一項(xiàng)重要指標(biāo)。在給定硬件條件下,影響軟件運(yùn)行運(yùn)行速度首要問題是軟件所使用的數(shù)據(jù)結(jié)構(gòu)和算法,然而針對計(jì)算機(jī)語言和應(yīng)用程序本身固有的一些特點(diǎn)對軟件的性能改善也能起到很大的作用。在目前嵌入式系統(tǒng)中為了提高編程的效率和程序的可移植性、可讀性,基本上都采用的C/C+內(nèi)嵌匯編的編程方法。下文在基于當(dāng)前編程普遍采用C/C+內(nèi)嵌匯編的基礎(chǔ)上,簡要介紹本裝置中采用的和將要采用的一些優(yōu)化方法。(1)基本優(yōu)化方法。程序調(diào)試完成后,生成實(shí)用代碼時(shí),關(guān)閉編譯器調(diào)試信息選
33、項(xiàng),采用編譯器優(yōu)化選項(xiàng),刪除調(diào)試時(shí)用到的變量和函數(shù),這是程序優(yōu)化的基本步驟。在系統(tǒng)調(diào)試階段為了便于調(diào)試,編譯器生成代碼不經(jīng)過優(yōu)化,甚至可能在代碼中生成一些有關(guān)程序變量和語句的信息。這樣的代碼執(zhí)行速度慢、代碼長。在完成系統(tǒng)調(diào)試后,選擇編譯器中的優(yōu)化選項(xiàng)生成代碼,可使編譯器在生成代碼時(shí)自動(dòng)對源代碼進(jìn)行一定程度的優(yōu)化。(2)常用的一些優(yōu)化方法。1)利用查表、排序等方法提高程序中分支跳轉(zhuǎn)結(jié)構(gòu)的效率。在目前常用的MCU中跳轉(zhuǎn)是程序執(zhí)行中很費(fèi)時(shí)的一個(gè)部分,程序優(yōu)化時(shí)應(yīng)首先減少判斷語句,其次也應(yīng)對分支循環(huán)結(jié)構(gòu)進(jìn)行優(yōu)化。對于結(jié)構(gòu)比較有規(guī)律的switchcase或ifelse語句,可采用預(yù)先制作數(shù)組,在運(yùn)行時(shí)直
34、接從表中提取數(shù)據(jù),避免了判斷,對較大的分支結(jié)構(gòu)可采取多級查表的方法。在跳轉(zhuǎn)分支結(jié)構(gòu)中,可采用排序的方法,將跳轉(zhuǎn)頻率較高的分支放在靠近入口的位置,減少判斷次數(shù)。對for循環(huán)的改善,已知循環(huán)次數(shù)n后,最好將循環(huán)變量自減到0,不要將循環(huán)變量自增到n,因?yàn)樵贛C68HC912DG128A指令系統(tǒng)中,對循環(huán)變量自減后,可直接判斷循環(huán)變量是否已為0,無需再進(jìn)行比較操作。而將循環(huán)變量自增到n,每次除了將循環(huán)變量自增外,還需要將循環(huán)變量與n比較。對循環(huán)次數(shù)較多的for循環(huán)而言,使用自減的方法,可節(jié)省大量時(shí)間。2)函數(shù)和函數(shù)調(diào)用的優(yōu)化高級語言中較多的使用到函數(shù),程序中使用函數(shù)可提高程序的模塊化、移植性和可讀性,
35、但函數(shù)調(diào)用牽扯到局部變量的分配單元、保留現(xiàn)場、參數(shù)傳遞、返回等環(huán)節(jié),是一個(gè)比較占用時(shí)間的操作。利用宏定義或內(nèi)聯(lián)函數(shù),通過編譯器在函數(shù)調(diào)用處展開函數(shù)體來代替函數(shù)調(diào)用,占用了編譯時(shí)間,雖然也擴(kuò)大了代碼長度,但對調(diào)用頻繁、函數(shù)體較小的函數(shù),使用這種方法可明顯提高運(yùn)行速度。函數(shù)調(diào)用時(shí),減少函數(shù)間參數(shù)傳遞。函數(shù)參數(shù)的傳遞過程實(shí)際上就是在調(diào)用子程序時(shí)用實(shí)參對堆棧內(nèi)的虛參進(jìn)行初始化,在MC68HC912DG128A中,對棧內(nèi)的變量操作屬于變址尋址,較直接尋址費(fèi)時(shí),如果需要傳遞的參數(shù)較多的話,這一部分時(shí)間將是很費(fèi)時(shí)的。建議函數(shù)間需要傳遞參數(shù)時(shí),盡可能的使用全局變量或靜態(tài)變量,也可以直接傳送地址。(3)程序優(yōu)化
36、的一些其它方法。1)展開for循環(huán),把較小的for循環(huán)展開,利用順序執(zhí)行的語句代替循環(huán)語句,減少了循環(huán)和判斷的時(shí)間。在for循環(huán)足夠小時(shí),循環(huán)和判斷的時(shí)間在整個(gè)循環(huán)中占的比重較大時(shí),能很好的提高程序的執(zhí)行時(shí)間,但應(yīng)注意它可能使代碼增長。2)利用移位代替乘除操作,在MC68HC912DG128A中移位與乘法的時(shí)間差別不是很大,但與除法的時(shí)間相差較大,對于2整數(shù)倍的除法用移位的方法代替,能節(jié)省一定的時(shí)間。但程序中2的整數(shù)倍除法較少。3)在一些實(shí)時(shí)性要求特別高的場合為了兼顧程序的結(jié)構(gòu)化和效率,通常在C語言中內(nèi)嵌匯編語言,對程序中頻繁使用的代碼可使用匯編語言編寫。盡管目前一些嵌入式編譯系統(tǒng)能在程序編譯
37、時(shí)進(jìn)行大量的優(yōu)化,但它還是與匯編語言生成的代碼有一定差距。應(yīng)該注意到,使用匯編語言將會降低程序的結(jié)構(gòu)化和可讀性。4)用關(guān)鍵字register定義寄存器類型變量,一般地講,使用寄存器類型變量可減少代碼長度和提高運(yùn)行性能,寄存器變量無需在堆棧中分配空間,節(jié)省時(shí)間。程序優(yōu)化與一個(gè)好的數(shù)據(jù)結(jié)構(gòu)和軟件算法相比,雖不能大幅度的提高實(shí)時(shí)系統(tǒng)的效率,但在一定的數(shù)據(jù)結(jié)構(gòu)和算法的條件下,程序優(yōu)化卻是一個(gè)極其重要的方法。對一個(gè)優(yōu)秀的實(shí)時(shí)系統(tǒng)而言,必須從諸多的方面提高系統(tǒng)的實(shí)時(shí)性。5 特殊算法說明5.1 傅氏算法傅氏算法是采用正弦和余弦兩個(gè)正交函數(shù)作為樣品函數(shù),將正交樣品函數(shù)與待分析的時(shí)變函數(shù)進(jìn)行相應(yīng)的積分變換,以求
38、出與樣品函數(shù)頻率相同分量的實(shí)部和虛部系數(shù),進(jìn)而可以求出待分析的時(shí)變函數(shù)中該頻率的諧波分量的模值和相位。其基本原理如下:假定被采樣的模擬信號是一個(gè)周期性時(shí)間函數(shù),根據(jù)傅氏級數(shù)的概念,可將此周期函數(shù)分解為不衰減的直流分量和各整次諧波分量。其表達(dá)式為:2 式中,為自然數(shù),;分別為各次諧波正弦項(xiàng)和余弦項(xiàng)的振幅;為基波角頻率。如果要從信號中求出次諧波分量正弦項(xiàng)和余弦項(xiàng)的振幅,根據(jù)三角函數(shù)的正交性可得到:3 4從而可得: 令,則可得到基波分量,即:5合并公式5中正、余弦項(xiàng),可得到 :6 式中為基波分量有效值;為基波分量初相角。展開式4-6得到和同、之間的關(guān)系式:,所以可根據(jù)和求出有效值和相角:7 8傅氏算
39、法具有濾波特性,欲從信號中求出某次諧波的幅值和相位,就可用與待求信號頻率相同的正弦函數(shù)和余弦函數(shù)與待求信號相乘后,再在一個(gè)周期內(nèi)做積分就可求出虛部分量系數(shù)和實(shí)部分量系數(shù),然后用式7和8即可求出相應(yīng)諧波幅值及相角。5.2 求有功分量和電阻分量算法圖 14如圖14所示的電路為交流二次回路絕緣監(jiān)測裝置中實(shí)際測量接地電阻的等效電路。電壓和電流量通過AD轉(zhuǎn)換數(shù)字化后,再使用傅氏算法直接計(jì)算出了電壓的實(shí)部和虛部,間接計(jì)算出電流的實(shí)部和虛部。在求取待測電阻可使用公式9和10,其中 ,,910這樣在已知和時(shí),求解電阻Z還需要求解兩個(gè)正切反函數(shù)和一個(gè)余弦函數(shù),這將導(dǎo)致程序在一個(gè)中斷周期中無法完成所有計(jì)算工作。如果我們首先利用式11求出視在功率,然后再利用公式12求解,這樣在整個(gè)運(yùn)算過程中避免了復(fù)雜的三角函數(shù)運(yùn)算,只需進(jìn)行3次乘法運(yùn)算、一次加法和一次除法運(yùn)算,減小了運(yùn)算量,同時(shí)也提高運(yùn)算精度。11125.3 快速開方算法求一個(gè)數(shù)的平方根是繼電保護(hù)算法中常見的組成部分,但調(diào)用C語言本身提供的浮點(diǎn)庫函數(shù),不能滿足實(shí)時(shí)性的要求,而且過高的精度對于保護(hù)而言也沒有太大的意義。針對上述問題,并結(jié)合我們所使用的MCU的實(shí)際情況,找到了適合我們的解決方案,通過裝置的實(shí)際運(yùn)行檢測,證明是切實(shí)可行的。目前MCU
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職工業(yè)機(jī)器人技術(shù)應(yīng)用(機(jī)器人調(diào)試維護(hù))試題及答案
- 2025年大學(xué)一年級(機(jī)械電子工程)機(jī)電一體化基礎(chǔ)階段測試題及答案
- 2025年高職戲劇影視導(dǎo)演(導(dǎo)演技巧)試題及答案
- 2025年中職煙花爆竹生產(chǎn)與管理(生產(chǎn)操作基礎(chǔ))試題及答案
- 2025年中職藥物制劑(藥物制劑基礎(chǔ))試題及答案
- 2025年高職餐飲智能管理(餐廳運(yùn)營優(yōu)化)試題及答案
- 2025年中職第二學(xué)年(護(hù)理)傳染病護(hù)理測試題及答案
- 2025年大學(xué)大四(機(jī)械設(shè)計(jì))就業(yè)能力綜合測試卷
- 2025年中職現(xiàn)代農(nóng)業(yè)技術(shù)(現(xiàn)代農(nóng)業(yè)基礎(chǔ))試題及答案
- 2025年大學(xué)針灸推拿學(xué)(針灸推拿技巧)試題及答案
- 小區(qū)配電室用電安全培訓(xùn)課件
- 杭州余杭水務(wù)有限公司2025年度公開招聘備考題庫附答案詳解
- 鹿邑縣2025年事業(yè)單位引進(jìn)高層次人才備考題庫及答案詳解(新)
- 2025云南昆明巫家壩城市發(fā)展建設(shè)有限公司社會招聘14人筆試歷年難易錯(cuò)考點(diǎn)試卷帶答案解析
- 2025年大學(xué)(直播電商實(shí)訓(xùn))管理實(shí)操試題及答案
- 醫(yī)院重癥醫(yī)學(xué)科主任談重癥醫(yī)學(xué)治療
- 云南省2025年普通高中學(xué)業(yè)水平合格性考試地理試題
- 基礎(chǔ)土方回填施工工藝方案
- 2025年蘇州工業(yè)園區(qū)領(lǐng)軍創(chuàng)業(yè)投資有限公司招聘備考題庫及一套答案詳解
- 天一大聯(lián)考海南省2026屆數(shù)學(xué)高二上期末統(tǒng)考試題含解析
- DB50∕T 1803-2025 鄉(xiāng)村振興勞務(wù)品牌人員等級評定 武陵山縫紉工
評論
0/150
提交評論