摘要:筆者在本研究中對實現上位機通信的主要方法進行了詳細的介紹,并深入分析了基于VB的PLC和上位機通信之間的通信協議,提出了基于VB的PLC和上位機通信的軟件實現方法,給出了基于VB的PLC上位機通信的軟件流程。此外,編寫出的上位機通信軟件在數據采集和監控系統得到了廣泛的應用,證明了它能夠可靠且穩定的運行,值得推廣和使用。
關鍵詞:VB;PLC;上位機通信
基于VB的PLC和上位機通信的編程所占據的空間比較小,運行速度快,功能更加全面,不僅支持開放網絡,還能夠緊密地將機器與機器之間連接起來,以達到更高的數據信息共享效率。為保證基于計算機VB的PLC總線和上位機之間可以連接可以精確的交換信息,必需制定科學合理的通信協議。這種通信協議一般選擇主從輪詢的方法:上位機通信應該具有優先進行傳輸數據的權利,且全部的通信應該都通過上位機來運行。每個通信單元接收到指令之后,將指令傳達給PLC執行,再把執行的結果傳達回上位機,這兩部分以幀為基本單位互相進行信息的交換。上位機向基于VB的PLC傳輸信息或者從基于VB的PLC中采集信息都是通信單元以幀的形式進行傳輸的,對于通信單位發來的指令幀,上位機使用回復幀進行回復。在指令幀或回復幀中含有需要進行通信的信息,必需按照標準進行判別,這樣才可以準確的提取出有用的動態數據和信息,才可以把需要進行傳輸的信息及時傳達給用戶。
2.1基于VB的PLC控件
通過采用VB提供的PLC控件,能夠實現基于VB的PLC和上位機通信。基于VB的PLC控件是麥斯寇索芙特公司提供的簡化Windows環境中下上位機通信程序編制的艾克提姆科斯控件,它利用上位機傳輸和采集信息,這種控件的操作非常簡單便捷,性能也比較穩定且安全可靠。基于VB的PLC控件包括兩種處理通信問題的方式:事件驅動方式和查詢方式。事件驅動方式的優勢是程序運行時占據的CPU較小,響應時間比較短,可靠性和安全性高,在出現新字符傳輸到上位機端口的狀態發生改變或錯誤的情況下,基于VB的PLC控件會自動啟動OnComm程序,當應用程序運行這個指令之后,會自動檢測基于VB的PLC控件的Comm事件屬性,以此來得到所出現的錯誤情況,進而采取相應的措施。在本系統中采用事件驅動方式的常用的屬性包括Commport屬性、Settings屬性、PortOpen屬性、Input屬性以及Output屬性。Commport屬性是用于設置或返回通信連接端口號碼。Settings屬性是用于設置初始化參數。以字符串的形式設置或返回傳輸速率、校驗位、數據位及停止位等4個參數。格式為“BBBB,P,D,S”,其中BBBB為傳輸速率;P表示校驗檢查方式;D表示數據位數;S表示停止位數。默認值是“9600,N,8,1”,本系統采用系列PLC,通信初始化參數設置為“9600,E,7,2”,它表示所使用的通信端口是以每秒9600位的速度作傳輸,作偶校驗的檢查,每個數據是7位,而停止位是2位。PortOpen屬性是用于設置或返回通信連接端口的狀態。Input屬性是用于從輸入緩沖區返回并刪除字符。
2.2基于VB的PLC上位機通信的軟件流程
基于VB的PLC上位機通信軟件是通過基于VB的PLC控件來實現上位機通信的。軟件的具體流程如下:通過PLC編程軟件對計算機硬件進行科學合理的信息設置;建立上位機連接端口,并對上位機參數進行初始化,把打開的上位機號、輸送的波頻率、奇偶校驗以及停止位等參數進行設置;上位機判別來自PLC傳輸的指令。為了保證上下位機之間的準確及時的通信,上位機所傳輸的指令幀必需是準確的,在發送完指令幀之后,上位機便處于等待狀態,直到接收到PLC的回復幀為止,分析結束碼,判斷是否有錯誤,正常情況下,回復幀的代碼為“oo”,出錯則顯示錯誤代碼,之后PLC再根據錯誤類型作相應的糾錯處理。
2.3基于VB的PLC上位機通信程序實例
在數據采集和監控系統中,基于VB的PLC上位機通信程序實例主要用在表示和分析從傳感設備接收到的信息。在該系統中能夠利用設置定時器控件的英特威爾屬性,確定收集信息的時間間隔,通常情況下,系統設定為一百毫秒的時間間隔,這樣能夠有效提高信息采集的速率。在系統的操作界面上,用戶能夠根據實際情況自由的選擇上位機通信端口和模塊編號;在地址文本框中可設定讀取PLC存儲區的地址。鼠標左鍵單擊打開上位機通信端口的窗口,啟動定時器,程序代碼會不斷地通過中間程序發送,并收集得到信息數據的指令,及時處理得到的指令結果,并在窗體上顯示模擬輸入值,繪出模擬量變化的曲線圖。
本研究對基于VB的PLC和上位機通信之間的通信協議進行了深入的研究,通過基于VB的PLC控件達到了基于VB的PLC的上位機通信。基于VB的PLC控件程序所編寫的上位機通信軟件在數據采集和監控系統中得到了廣泛地應用,證實了這種上位機通信的可靠性和安全性。此外,利用上位機通信對基于VB的PLC的判別,還實現了實時的信息自動收集,能夠在很大程度上對工業現場設備進行高效的監測和管理。
[1]高欽和.可編程控制器應用技術與設計實例[M].北京:人民郵電出版社,2014:49-50.
[2]陳常祥,王強,張天橋等.MS(X)MM與程序接口函數實現PLC上位機通信比較[J].工業控制計算機,2012,19(10):9-10.
作者簡介:林晰明(1989.6-)吉林長春熱你,國家新聞出版廣播電影電視總局523臺助理工程師,本科
(作者單位:國家新聞出版廣播電影電視總局 523臺)