siemens x
工業(yè)連接

一種新型的現(xiàn)場(chǎng)連接技術(shù)――IO-Link

2025China.cn   2012年03月13日

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ù)等級(jí)的設(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)場(chǎng)總線。


圖2:IO‐Link點(diǎn)到點(diǎn)的連接


1.1 上電之后的狀態(tài)

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


圖3:IO‐Link SIO 和COM 模式

        在喚醒期間,主站發(fā)出一個(gè)定義的信號(hào),然后等待設(shè)備的回應(yīng)。主站使用最高的波特率發(fā)送這個(gè)定義信號(hào)。如果主站這次嘗試沒(méi)有成功,那么下次使用較低的波特率再試。主站用相同的波特率,對(duì)連接的設(shè)備進(jìn)行三次嘗試。如果主站收到了回答(比如,設(shè)備被喚醒),兩者就開(kāi)始通信。最初,它們先交換通信參數(shù);然后,周期地交換過(guò)程數(shù)據(jù)。

        如果設(shè)備在工作期間被刪除,主站會(huì)檢測(cè)到通信中斷,馬上發(fā)出報(bào)告。這很像現(xiàn)場(chǎng)總線,通知控制系統(tǒng),然后再周期地進(jìn)行喚醒設(shè)備的過(guò)程。在成功地進(jìn)行了另一次喚醒后,再次交換通信參數(shù);如果需要,可以對(duì)參數(shù)進(jìn)行驗(yàn)證,然后重新開(kāi)始周期性的數(shù)據(jù)交換。

        如果主站終止兩者的通信,主站和設(shè)備將回到原始的模式,也就是SIO模式。這被稱為復(fù)原。

[DividePage:NextPage]

2. IO‐Link 協(xié)議

        基本上講,進(jìn)行的交換有三種數(shù)據(jù)類型:

        1.周期型數(shù)據(jù)(也稱為過(guò)程數(shù)據(jù)); 
        2.非周期數(shù)據(jù)或者服務(wù)型數(shù)據(jù);
        3.事件型數(shù)據(jù)。

        僅在收到IO‐Link主站請(qǐng)求后,IO‐Link設(shè)備才發(fā)送數(shù)據(jù)。主站發(fā)出非周期數(shù)據(jù)和事件顯式請(qǐng)求后,設(shè)備應(yīng)答;主站發(fā)出IDLE報(bào)文后,設(shè)備發(fā)送周期型數(shù)據(jù)。

        2.1 過(guò)程數(shù)據(jù)(PD)

        設(shè)備的過(guò)程數(shù)據(jù)是按一個(gè)數(shù)據(jù)幀的格式,周期性發(fā)送,過(guò)程數(shù)據(jù)的長(zhǎng)度不超過(guò)2個(gè)字節(jié)。如果過(guò)程數(shù)據(jù)超過(guò)這個(gè)長(zhǎng)度,就要對(duì)過(guò)程數(shù)據(jù)進(jìn)行拆分,用幾個(gè)周期發(fā)送。當(dāng)過(guò)程數(shù)據(jù)為無(wú)效時(shí),會(huì)有一個(gè)診斷信息。

        2.2 服務(wù)數(shù)據(jù)(SD)

        服務(wù)數(shù)據(jù)總是非周期地交換,并且總是按照IO‐Link主站的要求進(jìn)行。首先,IO‐Link主站向設(shè)備發(fā)出一個(gè)請(qǐng)求,然后設(shè)備回答這個(gè)請(qǐng)求。如對(duì)一個(gè)設(shè)備寫數(shù)據(jù),或者從一個(gè)設(shè)備中讀數(shù)據(jù),都是這樣進(jìn)行的。服務(wù)數(shù)據(jù)可以用于讀參數(shù),或者讀設(shè)備狀態(tài)。它也能夠用于寫參數(shù)或者發(fā)送命令。

        SD和PD可以用一個(gè)報(bào)文或者分開(kāi)的報(bào)文傳送。一個(gè)典型的數(shù)據(jù)交換參見(jiàn)有下面的結(jié)構(gòu)。


圖4:IO-Link報(bào)文結(jié)構(gòu)

        2.3 事件

        當(dāng)發(fā)生一個(gè)事件時(shí),設(shè)備對(duì)“事件標(biāo)記”置位,它被發(fā)送到過(guò)程數(shù)據(jù)報(bào)文的CHECK/STAT字節(jié)的第7位。主站檢測(cè)這個(gè)置位位,得知事件的報(bào)告。在得知一個(gè)事件發(fā)生時(shí),不進(jìn)行服務(wù)數(shù)據(jù)的交換。這意味著事件出現(xiàn)或者設(shè)備發(fā)生過(guò)熱、短路等情況,能夠通過(guò)IO‐Link傳送到主站,再到PLC或者監(jiān)控軟件。

        IO‐Link主站能夠生成自己的事件和狀態(tài),并通過(guò)各種現(xiàn)場(chǎng)總線把它們發(fā)送出去。這樣的事件可以是:開(kāi)路、通信中斷或者過(guò)載等。


        2.4 通信質(zhì)量,重發(fā),服務(wù)質(zhì)量(QoS)

        IO‐Link是一種非常牢固的通信系統(tǒng)。它工作在24V的電壓下。如果一個(gè)幀失效,主站的請(qǐng)求會(huì)再重復(fù)一次。當(dāng)?shù)诙螄L試發(fā)送數(shù)據(jù)再次失敗時(shí),主站會(huì)檢測(cè)通信是否中斷,然后報(bào)告給更高一級(jí)的控制系統(tǒng)。主站用重發(fā)報(bào)文的數(shù)量來(lái)測(cè)量通信的質(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)文長(zhǎng)度和主站與設(shè)備間的延時(shí)所組成。當(dāng)波特率為38.4 kbps時(shí),典型的周期時(shí)間為2 ms。

        整個(gè)時(shí)間由設(shè)備指定的最小周期時(shí)間和由主站指定的同意或者參數(shù)化后的實(shí)際周期時(shí)間共同算出。

        主站對(duì)每個(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)文類型,過(guò)程輸入數(shù)據(jù)和過(guò)程輸出數(shù)據(jù)在大小上是不同的。

        為了建立通信,主站必須決定設(shè)備的通信參數(shù)。一個(gè)相關(guān)信息是過(guò)程數(shù)據(jù)長(zhǎng)度?;谶@個(gè)信息,IO‐Link主站決定使用什么報(bào)文類型用于周期數(shù)據(jù)交換。在通信建立階段,主站使用報(bào)文類型0。定義下面的報(bào)文類型: 

[DividePage:NextPage]

表1:報(bào)文類型

        當(dāng)過(guò)程設(shè)備輸入和輸出數(shù)據(jù)的和超過(guò)2個(gè)字節(jié)時(shí),總是使用報(bào)文類型1。 那么報(bào)文結(jié)構(gòu)需要多個(gè)IO‐Link 周期來(lái)構(gòu)成。

        在“服務(wù)數(shù)據(jù)”節(jié)所表示的報(bào)文是2.1類型的報(bào)文。設(shè)備發(fā)送一個(gè)字節(jié)的過(guò)程數(shù)據(jù)。在上面的圖示,設(shè)備首先發(fā)出一個(gè)字節(jié)的服務(wù)數(shù)據(jù),然后加上過(guò)程數(shù)據(jù)的字節(jié)。在下面的圖示,主站對(duì)設(shè)備發(fā)送一個(gè)服務(wù)數(shù)據(jù)。


圖5:2.1幀類型

        報(bào)文中不同位的含意如下表所示。

表2:讀/寫(R/W)值

 


表3:數(shù)據(jù)通道值

 

表4:幀類型值

 

圖7:設(shè)備的檢查/狀態(tài)序列

 

表5:事件位值

 

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

圖8:IO-Link UART幀

3. 參數(shù)交換

        為了在一個(gè)IO‐Link設(shè)備和一臺(tái)PLC之間交換數(shù)據(jù), IO‐Link主站把IO‐Link數(shù)據(jù)映射到所使用的現(xiàn)場(chǎng)總線上。這就是所謂的IO‐Link映射至現(xiàn)場(chǎng)總線。如果IO‐Link主站直接通過(guò)專有總線(見(jiàn)圖1)連接在一臺(tái)PLC上,IO‐Link數(shù)據(jù)映射到這個(gè)總線,并且把數(shù)據(jù)傳送到這臺(tái)PLC;或者數(shù)據(jù)從PLC通過(guò)現(xiàn)場(chǎng)總線傳送到IO‐Link主站,再到IO‐Link設(shè)備。IO‐Link映射到的現(xiàn)場(chǎng)總線已經(jīng)有PROFIBUS,Profinet, INTERBUS, AS‐i ,DeviceNet,EtherNet/IP和 EtherCAT等。

        來(lái)自或者到達(dá)IO‐Link設(shè)備的過(guò)程數(shù)據(jù),是通過(guò)現(xiàn)場(chǎng)總線或者背板總線周期地進(jìn)行傳輸。服務(wù)數(shù)據(jù)必須由PLC顯式地請(qǐng)求,這非常容易識(shí)別。這就是為什么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)場(chǎng)總線設(shè)備)和哪個(gè)端口進(jìn)行數(shù)據(jù)交換。同時(shí),還要向這個(gè)IO‐Link設(shè)備發(fā)送請(qǐng)求。

        可以對(duì)一個(gè)帶索引和子索引的IO‐Link設(shè)備請(qǐng)求數(shù)據(jù)和狀態(tài)。在IO‐Link主站中,請(qǐng)求(讀寫服務(wù))指令用一個(gè)IO‐Link特定的服務(wù)協(xié)議數(shù)據(jù)單元(SPDU),通過(guò)IO‐Link接口傳送到設(shè)備。

        SPDU 指定了是讀數(shù)據(jù)還是寫數(shù)據(jù)。要讀寫的值通過(guò)索引來(lái)指定。SPDU有下面的結(jié)構(gòu):

[DividePage:NextPage]


圖9:一個(gè)SPDU的結(jié)構(gòu)

        最多至32768索引,最多有232字節(jié),用于指定IO‐Link的地址。

        IO‐Link規(guī)范指定多種服務(wù),例如: 
        D10 為制造商名稱;
        D12 為產(chǎn)品名稱;

        使用這些服務(wù),IO‐Link設(shè)備能夠得到獨(dú)一無(wú)二的識(shí)別。

        在現(xiàn)場(chǎng)總線上,IO‐Link主站呈現(xiàn)為一個(gè)通用的現(xiàn)場(chǎng)總線設(shè)備,通過(guò)相應(yīng)的設(shè)備描述(比如:GSD,F(xiàn)DCML,GSDML,等),連接到各自的網(wǎng)絡(luò)適配器上。這些文件描述了通信連接和IO‐Link主站的詳細(xì)屬性, 諸如:端口號(hào)。可是,連接的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è)備提供了對(duì)過(guò)程數(shù)據(jù)和設(shè)備狀態(tài)變量的訪問(wèn)。某些變量已經(jīng)定義,比如,用于識(shí)別目的的變量。制造商必須在定義的索引區(qū)創(chuàng)建設(shè)備變量。所有這些信息都在IODD中描述。


圖10:IO-Link設(shè)備結(jié)構(gòu)

        4.2 IODD和解釋工具

        IODD包含通信屬性、設(shè)備參數(shù)、識(shí)別碼、過(guò)程和診斷數(shù)據(jù)等信息。它還包含設(shè)備的外形圖和制造商的標(biāo)識(shí)。所有制造商的所有設(shè)備的IODD結(jié)構(gòu)是相同的,所以用IODD解釋器工具展示的內(nèi)容具有相同的形式。因此,用戶可以使用第三廠家的解釋器工具,處理所有的IO‐Link設(shè)備。

        IODD是做為一個(gè)打包文件提供給用戶的,它包括一個(gè)或者多個(gè)使用擴(kuò)展標(biāo)記語(yǔ)言(xml)描述的設(shè)備文件,和用可移植網(wǎng)絡(luò)圖象(png)格式的圖形文件。 “IODD‐” 文件描述了所有設(shè)備的通用和強(qiáng)制屬性。這個(gè)文件必須在IODD目錄下,在每種支持的語(yǔ)言中存儲(chǔ)一次。

        解釋器工具可以讀出一個(gè)IODD文件,以圖形的形式顯示描述的設(shè)備(僅以有限的范圍)。它可以用于所有制造商IO‐Link設(shè)備的參數(shù)化和診斷。同時(shí),解釋器工具可以從系統(tǒng)到現(xiàn)場(chǎng)的體系結(jié)構(gòu)進(jìn)行圖形顯示。

        IODD檢查器用于驗(yàn)證IODD。所有的IODD必須通過(guò)IODD檢查器進(jìn)行測(cè)試。檢查器在IODD中輸入一個(gè)校驗(yàn)和。解釋器工具讀出IODD中的這個(gè)值,然后與自己計(jì)算的值進(jìn)行比較,結(jié)果必須相等。


圖11:IODD結(jié)構(gòu)

        4.3 IO‐Link 主站

        IO‐Link主站可以以不同形式連接到PLC(見(jiàn)圖1),可以有一個(gè)或者多個(gè)端口。IO‐Link規(guī)范區(qū)分了兩種類型的端口。端口類型A,針腳2的功能沒(méi)有詳細(xì)描述,可以由制造商自己定義,端口類型B用于設(shè)備需要特定電源的情況。

        端口類型A

        對(duì)于這種端口類型,針腳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

(羅克韋爾自動(dòng)化 華镕)

標(biāo)簽:羅克韋爾自動(dòng)化 現(xiàn)場(chǎng)連接技術(shù) IO | Link系統(tǒng) 我要反饋 
2024世界人工智能大會(huì)專題
即刻點(diǎn)擊并下載ABB資料,好禮贏不停~
優(yōu)傲機(jī)器人下載中心
西克
2024全景工博會(huì)
專題報(bào)道