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

?

PROFINET關(guān)鍵技術(shù)剖析

2014-04-08 07:04王永華喬金鋒
電氣自動(dòng)化 2014年3期
關(guān)鍵詞:提供者報(bào)文報(bào)警

王永華,喬金鋒

(鄭州輕工業(yè)學(xué)院,河南鄭州 450002)

0 引言

PROFINET是PI(PROFIBUS&PROFINET國(guó)際組織)推出的實(shí)時(shí)工業(yè)以太網(wǎng)技術(shù),在IEC61158中被歸為Type10[1]203。當(dāng)前PROFINET技術(shù)已逐步走向?qū)嶋H應(yīng)用,但對(duì)廣大使用者和初學(xué)者來(lái)說(shuō),在控制系統(tǒng)設(shè)計(jì)、調(diào)試和應(yīng)用過(guò)程中仍存在較多困擾。本文對(duì)其實(shí)時(shí)性技術(shù)、工作機(jī)理和啟動(dòng)過(guò)程工作機(jī)理等關(guān)鍵技術(shù)進(jìn)行了深入剖析,可為PROFINET技術(shù)使用者和初學(xué)者在多方面提供借鑒和指導(dǎo)。

1 PROFINET實(shí)時(shí)性技術(shù)

PROFINET主要通過(guò)改造協(xié)議棧、采用間隔控制器(Interval Controller)和改造報(bào)文幀等技術(shù)解決實(shí)時(shí)性問(wèn)題。

1.1 獨(dú)特的通信協(xié)議棧結(jié)構(gòu)

為實(shí)現(xiàn)工業(yè)網(wǎng)絡(luò)中不同等級(jí)要求的實(shí)時(shí)通信,在PROFINET實(shí)時(shí)通信技術(shù)中對(duì)通信協(xié)議棧進(jìn)行了改造。TCP(UDP)/IP不能滿足循環(huán)過(guò)程數(shù)據(jù)更新時(shí)間小于10ms的要求,所以PROFINET實(shí)時(shí)通信協(xié)議拋棄了TCP/IP部分,基于MAC地址直接尋址,PROFINET實(shí)時(shí)通道保證了不同站點(diǎn)能夠在一個(gè)確定的時(shí)間間隔內(nèi)完成實(shí)時(shí)數(shù)據(jù)傳輸任務(wù)。此外,采用專門的實(shí)時(shí)協(xié)議(SRT、IRT)和優(yōu)化后的IEEE 802.3第2層協(xié)議[2],大大減少了傳輸幀的長(zhǎng)度,縮短了數(shù)據(jù)在通信棧的處理時(shí)間,滿足了工廠自動(dòng)化10ms等級(jí)和運(yùn)動(dòng)控制1ms等級(jí)實(shí)時(shí)性的要求。其通信棧結(jié)構(gòu)模型如圖1所示。

圖1 PROFINET通信協(xié)議結(jié)構(gòu)

1.2 總線循環(huán)時(shí)間分配技術(shù)

為完成對(duì)時(shí)間有嚴(yán)苛要求的運(yùn)動(dòng)控制任務(wù),PROFINET使用等時(shí)同步技術(shù) IRT(Isochronous Real-Time),其中使用 IEEE1588 PTP(Precision Time Protocol)技術(shù)實(shí)現(xiàn)同步功能,使用獨(dú)特的間隔控制器(interval controller)技術(shù)把整個(gè)傳輸周期包含確定性部分和開放性部分,標(biāo)準(zhǔn)TCP/UDP數(shù)據(jù)和實(shí)時(shí)RT數(shù)據(jù)在開放性通道中傳輸,IRT數(shù)據(jù)在確定性通道中傳輸,確保等時(shí)功能的實(shí)現(xiàn)[3]230,如圖2 所示。

圖2 PROFINET總線循環(huán)時(shí)間分配

為保證網(wǎng)絡(luò)有極小的抖動(dòng)時(shí)間,使得各節(jié)點(diǎn)間通信有嚴(yán)格的確定性。PROFINET將發(fā)送時(shí)鐘分為三個(gè)時(shí)間段:紅色時(shí)間間隔只能用來(lái)以傳輸IRT數(shù)據(jù),且在每個(gè)循環(huán)周期開始時(shí)進(jìn)行輸入/輸出同步處理;綠色部分傳輸RT數(shù)據(jù)和有優(yōu)先級(jí)的非實(shí)時(shí)NRT數(shù)據(jù);橙色部分用來(lái)傳輸普通NRT數(shù)據(jù)。嚴(yán)格的通信調(diào)度與分時(shí)傳輸控制機(jī)制確保了實(shí)時(shí)數(shù)據(jù)的確定性傳輸。

1.3 PROFINET實(shí)時(shí)報(bào)文幀結(jié)構(gòu)

1)對(duì)RT數(shù)據(jù)

如圖3所示,PROFINET改造了以太網(wǎng)幀結(jié)構(gòu),在RT協(xié)議幀結(jié)構(gòu)中指明了過(guò)程數(shù)據(jù)的類型和實(shí)時(shí)性等級(jí)。

圖3 PROFINET RT幀結(jié)構(gòu)

RT幀結(jié)構(gòu)中源地址后的2個(gè)字節(jié)用來(lái)指示幀類型,此處為虛擬以太網(wǎng)類型的標(biāo)識(shí)0×8100,表明緊隨其后的是一個(gè)VLAN標(biāo)簽協(xié)議標(biāo)識(shí)。VLAN標(biāo)簽中高3位用來(lái)標(biāo)識(shí)數(shù)據(jù)幀的優(yōu)先級(jí)。

0×889 2表明這是PROFINET實(shí)時(shí)報(bào)文。隨后的幀類識(shí)別碼用來(lái)編址兩臺(tái)設(shè)備間的特殊通信通道,用于標(biāo)識(shí)單播、多播、周期傳輸或非周期傳輸(報(bào)警和事件),和以太網(wǎng)類型組合在一起可實(shí)現(xiàn)對(duì)RT幀進(jìn)行快速識(shí)別。通過(guò)采集報(bào)文幀應(yīng)用數(shù)據(jù)單元APDU狀態(tài)數(shù)據(jù)可動(dòng)曉當(dāng)前數(shù)據(jù)狀態(tài)。

在實(shí)時(shí)數(shù)據(jù)域后面的4個(gè)字節(jié)也是PROFINETRT報(bào)文幀獨(dú)有的,用來(lái)指示通信質(zhì)量和數(shù)據(jù)狀態(tài)。

2)對(duì)IRT數(shù)據(jù)

與RT幀相比,IRT基于內(nèi)嵌的專用的實(shí)時(shí)協(xié)議芯片ERTEC-ASIC,依靠確定的時(shí)間段進(jìn)行數(shù)據(jù)傳輸,所以不再需要VLAN標(biāo)簽,以及優(yōu)先級(jí)分配。其協(xié)議幀結(jié)構(gòu)如下圖4所示。

圖4 PROFINET IRT幀結(jié)構(gòu)

基于IEEE1588[4],PROFINET控制器在循環(huán)開始時(shí)依靠定時(shí)和脈沖信號(hào),精確記錄傳輸 Sync幀、Flollow幀、DelayReq幀和DelayRes幀的時(shí)鐘參數(shù),計(jì)算各環(huán)節(jié)的延時(shí),對(duì)各通道輸出數(shù)據(jù)進(jìn)行時(shí)間補(bǔ)償和模式轉(zhuǎn)換等處理,使網(wǎng)絡(luò)各節(jié)點(diǎn)時(shí)鐘與基準(zhǔn)時(shí)鐘同步。IRT數(shù)據(jù)在傳輸時(shí)依據(jù)事先規(guī)劃的確定通信路徑進(jìn)行傳輸,保證了抖動(dòng)時(shí)間 Jetter[5]小于 1 μs。

2 PROFINET工作機(jī)理剖析

和PROFIBUS輪詢方式進(jìn)行數(shù)據(jù)交換不同,PROFINET的數(shù)據(jù)交換基于提供者/消費(fèi)者模型實(shí)現(xiàn)。

提供者/消費(fèi)者模型包括三種實(shí)體:信息的提供者和消費(fèi)者,以及提供者和消費(fèi)者建立聯(lián)系的消息代理。它通過(guò)拉(Pull)和推(Push)兩種模型實(shí)現(xiàn)。在拉模型中,提供者從應(yīng)用管理層接收一個(gè)發(fā)布請(qǐng)求,并通過(guò)網(wǎng)絡(luò)組播它的響應(yīng),需要數(shù)據(jù)的消費(fèi)者給予響應(yīng),由管理器從提供者“拉”出數(shù)據(jù)供消費(fèi)者使用。模型提供了兩種服務(wù):證實(shí)服務(wù)和非證實(shí)服務(wù)。證實(shí)服務(wù)僅用于提供者和消費(fèi)者位于不同的應(yīng)用進(jìn)程AP(Application Process)時(shí),消費(fèi)者按照客戶機(jī)/服務(wù)器模式使用證實(shí)服務(wù)請(qǐng)求加入發(fā)布,提供者給予響應(yīng)并返還給消費(fèi)者。非證實(shí)服務(wù)中提供者僅負(fù)責(zé)在合適的時(shí)間將其信息分發(fā)給消費(fèi)者,消費(fèi)者無(wú)需對(duì)信息進(jìn)行確認(rèn)。

PROFINET基于無(wú)證實(shí)服務(wù)的提供者/消費(fèi)者模型的推模式??刂破骱虸O設(shè)備既可以作為提供者,也可作為消費(fèi)者。提供者以固定時(shí)間間隔Δt1將數(shù)據(jù)傳送給消費(fèi)者,消費(fèi)者以固定時(shí)間Δt2接收。傳輸期間數(shù)據(jù)未經(jīng)任何保護(hù),也不需消費(fèi)者確認(rèn)。其模型如圖5所示。

圖5 PROFINET消費(fèi)者/提供者模型

該模型屬于面向連接的服務(wù),其連接建立和釋放由高層的協(xié)議來(lái)完成;在傳輸通道上,消費(fèi)者不提供任何確認(rèn)和差錯(cuò)信息,在相反通道上,消費(fèi)者對(duì)上次的消費(fèi)數(shù)據(jù)情況向提供者提供一個(gè)隱含的確認(rèn)信息。消費(fèi)者在監(jiān)視時(shí)間Δt3內(nèi)未收到數(shù)據(jù)時(shí)會(huì)向應(yīng)用發(fā)送相應(yīng)的差錯(cuò)報(bào)文。PROFINET實(shí)時(shí)通信不支持?jǐn)?shù)據(jù)的分段和組裝;數(shù)據(jù)的發(fā)送和接收都通過(guò)緩存區(qū)進(jìn)行操作。

3 PROFINET系統(tǒng)啟動(dòng)及工作過(guò)程

在完成PROFINET系統(tǒng)組態(tài)后,控制器和設(shè)備之間通過(guò)連接請(qǐng)求、寫請(qǐng)求、控制請(qǐng)求等一系列報(bào)文傳遞,完成連接建立、參數(shù)化,然后進(jìn)入正常的數(shù)據(jù)交換過(guò)程。整個(gè)系統(tǒng)啟動(dòng)過(guò)程如圖6所示。

3.1 通信連接建立

PROFINET設(shè)備名稱和IP地址分配后,I/O控制器通過(guò)遠(yuǎn)程過(guò)程調(diào)用RPC(Remote Procedure Call)發(fā)起一個(gè)連接請(qǐng)求來(lái)建立與I/O設(shè)備之間的AR(Application Relationship),完成有關(guān)AR參數(shù)到IO設(shè)備的傳遞。在請(qǐng)求中指定控制器與IO設(shè)備之間的CR(Communication Relationship),包括用于循環(huán)數(shù)據(jù)交換的IO Data CR,非循環(huán)數(shù)據(jù)的讀寫Record data CR,以及用于傳輸報(bào)警數(shù)據(jù)的Alarm CR。

圖6 PROFINET啟動(dòng)狀態(tài)機(jī)

控制器在連接請(qǐng)求幀的AR塊中詳細(xì)標(biāo)識(shí)了塊類型、會(huì)話密鑰以及用于識(shí)別的對(duì)象、接口和活動(dòng) UUID[3]279(Universally Unique Identifier,通用唯一標(biāo)識(shí))等信息。通過(guò)IO數(shù)據(jù)CR塊描述其要連接設(shè)備的輸入/輸出通道數(shù)量和類型。設(shè)備收到請(qǐng)求后對(duì)輸入/輸出和報(bào)警塊信息予以確認(rèn)。

3.2 參數(shù)化

在成功建立連接后,IO控制器通過(guò)Write REQ(請(qǐng)求)將各子模塊的參數(shù)信息(包括IO設(shè)備特性、插入模塊數(shù)量及類型、模塊參數(shù)等)傳輸?shù)絀O設(shè)備,為每個(gè)模塊/子模塊定義單獨(dú)的參數(shù)集。

控制器在W rite REQ的數(shù)據(jù)幀中將組態(tài)時(shí)設(shè)備的全球唯一的應(yīng)用標(biāo)識(shí)符ARUUID及該對(duì)象的地址和長(zhǎng)度、槽和子槽的信息傳送給設(shè)備。從采集的報(bào)文中可以看到:應(yīng)用進(jìn)程為每一個(gè)服務(wù)請(qǐng)求提供一個(gè)Seq-Number,IO設(shè)備使用Write RES來(lái)確認(rèn)參數(shù)賦值數(shù)據(jù)的接收,在響應(yīng)幀中傳輸對(duì)象本身的真實(shí)配置信息及響應(yīng)數(shù)據(jù)。

所有的通信參數(shù)被加載到IO設(shè)備后,控制器使用結(jié)束控制DControl命令通知IO設(shè)備結(jié)束參數(shù)化過(guò)程。IO設(shè)備使用確認(rèn)控制命令CControl激活連接應(yīng)用,表示所請(qǐng)求的AR已建立完畢,IO控制器給予響應(yīng)確認(rèn)。至此,PROFINET系統(tǒng)啟動(dòng)階段結(jié)束。

3.3 數(shù)據(jù)交換

如圖6中,控制器和IO設(shè)備早在連接建立后,激活了提供者/消費(fèi)者報(bào)警狀態(tài)機(jī),開啟供應(yīng)者以及帶監(jiān)控的消費(fèi)者協(xié)議機(jī)。在隨后的寫參數(shù)中設(shè)置傳送服務(wù)參數(shù),包括目的MAC和源MAC、VLAN和減速因子等通訊參數(shù),激活報(bào)警狀態(tài)機(jī)。

在各種通信CR建立起來(lái)后,IO控制器和IO設(shè)備之間開始進(jìn)入循環(huán)的數(shù)據(jù)交換過(guò)程(數(shù)據(jù)交換報(bào)文幀格式如圖3所示)。數(shù)據(jù)單元中包括實(shí)時(shí)的I/O數(shù)據(jù),以及供應(yīng)者狀態(tài)IOPS(IO Provider Status)和消費(fèi)者狀態(tài)IOCS(IO Consumer Status)。

控制器和IO設(shè)備既可以作為提供者以固定時(shí)間間隔發(fā)送數(shù)據(jù),也可以消費(fèi)者身份接收數(shù)據(jù),進(jìn)行全雙工的循環(huán)數(shù)據(jù)交換。傳輸期間由看門狗監(jiān)控是否超時(shí),另外通過(guò)IOPS和IOCS實(shí)時(shí)評(píng)估傳輸I/O數(shù)據(jù)的質(zhì)量,識(shí)別各種通信問(wèn)題。若有故障發(fā)生,則將其告知應(yīng)用,并及時(shí)報(bào)警。

3.4 故障處理

PROFINET有著強(qiáng)大的故障處理機(jī)制,可用于報(bào)警和診斷誘發(fā)的故障,以及系統(tǒng)定義事件和用戶自定義的報(bào)警事件。

一旦IO控制器或IO設(shè)備因系統(tǒng)故障或通道出錯(cuò)造成錯(cuò)誤數(shù)據(jù),都將觸發(fā)報(bào)警。IO設(shè)備將報(bào)警信息讀入診斷緩沖區(qū),并以非循環(huán)實(shí)時(shí)報(bào)文RTA的方式報(bào)告控制器,等待控制器給予確認(rèn)和處理。報(bào)警/診斷的結(jié)構(gòu)和處理過(guò)程如圖7所示。

圖7 報(bào)警/診斷信息處理過(guò)程

現(xiàn)以西門子CPU416-3PN/DP控制器和ET200S設(shè)備為例,用profitap采集其出錯(cuò)報(bào)文幀如圖8所示。

圖8 故障報(bào)警信息

“Status”中的錯(cuò)誤代碼描述了詳細(xì)的故障信息:“0xcf”說(shuō)明存在RTA協(xié)議錯(cuò)誤,“0x11”表示“AR removed”應(yīng)用關(guān)系關(guān)閉,指示終端模塊拔出。

由于PROFINET技術(shù)基于以太網(wǎng)技術(shù),用戶可以通過(guò)SNMP簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議[6]中的管理信息庫(kù)實(shí)現(xiàn)系統(tǒng)網(wǎng)絡(luò)診斷,借助OPC服務(wù)器或Web瀏覽器監(jiān)視整個(gè)工業(yè)控制網(wǎng)絡(luò)的運(yùn)行狀態(tài)。

工程技術(shù)人員可提取控制系統(tǒng)故障時(shí)的報(bào)文幀信息,通過(guò)判斷實(shí)時(shí)獲取設(shè)備模塊的狀態(tài),例如:丟站,模塊錯(cuò)誤等,以及詳細(xì)的通道故障,如:模擬量通道的斷線、短路、過(guò)載、欠壓等信息。結(jié)合現(xiàn)場(chǎng)警報(bào)器或HMI設(shè)備快速地報(bào)告故障信息,便于操作員對(duì)系統(tǒng)故障進(jìn)行準(zhǔn)確定位,快速消除故障,提高企業(yè)生產(chǎn)效率。如果將其報(bào)文幀中故障信息融入FCS(Fieldbus Control System)故障診斷系統(tǒng)中,可實(shí)現(xiàn)對(duì)整個(gè)生產(chǎn)過(guò)程的智能化設(shè)備維護(hù)和管理。

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

本文從PROFINET采用的獨(dú)特通信棧結(jié)構(gòu)、總線循環(huán)時(shí)間分配技術(shù)、優(yōu)化報(bào)文幀結(jié)構(gòu)等三方面討論了其實(shí)時(shí)性實(shí)現(xiàn)的機(jī)理;從提供者/消費(fèi)者非證實(shí)的“推”模型講解了PROFINET技術(shù)全雙工循環(huán)數(shù)據(jù)交換工作機(jī)理;從工作狀態(tài)機(jī)詳細(xì)剖析了通信連接建立、參數(shù)化、數(shù)據(jù)交換的啟動(dòng)過(guò)程;最后,結(jié)合采集報(bào)文分析了其多級(jí)別的故障處理機(jī)制:基于槽/子槽的通道診斷技術(shù)和借助SNMP的實(shí)時(shí)網(wǎng)絡(luò)診斷技術(shù)。本文可為學(xué)習(xí)和深入應(yīng)用PROFINET技術(shù)的用戶提供較多支持和參考。

[1] 王永華,Andy Verwer.現(xiàn)場(chǎng)總線技術(shù)及應(yīng)用教程(2版)[M].北京:機(jī)械工業(yè)出版社,2012.

[2] 彭杰,應(yīng)啟戛.PROFINET工業(yè)以太網(wǎng)技術(shù)分析[J].南昌大學(xué)學(xué)報(bào)(工科版),2010,32(2):188 -191.

[3] 工業(yè)通信網(wǎng)絡(luò)-現(xiàn)場(chǎng)總線規(guī)范類型10:PROFINET IO規(guī)范[S].GB/Z25105.1,2010.

[4] Raimond Pigan,Mark Metter,湯亞鋒,等.西門子PROFINET工業(yè)通信指南[M].北京:人民郵電出版社,2007.

[5] 孫凡金,劉彥呈,潘新祥.PROFINET工業(yè)以太網(wǎng)實(shí)時(shí)性通信協(xié)議分析[J]. 低壓電器,2008,50(21):30-33.

[6] PROFINET系統(tǒng)手冊(cè)[Z].2012.3.

猜你喜歡
提供者報(bào)文報(bào)警
基于J1939 協(xié)議多包報(bào)文的時(shí)序研究及應(yīng)用
CTCS-2級(jí)報(bào)文數(shù)據(jù)管理需求分析和實(shí)現(xiàn)
網(wǎng)絡(luò)交易平臺(tái)提供者的法律地位與民事責(zé)任分析
基于隱私度和穩(wěn)定度的D2D數(shù)據(jù)共享伙伴選擇機(jī)制
淺析反駁類報(bào)文要點(diǎn)
LKD2-HS型列控中心驅(qū)采不一致報(bào)警處理
網(wǎng)絡(luò)言論自由的行政法規(guī)制研究
2015款奔馳E180車安全氣囊報(bào)警
ATS與列車通信報(bào)文分析
死于密室的租住者
南漳县| 沾化县| 华容县| 郓城县| 镇原县| 马鞍山市| 思南县| 张家口市| 肥城市| 若羌县| 台中市| 崇文区| 平遥县| 林西县| 崇义县| 郧西县| 嘉禾县| 聊城市| 安徽省| 敖汉旗| 凤山市| 萨嘎县| 清新县| 开原市| 报价| 贡觉县| 屯昌县| 灵石县| 德保县| 营口市| 钟山县| 安西县| 巴彦淖尔市| 增城市| 临夏县| 阜城县| 长阳| 高台县| 平乐县| 信丰县| 准格尔旗|