摘要:介紹了基于CAN總線的分布式潛水電機(jī)監(jiān)控系統(tǒng),分析了系統(tǒng)的構(gòu)成及實(shí)現(xiàn)方法,簡述了控制節(jié)點(diǎn)、CAN/RS232接口的通信流程。
關(guān)鍵詞:CAN總線 潛水電機(jī) 分布式系統(tǒng) RS232總線
1.概述
潛水電機(jī)是潛水電泵的重要組成部分,廣泛應(yīng)用于農(nóng)田灌溉,礦山排水,湖區(qū)水利,及其他工農(nóng)業(yè)給排水領(lǐng)域。潛水電機(jī)工作環(huán)境復(fù)雜,加上某些潛水電機(jī)的制造工藝特殊等諸多方面原因,使其較一般的電機(jī)更容易發(fā)生故障,如過載,過熱,滲水,漏水,短路缺相等。目前國內(nèi)已有多家公司開發(fā)出針對個(gè)體潛水電機(jī)的智能電子保護(hù)裝置,雖然可以達(dá)到保護(hù)電機(jī)的目的,但無法實(shí)現(xiàn)集中管理,有明顯的局限性。本系統(tǒng)是基于CAN現(xiàn)場總線技術(shù),實(shí)現(xiàn)了分散監(jiān)控和集中管理功能。下面從系統(tǒng)的硬件結(jié)構(gòu)、監(jiān)控計(jì)算機(jī)軟件的設(shè)計(jì)、系統(tǒng)的通信流程等幾個(gè)方面來論述本系統(tǒng)的性能、結(jié)構(gòu)及實(shí)現(xiàn)方法。
2.系統(tǒng)的硬件設(shè)計(jì)
2.1系統(tǒng)的整體結(jié)構(gòu)
如圖1所示,本電機(jī)監(jiān)控系統(tǒng)是由位于監(jiān)控中心的監(jiān)控計(jì)算機(jī)、CAN/RS232轉(zhuǎn)換卡,和位于潛水電機(jī)工作現(xiàn)場的控制節(jié)點(diǎn)構(gòu)成。分布在現(xiàn)場的控制節(jié)點(diǎn)可以獨(dú)立對電機(jī)實(shí)現(xiàn)監(jiān)控保護(hù)功能,監(jiān)控中心可以通過CAN網(wǎng)和各個(gè)節(jié)點(diǎn)之間通信,實(shí)現(xiàn)集中管理功能。從而形成了分散監(jiān)控和集中管理于一體的分布式監(jiān)控結(jié)構(gòu)。
2.2控制節(jié)點(diǎn)結(jié)構(gòu)

圖2為控制節(jié)點(diǎn)結(jié)構(gòu)圖,硬件設(shè)計(jì)上采用了模塊化結(jié)構(gòu),由微控制器、通信模塊、傳感器組、數(shù)據(jù)采集模塊、強(qiáng)電控制模塊、顯示模塊組成。根據(jù)具體情況可以只選用其中的一部分模塊。例如:可以去掉顯示模塊和現(xiàn)場設(shè)置模塊,利用監(jiān)控計(jì)算機(jī)實(shí)現(xiàn)顯示和參數(shù)設(shè)置的功能。在單機(jī)運(yùn)行時(shí),可以不用通信模塊。下面簡述各個(gè)組成部分的結(jié)構(gòu)與功能。
傳感器組:用來檢測電機(jī)的運(yùn)行情況,由鉑電阻溫度傳感器、電流互感器、電極式液位傳感器組成。分別用來檢測電機(jī)三相定子的溫度、三相主電流、和電機(jī)腔內(nèi)的水位,從而可以有效的監(jiān)測潛水電機(jī)的過流、過溫、缺相、短路、滲漏等異?,F(xiàn)象。鉑電阻和電極式液位傳感器的抗干擾性能力強(qiáng),適合在惡劣環(huán)境下工作。
數(shù)據(jù)采集模塊:以12位精度的A/D和多路模擬開關(guān)為核心,將傳感器采集到的模擬信號(hào)轉(zhuǎn)變?yōu)閿?shù)字信號(hào)送入微控制器。
強(qiáng)電控制模塊:定子溫度、液位、電流中的任一項(xiàng)值超出正常范圍時(shí),都會(huì)觸發(fā)相應(yīng)的異常處理電路。
顯示模塊:采用的是基于I2C總線的顯示技術(shù),顯示當(dāng)前電機(jī)定子的三相溫度和三相電流值。在設(shè)置模式下顯示待設(shè)置參數(shù)的數(shù)值。
現(xiàn)場設(shè)置模塊:采用的是基于8255的鍵盤和基于X25045的E2PROM,實(shí)現(xiàn)現(xiàn)場設(shè)定工作參數(shù)的功能。X25045存儲(chǔ)了報(bào)警電流、停機(jī)電流、報(bào)警溫度、停機(jī)溫度、站地址等信息。這些參數(shù)都可以通過鍵盤設(shè)置。除了站地址外,其它的參數(shù)也可以通過監(jiān)控計(jì)算機(jī)設(shè)置。另外X25045還用作看門狗,當(dāng)系統(tǒng)出現(xiàn)故障時(shí),在超時(shí)周期后復(fù)位系統(tǒng)。利用X25045低VCC檢測電路,可以保護(hù)系統(tǒng),使之免受低電壓狀況的影響。
2.3CAN/RS232接口卡結(jié)構(gòu)
圖3為CAN/RS232接口卡結(jié)構(gòu)圖,實(shí)現(xiàn)監(jiān)控主機(jī)和CAN網(wǎng)絡(luò)之間的通信。它將控制節(jié)點(diǎn)發(fā)送上來的數(shù)據(jù)轉(zhuǎn)換成RS232協(xié)議格式送向主機(jī),并將主機(jī)發(fā)送下來的數(shù)據(jù)轉(zhuǎn)換成CAN協(xié)議格式送向控制節(jié)點(diǎn)。
3.監(jiān)控計(jì)算機(jī)系統(tǒng)軟件的設(shè)計(jì)
計(jì)算機(jī)系統(tǒng)軟件完成對整個(gè)系統(tǒng)的管理功能、和部分監(jiān)控功能。采用的是基于VC++的MFC窗口編程和基于API的RS232串口通信協(xié)議,提供了直觀、易懂的圖形界面。實(shí)現(xiàn)的功能有:1、顯示各個(gè)節(jié)點(diǎn)工作情況;2、可以廣播設(shè)置所有節(jié)點(diǎn)的工作參數(shù),也可以設(shè)置某個(gè)具體節(jié)點(diǎn);3、當(dāng)電機(jī)出現(xiàn)異常時(shí)可以給出錯(cuò)誤參考,方便維修;4、對于工作過程中新加入或退出的泵站,系統(tǒng)可以自動(dòng)檢測;5、可以把當(dāng)天的工作情況記錄到一個(gè)以日期命名的文件中,方便管理。
4.系統(tǒng)的通信流程
4.1 CAN總線概述
CAN現(xiàn)場總線是一種開放式實(shí)時(shí)系統(tǒng),有3層網(wǎng)絡(luò)結(jié)構(gòu)——物理層、數(shù)據(jù)鏈路層和應(yīng)用層。CAN總線是以報(bào)文為單位進(jìn)行信息傳送的,可采用多主機(jī)方式,網(wǎng)絡(luò)上的任意節(jié)點(diǎn)都可以主動(dòng)發(fā)送信息。廢除了傳統(tǒng)的地址編碼,采用通信數(shù)據(jù)塊進(jìn)行編碼。強(qiáng)大的總線仲裁功能保證了數(shù)據(jù)傳輸?shù)目煽啃裕苊饬丝偩€沖突。CAN總線具有良好的可靠性、實(shí)時(shí)性、抗干擾能力。在5Kbps的通信速率下,理論上的通信距離可以達(dá)到10000米。由于這些優(yōu)點(diǎn),CAN已經(jīng)廣泛的應(yīng)用在測控系統(tǒng)中。
4.2簡述控制節(jié)點(diǎn)的通信流程
本系統(tǒng)的CAN總線通信硬件接口電路主要由單片機(jī)89C52和CAN控制器SJA1000、6N137高速光隔、CAN收發(fā)器82C250組成(參見圖3)。89C52完成CAN協(xié)議的應(yīng)用層功能,SJA1000完成物理層和數(shù)據(jù)鏈路層的功能。82C250提供了對總線差動(dòng)發(fā)送和接受數(shù)據(jù)的功能,有效地提高了總線的抗干擾能力,實(shí)現(xiàn)了保護(hù)總線、降低射頻干擾等功能。6N137隔離控制電路和收發(fā)器電路,進(jìn)一步提高了系統(tǒng)的抗干擾能力。通信介質(zhì)為帶屏蔽的雙絞線,在兩個(gè)網(wǎng)絡(luò)終端須加120的電阻作為線路匹配。
本系統(tǒng)中,CAN總線通信的軟件部分由C51語言編寫,應(yīng)用CAN2.0A協(xié)議,主要由初始化、發(fā)送數(shù)據(jù)、接受數(shù)據(jù)三個(gè)部分組成。其中初始化部分是實(shí)現(xiàn)通信的關(guān)鍵,其步驟主要有:進(jìn)入復(fù)位模式->初始化驗(yàn)受代碼寄存器(ACR)、屏蔽代碼寄存器(AMR)、總線定時(shí)寄存器(BTR)、輸出控制寄存器(OCR)->清除復(fù)位模式->初始化控制寄存器、命令寄存器。其中ACR、 AMR、 BTR、 OCR只能在復(fù)位模式下訪問。發(fā)送數(shù)據(jù)和接受數(shù)據(jù)部分根據(jù)具體情況編寫。
控制節(jié)點(diǎn)的通信流程如圖4所示。

從圖4可以看出系統(tǒng)采用了每個(gè)節(jié)點(diǎn)定時(shí)主動(dòng)向監(jiān)控計(jì)算機(jī)主動(dòng)發(fā)送數(shù)據(jù)的方法。這是利用了CAN總線可以采用多主機(jī)方式通信的特點(diǎn)。由于實(shí)時(shí)監(jiān)控功能是由各個(gè)控制節(jié)點(diǎn)完成,而監(jiān)控計(jì)算機(jī)主要起到管理功能,所以采用了定時(shí)上傳數(shù)據(jù)的方法,而沒有實(shí)時(shí)上傳所有傳感器采集到的數(shù)據(jù),從而減輕了總線負(fù)擔(dān)。這也是分布式控制方法相對于集中控制方法的一個(gè)優(yōu)點(diǎn)。
4.3簡述CAN/232通信流程
圖5為CAN/RS232轉(zhuǎn)換卡的簡要通信流程,應(yīng)用以上通信流程快速準(zhǔn)確的實(shí)現(xiàn)了CAN總線協(xié)議和RS232協(xié)議的轉(zhuǎn)換。
5.總結(jié)
本系統(tǒng)經(jīng)過現(xiàn)場調(diào)試,在20k的傳輸速率下,1500米的傳輸距離中可以保證數(shù)據(jù)的可靠性。很好的實(shí)現(xiàn)了對潛水電機(jī)的監(jiān)控及管理功能。實(shí)驗(yàn)證明CAN總線具有優(yōu)越的性能,且技術(shù)成熟,其應(yīng)用前景廣闊。