0 引言
普通電動閥門是一種通用的執(zhí)行單元,它作為一種重要的執(zhí)行器件廣泛地用于工業(yè)流程控制領(lǐng)域,具有不可替代的作用。閥門電動裝置是以電機(jī)為動力,帶動機(jī)械減速裝置將動力傳給閥門,實現(xiàn)閥門開啟和關(guān)閉的最終部件,它是電動閥門中的核心部分。近年來,國內(nèi)生產(chǎn)電動閥門的廠商通過對國際先進(jìn)技術(shù)的引進(jìn)和吸收,以及與Limitorque、Rotork等國際著名企業(yè)的合作,已經(jīng)逐步掌握了機(jī)械傳動、制造等一些核心技術(shù),加之價格方面的優(yōu)勢,取得了國內(nèi)市場的主導(dǎo)地位。隨著工業(yè)自動化水平的提高,尤其是現(xiàn)場總線技術(shù)的出現(xiàn),僅有現(xiàn)場操作以及簡單的點(diǎn)對點(diǎn)控制功能的電動閥門越來越難以滿足市場需要,國外各大公司紛紛推出現(xiàn)場總線電動閥門產(chǎn)品,但價格高昂。因此,提高我國電動閥門的自動化水平,對國內(nèi)的電動閥門產(chǎn)品加以改造,推出自己的現(xiàn)場總線產(chǎn)品,提高產(chǎn)品的競爭力,鞏固國內(nèi)市場并能逐步參與國際競爭對于加入WTO的今天有著重要的意義。
現(xiàn)場總線是應(yīng)用在制造或過程區(qū)域現(xiàn)場裝置與控制室內(nèi)自動控制裝置之間的數(shù)字式、串行、多點(diǎn)通信的數(shù)據(jù)總線。它也被稱為開放式、數(shù)字化、多點(diǎn)通信的底層控制網(wǎng)絡(luò)?,F(xiàn)場總線的出現(xiàn)為工業(yè)自動化提供了全分布的解決方案,提高了現(xiàn)場設(shè)備的智能和自治水平,便于系統(tǒng)的安裝和維護(hù)?,F(xiàn)場總線的種類很多,國際標(biāo)準(zhǔn)的現(xiàn)場總線就有13種之多,其中CAN總線以其支持多主方式,卓越的短幀傳輸性能,極高的可靠性,非破壞性總線先級仲裁方式,Intel、Philips、Motorola等眾多半導(dǎo)體生產(chǎn)廠商的芯片支持,以及相對簡單的開發(fā)手段和低廉的開發(fā)成本,使其成為國內(nèi)現(xiàn)場總線開發(fā)的熱點(diǎn)。本文研究的基于CAN總線的閥門控制系統(tǒng)就是將微控制器技術(shù)、CAN技術(shù)應(yīng)用于國產(chǎn)通用型電動閥門中,同工業(yè)控制計算機(jī)一同構(gòu)成的閥門遠(yuǎn)程控制系統(tǒng)。
1 閥門遠(yuǎn)程控制系統(tǒng)的總體設(shè)計
通用型閥門對控制精度要求不高,操作也較簡單,僅有開、關(guān)、停三種狀態(tài)。通常情況下,操作人員在現(xiàn)場通過對閥門上控制器的操作來控制閥門的開啟和關(guān)閉,閥門的開度通過閥門上的指針式儀表指示。出于保護(hù)的需要,控制器在電氣控制上實現(xiàn)了閥門故障狀態(tài)下的停機(jī)功能,但是對故障的診斷只能依靠操作人員的經(jīng)驗,甚至需要開蓋檢查,給維護(hù)帶來不便。
本文提出的遠(yuǎn)程閥門控制系統(tǒng)包括上、下位兩級控制,除了保留原有的現(xiàn)場操作功能外,操作人員還可以通過上位機(jī)對閥門進(jìn)行遠(yuǎn)程操作。上位機(jī)提供操作方便的人機(jī)交互界面,支持對系統(tǒng)中不同閥門的簡單組態(tài),并采用數(shù)據(jù)庫技術(shù)實現(xiàn)系統(tǒng)運(yùn)行中各閥門的狀態(tài)信息和故障信息的管理,便于系統(tǒng)的維護(hù),上位機(jī)除了具有與下位機(jī)通信的現(xiàn)場總線接口外,還應(yīng)具有以太網(wǎng)接口以實現(xiàn)系統(tǒng)與外部的信息交互。下位機(jī)在盡量保留原有的電動裝置電氣結(jié)構(gòu)的前提下,引入了微控制器技術(shù),構(gòu)成嵌入式控制系統(tǒng),既支持現(xiàn)場的操作,也支持上位機(jī)的遠(yuǎn)程控制,二者可以通過現(xiàn)場的開關(guān)進(jìn)行切換。下位機(jī)控制系統(tǒng)中增加了檢測電路和現(xiàn)場總線接口,實現(xiàn)了閥門運(yùn)行中大量故障信息的采集。
微控制器一方面能按現(xiàn)場或上位機(jī)設(shè)置的閥門開度值控制閥門的開啟和關(guān)閉,另一方面可以響應(yīng)上位機(jī)的數(shù)據(jù)請求,將閥門的運(yùn)行信息上傳給上位機(jī)。上位機(jī)、下位機(jī)之間通過現(xiàn)場總線連接,二者分工明確,構(gòu)成真正的全分布現(xiàn)場總線控制系統(tǒng)(FCS)。
根據(jù)以上分析,本文采用了集中管理、分散控制的上、下位機(jī)兩級控制的系統(tǒng)總體結(jié)構(gòu),如圖1所示。
圖1 CAN總線閥門控制系統(tǒng)結(jié)構(gòu)簡圖
上位機(jī)采用工業(yè)控制計算機(jī),除上面提到的功能外,還設(shè)計了運(yùn)行信息統(tǒng)計打印以及系統(tǒng)報警等功能;下位機(jī)是以微控制器為核心的控制單元,并嵌入到閥門中,與閥門的電氣控制部分一同實現(xiàn)控制功能。系統(tǒng)通信選用的是CAN總線,CAN總線協(xié)議簡單,僅包括物理層和數(shù)據(jù)鏈路層,用戶可以自己定義應(yīng)用層,傳輸介質(zhì)可以采用屏蔽的雙絞線,信號傳輸采用短幀結(jié)構(gòu),每一幀的有效字節(jié)數(shù)為8個,傳輸時間短,受干擾的概率低??偩€通信速率最高可達(dá)1Mbps/40m,直接傳輸距離最遠(yuǎn)可達(dá)10km/5Kbps,總線上可掛接設(shè)備數(shù)最多可達(dá)110個。當(dāng)某個節(jié)點(diǎn)嚴(yán)重錯誤時,能夠自動脫離總線,有關(guān)CAN總線技術(shù)的文獻(xiàn)較多,在此不作詳述。在本文提到的遠(yuǎn)程閥門控制系統(tǒng)中采用CAN總線是因為閥門控制功能邏輯簡單、信息量小,并結(jié)合CAN總線數(shù)據(jù)的傳輸速度、開發(fā)的難易程度、技術(shù)支持和成本等多方面的考慮。
2 上位機(jī)設(shè)計
系統(tǒng)上位機(jī)硬件選用研華工控機(jī)IPC-6718V,配以研華的雙端口CAN接口卡PCL-841,性能穩(wěn)定,大大縮短了系統(tǒng)的開發(fā)周期。上位機(jī)軟件采用VB610來設(shè)計,便于實現(xiàn)用戶需要的各種監(jiān)控功能。
上位機(jī)軟件包括系統(tǒng)安全模塊、系統(tǒng)通信參數(shù)設(shè)定模塊、數(shù)據(jù)庫模塊和閥門控制模塊等幾個部分。圖2給出了上位機(jī)各個軟件模塊之間的關(guān)系,從圖可以看出上位機(jī)軟件不僅實現(xiàn)了閥門控制功能,而且充分考慮了作為一個控制軟件所需要的系統(tǒng)安全以及數(shù)據(jù)庫操作。其中,閥門控制模塊是上位機(jī)軟件的核心。
圖2 上位機(jī)軟件模塊關(guān)系圖
上位機(jī)軟件的主要功能是實現(xiàn)對整個系統(tǒng)內(nèi)各閥門狀態(tài)的監(jiān)控以及提供用戶對現(xiàn)場閥門的遠(yuǎn)程控制操作。上位機(jī)軟件啟動后,首先進(jìn)行系統(tǒng)的初始化,之后進(jìn)入系統(tǒng)監(jiān)控運(yùn)行模式,如果是初次應(yīng)用,初始化后還要根據(jù)系統(tǒng)的具體情況進(jìn)行組態(tài)。在運(yùn)行模式下,上位機(jī)與下位閥門控制單元采用一問一答的方式進(jìn)行信息交換,上位機(jī)對每臺閥門返回的各種狀態(tài)和故障信息進(jìn)行分析后刷新數(shù)據(jù)庫中的相應(yīng)數(shù)據(jù),并刷新主監(jiān)控界面上的相應(yīng)部分。由于主監(jiān)控界面上的閥門較多,僅能簡單地示出每個閥門的基本運(yùn)行狀態(tài)(啟動、停止、故障)和開度,如果要查看某個閥門的詳細(xì)運(yùn)行信息,可以通過點(diǎn)擊界面上的閥門圖標(biāo)切換到該閥門的單臺監(jiān)測界面,這時除了可以給出閥門當(dāng)前的開度、開關(guān)停狀態(tài)等基本信息外,還可以示出電機(jī)缺相、轉(zhuǎn)越限、電機(jī)過熱等報警、故障信息。圖3給出了這一過程的軟件流程。
為了提高遠(yuǎn)程控制時的響應(yīng)速度,上位機(jī)設(shè)計了系統(tǒng)中單臺閥門的遠(yuǎn)程控制功能,這種工作模式下,用戶將要求的閥門開度通過CAN總線下傳給相應(yīng)閥門中的下位機(jī),由下位機(jī)控制閥門的啟動和停止,并將整個過程的運(yùn)行狀態(tài)實時傳給上位機(jī)。在實際應(yīng)用中,如果系統(tǒng)中不同的閥門有聯(lián)動要求,也可以通過上位機(jī)編程實現(xiàn)。
3 下位機(jī)設(shè)計
閥門的動作是由嵌入到閥門中的下位機(jī)控制的,下位機(jī)在接收到指定開度的命令后將分析此時閥門的運(yùn)行情況和各種狀態(tài),如果此時閥門處于允許動作的狀態(tài),下位機(jī)則發(fā)出分析后的指令(開或關(guān)),待閥門開度到達(dá)指定開度時,執(zhí)行停機(jī)操作。下面將從硬件、軟件兩個方面對下位機(jī)設(shè)計進(jìn)行較詳細(xì)的說明。
3.1 下位機(jī)硬件設(shè)計
下位機(jī)是具有“自治”功能的單片機(jī)控制系統(tǒng),在原有的電氣控制電路基礎(chǔ)上增加了故障信號的采集和對外通信的CAN總線接口。下位機(jī)電路從結(jié)構(gòu)和功能上可以分為主控單元模塊、電源監(jiān)測模塊、數(shù)據(jù)采集及控制接口模塊、人機(jī)接口模塊、總線通信模塊。它們之間的關(guān)系如圖4所示。
① 主控單元模塊
主控制模塊是整個下位機(jī)的核心,由單片機(jī)的最小系統(tǒng)構(gòu)成,協(xié)調(diào)其他四個模塊工作,完成下位機(jī)的控制功能??紤]到閥門的運(yùn)行信息采集點(diǎn)和故障信息采集點(diǎn)的數(shù)量和系統(tǒng)開發(fā)的難易程度,本系統(tǒng)選擇了PHILIP公司MCS51系列單片機(jī)80C552,它具有256字節(jié)可讀寫的RAM數(shù)據(jù)存儲器、5個8位I/O口、1個8位輸入口、2個16位定時器/計數(shù)器、1個配置捕捉/比較模塊的16位定時器、15個中斷源、2個中斷優(yōu)先級、8路10位的A/D轉(zhuǎn)換器、2路脈沖寬度調(diào)制輸出、2個串行口(異步串行口和I2C總線口),還集成了看門狗定時器。
② 電源監(jiān)測模塊
閥門在工作過程中會因為某些原因出現(xiàn)主電源回路掉電的情況,用戶要求在這種情況下,下位機(jī)系統(tǒng)的監(jiān)控部分仍能短期工作,并把這種故障及時上傳到上位機(jī)監(jiān)控系統(tǒng),以便操作人員及早發(fā)現(xiàn)、及時排除。為此,本文在下位機(jī)控制機(jī)中設(shè)計了電源監(jiān)測模塊,實現(xiàn)對閥門供電情況的監(jiān)測,并能實現(xiàn)主電源與備用電源間的切換,電路結(jié)構(gòu)如圖5所示。由于主電源回路掉電時,備用電源僅為單片機(jī)系統(tǒng)供電,加之這時的單片機(jī)系統(tǒng)工作于節(jié)電運(yùn)行方式,功耗較低,所以備用電源采用普通干電池或充電電池。實驗證明,在主電源回路掉電的情況下,備用電源可以工作12h以上,完全可以滿足維修的需要。
③ 數(shù)據(jù)采集及控制接口模塊
這部分是下位機(jī)控制系統(tǒng)的輸入、輸出部分,主要完成閥門各種報警信號、開度的采集,對閥門開、關(guān)、停的控制等,其結(jié)構(gòu)如圖6所示。在數(shù)據(jù)采集電路中,除了采集基本的運(yùn)行狀態(tài)外,還增加了電機(jī)缺相、轉(zhuǎn)矩越限、電機(jī)過熱、熔斷器損壞、行程開關(guān)到位、緊急制動狀態(tài)等大量的信號采集點(diǎn),提高了下位機(jī)的監(jiān)控能力。閥門中的采集信號和控制信號多數(shù)為強(qiáng)電信號,為了使單片機(jī)系統(tǒng)免受影響,在電路中采用了隔離設(shè)計,增加了系統(tǒng)的可靠性。
圖6 輸入/輸出電路結(jié)構(gòu)
④ 人機(jī)接口模塊
對閥門的運(yùn)行除了可通過上位機(jī)遠(yuǎn)程控制外,還保留了現(xiàn)場控制功能,這主要通過現(xiàn)場手操器完成,它是下位機(jī)中的人機(jī)接口模塊。手操器由鍵盤和數(shù)碼管顯示電路組成。在手操器的設(shè)計中采用了I2C總線技術(shù),鍵盤電路采用了具有I2C接口的輸入輸出擴(kuò)展芯片PCF8574,顯示電路采用了具有I2C接口的數(shù)碼管顯示驅(qū)動芯片SAA1064,單片機(jī)80C552本身就集成有I2C總線接口,為系統(tǒng)的軟硬件設(shè)計提供了方便。手操器的硬件結(jié)構(gòu)如圖7所示。另外,I2C總線支持帶電插拔,給手操器的使用帶來了極大的方便,使用者可以在不妨礙閥門正常工作的情況下,拆裝手操器。
圖7 人機(jī)接口電路原理
⑤ 通信功能模塊
通信電路是下位機(jī)中的CAN總線接口部分,是提供閥門遠(yuǎn)程控制功能的核心部分。它由CAN控制器SJA1000、CAN驅(qū)動器82C250以及光電隔離電路構(gòu)成,電路結(jié)構(gòu)如圖8所示。由于光電隔離的需要,模塊使用了DC-DC電源模塊。為了提高通信模塊的通用性,滿足不同使用的需要,在下位機(jī)中還設(shè)計了微動開關(guān),用于設(shè)置不同的通信波特率和不同閥門的地址選擇。
圖8 通信功能電路結(jié)構(gòu)
3.2 下位機(jī)軟件設(shè)計
下位機(jī)軟件用C51語言編寫,程序的可讀性、可移植性大大提高。下位機(jī)軟件主要完成閥門的狀態(tài)和故障的采集、閥門開度采集、執(zhí)行開關(guān)停閥門的動作和通信功能。由于篇幅的關(guān)系,下面僅介紹主控制程序和CAN總線通信中斷服務(wù)程序。
① 主程序的設(shè)計
下位機(jī)軟件的主要工作是采集閥門的信號、控制閥門運(yùn)動以及響應(yīng)上位機(jī)的請求或命令。下位機(jī)系統(tǒng)初始化后進(jìn)入主程序循環(huán),為了準(zhǔn)確采集閥門開度和避免誤報警,對輸入信號都進(jìn)行了簡單的數(shù)字濾波,下位機(jī)對這些信號綜合分析后,根據(jù)開度要求控制閥門的開、關(guān)、停動作。下位機(jī)具有現(xiàn)場控制、遠(yuǎn)程控制兩種控制方式,可由現(xiàn)場開關(guān)來區(qū)分,在這兩種控制方式下,下位機(jī)都可以根據(jù)上位機(jī)的要求進(jìn)行運(yùn)行數(shù)據(jù)的上傳。所不同的是,在現(xiàn)場控制時,操作者在現(xiàn)場用手操器進(jìn)行控制,這時上位機(jī)對下位機(jī)只能監(jiān)視,不能控制;遠(yuǎn)程控制時,下位機(jī)通過分析上位機(jī)命令來對閥門進(jìn)行控制。下位機(jī)主程序軟件流程如圖9所示。
圖9 下位機(jī)軟件流程圖
② CAN中斷服務(wù)程序的設(shè)計
當(dāng)上位機(jī)向下位機(jī)發(fā)出數(shù)據(jù)請求或命令時,下位機(jī)就會進(jìn)入CAN中斷服務(wù)程序。在進(jìn)入CAN中斷服務(wù)程序后,首先進(jìn)行現(xiàn)場保護(hù),然后讀取SJA1000的中斷寄存器,分析是哪種中斷并置相應(yīng)的標(biāo)志位,如果是接收中斷,則置接收數(shù)據(jù)標(biāo)志并讀取數(shù)據(jù),然后釋放緩存,最后恢復(fù)現(xiàn)場,中斷返回。CAN中斷服務(wù)程序如圖10所示。
圖10 CAN中斷服務(wù)子程序流程圖
由于下位機(jī)要嵌入到閥門電裝的腔體中,電磁干擾嚴(yán)重,在設(shè)計中采用了多種軟、硬件抗干擾設(shè)計,由于篇幅原因,不再一一詳述。
4 結(jié)束語
本文提及的技術(shù)已經(jīng)在天津閥門公司生產(chǎn)的QT、OOM、SMC、ZA等系列電動閥門中得到應(yīng)用,使其成為具有遠(yuǎn)程控制功能和故障診斷功能的電動閥門。由這些閥門構(gòu)成的遠(yuǎn)程閥門控制系統(tǒng)已經(jīng)實際運(yùn)行了近一年時間,運(yùn)行情況良好,達(dá)到了設(shè)計要求,并通過了天津市科委組織的專家鑒定。目前,正在準(zhǔn)備產(chǎn)品的中試,同時加緊應(yīng)用層協(xié)議的規(guī)范化,力圖盡快推出滿足DEVICENET的電動閥門產(chǎn)品。相信隨著這類產(chǎn)品的推向市場,必將推動我國現(xiàn)場總線執(zhí)行器的發(fā)展。