国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Modbus/TCP工業(yè)以太網(wǎng)的自動(dòng)化控制系統(tǒng)★

2011-07-12 12:29:32關(guān)學(xué)進(jìn)劉娟
電子測(cè)試 2011年4期
關(guān)鍵詞:汽包字節(jié)控制算法

關(guān)學(xué)進(jìn),劉娟

(重慶郵電大學(xué)教育部網(wǎng)絡(luò)控制技術(shù)與智能儀器儀表重點(diǎn)實(shí)驗(yàn)室,重慶 400065)

0 引言

隨著計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,信息技術(shù)已逐步進(jìn)入工業(yè)自動(dòng)化領(lǐng)域[1]。新型工業(yè)以太網(wǎng)技術(shù)Modbus/TCP是Modbus家族中應(yīng)用于自動(dòng)控制裝備上的開(kāi)放的通信協(xié)議,廣泛應(yīng)用于電力、水利、冶金、化工、機(jī)械、制造業(yè)等控制系統(tǒng)。它利用TCP/IP協(xié)議將Modbus消息封裝成IP包,使用通用的網(wǎng)絡(luò)部件在Intranet/Internet上傳輸[2]。

國(guó)際互聯(lián)網(wǎng)編號(hào)分配管理機(jī)構(gòu)專門為其賦予TCP502端口。2004年1月,法國(guó)召開(kāi)的SC65C工作組會(huì)議中將Modbus/TCP列入IEC標(biāo)準(zhǔn)[3]。我國(guó)也已經(jīng)把Modbus/TCP列為工業(yè)網(wǎng)絡(luò)的標(biāo)準(zhǔn)。本文通過(guò)分析Modbus/TCP協(xié)議構(gòu)成,設(shè)計(jì)出了一套基于Modbus/TCP協(xié)議的工業(yè)以太網(wǎng)自動(dòng)化控制系統(tǒng)的可行性實(shí)施方案。

1 Modbus/TCP協(xié)議

Modbus是一種應(yīng)用層報(bào)文傳輸協(xié)議,用于實(shí)現(xiàn)不同類型的總線或網(wǎng)絡(luò)連接的設(shè)備之間的客戶機(jī)/服務(wù)器通信。Modbus/TCP協(xié)議是Modbus家族中應(yīng)用于自動(dòng)控制裝置上的開(kāi)放的通信協(xié)議。它支持C/S模式,將應(yīng)用層的Modbus消息封裝成IP包,通過(guò)通用的網(wǎng)絡(luò)部件在Intranet/Internet上傳輸[4-5]。Modbus通信協(xié)議棧如圖1所示。

1.1 客戶機(jī)/服務(wù)器模型

Modbus/TCP是采用C/S模式來(lái)進(jìn)行報(bào)文傳輸,此模式基于4 種類型報(bào)文,即請(qǐng)求(Modbus Request)、指示(Modbus Confirmation)、響應(yīng)(Modbus Indication)和證實(shí)(Modbus Response)。請(qǐng)求是客戶機(jī)在網(wǎng)絡(luò)上發(fā)送用來(lái)啟動(dòng)事務(wù)的報(bào)文;指示是服務(wù)端接收的請(qǐng)求報(bào)文;響應(yīng)是服務(wù)器發(fā)送的響應(yīng)信息;證實(shí)是在客戶端接收的響應(yīng)信息[6]。Modbus/TCP通信模式如圖2所示。

1.2 Modbus/TCP協(xié)議幀格式

Modbus協(xié)議定義了一種與基礎(chǔ)通信層無(wú)關(guān)的協(xié)議數(shù)據(jù)單元(PDU,Protocol Data Unit)。特定總線或網(wǎng)絡(luò)上的Modbus協(xié)議映射能夠在應(yīng)用數(shù)據(jù)單元(ADU,Application Data Unit)上引入一些附加數(shù)據(jù)域。Modbus數(shù)據(jù)幀由附加地址、功能代碼、數(shù)據(jù)域和校驗(yàn)域組成。而TCP/IP協(xié)議可以保證數(shù)據(jù)包傳遞的正確性,因此在TCP/IP上使用一種專用報(bào)文頭識(shí)別Modbus應(yīng)用數(shù)據(jù)單元。將這種報(bào)文頭稱為MBAP報(bào)文頭(Modbus協(xié)議報(bào)文頭)。Modbus和Modbus /TCP數(shù)據(jù)幀格式如圖3所示。

圖3 Modbus和Modbus TCP/IP數(shù)據(jù)幀格式

圖3中的ADU(Application Data Unit)為應(yīng)用數(shù)據(jù)單元,如圖3_b的Modbus /TCP ADU中,MBAP報(bào)文頭占有7個(gè)字節(jié),包括四個(gè)域:事務(wù)元標(biāo)識(shí)符(占用2字節(jié))、協(xié)議標(biāo)識(shí)符(占用2字節(jié))、長(zhǎng)度(占用2字節(jié))和單元標(biāo)識(shí)符(占用1字節(jié))。事務(wù)處理標(biāo)識(shí)符占用2字節(jié),用于事務(wù)處理配對(duì);協(xié)議標(biāo)識(shí)符占用2字節(jié),用于系統(tǒng)內(nèi)的多路復(fù)用,通過(guò)值0識(shí)別Modbus協(xié)議;長(zhǎng)度占用2字節(jié),長(zhǎng)度域是下一個(gè)域的字節(jié)數(shù),包括單元標(biāo)識(shí)符和數(shù)據(jù)域;單元標(biāo)識(shí)符占1個(gè)字節(jié),為了系統(tǒng)內(nèi)路由,使用這個(gè)域?qū)iT用于通過(guò)以太網(wǎng)TCP/IP網(wǎng)絡(luò)和Modbus串行鏈路之間的網(wǎng)關(guān)對(duì)Modbus或Modbus+串行鏈路從站的通信。

功能碼則指出此數(shù)據(jù)幀要進(jìn)行的操作,常用的公共功能碼如表1所示。

表1 常用公共功能碼

數(shù)據(jù)域最多可達(dá)248字節(jié),具體格式與功能碼相關(guān)。當(dāng)客戶機(jī)發(fā)送請(qǐng)求報(bào)文時(shí),數(shù)據(jù)域給出要操作的寄存器的起始地址(2字節(jié))和數(shù)量(2字節(jié)),當(dāng)服務(wù)器發(fā)送應(yīng)答報(bào)文時(shí),數(shù)據(jù)域給出被操作的寄存器個(gè)數(shù)N(1字節(jié))及各寄存器狀態(tài)值。

2 Modbus/TCP工業(yè)以太網(wǎng)控制系統(tǒng)的體系結(jié)構(gòu)

本文所設(shè)計(jì)的控制系統(tǒng)分為3層:企業(yè)生產(chǎn)管理層;過(guò)程管理層和現(xiàn)場(chǎng)控制層。

企業(yè)生產(chǎn)管理層:主要用于產(chǎn)品規(guī)劃,信息集成以及完成一系列的優(yōu)化功能,實(shí)現(xiàn)廠部(以及各職能部門)與車間、車間與車間、車間與工段等互通信息,可使生產(chǎn)控制系統(tǒng)與MIS(經(jīng)營(yíng)信息系統(tǒng))相互聯(lián)系,實(shí)現(xiàn)綜合自動(dòng)化。

過(guò)程管理層:在這一層上的過(guò)程管理計(jì)算機(jī)主要有操作站和工程師站。此層是本文介紹的重點(diǎn),它運(yùn)行在Windows環(huán)境下,從功能上主要?jiǎng)澐譃榻M態(tài)監(jiān)控和網(wǎng)絡(luò)管理模塊兩大部分。組態(tài)監(jiān)控部分包括:圖形化組態(tài)模塊、工程編譯仿真模塊、通訊模塊、數(shù)據(jù)管理模塊和圖元監(jiān)控模塊。組態(tài)模塊與智能控制器上的算法相對(duì)應(yīng),使用戶可以在上位機(jī)為各個(gè)智能控制器節(jié)點(diǎn)進(jìn)行控制算法和控制參數(shù)設(shè)置。工程編譯仿真模塊,主要實(shí)現(xiàn)檢查組態(tài)結(jié)果的語(yǔ)法錯(cuò)誤與邏輯錯(cuò)誤。上位機(jī)的通訊模塊和智能控制器通訊模塊對(duì)應(yīng),保證上位機(jī)與智能控制器節(jié)點(diǎn)的數(shù)據(jù)傳輸功能。數(shù)據(jù)管理模塊和圖元監(jiān)控模塊主要負(fù)責(zé)對(duì)控制器節(jié)點(diǎn)傳來(lái)的實(shí)時(shí)數(shù)據(jù)進(jìn)行存儲(chǔ)、管理,同時(shí)顯示實(shí)時(shí)、歷史曲線和監(jiān)控畫面。網(wǎng)絡(luò)管理部分主要用來(lái)實(shí)現(xiàn)各智能節(jié)點(diǎn)的參數(shù)設(shè)置,檢測(cè)網(wǎng)內(nèi)各智能控制器的工作狀態(tài)是否良好。它綜合監(jiān)視過(guò)程各站的所有信息,集中顯示操作,控制回路組態(tài),參數(shù)修改,歷史數(shù)據(jù)存取、優(yōu)化過(guò)程處理等。系統(tǒng)中采用了Modbus/TCP作為整個(gè)車間級(jí)的通信網(wǎng)絡(luò),其設(shè)計(jì)旨在解決車間監(jiān)控級(jí)通信。在這層間需要比現(xiàn)場(chǎng)層更大量的數(shù)據(jù)傳輸,而且其可靠性性要求高,Modbus/TCP可以滿足其要求。

現(xiàn)場(chǎng)控制層使用由基板、電源卡件和CPU卡件組成的控制器。此控制器采用迅弛600CPU、128M內(nèi)存、128M電子盤、雙10/100M自適應(yīng)以太網(wǎng)口、雙高速RS485口、128K帶電池保護(hù)的靜態(tài)RAM、雙DI、DO接口。采用WinCE系統(tǒng)平臺(tái)??刂破黝愃埔慌_(tái)PC ,可以與上位機(jī)通過(guò)以太網(wǎng)通信。各個(gè)控制節(jié)點(diǎn)之間、節(jié)點(diǎn)與上位機(jī)之間通過(guò)Modbus/TCP進(jìn)行通訊,由上位機(jī)進(jìn)行統(tǒng)一監(jiān)控管理。

3 過(guò)程管理層軟件各功能模塊的設(shè)計(jì)

過(guò)程管理層系統(tǒng)軟件是在Windows XP環(huán)境下基于Modbus/TCP協(xié)議使用Visua C++ 6.0開(kāi)發(fā)的可視化組態(tài)、監(jiān)控管理平臺(tái),主要分為兩大部分:控制組態(tài)關(guān)系開(kāi)發(fā)平臺(tái)(工程師站)和控制系統(tǒng)監(jiān)控平臺(tái)(操作員站),當(dāng)然兩個(gè)平臺(tái)也可以集中在同一個(gè)PC機(jī)上。結(jié)構(gòu)如圖5所示。

3.1 控制組態(tài)關(guān)系開(kāi)發(fā)平臺(tái)

控制組態(tài)關(guān)系開(kāi)發(fā)平臺(tái)主要由設(shè)備管理器模塊和控制系統(tǒng)組態(tài)軟件兩部分組成。設(shè)備管理器模塊主要功能是獲得工程中所使用控制層和數(shù)據(jù)搜集層設(shè)備信息(包括控制站的基本信息、控制站參數(shù)以及下掛I/O通道的參數(shù)信息等)進(jìn)行管理,以圖形或列表形式將工程中各設(shè)備信息和資源顯示出來(lái)以供用戶選擇操作。其另外一個(gè)功能就是實(shí)現(xiàn)對(duì)控制站進(jìn)行在線調(diào)試、組態(tài)文件下載以及對(duì)下掛的I/O通道進(jìn)行調(diào)試和參數(shù)設(shè)置。

控制系統(tǒng)的根本目的就是對(duì)工業(yè)過(guò)程的自動(dòng)化控制,因此引入“算法”的概念來(lái)描述系統(tǒng)的基本控制功能。控制系統(tǒng)必須通過(guò)組態(tài)的形式生成各種適合現(xiàn)場(chǎng)需要的控制算法,而控制系統(tǒng)組態(tài)軟件就是控制系統(tǒng)中用于組態(tài)工程師生成控制算法,并通過(guò)算法的執(zhí)行來(lái)實(shí)現(xiàn)系統(tǒng)控制功能的一個(gè)平臺(tái)[7]。組態(tài)軟件是整個(gè)軟件系統(tǒng)的核心部分。在組態(tài)軟件中,控制算法是通過(guò)功能塊類庫(kù)中的功能塊實(shí)例化完成的。功能塊是控制算法的最小控制元素,控制算法以功能塊的形式完成對(duì)實(shí)時(shí)數(shù)據(jù)庫(kù)的操作,進(jìn)而實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)設(shè)備的控制。

3.2 控制系統(tǒng)監(jiān)控平臺(tái)

控制系統(tǒng)監(jiān)控平臺(tái)主要實(shí)現(xiàn)現(xiàn)場(chǎng)操作人員與控制系統(tǒng)的人機(jī)交互功能,包括監(jiān)控人機(jī)交互界面和實(shí)時(shí)數(shù)據(jù)庫(kù)。在實(shí)際工程應(yīng)用中,自動(dòng)化組態(tài)設(shè)計(jì)人員和現(xiàn)場(chǎng)操作工程師為方便現(xiàn)場(chǎng)操作人員監(jiān)控生產(chǎn)過(guò)程,需要用監(jiān)控軟件開(kāi)發(fā)出友好的人機(jī)接口程序與實(shí)時(shí)數(shù)據(jù)庫(kù)以方便現(xiàn)場(chǎng)操作人員監(jiān)控生產(chǎn)過(guò)程[8]。

人機(jī)接口程序的監(jiān)控界面通過(guò)與實(shí)時(shí)數(shù)據(jù)庫(kù)的數(shù)據(jù)交互,獲取受控設(shè)備實(shí)時(shí)數(shù)據(jù),并以圖形、動(dòng)作或者曲線等形式形象地顯示給現(xiàn)場(chǎng)操作人員。監(jiān)控人機(jī)交互界面同時(shí)需要與實(shí)時(shí)數(shù)據(jù)庫(kù)交互,使操作人員可以通過(guò)發(fā)送控制命令和相關(guān)數(shù)據(jù)來(lái)控制現(xiàn)場(chǎng)儀表的動(dòng)作以達(dá)到干預(yù)生產(chǎn)過(guò)程的目的。監(jiān)控人機(jī)交互界面還應(yīng)具有的功能有:報(bào)警設(shè)置、報(bào)表生成及打印、歷史數(shù)據(jù)檢索與顯示等。實(shí)時(shí)數(shù)據(jù)庫(kù)是一個(gè)數(shù)據(jù)處理中心,是軟件系統(tǒng)的一個(gè)重要組成部分,是構(gòu)建分布式應(yīng)用系統(tǒng)的基礎(chǔ)。它負(fù)責(zé)實(shí)時(shí)數(shù)據(jù)運(yùn)算與處理、歷史數(shù)據(jù)存儲(chǔ)、統(tǒng)計(jì)數(shù)據(jù)處理、報(bào)警處理、數(shù)據(jù)服務(wù)請(qǐng)求處理等。在系統(tǒng)運(yùn)行過(guò)程中,各個(gè)軟件系統(tǒng)獨(dú)立地向?qū)崟r(shí)數(shù)據(jù)庫(kù)寫入或讀取數(shù)據(jù)。軟件系統(tǒng)的其他部分以實(shí)時(shí)數(shù)據(jù)庫(kù)為紐帶,進(jìn)行數(shù)據(jù)交換,形成互相關(guān)聯(lián)的一個(gè)整體。因此,實(shí)時(shí)數(shù)據(jù)庫(kù)是軟件系統(tǒng)中各個(gè)部分及其各種功能性組件的公用數(shù)據(jù)訪問(wèn)區(qū)。

4 控制系統(tǒng)應(yīng)用實(shí)例

以重慶某公司的鍋爐汽包水位控制系統(tǒng)為例。

該鍋爐汽包水位控制系統(tǒng)采用三沖量前饋-串級(jí)控制,以汽包的蒸汽流量為前饋信號(hào),汽包給水流量和汽包水位串級(jí)的前饋加串級(jí)反饋控制方案??刂葡到y(tǒng)方框圖如圖6所示。根據(jù)現(xiàn)場(chǎng)需求設(shè)置水位控制的設(shè)定值,使汽包水位保持在預(yù)先設(shè)定范圍之內(nèi)。在DCS接收到識(shí)別信號(hào)之后,DCS控制程序設(shè)置延時(shí)為2min。因?yàn)?min后的鍋爐汽包水位才是比較真實(shí)的水位,之后DCS再根據(jù)鍋爐汽包真實(shí)水位進(jìn)行控制。

此方案中的PID采用增量式PID,此PID控制算法數(shù)學(xué)表達(dá)式如下:

系統(tǒng)組態(tài)方案:進(jìn)行前饋串級(jí)PID控制的組態(tài),系統(tǒng)組態(tài)方案如圖7所示。

(1)本次組態(tài)是對(duì)系統(tǒng)2#鍋爐汽包水位控制對(duì)象進(jìn)行組態(tài),WATERL_Tag1為水位設(shè)定值作為PID串級(jí)控制中的外環(huán)PID輸入,AI_01_1_2_02為AI通道,對(duì)應(yīng)CS1#的第1通信卡第2槽第2路模擬量輸入通道,為水位數(shù)據(jù)采集通道接入PID測(cè)量值端。

圖7 控制算法功能塊組態(tài)圖

(2)AI_01_1_2_03對(duì)應(yīng)CS1#的第1通行卡第2槽第3路AI通道,為管道流量數(shù)據(jù)采集通道接入內(nèi)環(huán)PID的測(cè)量值端。

(3)AI_01_1_2_01對(duì)應(yīng)CS1#的第1通行卡第2槽第1路AI通道,為蒸汽流量數(shù)據(jù)采集通道,作為內(nèi)環(huán)前饋與外環(huán)PID功能塊的輸出相互作用接入內(nèi)環(huán)PID的輸入端。輸出OUT連接到AO_01_1_5_01模擬量輸出功能塊,對(duì)應(yīng)CS1#的第1通行卡第5槽第1路AO,第1路AO輸出4~20mA到執(zhí)行機(jī)構(gòu),進(jìn)行控制調(diào)節(jié)。

5 結(jié)束語(yǔ)

本文首先對(duì)Modbus/TCP協(xié)議進(jìn)行了簡(jiǎn)單扼要的介紹,在深入研究協(xié)議內(nèi)容的基礎(chǔ)上設(shè)計(jì)了一種基于Mobus/TCP的工業(yè)以太網(wǎng)的自動(dòng)化控制系統(tǒng),并詳細(xì)敘述和設(shè)計(jì)了該控制系統(tǒng)的體系結(jié)構(gòu)、軟硬件結(jié)構(gòu)等。最后,通過(guò)重慶某公司鍋爐汽包水位控制系統(tǒng)應(yīng)用實(shí)例的搭建,對(duì)本系統(tǒng)的相關(guān)功能進(jìn)行了驗(yàn)證。驗(yàn)證結(jié)果表明,本控制系統(tǒng)各項(xiàng)功能穩(wěn)定可靠,能夠滿足工業(yè)現(xiàn)場(chǎng)的應(yīng)用需求,有一定的推廣價(jià)值。

[1]馮冬芹,金建祥,褚健,等.工業(yè)以太網(wǎng)關(guān)鍵技術(shù)初探[J].信息與控制,2003,32(3):219-224.

[2]陽(yáng)憲惠.工業(yè)數(shù)據(jù)通信與控制網(wǎng)絡(luò)[M].北京:清華大學(xué)出版社,2002.

[3]王勇.Modbus應(yīng)用協(xié)議在串行鏈路及TCP/IP上的實(shí)現(xiàn)[Z].施耐德電氣公司,2002.

[4]魏慶福.現(xiàn)場(chǎng)總線技術(shù)發(fā)展的新動(dòng)向[J].工業(yè)控制計(jì)算機(jī),2000(1):11-12.

[5]W.Richard Stevens.TCP/IP Illustrated Volume 1:The Implementation [M].Beijing: China Machine Press,2001.

[6]SWALES.AOPEN MODBUS TCP/IP SPECIFICATION [Z].Schneider Electric, 1999.

[7]王亞民.組態(tài)軟件設(shè)計(jì)與開(kāi)發(fā)(Design and Development of Configuration Software) [M].西 安:西安電子科技大學(xué)出版社,2003.

[8]歐金成,歐世樂(lè),林德杰,彭備戰(zhàn).組態(tài)軟件現(xiàn)狀與發(fā)展[J].自動(dòng)化博覽,2002,(2): 42-45.

猜你喜歡
汽包字節(jié)控制算法
No.8 字節(jié)跳動(dòng)將推出獨(dú)立出口電商APP
No.10 “字節(jié)跳動(dòng)手機(jī)”要來(lái)了?
600MW亞臨界汽包爐再熱汽溫低的治理及應(yīng)用
基于ARM+FPGA的模塊化同步控制算法研究
簡(jiǎn)談MC7字節(jié)碼
鍋爐汽包用13 MnNiMo5-4 特厚鋼板的研制
上海金屬(2015年4期)2015-11-29 01:12:30
一種優(yōu)化的基于ARM Cortex-M3電池組均衡控制算法應(yīng)用
一種非圓旋轉(zhuǎn)工件支撐裝置控制算法
DI材橫向厚差自動(dòng)控制算法及其應(yīng)用
上海金屬(2013年4期)2013-12-20 07:57:17
大型鍋爐汽包壁溫差控制措施
商水县| 阜南县| 镇沅| 鸡泽县| 灵寿县| 古蔺县| 罗城| 彭泽县| 晋州市| 南昌市| 肇庆市| 乐东| 周口市| 阳春市| 岳阳县| 新化县| 灵山县| 商水县| 同江市| 色达县| 民勤县| 绵竹市| 射阳县| 通榆县| 尖扎县| 盐边县| 和龙市| 夹江县| 广灵县| 仙桃市| 洛川县| 木兰县| 大足县| 珲春市| 松溪县| 德钦县| 高碑店市| 饶平县| 炉霍县| 阳朔县| 十堰市|