基于ARM的CAN總線電纜溝道監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
城市高低壓輸電電纜人地率已成為城市管理水平的標(biāo)志之一。城市輸配電電纜近年正逐漸從架空線改為電力電纜,電纜溝道作為電纜線路的通道,其建設(shè)速度逐年加快,建設(shè)里程逐年遞增,以后更會(huì)大規(guī)模展開(kāi)。
研制一套電纜溝道檢測(cè)系統(tǒng),采用現(xiàn)代化的設(shè)備和手段對(duì)電纜溝道環(huán)境和電纜運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)傳輸,全程監(jiān)測(cè),狀態(tài)顯示,臨界報(bào)警,預(yù)測(cè)提示,事件分析統(tǒng)計(jì)等,通過(guò)此設(shè)備使電纜溝道的管理由人工周期巡檢,事后補(bǔ)救式轉(zhuǎn)變?yōu)槿虒?shí)時(shí)監(jiān)測(cè)、人工周期維護(hù)和事件應(yīng)急反應(yīng)處理相結(jié)合的管理模式。將事故隱患消除在萌芽狀態(tài),防患于未然,降低事故發(fā)生率和人員成本,提高供電質(zhì)量,增加經(jīng)濟(jì)效益。這里基于LPC2292控制器和CAN現(xiàn)場(chǎng)總線技術(shù),考慮經(jīng)濟(jì)、實(shí)用因素,提出并設(shè)計(jì)了一種結(jié)構(gòu)簡(jiǎn)單、性價(jià)比高、擴(kuò)充靈活、通用性強(qiáng)的分布式電纜溝道監(jiān)測(cè)系統(tǒng)。
2 系統(tǒng)總體設(shè)計(jì)方案
設(shè)計(jì)的是一種分層(級(jí))式分布多CPU結(jié)構(gòu)形式的電力電纜溝道監(jiān)測(cè)系統(tǒng)。該監(jiān)測(cè)系統(tǒng)按照結(jié)構(gòu)功能可分為3個(gè)層次,分別為:下位機(jī)信號(hào)采集層;上位機(jī)數(shù)據(jù)處理層:網(wǎng)絡(luò)通訊服務(wù)層。系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
(1)下位機(jī)信號(hào)采集層控該層制器件是LPC2292,其內(nèi)嵌有ARM7微處理器。并在此器件上移植μC/OS-II操作系統(tǒng)。該層主要職責(zé):當(dāng)有小偷進(jìn)入溝道,下位機(jī)產(chǎn)生預(yù)警信號(hào)給上位機(jī),即防盜功能;以及具備防潮,防爆,防毒等功能,所以該層還具有采集監(jiān)測(cè)信息的傳感設(shè)備,包括:溫度傳感器,防盜傳感器,水位傳感器等。
(2)上位機(jī)數(shù)據(jù)處理層 上位機(jī)是CAN總線與IP網(wǎng)之間的連接設(shè)備,該層的控制器件也是LPC2292。不過(guò)在這層不接傳感器,而是網(wǎng)絡(luò)連接模塊、液晶接口、鍵盤、以及CAN通信模塊。除了與下位機(jī)之間進(jìn)行CAN通信有關(guān)功能外,還將從下位機(jī)得到的電力溝道信息顯示在LCD上,可通過(guò)鍵盤設(shè)置系統(tǒng)參數(shù)。還需將CAN總線上所有監(jiān)測(cè)點(diǎn)傳來(lái)的檢測(cè)信號(hào)按照時(shí)間先后順序組織成IP包,在IP鏈路暢通時(shí)發(fā)送給中心的通訊服務(wù)器。
(3)網(wǎng)絡(luò)服務(wù)器層 主要由網(wǎng)絡(luò)通信服務(wù)器和數(shù)據(jù)服務(wù)器組成。將電纜溝道信息、傳感器信息、位置信息和報(bào)警信號(hào)等進(jìn)行整理、存儲(chǔ)、并按照業(yè)務(wù)邏輯和要求的格式與地理信息系統(tǒng)(GIS)的數(shù)據(jù)復(fù)合,然后以WEB的方式發(fā)布給授權(quán)管理系統(tǒng)的人員和供電局各級(jí)領(lǐng)導(dǎo),完成系統(tǒng)的管理和維護(hù)等,包括數(shù)據(jù)庫(kù)服務(wù)器,GIS系統(tǒng),應(yīng)用服務(wù)器,管理機(jī)等。
3 系統(tǒng)硬件設(shè)計(jì)
下位機(jī)系統(tǒng)設(shè)備硬件組成如圖2所示:控制器件LPC2292,CAN通信模塊,JTAG,F(xiàn)lash,SRAM存儲(chǔ)器,電源模塊,電流轉(zhuǎn)電壓模塊,傳感器及接口電路,上位機(jī)系統(tǒng)設(shè)備硬件組成與下位機(jī)類似。
3.1 LPC2292簡(jiǎn)介
控制系統(tǒng)核心控制器件采用LPC2292微處理器,該處理器內(nèi)部集成了2個(gè)CAN控制器,其主要特性:支持實(shí)時(shí)仿真和跟蹤的16/32位ARM7TDMI-STM CPU;對(duì)代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用16位Thumb模式,將代碼規(guī)模降低超過(guò)30%,性能的損失卻很??;LPC2290具有144引腳封裝,極低的功耗、多個(gè)32位定時(shí)器、8路1O位A/D轉(zhuǎn)換器、2路CAN、PWM通道以及多達(dá)9個(gè)外部中斷。LPC2292不但具有了主控制器的作用,同時(shí)還作為CAN的節(jié)點(diǎn)控制器,與網(wǎng)絡(luò)中的其他節(jié)點(diǎn)實(shí)現(xiàn)數(shù)據(jù)傳輸與交換。
3.2 CAN接口電路
CAN接口電路是整個(gè)電路進(jìn)行CAN通信的關(guān)鍵,其硬件電路如圖3所示,由ARM微控制器LPC2292、CAN總線收發(fā)器TJA1050T、高速光耦6N137和電源隔離模塊B0505S等組成。其中引腳P0.23 RD2和引腳P0.24 TD2是LPC2292的CAN控制模塊的收發(fā)引腳。
LPC229內(nèi)部集成的兩路CAN控制器,符合CAN規(guī)范CAN2.0B,ISO11898-1標(biāo)準(zhǔn)??偩€數(shù)據(jù)波特率均可達(dá)1 Mb/s,可訪問(wèn)32位的寄存器和RAM。
收發(fā)器TJA1051T是CAN協(xié)議控制器和物理總線之間的接口,與ISO11898標(biāo)準(zhǔn)完全兼容,CANH和CANL理想配合,可使電磁輻射減到更低。LPC2292的CANH和CANL分別通過(guò)高速光耦6N137與TJA1050T的RXD和TXD相連。光耦電路所采用的兩個(gè)電源必須完全隔離,電源的完全隔離采用小功率電源隔離模塊B0505S,電路雖較復(fù)雜,但提高了節(jié)點(diǎn)的穩(wěn)定性和安全性。
4 模擬傳感器接口電路設(shè)計(jì)
甲烷,一氧化碳傳感器,水位傳感器,溫度傳感器均屬于模擬傳感器,模擬類傳感器原理相似,這里只介紹溫度傳感器。常用模擬傳感器有兩線制和三線制,區(qū)別是:三線制,兩根接電源線,其中一根接正電源,一根接地,另一根是信號(hào)線輸出電流信號(hào)。而兩線制,一根線接正電源,另一根用作信號(hào)輸出線也輸出電流信號(hào)。系統(tǒng)采用溫度傳感器是兩線制。兩線制和三線制基本原理相同,只是連接方法不同。
系統(tǒng)模擬傳感器都采用線性輸出,這使得電壓轉(zhuǎn)換成真實(shí)值的計(jì)算變得很容易。只需選兩點(diǎn)試驗(yàn)溫度,同時(shí)測(cè)出此時(shí)電壓值,兩點(diǎn)確定一條直線,就能列出測(cè)量電壓與溫度的關(guān)系。水位,甲烷等其他模擬傳感器使用方法一樣。其電路連接如圖4所示。
CON8插座是模擬傳感器的連接插座,24 V用于給模擬傳感器供電,信號(hào)輸出引腳直接連接到運(yùn)放LF347輸入引腳。溫度傳感器輸出與被測(cè)溫度成線性的4~20 mA的電流信號(hào)。所以系統(tǒng)采用射隨器,先讓電流流過(guò)125 Ω電阻到地,將4~20 mA電流信號(hào)轉(zhuǎn)換成相對(duì)應(yīng)0.5~2.5 V電壓。電壓輸入信號(hào)經(jīng)過(guò)射隨器,運(yùn)放輸出的電壓信號(hào)大小不變,直接連接到LPC2292的A/D引腳。這樣下位機(jī)將數(shù)字、模擬傳感器各種信號(hào)經(jīng)A/D轉(zhuǎn)換器轉(zhuǎn)換采集后,打包通過(guò)CAN總線直接上傳到上位機(jī),上位機(jī)再通過(guò)數(shù)值轉(zhuǎn)換,就可得到溝道中各種信息真實(shí)值。這種電流轉(zhuǎn)換電壓設(shè)計(jì)不僅簡(jiǎn)單,而且精度高,穩(wěn)定性好。
5 CAN通信軟件設(shè)計(jì)
設(shè)計(jì)選用μC/OS-II嵌入式實(shí)時(shí)操作系統(tǒng)來(lái)實(shí)現(xiàn)CAN通信,在LPC2292上移植成功后,可用作為內(nèi)核來(lái)編寫監(jiān)控系統(tǒng)的控制軟件。
5.1 運(yùn)行μC/OS-II操作系統(tǒng)
工程的CAN實(shí)現(xiàn)主要通過(guò)建立兩個(gè)任務(wù)來(lái)實(shí)現(xiàn),即CAN發(fā)送任務(wù)和CAN采集任務(wù)。在主函數(shù)main中先利用OSInit()初始化μC/OS-II操作系統(tǒng),建立一個(gè)信號(hào)量并把信號(hào)計(jì)數(shù)器清零,然后利用OSTaskCreate()創(chuàng)建第一個(gè)任務(wù)Tasksend(),再通過(guò)OSStart()啟動(dòng)操作系統(tǒng)的多任務(wù)調(diào)度機(jī)制,開(kāi)始運(yùn)行系統(tǒng)的主要應(yīng)用程序。主函數(shù)代碼如下:
5.2 數(shù)據(jù)的收發(fā)
接收數(shù)據(jù)可采用查詢方式或中斷方式。為了提高效率,數(shù)據(jù)接收采用中斷方式。兩個(gè)任務(wù)中,設(shè)置任務(wù)Tasksend()的優(yōu)先級(jí)最高,任務(wù)Taskrev()的優(yōu)先級(jí)次高。任務(wù)Tasksend()主要負(fù)責(zé)初始化CAN,初始化定時(shí)器0,初始化VIC,建立信號(hào)量用于任務(wù)Taskadrev()與中斷通信并建立新的任務(wù)Taskrev(),并處理采集數(shù)據(jù)。任務(wù)Taskadrev()一直處于等待信號(hào)狀態(tài),一旦從中斷得到信號(hào),立刻采集數(shù)據(jù),并通過(guò)郵箱將采集到數(shù)據(jù)指針發(fā)給任務(wù)Tasksend()。
基于μC/OS-II的CAN接收數(shù)據(jù)、發(fā)送數(shù)據(jù)任務(wù)流程圖如圖5,6所示。
6 結(jié)語(yǔ)
以ARM7TDMI內(nèi)核的嵌入式微控制器LPC2292作為主控制器、CAN總線作為數(shù)據(jù)傳輸方式通信的嵌入式系統(tǒng)得到了廣泛的應(yīng)用,同時(shí)CAN通信的優(yōu)良可靠性也成為影響系統(tǒng)性能的關(guān)鍵。以LPC2292為開(kāi)發(fā)平臺(tái),并且在成功地移植μC/OS-II的基礎(chǔ)上,研究CAN通信軟件設(shè)計(jì)。實(shí)驗(yàn)結(jié)果說(shuō)明該系統(tǒng)設(shè)計(jì)可行,并且滿足了快速、準(zhǔn)確、多信息量的要求。