摘要:針對拉幅熱定型機(jī),設(shè)計一種基于485總線的分布式監(jiān)控系統(tǒng)#65377;用ARM嵌入式控制器實現(xiàn)主#65380;從電機(jī)的同步運行和烘房溫度的控制;在PC機(jī)上用VB6.0設(shè)計轉(zhuǎn)速和溫度的監(jiān)控畫面;實現(xiàn)ARM#65380;變頻器和PC機(jī)之間的數(shù)據(jù)通信#65377;結(jié)果表明,該系統(tǒng)實現(xiàn)簡單,通信可靠,移植性強(qiáng),在印染設(shè)備監(jiān)控中具有很強(qiáng)的推廣性#65377;
關(guān)鍵詞: 嵌入式;RS-485;印染設(shè)備;uClinux;監(jiān)控
中圖分類號:TP273文獻(xiàn)標(biāo)識碼:A
1引言
隨著工業(yè)自動化進(jìn)程的推進(jìn)和企業(yè)信息化程度的提高,利用遠(yuǎn)端智能模塊和RS-485網(wǎng)絡(luò)構(gòu)建監(jiān)控工作分散#65380;監(jiān)控結(jié)果集中的分布式監(jiān)控系統(tǒng),由于投資費用低#65380;結(jié)構(gòu)簡單#65380;實現(xiàn)容易#65380;通信距離長#65380;抗噪聲等優(yōu)點,在工業(yè)控制中得到了廣泛的應(yīng)用#65377;而微電子技術(shù)和自動控制技術(shù)的發(fā)展,以及計算機(jī)技術(shù)迅速向非計算機(jī)領(lǐng)域的滲透,特別是32位微處理器ARM在國內(nèi)外的廣泛應(yīng)用,使數(shù)字化#65380;網(wǎng)絡(luò)化和智能化控制,成為新一代印染控制設(shè)備的主要發(fā)展方向#65377;
我們針對拉幅熱定型機(jī)主#65380;從電機(jī)的同步運行和烘房溫度控制系統(tǒng)進(jìn)行監(jiān)控,實現(xiàn)了微機(jī)(PC機(jī))與MICROMASTER 440變頻器的設(shè)站通訊,配合漢化下拉式菜單和畫面顯示,以及必要的操作提示, 可完成對變頻器參數(shù)的設(shè)定#65380;運行參數(shù)的監(jiān)測#65380;運行數(shù)據(jù)和故障數(shù)據(jù)的采集#65377;嵌入式控制器ARM除控制拉幅熱定型機(jī)主#65380;從電機(jī)的同步和烘房的溫度外,還通過RS-485網(wǎng)絡(luò),將主#65380;從電機(jī)的轉(zhuǎn)速和烘房溫度數(shù)據(jù),傳送給上位機(jī)畫面實時顯示#65377;
2系統(tǒng)的總體設(shè)計
圖1為系統(tǒng)的總體框圖#65377;
ARM控制器通過兩路光電脈沖發(fā)生器PG1和PG2,同時采集拉幅熱定型機(jī)的主#65380;從電機(jī)M1和M2的轉(zhuǎn)速,經(jīng)計算后求出兩電機(jī)的轉(zhuǎn)速偏差,再經(jīng)過智能算法,輸出控制量,調(diào)整從動機(jī)的轉(zhuǎn)速,使之跟隨主動機(jī)#65377;由于是變頻器驅(qū)動,控制量要轉(zhuǎn)換為頻率的變化量#65377;ARM控制器按確定的數(shù)據(jù)結(jié)構(gòu),把控制量送給PC機(jī),PC機(jī)通過485接口與變頻器通訊,調(diào)節(jié)變頻器2輸出頻率,從而控制從動機(jī)M2的轉(zhuǎn)速,使之與主電機(jī)同步運行#65377;
圖1系統(tǒng)框圖
ARM控制器還通過溫度檢測控制電路,采集烘房溫度,經(jīng)過適合的算法,對烘房溫度進(jìn)行控制#65377;
這里重點介紹PC 機(jī)與變頻器和嵌入式控制器的RS-485接口設(shè)計#65377;整個系統(tǒng)采用RS-485總線標(biāo)準(zhǔn)進(jìn)行數(shù)據(jù)傳輸#65377;PC機(jī)采用研華的MOXA CP-132UL卡,它是專為工業(yè)通訊環(huán)境設(shè)計的 RS-422/485 二串口卡,它支持2 個獨立的 RS-422 或 RS-485 串口,在一對多點應(yīng)用環(huán)境中,每個串口最多可控制32個設(shè)備#65377;每塊卡采用自動數(shù)據(jù)流向控制ADDC(Automatic Data Direction Control) 功能, 無需額外的編程,即可輕松管理RS-485 半雙工通訊串口數(shù)據(jù)的傳送和接收#65377;變頻器采用西門子的MM440,它有統(tǒng)一開放的USS通信協(xié)議,可方便的與PC機(jī)進(jìn)行通信,并可以在運行中改變變頻器的運行參數(shù)#65377;
系統(tǒng)運行前,首先在PC機(jī)上設(shè)定變頻器的內(nèi)部參數(shù),電機(jī)的轉(zhuǎn)速和溫度的額定值;同時開啟控制器ARM,進(jìn)行數(shù)據(jù)采集和運算控制#65377;通過485總線,PC機(jī)可對主傳動系統(tǒng)的主#65380;從電機(jī)同步和烘房溫度的控制進(jìn)行實時監(jiān)測#65377;圖1僅針對拉幅熱定型機(jī)的同步系統(tǒng),所以只用了一個ARM控制器,如果需要擴(kuò)展到多單元的同步控制,增加被監(jiān)控的單元和控制量,可利用485接口,方便地接入多個ARM控制器#65377;
3上位機(jī)和變頻器
PC機(jī)與變頻器的通信采用USS協(xié)議#65377;該協(xié)議由SIEMENS AG定義,主要以RS-485總線方式將多臺西門子公司生產(chǎn)的變頻器#65380;直流調(diào)速器或PLC 等終端設(shè)備與工業(yè)控制計算機(jī)相連,實現(xiàn)遠(yuǎn)程監(jiān)控#65377;USS 協(xié)議是開放的,所以為用戶開發(fā)自己的基于該協(xié)議的軟件產(chǎn)品提供了可行性#65377;這樣不僅有利于降低開發(fā)成本,而且能充分滿足特定項目的需要,方便日常的工控網(wǎng)絡(luò)維護(hù)#65377;
USS協(xié)議支持多點聯(lián)接,支持主-從存取方式,用于單主站系統(tǒng),最多可連接32個站#65377;USS協(xié)議支持可變和固定報文長度,報文格式簡單,通信字符格式為:1位起始位#65380;1位停止位#65380;1位校驗位#65380;8位數(shù)據(jù)位,波特率最高可達(dá)18715Kbps#65377;
圖2為變頻器MM440的通信報文結(jié)構(gòu),對報文的具體字符含義不做過多解釋,詳見文獻(xiàn)[1],強(qiáng)調(diào)一點MM440支持BiCo(二進(jìn)制互聯(lián)連接)技術(shù),用戶可更方便的對它進(jìn)行參數(shù)的控制#65377; 圖2變頻器通信報文結(jié)構(gòu)[JZ)]
在變頻器與PC機(jī)進(jìn)行485通信前,對于MM440的參數(shù)設(shè)置至關(guān)重要#65377;首先將所有參數(shù)復(fù)位到出廠設(shè)置: P0010(調(diào)試參數(shù)過濾器)=30表示為工廠的設(shè)定值; P970(工廠復(fù)位)=1表示所有參數(shù)都復(fù)位到它們的缺省值;設(shè)置參數(shù):P0700(選擇命令源)=5, 表示COM鏈路的USS 設(shè)置; P1000(頻率設(shè)定值的選擇)=5,表示可通過USS 對變頻器進(jìn)行控制; P2010(USS 波特率)=6, 表示通信波特率選9600; P2011(USS地址號)等于1,表示變頻器1的地址為1; P2009(USS規(guī)格化)等于1,表示數(shù)值是以絕對十進(jìn)制數(shù)的形式發(fā)送[即4000(十進(jìn)制)(=0FA0hex)等于40.00Hz ]; P2012(USS 協(xié)議的PZD(過程數(shù)據(jù))長度)=2,表示PZD 傳輸?shù)氖强刂谱趾驮O(shè)定值,共2個; P1013(USS 協(xié)議的PKW長度)=4,表示用4個字節(jié)讀寫各個參數(shù)的數(shù)值; P2014(USS 的停止傳輸時間(ms))=X,表示允許用戶設(shè)定一個時間X,在經(jīng)過這個時間以后,如果USS 通道接收不到報文,就將產(chǎn)生故障信號F070#65377;
上位機(jī)和變頻器通信采用VB6.0編程[2],程序編制上采用事件驅(qū)動的通信方式#65377;串口每接收16 個字符便激活一個OnComm()事件,在OnComm()消息處理函數(shù)中,加入相應(yīng)的處理代碼,實現(xiàn)對變頻器參數(shù)的在線修改[3]#65377;
4上位機(jī)和ARM
嵌入式控制器采用三星公司的32位微處理器S3C44B0,芯片的內(nèi)核是16/32位ARM7TDMI精簡指令結(jié)構(gòu)處理器,是一種低功耗,通用微處理器內(nèi)核,特別適合于對價格比較敏感產(chǎn)品的設(shè)計[4]#65377;S3C44B0芯片除了微處理器內(nèi)核外,在芯片中還集成了許多外圍設(shè)備,如8通道10位ADC,1個I2C-BUS控制器,LCD控制器,2通道UART#65377;最重要的是它可以移植操作系統(tǒng)uClinux進(jìn)行管理#65377;
uClinux是一個優(yōu)秀的嵌入式操作系統(tǒng),它很適合那些沒有MMU(Memory Management Unit)的處理器#65377;沒有MMU的處理器在嵌入式領(lǐng)域中應(yīng)用相當(dāng)普遍#65377;針對uClinux內(nèi)核的二進(jìn)制代碼和源代碼都經(jīng)過重新編寫,以緊縮和裁剪基本的代碼#65377;這就使uClinux和標(biāo)準(zhǔn)Linux 2.0內(nèi)核相比非常小,但它仍然保持了Linux操作系統(tǒng)主要優(yōu)點#65377;
本系統(tǒng)中,我們用帶uClinux操作系統(tǒng)的S3C44B0X控制器,用它自帶的一路10位ADC,方便的對拉幅熱定型機(jī)的烘房溫度進(jìn)行較高精度的數(shù)據(jù)采集;通過I2C總線和外圍計數(shù)芯片實現(xiàn)兩路電機(jī)轉(zhuǎn)速的采集#65377;一個UART用作485總線接口,與PC機(jī)通信;一個LCD控制器直接接3.5寸的STN液晶器,方便觀察#65377;由于uClinux本身已經(jīng)做好網(wǎng)絡(luò)的移植,本系統(tǒng)采用網(wǎng)絡(luò)芯片RTL8019AS把嵌入式接入以太網(wǎng),用戶可以通過瀏覽器訪問該控制系統(tǒng)的運行數(shù)據(jù),實現(xiàn)對系統(tǒng)的遠(yuǎn)程監(jiān)控[5]#65377;
在拉幅熱定型機(jī)中,作為主傳動,帶動布鋏的主#65380;從電機(jī)的線速度同步,是保證加工質(zhì)量的關(guān)鍵,控制算法通常在PC機(jī)中完成,由于本系統(tǒng)采用32位微處理器,所以完全可以在作為下位機(jī)的ARM控制器中完成#65377;PC機(jī)僅用于監(jiān)測和變頻器通信,大大減輕了負(fù)擔(dān)#65377;而且S3C44B0具有很好的移植性,可以作為模塊方便的掛在485總線上#65377;嵌入式控制器S3C44B0和PC機(jī)之間,我們定義了下面的收發(fā)協(xié)議,如圖3所示#65377;其中命令包括復(fù)位命令和發(fā)送命令,若接收方在約定時間內(nèi)未收到發(fā)送命令幀,則發(fā)送復(fù)位幀,雙方回到通信程序的開始,清空緩沖區(qū),然后重新同步,具體流程如圖4所示#65377;
圖3控制器和PC機(jī)通信協(xié)議
圖4控制器通信流程
以下為ARM控制器發(fā)送數(shù)據(jù)的主程序流程主循環(huán)CRC校驗發(fā)生幀錯誤是本機(jī)地址發(fā)送應(yīng)答信息是發(fā)送命令幀發(fā)送采集數(shù)據(jù)信息是復(fù)位幀命令類型錯誤,丟棄當(dāng)前幀后返回
5實驗結(jié)果
PC機(jī)采用VB6.0做上位機(jī)監(jiān)控畫面,使用其Activex控件-MSComm,方便地實現(xiàn)了和多臺變頻器及嵌入式控制器的通信#65377;為了使軟件更友好,采用了多文檔(MDI)Windows 界面,支持下拉菜單,彈出式窗口,最大限度地方便了用戶的操作#65377;軟件主要由以下幾大模塊組成,即:用戶登陸模塊,實時監(jiān)控模塊#65380;參數(shù)設(shè)定模塊,歷史數(shù)據(jù)查詢模塊和文件管理模塊#65377;圖5為實時監(jiān)控模塊,它的三塊儀表可以顯示兩臺主#65380;從電機(jī)的轉(zhuǎn)速和烘房的溫度,當(dāng)溫度超過或低于設(shè)定值時,烘房溫度報警指示燈會點亮紅色,并發(fā)出報警聲#65377;同樣,當(dāng)主#65380;從電機(jī)轉(zhuǎn)速之差超過規(guī)定偏差的2%時,相應(yīng)的報警指示燈也會點亮紅色,并發(fā)出報警聲#65377;中間17個指示燈組成光柱,可以直觀地顯示主#65380;從電機(jī)轉(zhuǎn)速的正負(fù)偏差#65377;當(dāng)偏差為零時,中間的綠燈亮;有偏差時,兩邊的黃燈亮,偏差量越大,黃燈亮得越多,光柱越長;偏差超限時,位于光柱左#65380;右兩端的紅燈亮,表示主#65380;從電機(jī)的轉(zhuǎn)速失去同步,發(fā)出報警停車信號,這種設(shè)計使人機(jī)界面更加友好#65377;
圖5實時監(jiān)控模塊畫面
6結(jié)束語
在本系統(tǒng)中,ARM控制器實現(xiàn)了對拉幅熱定型機(jī)主#65380;從電機(jī)的同步控制和烘房溫度的實時控制,PC機(jī)實現(xiàn)了對電機(jī)轉(zhuǎn)速和溫度的監(jiān)控#65377;對于像這樣具有多控制任務(wù)的系統(tǒng),選用ARM嵌入式控制器,顯示了它在控制和通信上的優(yōu)越性#65377;雖然本系統(tǒng)是針對拉幅熱定型機(jī)設(shè)計的,但是由于485總線的節(jié)點可以擴(kuò)展到32個,變頻器和控制器均可進(jìn)一步擴(kuò)展#65377;而且低成本,低功耗,高性能的ARM控制器是在uClinux環(huán)境下開發(fā)的,其本身的移植性強(qiáng),加上PC機(jī)配置頁面的靈活性,更適合移植到其他印染設(shè)備的控制系統(tǒng)中,在其它工業(yè)現(xiàn)場的自動監(jiān)控中也具有很強(qiáng)的推廣價值#65377;
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。