摘 要: 設(shè)計(jì)了一種具有CAN現(xiàn)場總線接口的潛水電泵智能監(jiān)控" title="智能監(jiān)控">智能監(jiān)控儀,。選用P87C591作為微控制器,實(shí)現(xiàn)對潛水電泵進(jìn)行智能控制和故障保護(hù),;采用ICL7109和多路模擬開關(guān)構(gòu)成比率法測溫" title="測溫">測溫電路,;選擇PCA82C250為 CAN總線收發(fā)器,通過CAN總線網(wǎng)絡(luò)把潛水電泵的運(yùn)行狀態(tài)傳送給監(jiān)控主機(jī),。介紹了監(jiān)控儀的工作原理,、硬件電路、軟件設(shè)計(jì)流程以及網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)和調(diào)試方法,。
關(guān)鍵詞: 潛水電泵,; 現(xiàn)場總線; 智能監(jiān)控,; P87C591
?
隨著城市建設(shè)和農(nóng)業(yè)現(xiàn)代化的不斷發(fā)展,,由潛水電泵構(gòu)建的各種泵站越來越多地用于大面積農(nóng)田灌溉、大型噴泉,、城市排污,、高樓供水等眾多領(lǐng)域中。潛水電機(jī)是潛水電泵的核心部件,,因其工作環(huán)境復(fù)雜及制造工藝等方面的原因,,使其較一般的電機(jī)更容易發(fā)生故障,如過載,、過熱,、滲水、漏水等,,這些故障因素都有可能導(dǎo)致潛水電機(jī)的燒毀,。目前國內(nèi)外已有多家公司開發(fā)出針對個(gè)體潛水電機(jī)的智能電子保護(hù)裝置,雖然可以達(dá)到保護(hù)電機(jī)的目的,,但無法實(shí)現(xiàn)集中管理,。因此,,對潛水電泵群故障的實(shí)時(shí)監(jiān)控與統(tǒng)一管理的要求日益迫切。而傳統(tǒng)的集散型控制系統(tǒng)(DCS)存在系統(tǒng)不開放,、硬件投資大,、布線復(fù)雜、維修不便的缺點(diǎn),,具有明顯的局限性[1],。因此本文設(shè)計(jì)了一種具有CAN總線通信接口的潛水電泵智能監(jiān)控儀。
1 智能監(jiān)控儀的構(gòu)成
潛水電泵智能監(jiān)控儀在設(shè)計(jì)上采用了模塊化結(jié)構(gòu),,由微控制器(CPU),、CAN通信模塊、信號采集模塊,、電機(jī)控制模塊,、狀態(tài)顯示模塊、參數(shù)設(shè)置模塊組成,,監(jiān)控儀的整體結(jié)構(gòu)如圖1所示,。不同的功能模塊配以相應(yīng)的處理軟件。根據(jù)具體情況可以只選用其中的部分模塊,。例如:可以去掉顯示模塊和現(xiàn)場設(shè)置模塊,,利用監(jiān)控計(jì)算機(jī)實(shí)現(xiàn)數(shù)據(jù)顯示和參數(shù)設(shè)置的功能。在單機(jī)運(yùn)行時(shí),,可以不使用CAN通信模塊,。信號采集模塊可以根據(jù)不同的監(jiān)控要求選擇不同的傳感組件及不同的信號處理模塊,例如:監(jiān)測溫度或監(jiān)測電流,。
?
?
2 智能監(jiān)控儀的硬件設(shè)計(jì)
為了提高智能監(jiān)控儀的可靠性和性價(jià)比,,選用Philips公司的P87C591作為微型控制器。P87C591自帶CAN總線控制器,,不占用微處理器的端口資源,,大大簡化了接口電路的設(shè)計(jì),減少了程序的復(fù)雜程度,,提高了系統(tǒng)的穩(wěn)定性和可靠性,。
2.1 CAN通信模塊
CAN總線通信接口電路主要由P87C591的片內(nèi)CAN驅(qū)動器SJA1000、光電耦合器6N137,、CAN收發(fā)器PCA82C250組成,。PCA82C250芯片具有高速穩(wěn)定的差動發(fā)送和接收能力。為了提高抗干擾能力,,CAN驅(qū)動器和收發(fā)器之間的光電隔離電路采用了雙路隔離電源模塊供電[2],。CAN通信接口電路如圖2所示。
?
2.2 信號采集模塊
該模塊用來檢測電機(jī)的運(yùn)行狀態(tài),,包括鉑電阻溫度傳感器,、電流互感器,、電極式液位傳感器。分別用來檢測電機(jī)三相定子的溫度,、三相主電流和電泵腔內(nèi)的水位,,可以有效地監(jiān)測潛水電泵的過流、過熱,、缺相,、短路、滲漏等異?,F(xiàn)象,。
電流互感器選用武漢華意電子有限公司的HYH-SK-7電量傳感器,其輸入為0~100A,,輸出為0~5V信號,,可以直接與微型控制器P87C591模擬信號輸入端口相連;電極式液位開關(guān)輸出的是開關(guān)量信號,,經(jīng)過光電隔離后與P87C591的數(shù)字量輸入口相連即可,;溫度傳感器選用鉑電阻PT100,為了消除長線誤差和提高測量精度,,采用的是4線制基于比率法的測溫接口電路;為了實(shí)現(xiàn)測量三相定子溫度的目的,,采用了基于ICL7109和模擬開關(guān)4051的改進(jìn)型測溫電路[3],,其原理如圖3所示。
?
2.3 電機(jī)控制模塊
? 微處理器判斷電機(jī)定子溫度,、電流,、液位中的任一項(xiàng)值超出正常值范圍時(shí),都會通過過零觸發(fā)型交流固態(tài)繼電器(SSR)觸發(fā)相應(yīng)的異常處理電路,,使電機(jī)得到保護(hù),。
2.4 參數(shù)設(shè)置模塊
? 報(bào)警電流、報(bào)警溫度,、停機(jī)電流,、停機(jī)溫度、監(jiān)控儀地址,、波特率等信息通過參數(shù)設(shè)置模塊存儲于基于X25045[4]的E2PROM中,,實(shí)現(xiàn)監(jiān)控儀工作參數(shù)的現(xiàn)場設(shè)定。下次使用時(shí),,所有參數(shù)從X25045芯片中直接讀出,,而無需用戶再次輸入這些參數(shù),使監(jiān)控儀具有掉電保護(hù)功能,。
2.5 狀態(tài)顯示模塊
采用工業(yè)上常用的七段數(shù)碼管(LED)實(shí)時(shí)顯示電機(jī)運(yùn)行過程中定子的溫度和電流值,。共有9個(gè)共陽極數(shù)碼管,。正常模式下顯示三路溫度,設(shè)置模式下,,顯示停機(jī)溫度,、報(bào)警溫度和CAN網(wǎng)絡(luò)站號。與液晶顯示器(LCD)相比,,具有抗干擾能力強(qiáng),、成本低、亮度高等特點(diǎn),。CD4094是帶三態(tài)鎖存功能的8位移位寄存器,。P87C591的串行口工作在方式0下,TXD為CD4094提供位移時(shí)鐘,,RXD輸出顯示數(shù)據(jù),,P1.7控制是否允許CD4094輸出并行數(shù)據(jù)。
3 智能監(jiān)控儀的軟件設(shè)計(jì)
智能監(jiān)控儀的軟件設(shè)計(jì)與硬件設(shè)計(jì)相一致,,也遵循模塊化的設(shè)計(jì)原則,,這使控制軟件具有易讀、易擴(kuò)展和易維護(hù)的優(yōu)點(diǎn),。通過單片機(jī)C51語言編寫相應(yīng)的軟件模塊實(shí)現(xiàn)智能監(jiān)控儀的各項(xiàng)功能,。軟件的各個(gè)功能模塊之間通過入口和出口參數(shù)相互聯(lián)系,組合靈活方便,,減少了調(diào)試時(shí)間,,縮短了開發(fā)周期。智能監(jiān)控儀的軟件結(jié)構(gòu)流程如圖4所示,。
?
3.1 數(shù)據(jù)采集" title="數(shù)據(jù)采集">數(shù)據(jù)采集程序設(shè)計(jì)
數(shù)據(jù)采集程序處理由傳感器組件采集到的現(xiàn)場信號,,包括:定子工作溫度、定子工作電流,、電泵腔內(nèi)的水位,。液位信號為開關(guān)量,處理相對簡單,;溫度和電流為模擬量信號,,處理方法基本一致,所以只討論溫度信號的處理方法,。溫度信號采集采用中斷的方式實(shí)現(xiàn),,其程序流程如圖5所示。
?
為了提高抗干擾能力,,提高采集數(shù)據(jù)的準(zhǔn)確性,,在A/D數(shù)據(jù)采樣中輔以一階慣性濾波法[5]實(shí)現(xiàn)軟件數(shù)字濾波,把干擾降低到最低程度,使監(jiān)控儀運(yùn)行更加準(zhǔn)確,、可靠,,提高整體穩(wěn)定性。
3.2 通信程序設(shè)計(jì)
智能監(jiān)控儀的通信采用CAN總線2.0A協(xié)議[6],,通信模塊的軟件主要由初始化子程序" title="子程序">子程序,、報(bào)文接收子程序、報(bào)文發(fā)送子程序三部分組成,。其中初始化子程序是實(shí)現(xiàn)CAN總線通信的關(guān)鍵,,它主要完成CAN控制器工作方式的選擇,即對系統(tǒng)中的CAN控制器控制段中的寄存器進(jìn)行設(shè)置,。初始化過程是在CAN控制器復(fù)位模式下完成的[7],,通信程序的初始化流程如圖6(a)所示,。
?
智能監(jiān)控儀與計(jì)算機(jī)之間的數(shù)據(jù)交換是通過發(fā)送程序和接收程序?qū)崿F(xiàn)的,。報(bào)文發(fā)送時(shí)只需將電機(jī)狀態(tài)數(shù)據(jù)送入SJA1000的發(fā)送緩沖區(qū)中,然后啟動請求發(fā)送,。報(bào)文發(fā)送子程序流程如圖6(b)所示,,監(jiān)控節(jié)點(diǎn)采用定時(shí)中斷的方式主動向監(jiān)控計(jì)算機(jī)發(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)。正在等待的報(bào)文會從存儲器復(fù)制到發(fā)送緩沖器后,,置位命令寄存器TR標(biāo)志產(chǎn)生發(fā)送請求,發(fā)送過程由SJA1000獨(dú)立完成,?;赟JA1000的報(bào)文接收有兩種方式:中斷方式和查詢方式。為了保證接收報(bào)文的準(zhǔn)確性,,選擇實(shí)時(shí)性較高的中斷方式,。在中斷方式下,如果SJA1000已接收一個(gè)報(bào)文,,并且報(bào)文已通過驗(yàn)收濾波器并放在接收FIFO,,則會產(chǎn)生一個(gè)接收中斷,通知微處理器有報(bào)文已經(jīng)接收,。報(bào)文接收子程序流程如圖6(c)所示,,接收緩沖區(qū)用來存放CAN總線上發(fā)來的數(shù)據(jù),CPU讀取數(shù)據(jù)后接收緩沖區(qū)將被清空,等待接收新的數(shù)據(jù),。
4 測試實(shí)驗(yàn)
4.1 數(shù)據(jù)采集實(shí)驗(yàn)
數(shù)據(jù)采集實(shí)驗(yàn)包括溫度采集與顯示,、電流采集與顯示、液位檢測與顯示三個(gè)部分,。溫度采集實(shí)驗(yàn)的目的是為鉑電阻的非線性校正提供實(shí)測數(shù)據(jù)和檢測顯示電路的工作狀況,。非線性校正可以用硬件、軟件兩種校正方法,。本文采用軟件方法對鉑電阻進(jìn)行非線性校正,,不但節(jié)省了大量的硬件開支,使測量電路簡單,,而且精度也可以大大提高,。由于鉑電阻-溫度曲線的曲率和斜率的變化都較小,所以采用了等距離分段的“線性插值法”實(shí)現(xiàn)鉑電阻的非線性校正,。
4.2 單機(jī)測試實(shí)驗(yàn)
單機(jī)測試實(shí)驗(yàn)主要內(nèi)容有:顯示功能,、參數(shù)設(shè)置功能、故障報(bào)警功能,、停機(jī)功能,、自啟動功能等。在現(xiàn)場進(jìn)行單機(jī)測試實(shí)驗(yàn)時(shí),,出現(xiàn)了異常,,每次剛剛啟動電源,控制系統(tǒng)就自動斷開電路,。其原因是控制系統(tǒng)軟件中沒有考慮到電機(jī)啟動電流的問題,。電機(jī)的啟動電流可以大出正常工作電流的1.5~2倍,,而控制系統(tǒng)設(shè)置的“報(bào)警電流”及“停機(jī)電流”都是針對正常工作狀態(tài)的,,所以電機(jī)啟動時(shí),系統(tǒng)認(rèn)為已經(jīng)達(dá)到了“停機(jī)電流”,,便斷開了電路,。為此修改了軟件程序,在電流值從0變化到非0后的10秒鐘內(nèi)不發(fā)出控制指令,,可以避開啟動電流,。
4.3 聯(lián)網(wǎng)測試實(shí)驗(yàn)
聯(lián)網(wǎng)測試實(shí)驗(yàn)的主要內(nèi)容有:(1)上位機(jī)" title="上位機(jī)">上位機(jī)顯示各個(gè)監(jiān)控儀的工作情況,。(2)上位機(jī)廣播設(shè)置所有監(jiān)控儀的工作參數(shù),,以及設(shè)置某個(gè)具體監(jiān)控儀的工作參數(shù),。(3)對于工作過程中新加入或退出的泵站,,上位機(jī)系統(tǒng)可以自動檢測到,。(4)上位機(jī)可以把當(dāng)天的工作情況記錄到一個(gè)日志文件中,。(5)數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性,。聯(lián)網(wǎng)測試的網(wǎng)絡(luò)組建如圖7所示。
?
本文設(shè)計(jì)了具有CAN總線通信接口的潛水電泵智能監(jiān)控儀,,經(jīng)過現(xiàn)場測試實(shí)驗(yàn),,能夠?qū)崟r(shí)顯示潛水電機(jī)的工作溫度和定子電流,;可以對潛水電機(jī)運(yùn)行過程中出現(xiàn)的過流,、過熱、短路,、滲漏情況做出處理,對電機(jī)起到了保護(hù)作用,;現(xiàn)場智能監(jiān)控儀與上位監(jiān)控計(jì)算機(jī)之間的數(shù)據(jù)通信穩(wěn)定可靠,,監(jiān)控計(jì)算機(jī)實(shí)時(shí)顯示潛水電泵的運(yùn)行狀態(tài)數(shù)據(jù),并以數(shù)據(jù)文件的形式保存,,便于查詢,;可以通過參數(shù)設(shè)置模塊現(xiàn)場修改智能監(jiān)控儀的參數(shù)。實(shí)驗(yàn)結(jié)果表明,,該監(jiān)控儀具有適用性和可靠性,,開發(fā)過程中所提出的技術(shù)方案和實(shí)現(xiàn)方法可以在溫控控制系統(tǒng)及分布式監(jiān)控系統(tǒng)的設(shè)計(jì)中推廣應(yīng)用。
參考文獻(xiàn)
[1] ?陽憲惠. 現(xiàn)場總線技術(shù)及其應(yīng)用[M].北京:清華大學(xué)出版社,1999.
[2] ?饒運(yùn)濤,鄒繼軍,鄭勇蕓. 現(xiàn)場總線CAN原理與應(yīng)用技術(shù)[M]. 北京:北京航空航天大學(xué),2004.
[3] ?楊永竹. 比率法鉑電阻測溫及其在蒸汽計(jì)量中的應(yīng)用[J].傳感技術(shù)學(xué)報(bào),2005,(4):745-747.
[4] ?賈銘新, 譚定忠. 可編程串行存儲器25045及其在包裝機(jī)中的應(yīng)用[J].電腦學(xué)習(xí),2002,(4):25-27.
[5] ?王正友,趙鴻萍. 采用軟件濾波提高設(shè)備抗干擾性[J].冶金礦山設(shè)計(jì),1997,29(4):56-58.
[6]? Philips Semiconductors. CAN Specification 2.0, Part A.?1991.