長江大學電子信息學院 石 雄 余仕求
分布式控制系集中控制系統是以微處理器為基礎,采用控制功能分散,顯示操作集中,兼顧分而自治和綜合協調的設計原則的新一代儀表控制系統。由于其通用性強,有清晰的人機友好界面,運行相對可靠等特點,目前已成為在控制系統的主流系統,在工業控制中得到了廣泛的應用。
Visual Basci具有編程語言簡單易學,界面設計靈活,開發周期短的特點,利用VB可實現分布式控制數據通信的功能。通過添加MSCOMM控件并設置相關參數就可實現通信而不必去調用API底層函數,屏蔽了對硬件的操作,具有完善的串口數據發送和接收功能。
本文中實例為多點溫度的監控,上位機通過RS485總線與下位機相連,下位機為智能儀表,采用Modbus協議通訊,上位機通過輪詢的方式依次訪問下位機,下位機作出應答返回數據。采用VB語言編程,通過Modbus協議實現工控機與智能儀表的通信,組成一個小型的分布式控制系統。

圖1 硬件連接示意圖
NHR系列單回路數字顯示控制儀是工控中常見一種控制儀表,可接入多種傳感器進行數據采集,具有PID整定功能,采用RS485或RS232的異步通信端口,采用Modbus通信協議。橫河系列中的UT35A功能更為強大,支持ModBus,以太網及Pr of ibus在內的多種通訊協議。本系統中兩者都采用RS485的接口,通信協議采用標準Modbus協議,采用RTU(十六進制數)傳輸模式。
工控機作為上位機與下位機采用主從應答的方式進行通信,上位機始終處于主動,每隔一段時間向下位機發送命令,下位機響應將數據或錯誤代碼固定的格式發回。例如讀采樣數據時,向指定地址的模塊發送讀數據指令,地址與之對應的從機準備好數據以幀的格式返回,若讀取失敗則發回錯誤代碼。向從機寫參數(如PID整定的預置值)時與此類似,若寫入正確則返回相同的寫數據指令,反之則返回錯誤代碼。
Modbus協議建立了主設備查詢的格式:設備(或廣播)地址、功能代碼、所有要發送的數據、錯誤檢測域。由于采用主從通信,從站之間不能進行單獨通信,信息發送只能由主站管理,任何一個時刻總線上只允許一個主從通信進行。協議楨中不包含任何消息報頭及消息結束符,消息的開始和結束依靠間隔時間來識別,當間隔時間和長于或等于3.5字符時,即作為檢測到楨結束。
協議楨定義如下:
從站地址:地址必須在1-247之間
功能代碼:包含讀,寫寄存器,錯誤代碼
數據:以二進制代碼傳輸
CRC16:循環冗余校驗,檢驗從從站地址到數據區最后一個字節。

圖2 軟件界面設計

圖3 讀寫數據流程圖
界面(見圖2)由兩部分構成,即讀數據和寫數據,智能儀表分別為虹潤的NHR5310和NHR1100以及橫河系列中的UT35A。實際調試中寫入值為PID溫度整定值,顯示值為當前溫度值。
系統分為寫模塊和讀模塊,寫模塊將設定的參數值(溫度設定值)寫入相應的寄存器,讀模塊用于顯示當前的參數值,更新頻率由Timer 2決定,如圖3所示。
本文介紹了VB6.0的串行通訊控件,采用Modbus協議與各個儀表進行數據采集的過程。給出了系統硬件結構及軟件流程圖,通過應用表明,數據采集準確,系統性能穩定。
[1]蔣學潤,李中華,毛宗源.基于VB的數據采集智能模塊與上位機串行通信的實現[J].計算機應用,2003(06)61-63.
[2]王曉崗.基于VB6.0串口通信的氣壓測高系統數據采集實現[J].測控技術,2010(03)116-117.
[3]郭皓,黃華,饒潔.基于VB的精餾塔數據采集控制系統設計[J].工業控制計算機,2005(8)24-25.
[4]趙忠波,巢麗萍,宋勇江.基于VB的分布式監控系統MODBUS通信設計[J].自動化技術與應用,2006(12)91-93.