基于ControlNet現(xiàn)場(chǎng)總線的PLC環(huán)道控制和監(jiān)控系統(tǒng)設(shè)計(jì)
LabVIEW進(jìn)行串口通信的基本步驟為:
1)LabVIEW中的串口通信函數(shù)
①ISA配置串口。該函數(shù)主要用于串口的初始化。主要參數(shù)如圖2所示。
②ISA讀取函數(shù)。該函數(shù)為串口讀取子程序,從串行設(shè)備讀取數(shù)據(jù),為后續(xù)的數(shù)據(jù)處理提供條件。主要參數(shù)如圖3。
③ISA寫入函數(shù)。該函數(shù)為串口寫子程序,用于對(duì)串口設(shè)備進(jìn)行寫操作。
④閉端口。當(dāng)對(duì)串口操作完成后,需要關(guān)閉串口,以釋放硬件資源。
2)LabVIEW與PLC串口通信實(shí)現(xiàn)
按照上述過程,設(shè)計(jì)了監(jiān)控系統(tǒng)程序,程序框圖與前面板分別如圖6所示。
PC機(jī)與PLC串口通信程序結(jié)構(gòu)分為3個(gè)部分:
(1)串口初始化。根據(jù)通信協(xié)議設(shè)定,通信端口:COM1,波特率:9600bps,1位起始位,8位數(shù)據(jù)
位,1位停止位,無(wú)奇偶校驗(yàn),無(wú)軟件握手協(xié)議。
(2)發(fā)送命令和讀取響應(yīng)將命令通過串口COM1發(fā)給PLC,并接收來(lái)自PLC的響應(yīng)信息,如果響應(yīng)正常(狀態(tài)信息為01或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é)束。
5結(jié)論
本系統(tǒng)中通過在現(xiàn)場(chǎng)總線控制領(lǐng)域,ControlNet憑借更強(qiáng)的遠(yuǎn)程控制能力,實(shí)現(xiàn)數(shù)據(jù)遠(yuǎn)程集中處理的便捷;憑借5Mb/s的速率保證了實(shí)時(shí)傳輸;而且在安全性和穩(wěn)定性上,自身獨(dú)有的解決方法保證了在使用過程中數(shù)據(jù)的完備和安全。結(jié)合成功例子,使得ControlNet應(yīng)用于環(huán)道控制系統(tǒng)有了強(qiáng)大的保障。伴隨更多人的關(guān)注,ControlNet會(huì)有更大的發(fā)展。本系統(tǒng)采用的ControlNet總線結(jié)構(gòu)
是現(xiàn)如今最有發(fā)展的總線之一,這就注定了在今后的使用當(dāng)中,有這更多的拓展的空間和進(jìn)行進(jìn)一步提高性能的基礎(chǔ)。PLC自由口通信方式具有與外圍設(shè)備通信方便、自由,易于微機(jī)控制等特點(diǎn),這一通信方式被越來(lái)越多的監(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)論