0 引言
計算機測控系統通常需要上位計算機與工業現場各種儀器儀表進行通信,及時了-解現場儀器儀表的運行情況,實現對現場狀態的實時監控。
MCGS組態軟件作為工業過程茬制和實時監瀏領域的通用計算機系統軟件,由于其具有功能完善、操作簡便、可視性好、可維護性強、采用開放式結構可與廣泛的數據源交換數據等特點而得薊越來越廣泛的應用。硼七s為數據采集和控制提供了底層設備驅動程序,允許它直接與大多數智能璦備進行通信。然而。McGs提供的設備驅動程序主要是針對目前市場上一些主流控制器或其他智能設備,在實際應用中,或因為所羈設備的特殊性,或因為實際工程需要,其設備驅動功能總會有些不盡人意,甚至沒有提供某種智能設備的驅動程序,這給用戶使用該軟件實現與某些智能設備通信帶來諸多不便。
為了解決上述問題,常廂的方涪有2種:向廠家購買MCGS高級開發工具包,按照MCGS提供的規范設備驅動程序接口,用戶根據自己的需求開發設備驅動程序;采用MCGS提供的OLE技術,用戶利用其他支持OLE技術的通用較件諸如VB、VC、Delphi等開發應用程序操作MCGS中的對象,利用這些通用軟件提供的數據通訊羈處理功能編寫數據通訊程序茹嵌人到MCGS控系統中.實現教據交換。
VB是一款簡單、易用的可視化編程語言,開發者可以方便地使用其提供的組件快速建立應用程序。利用VB支持的OLE技術可以方便地開發出Windows環境下的OLE通信程序。因此文中給出了一種基于VB和OLE技術的上位計算機與流量計通信方法,解決了MCGS與流量計通信時存在的問題,實現了MCGS對流量計的實耐監控。
1 系統的基本結構
基于McGs和vB的渦輪流量計實時監控系統主要由工控機、Rs-232通信電纜、Rs-485/RS-232適配器、流量計、打印機、投影儀等組成。
系統流量計選用QWLJ系列氣體禍輪流量計。QWLJ系列流量計集流量傳感器、溫度傳感器、匿力傳感器和智能流量積算識于一體,可實現流量的溫壓補償和壓縮因子修正,直接顯示標準狀態下的體積流量。多臺流量計通過Rs一485接口總線連接灌RS-485/Rs-2,2適配器連接烈上位機的COM口。QWLJ系列流量計支持廠家自定義通信錛議和MODBUS通信協議,考慮到將來的擴展開發和組網通信,系統選用MODBUS協議實現上位機與流量計湮信,撈議具體格式如表1和表2所示。上位機通過發送命令幀對流量計指定寄存器的讀寫袤得流量、壓力、溫度等信息,這里只涉及到功能碼03(讀取保持寄存器)和功能碼16(預置多寄存器)。
2 系統酌工惟原理
MCGS組態軟件與渦輪流量計的通信原理如圖1所示。系統通信包括2部分;McGs與vB程序的OLE通信;VB程序通過RS-232/RS-485與現場流量統計的通信。
2.1 MCGS與Ⅶ的OLE通信
實時數據庫是McGs的核心,MCGS把整個實時數據庫作為一個對象封裝起來,提供一系列的方法和屬性,外部程序通過這些方法和屬性對MCGS進行各種操作。MCGS運行起來后,實時數據庫對象被暴露出來,通過OLE自動化操作可以取得實時數據庫對象,再利用實時數據庫對象的SetValueFrom—Nane方法,即可實現外部程序直接刷新MCGS實時數據庫。以下為MCCS與VB實現OLE通信的部分程序。
2.2 VB與流量計通信
該系統采用一主多從通信方式,其中上位計算機作為主機,各流量計作為從機。主機采用查詢方式接收從機發送過來的數據。為了實現多機無沖突可靠通信,每臺從機必須有唯一的地址,可以通過流量計面板的菜單模式下進行地址設置。在VB環境下編制的通信程序,主要用到了Mscomm控件,其提供了非常豐富的屬性和方法,已將通信的大部分底層操作封裝在控件內部,為實現VB與各種設備進行通信提供了一種有效途徑。文中采用模塊化編程方法編寫數據通訊程序,實現VB與流量計間的通信。由于篇幅所限,只介紹VB與l#流量計通信的主要程序模塊:
(1)程序初始化模塊。主要完成串口的選擇、波特率、數據位、校驗位設置、打開串口等工作。
(2)發送數據模塊。有手動發送和自動發送命令幀2種方式。手動發送方式功能主要實現預置多寄存器的值,主要是設置參數上、下限值及報警值,功能碼為16;自動發送方式功能主要實現讀取保持寄存器的值,主要是讀取壓力、溫度、流量等信息,功能碼為03。自動發送方式下程序的實現采用定時觸發方式。當上位機發送完命令幀,延時等待,如在規定的時間內,流量計沒有應答,上位機重發此命令幀,這里設置為3次呼叫,若都無應答則給出報警提示。部分程序如下:
(3)接收數據模塊。通過查詢方式來完成數據的接收,即在程序中定時查詢Mscomm控件的InBufferCoumt屬性是否發生變化。如果串口接收到數據,且數據緩沖區的內容等于設定的字節數時,取出完整的通訊數據幀。在數據處理過程中,首先進行CRC校驗,若不正確,丟棄本幀應答數據,上位機重發命令幀。否則對數據進行處理,并將處理結果與MCGS實時數據庫對象進行OLE數據交換。部分程序如下:
3 結束語
通過MCGS與VB間的OLE通信及VB與渦輪流量計聞的串口通信,利用VB提供的強大的數據通訊和處理功能實現數據采集、處理及控制,并利用MCGS組態軟件豐富的圖形化來實現界面設計,將阿種方法結合起來則是一種很好的選擇。目前該方法已應用于天然氣氣化輸配監控系統中.運行結果表明,基于VB的MCGS和渦輪流量計間的通信具有良好的實時性、穩定性私可靠性。餌決了MC(甚與QWLJ系烈渦輪流量計的通信問題,實現了MCGS對渦輪流量計的實時監控。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文標題:基于VB的MCGS與渦輪流量計通信實現