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