深入實(shí)時(shí)以太網(wǎng)
工業(yè)以太網(wǎng)——實(shí)時(shí)以太網(wǎng)——在過(guò)去幾年中經(jīng)歷了巨大的增長(zhǎng)。雖然經(jīng)典的現(xiàn)場(chǎng)總線仍大量存在,但它們已經(jīng)過(guò)了巔峰期。流行的實(shí)時(shí)以太網(wǎng)協(xié)議擴(kuò)展了以太網(wǎng)標(biāo)準(zhǔn),可以滿足實(shí)時(shí)功能的要求。現(xiàn)在,TSN為實(shí)時(shí)以太網(wǎng)提供了一條新的途徑。
本文引用地址:http://m.butianyuan.cn/article/201907/402948.htm實(shí)時(shí)與通信
在工廠自動(dòng)化和驅(qū)動(dòng)技術(shù)的背景下,實(shí)時(shí)意味著周期時(shí)間要安全、可靠地達(dá)到10毫秒以下,最低至微秒。為了滿足這些實(shí)時(shí)要求,以太網(wǎng)還必須獲得實(shí)時(shí)功能。
以太網(wǎng)比現(xiàn)場(chǎng)總線快得多——那又怎樣?
為了滿足自動(dòng)化的實(shí)時(shí)要求,需要保證傳輸帶寬和傳輸延遲。即使這些帶寬通常非常小(每個(gè)器件幾十個(gè)字節(jié)),該傳輸通道必須在每個(gè)I/O周期中可用,且達(dá)到延遲要求。
但是,經(jīng)典以太網(wǎng)不提供延遲和帶寬保證。相反,如果操作需要,以太網(wǎng)可以隨時(shí)丟棄幀。這意味著什么?
以太網(wǎng)是所謂的橋接網(wǎng)絡(luò)。幀(以太網(wǎng)幀)從一個(gè)點(diǎn)發(fā)到另一個(gè)點(diǎn):從端點(diǎn)到交換機(jī)(網(wǎng)橋),從那里可能發(fā)到其他網(wǎng)橋,最后到達(dá)另一個(gè)端點(diǎn)。該架構(gòu)在很大程度上具有自我配置能力。網(wǎng)橋在轉(zhuǎn)發(fā)幀之前先完全接收幀。許多問(wèn)題正是出在這里:
?如果在峰值時(shí)間存儲(chǔ)的幀數(shù)多于網(wǎng)橋緩沖存儲(chǔ)器可以容納的幀數(shù),則丟棄新傳入的幀。
?由于幀長(zhǎng)不同,因此其延遲時(shí)間為其長(zhǎng)度的函數(shù)。這會(huì)導(dǎo)致延遲波動(dòng)(抖動(dòng))。
?由于交換機(jī)應(yīng)通過(guò)其發(fā)送幀的端口可能已經(jīng)被其他幀完全占用,所以會(huì)導(dǎo)致額外的延遲。發(fā)送大型以太網(wǎng)幀(1522字節(jié))在100 Mbps速率下大約耗時(shí)124μs。
如果說(shuō)以太網(wǎng)通常運(yùn)行良好,這種說(shuō)法在某種程度上是公允的。但是,這樣做,我們使用的“通?!币辉~在硬實(shí)時(shí)語(yǔ)境下是無(wú)意義的。僅僅通常滿足實(shí)時(shí)條件是不夠的,必須始終滿足該條件。
住在化工廠或煉油廠旁邊的任何人都能理解這一點(diǎn)。工業(yè)通訊也不公平:最重要的是,控制/閉環(huán)控制應(yīng)用始終具有優(yōu)先權(quán)。
圖1.自動(dòng)化中的實(shí)時(shí)通信。
圖2.ISO七層模型。
以PROFINET和EtherCAT為例展示的實(shí)時(shí)擴(kuò)展
由于負(fù)責(zé)以太網(wǎng)標(biāo)準(zhǔn)化的IEEE并未就該問(wèn)題提出解決方案,工業(yè)界開(kāi)發(fā)了自己的解決方案——再次證明了其創(chuàng)造力。各種解決方案都有自己的優(yōu)勢(shì)和劣勢(shì),最終解決不同的市場(chǎng)問(wèn)題。
PROFINET:普遍適用
通過(guò)PROFINET,可提供兩種互補(bǔ)型解決方案。PROFINET RT是一種工廠自動(dòng)化解決方案,周期時(shí)間最長(zhǎng)為1 ms。RT直接以標(biāo)準(zhǔn)以太網(wǎng)為基礎(chǔ)。以太網(wǎng)的可能性(例如,服務(wù)質(zhì)量(QoS,優(yōu)先級(jí)))被用于產(chǎn)生實(shí)時(shí)流量?jī)?yōu)先級(jí)。這有所幫助,但QoS并不能完全解決資源和延遲問(wèn)題。這就是限制軟實(shí)時(shí)的原因。與網(wǎng)絡(luò)中使用的其他協(xié)議(例如HTTP、SNMP和TCP/IP)的良好兼容性是該技術(shù)的明顯優(yōu)勢(shì)。
圖4.PROFINET IRT。
對(duì)于硬實(shí)時(shí),PROFINET提供同步實(shí)時(shí)(IRT)擴(kuò)展。在此,部分以太網(wǎng)帶寬通過(guò)標(biāo)準(zhǔn)以太網(wǎng)硬件的擴(kuò)展專(zhuān)門(mén)為IRT流量保留。這可以通過(guò)IRT節(jié)點(diǎn)中的時(shí)鐘的精確同步來(lái)實(shí)現(xiàn)。因此,可以在每個(gè)周期阻止通道(紅色階段)中的正常流量。只有紅色階段中的IRT幀到達(dá)網(wǎng)絡(luò)。此外,網(wǎng)絡(luò)參與者準(zhǔn)確地在預(yù)先計(jì)算的時(shí)間發(fā)送IRT幀,從而在紅色階段實(shí)現(xiàn)效率的最大化。IRT幀通過(guò)網(wǎng)絡(luò),幾乎無(wú)周跳。這樣做的一個(gè)優(yōu)點(diǎn)是它可以紅色階段的長(zhǎng)度限制在最低限度;在紅色階段,所有其他流量都必須等待。紅色相位最多可以占用以太網(wǎng)通道帶寬的50%。
圖3.協(xié)議概述。
如前所述,全長(zhǎng)以太網(wǎng)幀(1552字節(jié))在線路上大約耗時(shí)124μs。如果PROFINET IRT占用全部50%的帶寬,最快的周期時(shí)間為2×124μs=248μs,舍入后為250μs。只有這樣,其他協(xié)議(如HTTP)才能以不變的形式與其共存。
由于PROFINET 2.3可用于IRT的優(yōu)化,包括快速轉(zhuǎn)發(fā)、動(dòng)態(tài)幀封裝和分段,因此可以實(shí)現(xiàn)低至31.25μs的更快周期時(shí)間。
EtherCAT:以太網(wǎng)現(xiàn)場(chǎng)總線
在EtherCAT的開(kāi)發(fā)過(guò)程中,開(kāi)始時(shí)還有其他要求。EtherCAT是基于物理以太網(wǎng)(即第1層)的現(xiàn)場(chǎng)總線。甚至第2層也針對(duì)現(xiàn)場(chǎng)總線應(yīng)用和高吞吐量應(yīng)用進(jìn)行了優(yōu)化。EtherCAT沒(méi)有經(jīng)典的以太網(wǎng)橋,使用求和幀電報(bào),使數(shù)據(jù)傳輸特別高效。EtherCAT每個(gè)周期發(fā)送一幀,與普通以太網(wǎng)不同;在后者中,設(shè)備間通信涉及的每臺(tái)設(shè)備發(fā)送單獨(dú)的幀。但是,此幀包含被尋址設(shè)備的所有數(shù)據(jù)。當(dāng)EtherCAT幀由設(shè)備轉(zhuǎn)發(fā)時(shí),該特定設(shè)備的數(shù)據(jù)被實(shí)時(shí)插入到該幀中并從該幀中取出。通過(guò)這種方式,可以實(shí)現(xiàn)極短的周期時(shí)間,最小低于31.25μs。
EtherCAT還具有時(shí)間同步功能。為了將在PC上表現(xiàn)不太理想的以太網(wǎng)接口用作EtherCAT的主設(shè)備,人們付出了大量努力。
在EtherCAT下,以太網(wǎng)流量(如Web或TCP/IP流量)只能以背負(fù)方式分成小部分傳輸;不可能在線上直接共存。
其他如何?
POWERLINK采用與EtherCAT相同的基本方法;其取得對(duì)以太網(wǎng)的完全控制權(quán),并通過(guò)背負(fù)方式把IP應(yīng)用傳輸?shù)焦?jié)點(diǎn)。但這是他們唯一的共同點(diǎn)。POWERLINK不使用求和幀協(xié)議,然而,它在實(shí)際應(yīng)用中表現(xiàn)同樣出色。
與IRT一樣,SERCOS有預(yù)留帶寬,但在其中使用的是求和幀協(xié)議。SERCOS允許其他協(xié)議共存。
TSN時(shí)機(jī)快到
IEEE從音頻/視頻橋接(AVB)協(xié)議的角度研究了這個(gè)話題。在對(duì)協(xié)議進(jìn)行改進(jìn)時(shí),還考慮了更具挑戰(zhàn)性的工業(yè)實(shí)時(shí)通信。這些標(biāo)準(zhǔn)的原始名稱(chēng)AVB2由此改稱(chēng)TSN(指時(shí)間敏感型網(wǎng)絡(luò))。有了這些標(biāo)準(zhǔn),現(xiàn)在可以使用統(tǒng)一的確定性以太網(wǎng)版本。
這實(shí)際上可以簡(jiǎn)化許多問(wèn)題。例如,眾所周知的工業(yè)網(wǎng)絡(luò)幾乎全部針對(duì)100Mbps。然而,千兆以太網(wǎng)和10 Mbps以太網(wǎng)如今已成為特殊應(yīng)用的關(guān)注焦點(diǎn)。TSN標(biāo)準(zhǔn)涵蓋所有速率。使用TSN,無(wú)需從頭開(kāi)始:如果不是TSN,所有現(xiàn)有標(biāo)準(zhǔn)都必須針對(duì)千兆速率進(jìn)行重新定義——這將導(dǎo)致硬件開(kāi)發(fā)成本和市場(chǎng)碎片化成本。
TSN有什么用?TSN實(shí)時(shí)
TSN擴(kuò)展了以太網(wǎng)第2層,納入了實(shí)時(shí)操作所需的一系列機(jī)制:
?802.1AS/802.1AS-Rev考慮了網(wǎng)絡(luò)中時(shí)鐘的高精度同步問(wèn)題。
?時(shí)間感知整形器(TAS)選項(xiàng)使以太網(wǎng)能夠在硬調(diào)度模式下運(yùn)行。有了該選項(xiàng),就可以在特定時(shí)間阻止/釋放QoS模型的一個(gè)或多個(gè)隊(duì)列。
?搶占(穿插快速流量)選項(xiàng)使長(zhǎng)幀能夠被分解成更小的部分,從而最大限度地減小優(yōu)先級(jí)更高的幀的延遲。該選項(xiàng)可用于在速率超過(guò)100 Mbps時(shí),優(yōu)化TAS的保護(hù)帶或替換TAS。
?復(fù)制和消除幀以提高可靠性的選項(xiàng)可用于定義通過(guò)網(wǎng)絡(luò)的冗余路徑;如環(huán)路中。
?使用軟件定義的網(wǎng)絡(luò)意味著幀不再通過(guò)目標(biāo)節(jié)點(diǎn)的硬件MAC地址轉(zhuǎn)發(fā)到目的地,而是通過(guò)特殊MAC地址(本地管理的多播MAC)和VLAN ID的組合轉(zhuǎn)發(fā)。不再自動(dòng)確定這些幀在網(wǎng)絡(luò)中的路由方式,而是由軟件進(jìn)行配置。多播MAC和VLAN ID的這種組合稱(chēng)為流ID,具有相同流ID的所有TSN幀稱(chēng)為T(mén)SN流。TSN流始終只有一個(gè)發(fā)件人,但可以有多個(gè)收件人。
圖5.以太網(wǎng)幀(其中,與TSN數(shù)據(jù)流標(biāo)識(shí)相關(guān)的部分以綠色表示)。
鑒于現(xiàn)有資源,現(xiàn)在可以用特殊的方式組織TSN流,不再需要丟棄幀?,F(xiàn)在,網(wǎng)橋?qū)⑵滟Y源用于TSN流的無(wú)損轉(zhuǎn)發(fā)。
盡力服務(wù)流量(標(biāo)準(zhǔn)以太網(wǎng)、IP、Web)用剩余資源(內(nèi)存/帶寬)正常傳輸。
第二層以上發(fā)生了什么?
每個(gè)互聯(lián)網(wǎng)以太網(wǎng)協(xié)議背后都有一個(gè)組織,是它推動(dòng)著各自協(xié)議的標(biāo)準(zhǔn)化和普及。這些組織中的每一個(gè)都制定了TSN戰(zhàn)略。結(jié)果,我們看到,幾乎所有現(xiàn)有協(xié)議都有TSN,只是表現(xiàn)形式各異而已。繼續(xù)看我們的例子:
對(duì)于PROFINET,通向TSN的途徑相對(duì)較短,因?yàn)槿藗兡壳耙呀?jīng)積累了豐富的時(shí)間感知整形經(jīng)驗(yàn)(已經(jīng)非常接近IRT),并且始終都支持行業(yè)協(xié)議與IT協(xié)議的共存。對(duì)于用戶(hù)而言,很多東西都未變,因此,熟悉的環(huán)境有利于提升績(jī)效。
EtherCAT和類(lèi)似的SERCOS將使TSN獲得現(xiàn)場(chǎng)層次以上的運(yùn)用能力。例如,EtherCAT自動(dòng)化協(xié)議(EAP)非常適合通過(guò)TSN以較低的開(kāi)銷(xiāo),連通經(jīng)典EtherCAT網(wǎng)段。
但是,該領(lǐng)域也有新的參與者。
有一個(gè)團(tuán)體正著手定義一個(gè)全新的工業(yè)以太網(wǎng)協(xié)議。有人將OPC UA用作應(yīng)用層。TSN被視為使該協(xié)議具有實(shí)時(shí)能力的手段。但是,這里還有大量的工作要做。傳輸需要新的OPC UA傳輸層(即所謂的OPC UA PUB/SUB協(xié)議)。
圖6.硬實(shí)時(shí)(IRT)、軟實(shí)時(shí)(RT)和IT協(xié)議(TCP/IP)的延遲/抖動(dòng)幅度。
越多越有用嗎?在實(shí)時(shí)領(lǐng)域并非如此
今天,我們?cè)诠I(yè)自動(dòng)化中使用的是100 Mbps以太網(wǎng),千兆以太網(wǎng)很快就會(huì)上線。但是,更高的速度并不意味著延遲能得到保障,傳輸能得到保障。因此,對(duì)于硬實(shí)時(shí),始終都需要特殊的機(jī)制。有了TSN,它們都已標(biāo)準(zhǔn)化。
Volker Goller
Volker E. Goller [volker.goller@analog.com]是ADI公司的系統(tǒng)應(yīng)用工程師,擁有30多年的豐富經(jīng)驗(yàn),廣泛涉獵復(fù)雜運(yùn)動(dòng)控制、嵌入式傳感器、時(shí)間敏感網(wǎng)絡(luò)技術(shù)等工業(yè)應(yīng)用。作為一名軟件開(kāi)發(fā)員,Volker開(kāi)發(fā)了面向無(wú)線和有線應(yīng)用的各種通信協(xié)議和協(xié)議棧,他還參與了主要行業(yè)組織,積極參與新通信標(biāo)準(zhǔn)的部署工作。
評(píng)論