基于虛擬儀器的PLC監(jiān)控系統(tǒng)設(shè)計(jì)
其中PC機(jī)與PLC串口通信程序結(jié)構(gòu)分為3個(gè)部分:
(1)串口初始化。根據(jù)通信協(xié)議設(shè)定,通信端口:COM1,波特率:9600bps,1位起始位,8位數(shù)據(jù)位,1位停止位,無奇偶校驗(yàn),無軟件握手協(xié)議。
(2)發(fā)送命令和讀取響應(yīng)將命令通過串口COM1發(fā)給PLC,并接收來自PLC的響應(yīng)信息,如果響應(yīng)正常(狀態(tài)信息為O1或02),就將所得數(shù)據(jù)做顯示、計(jì)算分析、存儲(chǔ)等后續(xù)處理,以便用于設(shè)備實(shí)時(shí)控制和在線狀態(tài)監(jiān)測(cè);如果響應(yīng)不正常則退出程序(03或04),用戶重新輸入命令開始工作。
(3)關(guān)閉串口。調(diào)用LabVIEW提供的VISA關(guān)閉串口函數(shù)實(shí)現(xiàn)串口資源的釋放。
當(dāng)程序運(yùn)行時(shí),LabVIEW首先向PLC發(fā)出一個(gè)讀請(qǐng)求,然后檢測(cè)輸入緩存中的字節(jié)數(shù);當(dāng)達(dá)到預(yù)定字節(jié)數(shù)時(shí),LabVIEW利用讀串口函數(shù)將輸入緩存中的字節(jié)一次性讀出,然后繼續(xù)發(fā)出一個(gè)讀請(qǐng)求到PLC。如此循環(huán),直至結(jié)束。本程序還采用了狀態(tài)機(jī)的方法進(jìn)行狀態(tài)的判斷和選擇。
4 結(jié)論
PLC自由口通信方式具有與外圍設(shè)備通信方便、自由,易于微機(jī)控制等特點(diǎn),這一通信方式被越來越多的監(jiān)控系統(tǒng)所采用。利用PC機(jī)或工控機(jī)的串口,按照自由通信協(xié)議,結(jié)合地址映射技術(shù)在LabVIEW平臺(tái)上開發(fā)出串行通信模塊,可以很方便地實(shí)現(xiàn)主機(jī)與PLC的串行通信,對(duì)PLC的內(nèi)存單元進(jìn)行讀寫操作,從而實(shí)現(xiàn)對(duì)PLC的監(jiān)控。本文所提出的設(shè)計(jì)能夠方便地應(yīng)用于基于PLC的工業(yè)監(jiān)控,具有開發(fā)方便、擴(kuò)展靈活的優(yōu)點(diǎn)。
評(píng)論