崔陽(yáng)
摘 要:溫度控制軟件是工業(yè)控制軟件中的一類(lèi),對(duì)溫度數(shù)據(jù)采集有嚴(yán)格要求。為了能夠準(zhǔn)確實(shí)現(xiàn)溫度數(shù)據(jù)的采集和表示,首先總結(jié)了溫控?cái)?shù)據(jù)的主要特點(diǎn),對(duì)Modbus協(xié)議和地址規(guī)范做了介紹。在此基礎(chǔ)上對(duì)LabVIEW與基于Modbus協(xié)議的溫控硬件設(shè)備通信模式進(jìn)行了研究,對(duì)通信過(guò)程中可能出現(xiàn)的一些問(wèn)題做出分析,并予以解決。最后在橫河電機(jī)的UP35A溫控調(diào)節(jié)器上進(jìn)行了編程實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明這一通信模式能夠較好地滿足溫控?cái)?shù)據(jù)采集的要求。
關(guān)鍵詞:Modbus協(xié)議;LabVIEW;溫度控制
中圖分類(lèi)號(hào):TP319 文獻(xiàn)標(biāo)識(shí)碼:A
Abstract:Temperature data collection is one of the critical issues in temperature control software.To solve the problem of accurateness in collection and display of temperature data,specification of the Modbus protocol and address,as well as characteristics of the temperature data are introduced briefly at first,based on which the communication model between LabVIEW and Modbus-supported hardware is studied and programmed on Yokogawa UP35A.Results show that model can meet the requirements of temperature control data collection and display better.
Keywords:modbus protocol;LabVIEW;temperature control
1 引言(Introduction)
溫控系統(tǒng)軟件是工業(yè)控制軟件中常用的一類(lèi),廣泛用于紡織品印染、鋰電池制造、家電生產(chǎn)等領(lǐng)域。由于對(duì)溫控?cái)?shù)據(jù)的采集、處理、顯示要求都比較高,因此當(dāng)前對(duì)溫控?cái)?shù)據(jù)的采集和處理已經(jīng)基本實(shí)現(xiàn)了自動(dòng)化[1]。
LabVTEW是由美國(guó)國(guó)家儀器(NI)公司研制開(kāi)發(fā)的一種程序開(kāi)發(fā)環(huán)境,它使用圖形化編輯語(yǔ)言編寫(xiě)程序,是NI設(shè)計(jì)平臺(tái)的核心,在開(kāi)發(fā)工業(yè)控制系統(tǒng)方面具有極大優(yōu)勢(shì)[2]。目前很多溫控設(shè)備是基于Modbus協(xié)議通信的,這類(lèi)設(shè)備不但可以實(shí)現(xiàn)對(duì)溫控?cái)?shù)據(jù)的準(zhǔn)確、實(shí)時(shí)、多通道采集,還能在無(wú)線網(wǎng)絡(luò)環(huán)境下進(jìn)行配置,這就擴(kuò)大了設(shè)備的使用范圍。因此在溫控軟件系統(tǒng)研發(fā)中越來(lái)越多地采用以LabVIEW作為溫控?cái)?shù)據(jù)顯示界面、Modbus設(shè)備實(shí)現(xiàn)溫控?cái)?shù)據(jù)采集的模式。本文針對(duì)工作中LabVIEW與基于Modbus協(xié)議設(shè)備的通信原理、過(guò)程及常見(jiàn)問(wèn)題進(jìn)行研究。
2 溫控?cái)?shù)據(jù)的主要特點(diǎn)(Primary characteristics of thermostat data)
溫控系統(tǒng)數(shù)據(jù)的特點(diǎn)與其應(yīng)用領(lǐng)域密切相關(guān),主要有以下幾點(diǎn)[3]:
(1)數(shù)據(jù)量大。由于溫控軟件一般處于長(zhǎng)時(shí)間運(yùn)行狀態(tài),對(duì)溫控?cái)?shù)據(jù)的采集間隔短,且基本是多通道并行采集,因此產(chǎn)生的數(shù)據(jù)量非常大。例如一款用于鋰電池制造的溫控軟件的一次運(yùn)行時(shí)間通常在幾天到十幾天之間,此期間每0.2秒采集一次數(shù)據(jù),數(shù)據(jù)分若干組,每組最多同時(shí)對(duì)四個(gè)通道進(jìn)行采集。數(shù)據(jù)量以GB甚至TB計(jì)。
(2)處理過(guò)程復(fù)雜。溫控軟件對(duì)數(shù)據(jù)的處理一般要遵循相關(guān)的行業(yè)標(biāo)準(zhǔn),處理時(shí)除數(shù)據(jù)本身外,還要綜合軟件運(yùn)行時(shí)間閾值、采集頻率、數(shù)據(jù)狀態(tài)等計(jì)算得出溫變趨勢(shì),以便進(jìn)行決策。
(3)實(shí)時(shí)性強(qiáng)。由于溫控軟件屬于工業(yè)控制軟件,因此實(shí)時(shí)性是其重要指標(biāo)之一。例如在鋰電池制造中,溫度值超過(guò)某一閾值不能連續(xù)達(dá)到用戶設(shè)定的最大時(shí)間,否則就有可能出現(xiàn)報(bào)廢。
正是由于溫控?cái)?shù)據(jù)的上述特點(diǎn),要特別注意數(shù)據(jù)的準(zhǔn)確性和同步性。這也是使用LabVTEW對(duì)溫控?cái)?shù)據(jù)進(jìn)行采集、顯示和監(jiān)控的主要目的之一。
3 Modbus地址規(guī)范(Specification of modbus address)
Modbus是世界上第一個(gè)真正用于工業(yè)現(xiàn)場(chǎng)的總線協(xié)議,1979年由Modicon公司發(fā)明。LabVIEW和PLC的通信方式主要有兩種:Modbus和NI OPC Server。前者需要PLC安裝Modbus模塊,后者需要對(duì)特定PLC設(shè)備支持才能保證正常連接[4]。在實(shí)現(xiàn)方面Modbus的物理接口有以太網(wǎng)與串口兩種。近年來(lái)很多支持Modbus協(xié)議的設(shè)備已能夠在無(wú)線網(wǎng)環(huán)境下進(jìn)行配置和連接,因此更為靈活方便。例如橫河電機(jī)的UP35A設(shè)備就可以同時(shí)提供有線和無(wú)線兩種連接方式。
通常,Modbus地址是一個(gè)包含數(shù)據(jù)類(lèi)型和偏移量的6個(gè)字符的數(shù)值。其中前兩個(gè)字符指定數(shù)據(jù)類(lèi)型,后4個(gè)字符給出該數(shù)據(jù)類(lèi)型中的序號(hào)。不同公司開(kāi)發(fā)的設(shè)備Modbus地址有所不同[5]。例如40001—4XXXX是美國(guó)Modicon公司和GE公司PLC使用的Modbus地址,它是基于1的地址(即同類(lèi)元件的首地址為1)。這一地址左起第2位用于表示元件類(lèi)型,如i0.0的Modbus地址為010001。而西門(mén)子PLC的Modbus地址是基于0的,如i0.0的Modbus地址實(shí)際上為000000,i2.0的Modbus地址為000016而非010017等等。在配置Modbus地址時(shí)要注意。
有時(shí)Modbus地址的后4位可能被標(biāo)記為偏置。這時(shí)就需要在地址的一二位之間添0,使地址從5位變?yōu)?位。例如,若設(shè)備手冊(cè)上標(biāo)示的一個(gè)Modbus地址40001用于某一寄存器通信,則編程人員就應(yīng)將這一地址配置為400001。
4 LabVTEW與Modbus設(shè)備的通訊配置(Communication configuration of labVTEW and modbus device)
LabVIEW與Modbus設(shè)備在通訊前要進(jìn)行設(shè)置,且必須安裝DSC模塊[6]。在安裝時(shí)需要注意的是DSC版本必須和LabVIEW版本相同,如LabVIEW為2013版,則DSC也應(yīng)為2013版,否則將無(wú)法安裝。
具體配置工作可劃分為Modbus I/O Server配置、約束變量創(chuàng)建和Modbus I/O Slave配置幾部分。
4.1 Modbus I/O Server配置
首先在集成開(kāi)發(fā)環(huán)境中新建工程,然后在工程中新建I/O Server,如圖1所示。之后在圖2的界面中選擇”Modbus”建立Modbus Server,同時(shí)在“Model”中選擇以太網(wǎng)或無(wú)線網(wǎng)模式,并輸入modbus設(shè)備的IP地址。由于在DSC中端口號(hào)已經(jīng)默認(rèn)為502,因此Modbus端口不需要再進(jìn)行設(shè)置,只需配置IP地址。
以上是最基本的Modbus I/O Server配置。用戶可根據(jù)NI給出的“Modbus libraries for LabVIEW”庫(kù),結(jié)合實(shí)際工作需求做進(jìn)一步配置。
4.2 約束變量創(chuàng)建
約束變量創(chuàng)建也就是Modbus寄存器地址創(chuàng)建。在如圖3所示的約束變量創(chuàng)建界面中選擇“添加范圍”,將所需的約束變量項(xiàng)數(shù)添加進(jìn)去,這時(shí)在I/O Server中會(huì)出現(xiàn)對(duì)應(yīng)的Modbus地址。如果設(shè)備的Modbus地址是5位,還需要在一二位之間加“0”,使地址達(dá)到6位。之后將約束變量直接拖入LabVIEW生成的VI界面中即可。
4.3 Modbus I/O Slave配置
Modbus I/O Slave配置不是必需的,但可以用來(lái)模擬一些運(yùn)行環(huán)境情況。Modbus I/O Slave的配置步驟與Modbus Server大體相同,但必須要將地址設(shè)置為與Server通信地址一致,否則無(wú)法通信。Modbus Server創(chuàng)建約束變量的方式也與“Modbus Server”相同。
5 實(shí)驗(yàn)(Experiment)
實(shí)驗(yàn)以橫河電機(jī)的UP35A設(shè)備為平臺(tái),上層開(kāi)發(fā)環(huán)境為Windows 7、LabVIEW2013和DSC2013。UP35A是橫河電機(jī)一款用于溫控軟件系統(tǒng)的新型溫控調(diào)節(jié)器,尺寸為1/4DIN,可設(shè)置四種程序模式,能夠同時(shí)監(jiān)視兩個(gè)PV事件、四個(gè)時(shí)間事件和兩個(gè)報(bào)警,且支持Modbus協(xié)議和無(wú)線局域網(wǎng)連接。實(shí)驗(yàn)中設(shè)置UP35A模擬發(fā)生PV值,以正弦波信號(hào)形式發(fā)送,LabVIEW創(chuàng)建的VI界面負(fù)責(zé)對(duì)PV值進(jìn)行采集和顯示。
實(shí)驗(yàn)環(huán)境中UP35A的IP地址可設(shè)置為192.168.X.X的內(nèi)部地址。通過(guò)查找UP35A的配置XML表,可知UP35A的PV寄存器Modbus地址為42003,在第一二位之間添“0”后變?yōu)?02003。按上節(jié)中的步驟完成配置后運(yùn)行程序。數(shù)據(jù)采集頻率為10次/秒。從圖4可知,程序運(yùn)行時(shí)LabVIEW對(duì)Modbus設(shè)備數(shù)據(jù)采集基本能夠做到準(zhǔn)確和同步。
6 結(jié)論(Conclusion)
在溫控軟件中使用LabVIEW與Modbus設(shè)備通信非常方便和高效。上述方法對(duì)實(shí)現(xiàn)過(guò)程中可能遇到的一些問(wèn)題進(jìn)行了研究,并給出了解決辦法。實(shí)際編程中證明這一方法是行之有效的。今后可以在提高數(shù)據(jù)采集的多樣性和靈活性等方面加以改進(jìn)。
參考文獻(xiàn)(References)
[1] 趙鵬.基于無(wú)線傳感器網(wǎng)絡(luò)的動(dòng)態(tài)溫控系統(tǒng)分析[J].南京工程學(xué)院學(xué)報(bào)(自然科學(xué)版),2014,12(2):18-23.
[2] Jeffrey Travis,Jim Kring.LabVIEW大學(xué)實(shí)用教程[M].北京:電子工業(yè)出版社,2008.
[3] 劉蓁,尹鳳媛.PLC在溫控系統(tǒng)中的應(yīng)用[J].微計(jì)算機(jī)信息,2012,28(9):76-87.
[4] 袁文波,等.S7_PLC基于Modbus_TCP協(xié)議通信研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2014,35(2):736-741.
[5] 史運(yùn)濤,等.基于Modbus協(xié)議的通訊集成技術(shù)研究[J].化工自動(dòng)化及儀表,2010,37(4):67-72.
[6] 李琳芳,賈蕓芳,李國(guó)厚.基于LabVIEW的數(shù)據(jù)采集與處理系統(tǒng)設(shè)計(jì)[J].河南科技學(xué)院學(xué)報(bào),2015,43(2):51-55.
作者簡(jiǎn)介:
崔 陽(yáng)(1979-),男,博士,講師.研究領(lǐng)域:知識(shí)工程與知識(shí)發(fā)現(xiàn).