基于A(yíng)VR微控制器的電力機車(chē)智能輔保系統的實(shí)現
2 系統的硬件和軟件設計
2.1 系統的硬件設計
系統主要由輸入調理電路、控制輸出部分及顯示電路、系統主控制電路組成。輸入信號的調理電路為系統主電路提供多路模擬量及數字開(kāi)關(guān)量輸入通道,設計中主要考慮了信號與現場(chǎng)的隔離和抗干擾。輸出電路完成對各電機接觸器及主接觸器的控制,即能對出現故障的電機實(shí)現一次保護或二次保護,并提供各通道電機故障的顯示,確保電機的安全。
圖1給出了系統的主電路組成圖。圖中所示的各路信號分別表示輸出通道、故障顯示通道、開(kāi)關(guān)數字量輸入通道及條件標志輸入通道。

2.2 系統的軟件設計
系統軟件采取模塊化結構,系統各任務(wù)模塊在功能上應盡量保持獨立。將各任務(wù)模塊放在時(shí)鐘中斷服務(wù)程序中執行,就可將系統各監測任務(wù)所需的各不相同的眾多故障持續延時(shí)時(shí)間轉化為執行頻率。
2.2.1 數據采集程序的設計
以通道0為例,系統利用其片內10位ADC進(jìn)行模擬量采集的軟件初化程序段如下:
.include 8535def.ine
.def count=r14
.def flag=r15
.def result=r16
.def temp=r17
.def ac_temp=r18
INIT:Idi AL,low(RAMEND)
Out SPL,AL
Idi AL,high(RAMEND)
out SPH,AL ;初始化堆棧指針
ldi count,3 ;設置采集點(diǎn)數
clr flag ;清采集標志
ldi ZL,$65
clr ZH ;設置外部SRAM數據緩區首址為$0065H
ldi result,$8d
out ADCSR,result ;設置ADEN=1,ADSC=0,ADFR=0,ADIF=0,ADIE=0
;設置ADPS2=1,ADPS=0,ADPS0=0
;使ADC預分頻器選擇分頻系數為16,設置ADC時(shí)鐘頻率為115kHz
sbi ADCSR,ADIE ;ADC中斷使能
ldi temp,$00 ;選擇PA0(模擬通道1)
out ADMUX,temp
sbi ADCSR,ADSC ;啟動(dòng)ADC轉換
中斷采集程序段如下:
ACONVERT:in ac_temp,SREG ;臨時(shí)保存狀態(tài)寄存器
in BL,ADCL
in BH,ADCH
andi BH,$03
st Z+,BL ;保存到數據緩沖區
st Z+,BH
dec cout ;采集點(diǎn)數到否?
breq ADC_a
sbi ADCSR,ADSC ;啟動(dòng)下一次A/D轉換
rjmp XX
ADC_a: ldi flag,$aa ;置采集結束標志
XX:out SREG,ac_temp ;恢復狀態(tài)寄存器
Reti
對A/D通道采集的模擬量數據采用防脈沖干擾的中值濾波法。
2.2.2 系統軟件的總體設計及實(shí)現
為了確保系統的實(shí)時(shí)性,系統的監測掃描時(shí)間片設為100ms。在SRA嶇設置標志及內部軟件計時(shí)器單元,通過(guò)設定各路計時(shí)單元及計時(shí)啟動(dòng)/結束標志,來(lái)解決出現短路、過(guò)流及單相故障的電機所需的各不同故障持續延時(shí)時(shí)間,對電機在不同過(guò)流范圍區段的不同故障持續延時(shí)時(shí)間也可正確區分并記錄。這樣系統就不會(huì )因某一任務(wù)的延時(shí)而影響對系統其它任務(wù)的檢測,實(shí)現了對各路電機監測的實(shí)時(shí)多任務(wù)處理。另外注意,對于與執行頻率無(wú)關(guān)的模塊則可放在主程序中執行。
.
圖2、圖3給出了T/C1定時(shí)中斷服務(wù)程序模式及主程序模塊的流程框圖。


該智能輔保系統樣機經(jīng)過(guò)現場(chǎng)調試,目前已投入運營(yíng)。實(shí)踐證明,系統穩定可靠,效果良好。
評論