一種新型的現(xiàn)場連接技術(shù)IO-Link
1. IO‐Link 系統(tǒng)概述
一個(gè)IO‐Link系統(tǒng)由IO‐Link設(shè)備、傳感器、執(zhí)行器或者它們的組合構(gòu)成,其中有一根標(biāo)準(zhǔn)的3線傳感器/執(zhí)行器電纜和一個(gè)IO‐Link主站。主站可以是一個(gè)具有不同功能和不同保護(hù)等級的設(shè)備。系統(tǒng)的體系結(jié)構(gòu)如下圖所示:

圖1:系統(tǒng)體系結(jié)構(gòu)示例
一個(gè)IO‐Link主站可以有一個(gè)或者多個(gè)端口。每個(gè)端口只能連接一個(gè)IO‐Link設(shè)備。因此IO‐Link是一種點(diǎn)到點(diǎn)的連接,而不是一種現(xiàn)場總線。

圖2:IO‐Link點(diǎn)到點(diǎn)的連接
1.1 上電之后的狀態(tài)
在一開始,設(shè)備總是處于SIO模式(標(biāo)準(zhǔn)I/O模式)。主站的端口可以使用不同的配置。如果一個(gè)端口設(shè)置成為SIO模式,主站這個(gè)端口的行為就像一個(gè)通用的數(shù)字量輸入。如果端口設(shè)置成通信模式,主站試圖尋找連接的IO‐Link設(shè)備。這個(gè)過程被稱為喚醒。

圖3:IO‐Link SIO 和COM 模式
在喚醒期間,主站發(fā)出一個(gè)定義的信號,然后等待設(shè)備的回應(yīng)。主站使用最高的波特率發(fā)送這個(gè)定義信號。如果主站這次嘗試沒有成功,那么下次使用較低的波特率再試。主站用相同的波特率,對連接的設(shè)備進(jìn)行三次嘗試。如果主站收到了回答(比如,設(shè)備被喚醒),兩者就開始通信。最初,它們先交換通信參數(shù);然后,周期地交換過程數(shù)據(jù)。
如果設(shè)備在工作期間被刪除,主站會(huì)檢測到通信中斷,馬上發(fā)出報(bào)告。這很像現(xiàn)場總線,通知控制系統(tǒng),然后再周期地進(jìn)行喚醒設(shè)備的過程。在成功地進(jìn)行了另一次喚醒后,再次交換通信參數(shù);如果需要,可以對參數(shù)進(jìn)行驗(yàn)證,然后重新開始周期性的數(shù)據(jù)交換。
如果主站終止兩者的通信,主站和設(shè)備將回到原始的模式,也就是SIO模式。這被稱為復(fù)原。
2. IO‐Link 協(xié)議
基本上講,進(jìn)行的交換有三種數(shù)據(jù)類型:
1.周期型數(shù)據(jù)(也稱為過程數(shù)據(jù));
2.非周期數(shù)據(jù)或者服務(wù)型數(shù)據(jù);
3.事件型數(shù)據(jù)。
僅在收到IO‐Link主站請求后,IO‐Link設(shè)備才發(fā)送數(shù)據(jù)。主站發(fā)出非周期數(shù)據(jù)和事件顯式請求后,設(shè)備應(yīng)答;主站發(fā)出IDLE報(bào)文后,設(shè)備發(fā)送周期型數(shù)據(jù)。
2.1 過程數(shù)據(jù)(PD)
設(shè)備的過程數(shù)據(jù)是按一個(gè)數(shù)據(jù)幀的格式,周期性發(fā)送,過程數(shù)據(jù)的長度不超過2個(gè)字節(jié)。如果過程數(shù)據(jù)超過這個(gè)長度,就要對過程數(shù)據(jù)進(jìn)行拆分,用幾個(gè)周期發(fā)送。當(dāng)過程數(shù)據(jù)為無效時(shí),會(huì)有一個(gè)診斷信息。
2.2 服務(wù)數(shù)據(jù)(SD)
服務(wù)數(shù)據(jù)總是非周期地交換,并且總是按照IO‐Link主站的要求進(jìn)行。首先,IO‐Link主站向設(shè)備發(fā)出一個(gè)請求,然后設(shè)備回答這個(gè)請求。如對一個(gè)設(shè)備寫數(shù)據(jù),或者從一個(gè)設(shè)備中讀數(shù)據(jù),都是這樣進(jìn)行的。服務(wù)數(shù)據(jù)可以用于讀參數(shù),或者讀設(shè)備狀態(tài)。它也能夠用于寫參數(shù)或者發(fā)送命令。
SD和PD可以用一個(gè)報(bào)文或者分開的報(bào)文傳送。一個(gè)典型的數(shù)據(jù)交換參見有下面的結(jié)構(gòu)。

圖4:IO-Link報(bào)文結(jié)構(gòu)
2.3 事件
當(dāng)發(fā)生一個(gè)事件時(shí),設(shè)備對“事件標(biāo)記”置位,它被發(fā)送到過程數(shù)據(jù)報(bào)文的CHECK/STAT字節(jié)的第7位。主站檢測這個(gè)置位位,得知事件的報(bào)告。在得知一個(gè)事件發(fā)生時(shí),不進(jìn)行服務(wù)數(shù)據(jù)的交換。這意味著事件出現(xiàn)或者設(shè)備發(fā)生過熱、短路等情況,能夠通過IO‐Link傳送到主站,再到PLC或者監(jiān)控軟件。
IO‐Link主站能夠生成自己的事件和狀態(tài),并通過各種現(xiàn)場總線把它們發(fā)送出去。這樣的事件可以是:開路、通信中斷或者過載等。
2.4 通信質(zhì)量,重發(fā),服務(wù)質(zhì)量(QoS)
IO‐Link是一種非常牢固的通信系統(tǒng)。它工作在24V的電壓下。如果一個(gè)幀失效,主站的請求會(huì)再重復(fù)一次。當(dāng)?shù)诙螄L試發(fā)送數(shù)據(jù)再次失敗時(shí),主站會(huì)檢測通信是否中斷,然后報(bào)告給更高一級的控制系統(tǒng)。主站用重發(fā)報(bào)文的數(shù)量來測量通信的質(zhì)量(QoS = 服務(wù)質(zhì)量)。
2.5 通信速率和同步
IO‐Link規(guī)范定義的傳輸率(波特率)是4.8和38.4 kbps。通常,一個(gè)IO‐Link設(shè)備會(huì)支持其中一個(gè)波特率。IO‐Link主站必須支持這兩種波特率。
周期時(shí)間由報(bào)文長度和主站與設(shè)備間的延時(shí)所組成。當(dāng)波特率為38.4 kbps時(shí),典型的周期時(shí)間為2 ms。
整個(gè)時(shí)間由設(shè)備指定的最小周期時(shí)間和由主站指定的同意或者參數(shù)化后的實(shí)際周期時(shí)間共同算出。
主站對每個(gè)端口可以設(shè)定不同的響應(yīng)時(shí)間。設(shè)備應(yīng)用可以和主站周期進(jìn)行同步。相同主站的不同端口也可以實(shí)現(xiàn)與設(shè)備應(yīng)用的同步。
2.6 報(bào)文類型和它們的結(jié)構(gòu)
IO‐Link規(guī)范定義了不同的報(bào)文類型,過程輸入數(shù)據(jù)和過程輸出數(shù)據(jù)在大小上是不同的。
為了建立通信,主站必須決定設(shè)備的通信參數(shù)。一個(gè)相關(guān)信息是過程數(shù)據(jù)長度。基于這個(gè)信息,IO‐Link主站決定使用什么報(bào)文類型用于周期數(shù)據(jù)交換。在通信建立階段,主站使用報(bào)文類型0。定義下面的報(bào)文類型:

表1:報(bào)文類型
當(dāng)過程設(shè)備輸入和輸出數(shù)據(jù)的和超過2個(gè)字節(jié)時(shí),總是使用報(bào)文類型1。 那么報(bào)文結(jié)構(gòu)需要多個(gè)IO‐Link 周期來構(gòu)成。
在“服務(wù)數(shù)據(jù)”節(jié)所表示的報(bào)文是2.1類型的報(bào)文。設(shè)備發(fā)送一個(gè)字節(jié)的過程數(shù)據(jù)。在上面的圖示,設(shè)備首先發(fā)出一個(gè)字節(jié)的服務(wù)數(shù)據(jù),然后加上過程數(shù)據(jù)的字節(jié)。在下面的圖示,主站對設(shè)備發(fā)送一個(gè)服務(wù)數(shù)據(jù)。

圖5:2.1幀類型
報(bào)文中不同位的含意如下表所示。


為了通過IO‐Link的物理層傳輸數(shù)據(jù),每個(gè)字節(jié)打包在一個(gè)通用異步收發(fā)(UART)幀中,然后通過半雙工模式在主站和設(shè)備之間傳送。

圖8:IO-Link UART幀
3. 參數(shù)交換
為了在一個(gè)IO‐Link設(shè)備和一臺PLC之間交換數(shù)據(jù), IO‐Link主站把IO‐Link數(shù)據(jù)映射到所使用的現(xiàn)場總線上。這就是所謂的IO‐Link映射至現(xiàn)場總線。如果IO‐Link主站直接通過專有總線(見圖1)連接在一臺PLC上,IO‐Link數(shù)據(jù)映射到這個(gè)總線,并且把數(shù)據(jù)傳送到這臺PLC;或者數(shù)據(jù)從PLC通過現(xiàn)場總線傳送到IO‐Link主站,再到IO‐Link設(shè)備。IO‐Link映射到的現(xiàn)場總線已經(jīng)有PROFIBUS,Profinet, INTERBUS, AS‐i ,DeviceNet,EtherNet/IP和 EtherCAT等。
來自或者到達(dá)IO‐Link設(shè)備的過程數(shù)據(jù),是通過現(xiàn)場總線或者背板總線周期地進(jìn)行傳輸。服務(wù)數(shù)據(jù)必須由PLC顯式地請求,這非常容易識別。這就是為什么IO‐Link 要定義服務(wù)協(xié)議數(shù)據(jù)單元(SPDU)規(guī)范。
在功能塊(FB)幫助下-每個(gè)PLC制造商提供多種定制的功能塊(FB)用于這個(gè)系統(tǒng)-IO‐Link主站程序非循環(huán)地與IO‐Link設(shè)備在程序控制下進(jìn)行通信。功能塊定義哪個(gè)IO‐Link主站(也就是哪個(gè)現(xiàn)場總線設(shè)備)和哪個(gè)端口進(jìn)行數(shù)據(jù)交換。同時(shí),還要向這個(gè)IO‐Link設(shè)備發(fā)送請求。
可以對一個(gè)帶索引和子索引的IO‐Link設(shè)備請求數(shù)據(jù)和狀態(tài)。在IO‐Link主站中,請求(讀寫服務(wù))指令用一個(gè)IO‐Link特定的服務(wù)協(xié)議數(shù)據(jù)單元(SPDU),通過IO‐Link接口傳送到設(shè)備。
SPDU 指定了是讀數(shù)據(jù)還是寫數(shù)據(jù)。要讀寫的值通過索引來指定。SPDU有下面的結(jié)構(gòu):

圖9:一個(gè)SPDU的結(jié)構(gòu)
最多至32768索引,最多有232字節(jié),用于指定IO‐Link的地址。
IO‐Link規(guī)范指定多種服務(wù),例如:
D10 為制造商名稱;
D12 為產(chǎn)品名稱;
使用這些服務(wù),IO‐Link設(shè)備能夠得到獨(dú)一無二的識別。
在現(xiàn)場總線上,IO‐Link主站呈現(xiàn)為一個(gè)通用的現(xiàn)場總線設(shè)備,通過相應(yīng)的設(shè)備描述(比如:GSD,F(xiàn)DCML,GSDML,等),連接到各自的網(wǎng)絡(luò)適配器上。這些文件描述了通信連接和IO‐Link主站的詳細(xì)屬性,
諸如:端口號。可是,連接的IO‐Link設(shè)備不能在這里讀到。IO‐Link設(shè)備描述(IODD)文件透明地顯示了系統(tǒng)的體系結(jié)構(gòu)和完整地表出了IO‐Link設(shè)備。在IODD和ODD解釋工具的幫助下,用戶能夠清晰地分辯出哪個(gè)IO‐Link
主站端口連接了哪個(gè)IO‐Link設(shè)備。
4. IO‐Link 系統(tǒng)結(jié)構(gòu)
4.1 IO‐Link設(shè)備
使用IO‐Link協(xié)議,IO‐Link設(shè)備提供了對過程數(shù)據(jù)和設(shè)備狀態(tài)變量的訪問。某些變量已經(jīng)定義,比如,用于識別目的的變量。制造商必須在定義的索引區(qū)創(chuàng)建設(shè)備變量。所有這些信息都在IODD中描述。

圖10:IO-Link設(shè)備結(jié)構(gòu)
4.2 IODD和解釋工具
IODD包含通信屬性、設(shè)備參數(shù)、識別碼、過程和診斷數(shù)據(jù)等信息。它還包含設(shè)備的外形圖和制造商的標(biāo)識。所有制造商的所有設(shè)備的IODD結(jié)構(gòu)是相同的,所以用IODD解釋器工具展示的內(nèi)容具有相同的形式。因此,用戶可以使用第三廠家的解釋器工具,處理所有的IO‐Link設(shè)備。
IODD是做為一個(gè)打包文件提供給用戶的,它包括一個(gè)或者多個(gè)使用擴(kuò)展標(biāo)記語言(xml)描述的設(shè)備文件,和用可移植網(wǎng)絡(luò)圖象(png)格式的圖形文件。
“IODD‐StandardDefinitions1.0.xml”
文件描述了所有設(shè)備的通用和強(qiáng)制屬性。這個(gè)文件必須在IODD目錄下,在每種支持的語言中存儲一次。
解釋器工具可以讀出一個(gè)IODD文件,以圖形的形式顯示描述的設(shè)備(僅以有限的范圍)。它可以用于所有制造商IO‐Link設(shè)備的參數(shù)化和診斷。同時(shí),解釋器工具可以從系統(tǒng)到現(xiàn)場的體系結(jié)構(gòu)進(jìn)行圖形顯示。
IODD檢查器用于驗(yàn)證IODD。所有的IODD必須通過IODD檢查器進(jìn)行測試。檢查器在IODD中輸入一個(gè)校驗(yàn)和。解釋器工具讀出IODD中的這個(gè)值,然后與自己計(jì)算的值進(jìn)行比較,結(jié)果必須相等。
圖11:IODD結(jié)構(gòu)
4.3 IO‐Link 主站
IO‐Link主站可以以不同形式連接到PLC(見圖1),可以有一個(gè)或者多個(gè)端口。IO‐Link規(guī)范區(qū)分了兩種類型的端口。端口類型A,針腳2的功能沒有詳細(xì)描述,可以由制造商自己定義,端口類型B用于設(shè)備需要特定電源的情況。
端口類型A
對于這種端口類型,針腳4可以配置成一個(gè)數(shù)字量輸入(DI)或者一個(gè)IO‐Link。制造商也可以把針腳4
設(shè)計(jì)成一個(gè)帶有電流限制的數(shù)字量輸出(DO)。針腳2也可以實(shí)現(xiàn)其他的功能。制造商可以設(shè)計(jì)針腳,比如,做為一個(gè)DI或者DO。
圖12:IO-Link主站,端口類型A
端口類型B
端口類型B是設(shè)計(jì)好的,比如,用于傳感器或者執(zhí)行器有電氣絕緣的電源。這里,由針腳2和5提供外加電源。
圖13:IO-Link主站,端口類型B
文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。
你可能感興趣的文章