IO-Link 應(yīng)用層OD

2025/8/7 15:21:36

前言

上回聊到的EVENT狀態(tài)機(jī)和ISDU狀態(tài)機(jī),這倆都屬于OD這個(gè)模塊的內(nèi)容,OD又分為數(shù)據(jù)鏈路層和應(yīng)用層兩塊,今天我們就展開(kāi)聊一下應(yīng)用層的OD和EVENT部分。

01 應(yīng)用層的OD模塊狀態(tài)機(jī)

下圖先看一下主站應(yīng)用層的OD模塊:

圖片

從這個(gè)狀態(tài)機(jī),我們看到AL應(yīng)用層的OD部分,僅僅包含了ISDU和DPP兩方面。

對(duì)于index 00和01的讀寫(xiě),劃歸到DL Param部分,對(duì)于其他的劃歸于ISDU部分,當(dāng)主站發(fā)起AL Service時(shí),協(xié)議棧開(kāi)始構(gòu)建DL Service,根據(jù)index來(lái)確定是走左邊,還是走右邊。

當(dāng)進(jìn)入await狀態(tài)時(shí),不允許第二個(gè)AL Service來(lái)訪問(wèn),否則就會(huì)被禁止,直接告知客戶主站正忙。

圖片

再來(lái)看下從站AL的OD模塊,如下圖所示:

圖片

從站和主站類似,也有await狀態(tài);對(duì)于參數(shù)的讀寫(xiě)分別進(jìn)入await_AL_Write_rsp_1和await_AL_Read_rsp_2;而對(duì)于ISDU的讀寫(xiě),則進(jìn)入Await_AL_RW_rsp_3。

四個(gè)狀態(tài)如下:

圖片

02 應(yīng)用層的OD傳輸序列

那么主站和從站的ISDU和DPP是如何交互的呢?

圖片

ISDU的傳輸

? 主站APP發(fā)起讀取ISDU參數(shù)(Index>1)指令; 

?主站AL層調(diào)用DL的DL_ISDUTransport_req函數(shù)

? 主站DL層把命令封裝到消息中發(fā)送給從站 

? 從站調(diào)用DL_ISDUTransport_ind函數(shù)對(duì)主站的ISDU讀命令進(jìn)行解析; 

? 解析后上送給AL層進(jìn)行數(shù)據(jù)查詢

? 上層的App進(jìn)行數(shù)據(jù)讀取,返回給AL層并繼而由物理層發(fā)給主站 

? 主站接到從站的回應(yīng),解析報(bào)文,上送APP層。

DPP的傳輸

? 主站APP發(fā)起讀取DPP參數(shù)(Inde≤1)指令; 

? 主站AL層面調(diào)用DL的DL_ReadParam函數(shù) 

? 主站DL層把命令封裝到消息中發(fā)送給從站 

? 從站調(diào)用DL_ReadParam函數(shù)對(duì)主站的DPP讀命令進(jìn)行解析; 

? 解析后上送給AL層進(jìn)行數(shù)據(jù)查詢

? 上層的App進(jìn)行數(shù)據(jù)讀取,返回給AL并繼而由物理層發(fā)給主站 

? 主站接到從站的回應(yīng),解析報(bào)文,上送APP層

關(guān)于AL Abort

圖片

查詢ISDU是有時(shí)間限制的,如果查詢從站的ISDU沒(méi)有在規(guī)定的時(shí)間內(nèi)返回,則主站發(fā)送一個(gè)Abort命令,終止ISDU的查詢。

03 應(yīng)用層的EVENT模塊

AL應(yīng)用層也有單獨(dú)的Event處理機(jī)制,我們分別看一下主站AL Event和從站的AL Event。

主站AL EVENT

圖片

圖片

從站AL EVENT

圖片

圖片

事件上報(bào)過(guò)程

圖片

??從站的App創(chuàng)建一個(gè)事件,并開(kāi)始發(fā)送請(qǐng)求信息 

??該請(qǐng)求信息從AL傳遞到DL層,并把事件緩存到內(nèi)存中 

??從站的AL激活EventTrigger服務(wù),置位EventFlag

??主站讀取從站的EventFlag后,開(kāi)始讀取從站的StatusCode以及相關(guān)EventCode 

??主站把相關(guān)Event繼續(xù)上報(bào)給網(wǎng)關(guān),網(wǎng)關(guān)應(yīng)用確認(rèn)事件消息 

??主站把事件確認(rèn)消息同步給從站,寫(xiě)入StatusCode信息,即清除事件標(biāo)志,等待下一個(gè)事件的上報(bào)

結(jié)語(yǔ)

本篇主要對(duì)AL應(yīng)用層的OD和Event做了介紹,從狀態(tài)機(jī)看比DL層稍微簡(jiǎn)單些,主要管理應(yīng)用層面的事務(wù),對(duì)DL的數(shù)據(jù)進(jìn)行管理和控制。

審核編輯(
王靜
)

提交

查看更多評(píng)論
其他資訊

查看更多

睿遠(yuǎn)研究院丨IO-Link 事件解讀

睿遠(yuǎn)研究院丨IO-Link ISDU詳解

睿遠(yuǎn)研究院丨IO-Link OD模塊解析

睿遠(yuǎn)研究院丨IO-LinkPD處理模塊

睿遠(yuǎn)研究院丨IO-Link M序列解析