基于CAN總線的多路電源智能監(jiān)控系統(tǒng)
郵電通信線路的供電電源的穩(wěn)定性和可靠性對(duì)整個(gè)郵電通信起著關(guān)鍵作用。因此要求能對(duì)供電電源的運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)控,及時(shí)發(fā)現(xiàn)異常情況和事故隱患,在出現(xiàn)異常和故障時(shí)迅速進(jìn)行診斷并予以修復(fù)。
1 CAN總線與485總線的比較
1)485總線的特點(diǎn)
相對(duì)于RS一232,RS一485半雙工異步通信總線具有通信距離遠(yuǎn)、通信速率高、成本低等特點(diǎn),是一種被廣泛使用的數(shù)據(jù)通信總線。但485總線的波特率設(shè)置受到單片機(jī)的波特率設(shè)置的限制,在單片機(jī)使用24M晶振的情況下,也只可以設(shè)置到9600bps的波特率。485總線的容錯(cuò)和應(yīng)用層的協(xié)議,可以自己通過軟件來實(shí)現(xiàn),比較靈活,但是編程的工作就變得復(fù)雜。因此在對(duì)速度要求高、數(shù)據(jù)傳送量大的大型系統(tǒng)中,485總線在實(shí)時(shí)性和可靠性方面的性能就顯得比較脆弱。
2)CAN總線的特點(diǎn)
CAN全稱為Controller Area Network,即控制器局域網(wǎng),是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一。CAN總線主要具有以下的特點(diǎn):
(1)CAN總線通信最高波特率可高達(dá)lMbps(采用雙絞線通訊距離40m)、最遠(yuǎn)通訊距離為10km(可達(dá)5kbps)。
(2)CAN總線采用了短幀結(jié)構(gòu),每一幀為8個(gè)字節(jié),傳輸時(shí)間短,受干擾概率低,每幀信息都有CRC校驗(yàn)和其他檢錯(cuò)措施,保證了數(shù)據(jù)的出錯(cuò)率極低,從而提高了傳送數(shù)據(jù)的可靠性。
(3)和485總線一樣,采用平衡傳輸,抗干擾能力強(qiáng)。
(4)采用非破壞性總線仲裁,當(dāng)有幾個(gè)節(jié)點(diǎn)同時(shí)發(fā)送信息的時(shí)候,根據(jù)幀開始部分的標(biāo)識(shí)符,進(jìn)行逐位仲裁,優(yōu)先級(jí)別高的信息會(huì)不受影響地繼續(xù)發(fā)送,優(yōu)先級(jí)別低的信息就會(huì)停止發(fā)送,從而保證重要信息的及時(shí)傳送。
(5)借助CAN控制器里面的接收濾波器,CAN總線能實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn),一點(diǎn)對(duì)多點(diǎn)以及全局廣播等方式傳送,無需專門的調(diào)度。
由此可見,CAN總線具有傳送數(shù)據(jù)實(shí)時(shí)性和可靠性高的優(yōu)點(diǎn),能應(yīng)用于數(shù)據(jù)傳送量大、數(shù)據(jù)傳輸?shù)乃俣纫蟾叩南到y(tǒng)中。
2 電源智能監(jiān)控系統(tǒng)的構(gòu)成
郵電通信線路的供電電源是±48V。監(jiān)控系統(tǒng)對(duì)現(xiàn)場(chǎng)的溫度、總電源和各通支路電源的電壓和電流進(jìn)行采集。本監(jiān)控系統(tǒng)由位于監(jiān)控中心的上位機(jī)(PC機(jī))和現(xiàn)場(chǎng)多個(gè)智能節(jié)點(diǎn)組成。每一個(gè)智能節(jié)點(diǎn)可以采集64路的數(shù)據(jù)(電壓、電流或溫度)、具有現(xiàn)場(chǎng)的界面顯示、鍵盤操作、報(bào)警和與上位機(jī)通信等功能。在正常的情況下,位于現(xiàn)場(chǎng)的各個(gè)智能節(jié)點(diǎn)每隔一段時(shí)間就要把當(dāng)前64路的數(shù)據(jù)上傳給上位機(jī)。當(dāng)線路的電源出現(xiàn)故障時(shí),無論當(dāng)前正在進(jìn)行什么操作,智能節(jié)點(diǎn)都會(huì)馬上發(fā)送故障信息給上位機(jī),并且在現(xiàn)場(chǎng)發(fā)出報(bào)警信號(hào)。由于電源的電壓、電流和溫度是通過分流器來采樣取得的,而采用不同的分流器,則要進(jìn)行不同的數(shù)值變換。所以在上下位機(jī)中都需要有一套相同的配置表,當(dāng)其中一方的配置表有改動(dòng),就要通知另一方,進(jìn)行及時(shí)更新。監(jiān)控中心的計(jì)算機(jī)由RS一232串口接到通信適配器上,實(shí)現(xiàn)計(jì)算機(jī)與智能節(jié)點(diǎn)網(wǎng)絡(luò)的傳輸。由于傳輸?shù)臄?shù)據(jù)量大,要求傳輸速度較快,并且對(duì)重要信息的傳送的可靠性和實(shí)時(shí)性要求高,因此為了提高系統(tǒng)的可靠性和實(shí)時(shí)性,該系統(tǒng)的通信接口采用了CAN總線技術(shù)。整個(gè)系統(tǒng)的結(jié)構(gòu)圖如圖1所示。
3 智能節(jié)點(diǎn)的硬件設(shè)計(jì)
智能節(jié)點(diǎn)硬件框圖見圖2。由于智能節(jié)點(diǎn)在同一時(shí)間可能要進(jìn)行很多動(dòng)作,如數(shù)據(jù)的采集,與上位機(jī)的通信,界面的顯示等,為了保證數(shù)據(jù)的正確采集和可靠傳輸,本系統(tǒng)采用雙MCU結(jié)構(gòu),從MCU負(fù)責(zé)數(shù)據(jù)的采集、保存和報(bào)警功能。而主MCU負(fù)責(zé)數(shù)據(jù)的轉(zhuǎn)發(fā),現(xiàn)場(chǎng)的界面顯示等功能。主、從MCU都采用AT89C55。其內(nèi)部具有20K的EPROM,并且自帶看門狗電路,簡(jiǎn)化了電路連接,提高了系統(tǒng)的抗干擾性。它具有雙DPTR結(jié)構(gòu),從而使片外尋址的編程更加靈活和簡(jiǎn)化。
ADC8016是逐次比較式16路8位A/D轉(zhuǎn)換器。它包含有一個(gè)8位A/D轉(zhuǎn)換器和16路的單端模擬信號(hào)多路轉(zhuǎn)換開關(guān)。在一個(gè)智能節(jié)點(diǎn)中需要4塊ADC8016對(duì)64路的數(shù)據(jù)進(jìn)行轉(zhuǎn)換。
由于電壓、電流和溫度信號(hào)是通過分流器變換成電壓量之后才進(jìn)行采集的。由于分流器變換出來的電壓量是毫伏級(jí)的,而ADC8016的輸入范圍是0~5V,所以由分流器變換出來的電壓量要通過信號(hào)放大電路之后才進(jìn)入AD轉(zhuǎn)換器。信號(hào)放大電路由兩級(jí)的運(yùn)算放大器構(gòu)成,從而提高了系統(tǒng)的精度。
為了提高系統(tǒng)的抗干擾能力,在數(shù)據(jù)采集芯片ADC0816和AT87C55之間加入光耦隔離。要注意的是,這里要采用快速光耦,因?yàn)槿绻捎霉怦畹拈_關(guān)速度太慢,由ADC出來的數(shù)據(jù)是傳送不到采集MCU那邊的。因此我們采用了快速光耦6N137。而現(xiàn)場(chǎng)報(bào)警的功能是通過蜂鳴器來實(shí)現(xiàn)。
主、從MCU之間的數(shù)據(jù)、信息的傳遞是通過雙口RAM(CY7C007)來實(shí)現(xiàn)的。從MCU采集到的數(shù)據(jù)儲(chǔ)存到雙口RAM中,主MCU在適當(dāng)時(shí)候從雙口RAM中取出數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行發(fā)送。為了保證采集的數(shù)據(jù)不因下位機(jī)掉電或其他故障而丟失,主MCU在數(shù)據(jù)發(fā)送之前,先把數(shù)據(jù)存放在掉電非易失存儲(chǔ)器里。在CY7C007中地址最高的兩個(gè)字節(jié)7FFE、7FFF和兩邊的INTL、INTR引腳可作為左右兩邊的控制信號(hào)來用。當(dāng)左邊向7FFE寫數(shù)據(jù)時(shí),右邊的INTR引腳會(huì)變低,當(dāng)右邊向7FFE讀數(shù)據(jù)時(shí),INTR引腳復(fù)位,而INTR引腳是低電平有效的。對(duì)7FFF做類似的操作時(shí),INTL引腳也會(huì)有同樣的功能。而本系統(tǒng)中,就是根據(jù)CY7C007這一特點(diǎn),把CY7C007的INTR引腳連到主MCU的INT0引腳。當(dāng)從MCU檢測(cè)到有故障時(shí),就向雙口RAM的7FFE寫數(shù)據(jù),從而向主MCU發(fā)出報(bào)警信號(hào),讓MCU馬上進(jìn)入中斷,進(jìn)行相應(yīng)的處理。
液晶顯示屏和鍵盤實(shí)現(xiàn)下位機(jī)的人機(jī)交換功能。通過鍵盤操作可以修改配置表,主動(dòng)將更新的配置表上傳,向上位機(jī)索取最新的配置表等功能。并且與液晶顯示屏配合,進(jìn)行各種顯示界面的更換。
CAN控制器SJAl000是一個(gè)帶有CAN2.0控制協(xié)議的集成器件。只要對(duì)它內(nèi)部的各種寄存器的值進(jìn)行初始化,便能實(shí)現(xiàn)不同的通信功能,這簡(jiǎn)化了軟件程序的編寫,使開發(fā)者能更集中于通信控制策略的研究。
收發(fā)器82C250作為SJAl000和CAN總線的接口,能提供差動(dòng)發(fā)送和差動(dòng)接收,滿足CAN2.0協(xié)議的要求,并提高了系統(tǒng)通信的抗干擾性能。通過對(duì)腳8(RS)的不同連接可以實(shí)現(xiàn)三種不同的工作方式:高速、斜率控制和待機(jī)。本系統(tǒng)中采用斜率控制,以降低射頻干擾。
4 監(jiān)控中心的管理軟件
電源監(jiān)控硬件系統(tǒng)的規(guī)劃設(shè)計(jì)要保證系統(tǒng)工作的可靠性、穩(wěn)定性,它反映了系統(tǒng)的基本性能。而系統(tǒng)的管理軟件是面向用戶的,它應(yīng)充分發(fā)揮協(xié)調(diào)硬件的技術(shù)能力,同時(shí)要盡可能易于操作,提供所需的信息,方便管理。監(jiān)控室的管理軟件采用中文版Visual Basic語言編寫。監(jiān)控軟件的主體功能如圖3所示。它具有CAN通信進(jìn)程,配置表的設(shè)置,電壓電流值的換算,當(dāng)前數(shù)據(jù)值顯示,故障信息顯示,故障前后數(shù)據(jù)曲線圖顯示,時(shí)鐘同步等功能。
通信進(jìn)程是完成數(shù)據(jù)進(jìn)出的核心功能。它要接收或發(fā)送配置表,使上下位機(jī)的配置表一致;接收故障信息;完成正常數(shù)據(jù)傳送的握手協(xié)議;發(fā)送對(duì)時(shí)幀,使各節(jié)點(diǎn)時(shí)鐘同步。
為了避免其他人隨便改動(dòng)配置表的信息,在進(jìn)入配置表設(shè)置之前必須進(jìn)行密碼認(rèn)證。而配置表的設(shè)置用于分流器類型的設(shè)定,定義標(biāo)識(shí)地址上節(jié)點(diǎn)的數(shù)據(jù)鏈接指向,包括該節(jié)點(diǎn)監(jiān)控的是哪一個(gè)位置的數(shù)據(jù),該路采集的是總電源、支路電源還是溫度的數(shù)據(jù)。由于數(shù)據(jù)是通過分流器變換之后才進(jìn)行采集的,并且上傳來的數(shù)據(jù)是十六進(jìn)制的,所以在上位機(jī)要對(duì)接收到的數(shù)據(jù)進(jìn)行一定的換算。
通過觀察接收數(shù)據(jù)的變化,可以遠(yuǎn)程監(jiān)控現(xiàn)場(chǎng)的通信電源工作情況,及時(shí)發(fā)現(xiàn)出現(xiàn)故障的位置和類型。當(dāng)出現(xiàn)故障時(shí),可以調(diào)用故障出現(xiàn)前后的數(shù)據(jù),畫出曲線,通過觀察曲線,可以對(duì)故障進(jìn)行分析。
監(jiān)控室的上位機(jī)每隔12個(gè)小時(shí)就會(huì)把當(dāng)前的時(shí)間發(fā)送給智能節(jié)點(diǎn),智能節(jié)點(diǎn)一旦發(fā)現(xiàn)本身的時(shí)鐘和上位機(jī)的時(shí)鐘的差值超過允許范圍,就對(duì)本身的時(shí)鐘進(jìn)行修改,保證數(shù)據(jù)采集的同時(shí)陛。
5 結(jié)束語
該多路電源智能監(jiān)控系統(tǒng)已在某郵電通信公司中使用。經(jīng)過調(diào)試和運(yùn)行,證明該多路電源智能監(jiān)控系統(tǒng)采用CAN總線技術(shù)能夠達(dá)到很好的實(shí)時(shí)性和可靠性的要求。
蜂鳴器相關(guān)文章:蜂鳴器原理
評(píng)論