CAN總線在變電站高壓開關柜在線檢測系統(tǒng)中的應用
為了進一步提高系統(tǒng)的抗干擾能力,在控制器SJA1000和收發(fā)器PCA82C250之間增加了由高速隔離器件6N137構成的隔離電路。
3.1.4單片機的選取
本裝置選用AT89C51作為處理器,AT89C51是ATMEL公司8位單片機,與MCS51完全兼容,內部集成有4Kbps的閃速E2PROM,工作頻率最高可達20MHZ.
3.1.5電平轉換芯片的選取
在CAN接口電路中,AT89C51芯片使用的是TTL電平,而從計算機串口輸出的是RS-232電平,因此要想計算機串口與單片機連接,必須進行電平轉換。MAXIM公司生產(chǎn)的MAX202芯片是在缺少±12V電源的情況下進行RS-232/TTL雙向電平轉換芯片,它的供電電源是單+5V,電平轉換的速度的最大值不小于120kbps. 為了使計算機的電源與CAN接口電路的電源互相不受干擾,我們還在MAX202與AT89C51之間采用光電耦合器,以達到電源隔離的目的。
3.1.6數(shù)據(jù)采集單元電路
采集單元電路一般由微處理器外加顯示鍵盤電路、模擬量輸入電路、開關量輸入輸出電路、CAN總線通訊接口電路、實時時鐘電路等組成。具體電路在此不詳細介紹了。
4.軟件設計
本系統(tǒng)采用C語言開發(fā)軟件。CAN總線各節(jié)點與AT89C51要有效,實時地完成數(shù)據(jù)通信,軟件的設計是關鍵,也是難點。它主要包括計算機串口通信程序、AT89C51通信程序、CAN節(jié)點初始化程序、CAN數(shù)據(jù)發(fā)送、接收程序以及CAN總線出錯處理程序等等。CAN控制器SJA1000的內部寄存器作為AT89C51芯片的片外寄存器,AT89C51和SJA1000之間進行狀態(tài)、控制和數(shù)據(jù)的交換都是通過SJA1000在復位模式或工作模式下對這些寄存器的讀寫來完成的。在初始化CAN內部寄存器時,注意使得各節(jié)點的位速率必須一致,而且接、發(fā)雙方必須同步。數(shù)據(jù)的接收主要有兩種方式:中斷和查詢接收方式。為提高通信的實時性,文中采用中斷接收方式,而且這樣也可保證接收緩存器不會出現(xiàn)數(shù)據(jù)溢出現(xiàn)象。下面給出SJA1OOO工作在Basic CAN模式下的初始化流程圖、數(shù)據(jù)接收的源程序。
/*CAN接收中斷子程序*/
Void canreceive(void) interrupt 0 {
Unsighed char xdata*datap;
Unsighed char xdata i, temp[15];
if ((can_sr0x01)==0x01) {/*判斷SJA1000接收緩沖器是否有效*/
p=canrxbuff;/*canrxbuff為接收緩沖器首地址*/
for(i=0;i0;i++) {
temp[i] =*(p+j);/*將接收緩沖器的數(shù)據(jù)賦給temp數(shù)組*/
}
can_cmr=0x04;/*釋放接收緩沖區(qū)*/
i=can_ir;/*對CAN中斷復位*/
}
}
本文采用CAN總線技術組成的變電站高壓開關柜在線檢測系統(tǒng)已在中小型變電站中得到應用,經(jīng)過實際運行,具有很好的可靠性和抗干擾性,能更好地掌握高壓開關柜的運行狀態(tài),穩(wěn)定顯示出各參數(shù)的波形,從而能及時對設備進行檢修,避免了事故的發(fā)生,得到變電站維護人員的一致認可。
5.結束語
CAN總線以高可靠性及其卓越的性能越來越受到人們的重視,并被公認為最有前途的總線之一。本文在變電站高壓開關柜在線檢測系統(tǒng)中應用了這種總線技術,設計了主要硬件電路和軟件,并得到實際應用。其硬、軟件電路的設計方法同樣適合于其他基于CAN總線的分布式控制系統(tǒng)的節(jié)點設計。
評論