本文包括如下幾個(gè)主題:工業(yè)以太網(wǎng)和PROFINET技術(shù);PROFINET通信等級(jí);PROFINET實(shí)現(xiàn)不同通信等級(jí)的方法。
1、工業(yè)以太網(wǎng)和PROFINET技術(shù)
工業(yè)以太網(wǎng)是用于工業(yè)自動(dòng)化環(huán)境中、符合IEEE 802.3標(biāo)準(zhǔn)的以太網(wǎng)。工業(yè)以太網(wǎng)采用IEEE 802.1D(媒體訪問控制網(wǎng)橋)規(guī)范和IEEE 802.1Q(局域網(wǎng)虛擬網(wǎng)橋)規(guī)范,通過使用全雙工通信技術(shù)、優(yōu)先響應(yīng)技術(shù)、流量控制技術(shù)及虛擬局域網(wǎng)技術(shù),可以將其實(shí)時(shí)響應(yīng)時(shí)間做到5-10ms左右。工業(yè)以太網(wǎng)和商業(yè)以太網(wǎng)是兼容的。
PROFINET技術(shù)是國(guó)際組織PI推出的一種總線技術(shù),它基于工業(yè)以太網(wǎng)技術(shù)、TCP/IP技術(shù)和IT技術(shù),是一種實(shí)時(shí)以太網(wǎng)技術(shù)。2000年年底,PROFINET作為第10種現(xiàn)場(chǎng)總線列入了IEC61158標(biāo)準(zhǔn)中。PROFINET技術(shù)包括PROFINET IO和PROFINET CBA兩部分,它們基于不同的通信模型。
① PROFINET IO
PROFINET IO用來完成工業(yè)自動(dòng)化中分布式系統(tǒng)的控制,主要包括如下三種角色:IO控制器、IO設(shè)備和IO監(jiān)視器;
◆IO控制器(IO Controller)
PROFINET IO系統(tǒng)的主站,執(zhí)行各種控制任務(wù),包括:執(zhí)行用戶程序、與IO設(shè)備進(jìn)行數(shù)據(jù)交換、處理各種通信請(qǐng)求等;
◆IO設(shè)備(IO Device)
PROFINET IO系統(tǒng)的從站,由分布于現(xiàn)場(chǎng)的、用于獲取信號(hào)的模塊、傳感器及執(zhí)行器組成;
◆IO監(jiān)視器(IO Supervisor)
IO監(jiān)視器用來組態(tài)、編程,并將相關(guān)的數(shù)據(jù)下載到IO控制器中,還可以對(duì)系統(tǒng)進(jìn)行診斷和監(jiān)控。最常見的IO監(jiān)視器是用戶的編程電腦。
② PROFINET CBA
PROFINET CBA(Component-Based Automation)是基于組件的自動(dòng)化,它適用于設(shè)備/系統(tǒng)之間的通信。如果說PROFINET IO是控制器與現(xiàn)場(chǎng)設(shè)備的IO數(shù)據(jù)交換,那么PROFINET CBA則提供了多個(gè)IO系統(tǒng)之間的標(biāo)準(zhǔn)接口,可以組成更大的系統(tǒng)。
2、PROFINET的通信等級(jí)
在工業(yè)自動(dòng)化控制中,不同的控制對(duì)象其實(shí)時(shí)性要求也不同。比如過程參數(shù)的設(shè)置、設(shè)備的診斷等一般沒有實(shí)時(shí)性要求,但是對(duì)于分布式傳感器數(shù)據(jù)的交換就要滿足一定的實(shí)時(shí)性要求;而對(duì)于運(yùn)動(dòng)控制,其實(shí)時(shí)性要求就更高。
基于不同控制對(duì)象的實(shí)時(shí)性要求的不同,PROFINET分成三種不同的通信等級(jí):
①基于TCP/UDP和IP技術(shù)的非實(shí)時(shí)性通信,可以用于組態(tài)、參數(shù)設(shè)置、診斷等非實(shí)時(shí)性要求的場(chǎng)合;
②實(shí)時(shí)通信(Real Time Communication,RT),適合周期性數(shù)據(jù)交換的場(chǎng)合。比如PROFINET IO控制器和IO設(shè)備之間,不僅要完成數(shù)據(jù)的周期性交換,還必須保證一定的實(shí)時(shí)性。這里的實(shí)時(shí)性,一般要求循環(huán)周期小于10ms;PROFINET的實(shí)時(shí)通信采用的是軟實(shí)時(shí)技術(shù),不需要特殊的硬件支持;
③等時(shí)同步通信(Isochronous Real Time Communication,IRT)。對(duì)于時(shí)間要求嚴(yán)格同步的通信,比如運(yùn)動(dòng)控制,實(shí)時(shí)通信(RT)的10ms數(shù)據(jù)交換周期不能滿足要求,這種情況下要采用等時(shí)同步通信。該通信模式下,數(shù)據(jù)的循環(huán)刷新時(shí)間小于1ms,循環(huán)掃描周期的抖動(dòng)時(shí)間不大于1us(微秒);等時(shí)同步通信需要特殊的硬件支持;
PROFINET基于標(biāo)準(zhǔn)以太網(wǎng)通信,對(duì)于不同的通信等級(jí)采用不同的技術(shù)方案,非常巧妙的解決了在同一個(gè)系統(tǒng)中實(shí)現(xiàn)不同通信等級(jí)要求的問題。PROFINET IO使用了UDP/IP、RT和IRT技術(shù);而PROFINET CBA則使用TCP/IP技術(shù)和RT技術(shù)。
3、PROFINET實(shí)現(xiàn)不同通信等級(jí)的方法
PROFINET中的通信采用的是生產(chǎn)者和消費(fèi)者的方式。生產(chǎn)者(現(xiàn)場(chǎng)傳感器)把數(shù)據(jù)傳送給消費(fèi)者(比如PLC),消費(fèi)者對(duì)數(shù)據(jù)進(jìn)行處理,然后再把處理后的數(shù)據(jù)返回給消費(fèi)者。數(shù)據(jù)在傳遞的過程中,大部分的時(shí)間消耗在通過通信棧上,也就是以太網(wǎng)模型的層層打包和拆包的過程。因此,要提高數(shù)據(jù)的實(shí)時(shí)性,就要對(duì)協(xié)議棧進(jìn)行改造。
PROFINET的實(shí)時(shí)通信,拋棄了TCP/IP或UDP/IP部分,使幀的長(zhǎng)度大大縮短,通信棧需要的時(shí)間也縮短了。采用IEEE 802.3優(yōu)化的第2層協(xié)議,由硬件和軟件實(shí)現(xiàn)自己的協(xié)議棧,從而實(shí)現(xiàn)了不同實(shí)時(shí)性等級(jí)的要求。由于沒有使用第3層(IP)協(xié)議,所以失去了路由功能。但借助MAC地址,PROFINET實(shí)時(shí)通道保證了不同站點(diǎn)之間能夠在確定的時(shí)間間隔內(nèi)完成對(duì)時(shí)間間隔要求苛刻的傳輸任務(wù)。
非實(shí)時(shí)通信和實(shí)時(shí)通信的模型如下圖所示:

回到本文開始的問題“PROFINET分布式IO設(shè)備和IO控制器之間采用的是實(shí)時(shí)通信(RT)還是等時(shí)同步通信(IRT)呢?”其實(shí),這兩種方式在CPU組態(tài)時(shí)都存在的,并且不能更改。在同一個(gè)系統(tǒng)中可能三種通信等級(jí):UDP/IP、RT和IRT都會(huì)用到。
好了,關(guān)于PROFINET通信等級(jí)的話題就先聊到這里。
相關(guān)閱讀
TIA博途中組態(tài)S7-1500和V90PN的PROFINET通信
西門子S7-200 SMART V2.5支持的智能設(shè)備如何組態(tài)