李海軍
(中北大學(xué) 機(jī)電工程學(xué)院,山西 太原 030051)
近年來,隨著伺服系統(tǒng)的發(fā)展,越來越多的控制設(shè)備的控制源由普通電機(jī)變?yōu)樗欧姍C(jī)。伺服電機(jī)與普通步進(jìn)電機(jī)相比,具有以下優(yōu)點(diǎn):
(1)由于伺服電機(jī)與伺服驅(qū)動(dòng)器之間有編碼器連接,克服了步進(jìn)電機(jī)的失步問題,因此,伺服電機(jī)控制精度高。
(2)伺服電機(jī)有多種控制方式,應(yīng)用范圍較廣。(3)伺服電機(jī)運(yùn)轉(zhuǎn)平穩(wěn),即使在低速時(shí)也不會(huì)出現(xiàn)振動(dòng)現(xiàn)象。
本文主要介紹了LabVIEW與國產(chǎn)PLC的通信及應(yīng)用該方法構(gòu)建的交流伺服控制系統(tǒng)。
LabVIEW本身是一個(gè)功能比較完整的軟件開發(fā)環(huán)境,它是替代常規(guī)的BASIC和C語言而設(shè)計(jì)的,LabVIEW本身具備編程語言的特征,因此也稱為G語言。G語言與傳統(tǒng)高級(jí)編程語言最大的差別在于編程方式,一般高級(jí)語言采用文本編程,而G語言采用圖形化編程方式[1-2]。
可編程控制器(簡(jiǎn)稱PLC)是一種新型的具有極高可靠性的通用工業(yè)自動(dòng)化控制裝置,具有控制能力強(qiáng)、可靠性高、配置靈活、編程簡(jiǎn)單、使用方便、易于擴(kuò)展等優(yōu)點(diǎn),是當(dāng)今及今后工業(yè)控制的主要手段和重要的自動(dòng)化控制設(shè)備??梢赃@樣說,到目前為止,無論從可靠性上還是從應(yīng)用領(lǐng)域的廣度和深度上還沒有任何一種控制設(shè)備能夠與PLC相媲美。而LabVIEW與PLC之間的結(jié)合,其開發(fā)環(huán)境具有開發(fā)周期短、開發(fā)速度快等優(yōu)點(diǎn)[3-4]。
通過查閱相關(guān)資料可知,LabVIEW與眾多知名品牌PLC的通信已有很多工程人員進(jìn)行了應(yīng)用研究,然而對(duì)于LabVIEW與國產(chǎn)品牌的PLC的通信我們了解的還是比較少。
本控制系統(tǒng)選用的臺(tái)達(dá)PLC型號(hào)為DVP32EH00M3,通過查相關(guān)手冊(cè)可知,該型號(hào)的PLC支持MODBUS ASCII通信協(xié)議,而該款PLC只有RS232和RS485兩種類型的串口[5],因此采用LabVIEW上位機(jī)軟件基于MODBUS ASCII通信協(xié)議的串口進(jìn)行通信。LabVIEW串口通信的一般流程為:VISA配置串口-VISA寫入-VISA串口字節(jié)數(shù)-VISA讀?。璙ISA關(guān)閉。
1.1.1 VISA串口配置
圖1為VISA串口配置圖,從圖中可以看到,VISA串口配置的輸入有很多參數(shù),而我們所使用的臺(tái)達(dá)PLC需要配置的參數(shù)如表1所示。
圖1 VISA串口配置圖
表1 臺(tái)達(dá)PLC VISA配置參數(shù)
1.1.2 VISA串口的寫入
VISA串口的寫入需要按照一定的格式,通過查找相關(guān)的技術(shù)手冊(cè),獲得VISA串口寫入格式,如表2所示。
通過上述的寫入格式可知:命令碼不同,通過操作LabVIEW后實(shí)現(xiàn)的功能也不同。通過找相關(guān)的技術(shù)手冊(cè),獲得命令碼表,如表3所示。
表2 VISA串口寫入格式
表3 命令碼表
1.1.3 VISA串口字節(jié)數(shù)和VISA讀取
在LabVIEW中,VISA串口字節(jié)數(shù)與VISA讀取是一起使用的,其程序如圖2所示。
圖2 VISA串口字節(jié)數(shù)與VISA讀取的連接
將VISA串口字節(jié)數(shù)放在VISA讀取的前面其含義為:串口中有多少數(shù)據(jù),就會(huì)讀出多少數(shù)據(jù)。
通過上述方法,最終編寫了兩個(gè)LabVIEW與PLC通信流程圖,分別見圖3、圖4。
圖3 LabVIEW與PLC通信實(shí)例1
圖4 LabVIEW與PLC通信實(shí)例2
從圖3、圖4中可以看到,這兩個(gè)通信程序的相同之處在于通信的流程相同,區(qū)別為端口的配置和端口的關(guān)閉是否在循環(huán)體的內(nèi)部。如果端口的配置和端口的關(guān)閉在循環(huán)體的內(nèi)部,那么LabVIEW在從PLC中讀取數(shù)據(jù)的過程中,LabVIEW軟件頻繁地進(jìn)行串口的配置與關(guān)閉,很顯然圖3是不合理的,因此采用圖4的方法。
用交流伺服電機(jī)控制負(fù)載已經(jīng)在許多地方得到了應(yīng)用,然而僅僅通過PLC控制伺服電機(jī),如果伺服電機(jī)的臺(tái)數(shù)較多,或者在控制過程中I/O量較多,不僅會(huì)增加硬件的接線,同時(shí)也會(huì)降低整個(gè)系統(tǒng)的可靠性。為了能夠很好地去控制PLC,采用裝有LabVIEW軟件的工控機(jī)做上位機(jī),用LabVIEW軟件設(shè)計(jì)一個(gè)人機(jī)交互界面,設(shè)計(jì)了一個(gè)交流伺服電機(jī)控制系統(tǒng),不僅實(shí)現(xiàn)了對(duì)PLC的控制,同時(shí)也實(shí)現(xiàn)了對(duì)交流伺服電機(jī)的監(jiān)控,以更好地去控制交流伺服電機(jī)工作。整個(gè)控制系統(tǒng)的操作組成框圖如圖5所示。
圖5 控制系統(tǒng)組成框圖
本操作系統(tǒng)通過PLC實(shí)現(xiàn)交流伺服電機(jī)的啟動(dòng)、停止、正轉(zhuǎn)、反轉(zhuǎn),同時(shí)可以控制伺服電機(jī)的加減速時(shí)間。PLC控制程序如圖6所示。
圖6 PLC控制程序
應(yīng)用LabVIEW與PLC之間的通信,最終編寫的LabVIEW程序見圖7。LabVIEW人機(jī)交互界面見圖8。
圖7 LabVIEW總控制圖
由圖8可以看出,操作界面簡(jiǎn)單明了,而且節(jié)省了硬件觸點(diǎn)的使用。同時(shí)在工作過程中,可以很輕松容易地改變電機(jī)的轉(zhuǎn)速、行程及加減速時(shí)間。如果采用硬件很難做到這一點(diǎn)。
圖8 LabVIEW人機(jī)交互界面
本測(cè)試系統(tǒng)采用LabVIEW與PLC相結(jié)合的控制方式,更好地實(shí)現(xiàn)了人機(jī)交互,同時(shí),采用LabVIEW與PLC的開發(fā)環(huán)境,大大縮短了系統(tǒng)的開發(fā)時(shí)間,為工程人員提供了一個(gè)更好的開發(fā)思路。
[1]龍華偉,顧永剛.LabVIEW 8.2.1與DAQ數(shù)據(jù)采集[M].北京:清華大學(xué)出版社,2008.
[2]陳樹學(xué),劉萱.LabVIEW寶典[M].北京:電子工業(yè)出版社,2011.
[3]胡學(xué)林.可編程控制器教程[M].北京:電子工業(yè)出版社,2003.
[4]殷洪義.可編程序控制器選擇、設(shè)計(jì)與維護(hù)[M].北京:機(jī)械工業(yè)出版社,2003.
[5]臺(tái)達(dá)電子工業(yè)股份有限公司.臺(tái)達(dá)DVP-PLC編程技巧[M].北京:中國電力出版社,2010.