91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

睿遠研究院丨IO-Link規(guī)范解讀(十一):ISDU狀態(tài)機與EVENT事件

傳感器專家網 ? 2025-11-29 18:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

上篇我們介紹了ISDU的典型編碼格式和應用案例,本篇我們就來詳細介紹下,ISDU的狀態(tài)機,并把EVENT事件的邏輯,給大家好好解析下。

1主站ISDU狀態(tài)機

wKgZPGkoKDGAXphRAADD_3Uz7eo273.png

如上圖所示,ISDU的狀態(tài)機的核心是請求,等待和響應。

如果主站請求的是DPP參數,即ISDU 0x00,0x01的參數,從AL層還是走的ISDU邏輯,但底層走了DL_Read/WriteParam的邏輯,即走的是Page通道。也就是好端端的ISDU愣是被它拆分了兩個通道,增加了復雜性。

因為通常讀寫ISDU的命令都很長,一個循環(huán)放不下,都是多個循環(huán)來拆包,組包。具體的幾個狀態(tài)如下:

wKgZPGkoKDGAEJv5AAFJJeDr5b8976.png

T2:觸發(fā)OD.req開始請求ISDU;

T3:持續(xù)觸發(fā)寫請求,請求ISDU數據;

T4:開始計時器(ISDUTime),查看是否會超時;

T5:開始讀請求,對之前寫命令的讀請求;

T6:如果從站開始回應,則停止定時器;

T7:持續(xù)的讀取ISDU數據;

T8:全部讀取后,FlowCtrl為IDLE狀態(tài);

T11:如果ISDU錯誤,則觸發(fā)ISDUAbort命令,并向DL層確認ISDU錯誤;

T13:通過OD.req來獲取相關參數;

T14:在正常PD交互中,采用IDLE的FlowCtrl進行OD交互

T15:如果通信中斷,消息處理通知DL_Mode處理模塊,需要把ISDU模塊去激活。

2 從站ISDU狀態(tài)機

wKgZPGkoKDGAIU3IAAEVGM1BXTg527.png

從站ISDU的狀態(tài)機和主站的狀態(tài)很類似,請求、等待和響應三個狀態(tài)缺一不可。

wKgZPGkoKDGAVcLcAADpAQXl4P8475.png

T1:收到激活事件,從非激活狀態(tài)遷移到Idle狀態(tài),等待ISDU的命令

T2:開始接收ISDU數據,遷移狀態(tài)到Request_2

T3:持續(xù)接受數據,因為OD的數據大,而每次循環(huán)一般就傳遞1~2個OD數據,需要幾個循環(huán)才能傳輸完,每次接收的OD數據需要緩存,等待接收完畢

T4:所有ISDU接收完畢后,觸發(fā)RecComplete事件,進入wait狀態(tài),該狀態(tài)下尚未解析完成,如果主站查詢數據,則回應busy

T5:從站回應busy

T6:從站做好準備,遷移狀態(tài)到Response

T7:等待主站的read命令,開始讀取數據,調用OD.rsp來回應主站

T8:發(fā)送完成,觸發(fā)SendComplete事件,回到idle狀態(tài)

T9:接收到ISDUAbort命令

T10:接收ISDUAbort命令

T11:接收ISDUAbort命令

T12:SM模塊通知ISDU模塊,去激活,回到非激活狀態(tài)

T13:收到ISDU Error消息,回到Idle狀態(tài)

T14:在Idle狀態(tài)下,從站回應no service的命令

T15:如果ISDU Error觸發(fā)ISDU Abort

T16:如果ISDU Error觸發(fā)ISDU Abort

3 Event事件解析

介紹完ISDU之后,我們來看一下事件。

事件有時候又稱為診斷,它也是通過OD字段來傳輸,它的發(fā)起端雖然是主站來發(fā)起請求,但是最初的發(fā)起還是從站,從站會在每次傳輸時,在最后字節(jié)的一個bit置位,告訴主站自己有事件。

就好像小學生要回答問題,不能自己直接回答,得先舉手示意。這時候老師(主站)會問學生(從站),你有什么事情或者你想回答什么問題(事件)嗎?這時候學生(從站)就會把自己的事情(事件)告訴老師(主站)。

Event在協議棧中以16 bit的EventCode存在,每個EventCode表示一個事件的定義;而所有的EventCode又可以分為三類:Error、Warning和Notification。

Error/Warning:簡單歸結為錯誤,故障類,比較嚴重,該類事件以出現/消失成對出現,如果出現了Error/Warning,需要維護人員去關注,直到它消失為止;

Notification:僅僅是通知,不是很嚴重,可能并不需要關注,它沒有出現/消失這種機制,就是見到的SingleShot。

01事件上報

wKgZPGkoKDGAC5mZAAElzD11G-E720.png

如上圖所示,上報事件通過查看從站的內存里的數據來上報,規(guī)范規(guī)定了一次性最大臨時存6個事件,共占用18個字節(jié),加上一個狀態(tài)字節(jié),共19字節(jié)

wKgZPGkoKDKATLThAADRBAKjpMw169.png

02事件的狀態(tài)機

最后看一下事件的狀態(tài)機,這個就比較簡單了,主站狀態(tài)機如下:

wKgZPGkoKDKAOPakAAC2SvhYifo609.png

主站的狀態(tài)機基本就是Idle和讀事件,讀完確認就結束了。

wKgZPGkoKDKAOuMEAACQeA5slZg181.png

從站也很簡單,就是觸發(fā)事件,讀取事件的時候,要凍結內存,不能讓新事件寫入內存,導致干擾。

4 應用層的OD模塊狀態(tài)機

前面提到的EVENT狀態(tài)機和ISDU狀態(tài)機,這倆都屬于OD這個模塊的內容,OD又分為數據鏈路層和應用層兩塊,下面我們就展開聊一下應用層的OD和EVENT部分。

下圖先看一下主站應用層的OD模塊:

wKgZPGkoKDKASLqbAAErPQ8YW28679.png

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

對于index 00和01的讀寫,劃歸到DL Param部分,對于其他的劃歸于ISDU部分,當主站發(fā)起AL Service時,協議棧開始構建DL Service,根據index來確定是走左邊,還是走右邊。

當進入await狀態(tài)時,不允許第二個AL Service來訪問,否則就會被禁止,直接告知客戶主站正忙。

wKgZPGkoKDKAcoFSAAKWOa5Eqd8375.png

再來看下從站AL的OD模塊,如下圖所示:

wKgZPGkoKDOAfE8VAACn7efmvJU636.png

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

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

wKgZPGkoKDOAefXfAAEeW70nXsg758.png

5應用層的OD傳輸序列

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

wKgZPGkoKDOAc7gmAAFX0hfh0DQ960.png

01 ISDU的傳輸

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

主站AL層調用DL的DL_ISDUTransport_req函數

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

從站調用DL_ISDUTransport_ind函數對主站的ISDU讀命令進行解析;

解析后上送給AL層進行數據查詢

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

主站接到從站的回應,解析報文,上送APP層。

02 DPP的傳輸

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

主站AL層面調用DL的DL_ReadParam函數

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

從站調用DL_ReadParam函數對主站的DPP讀命令進行解析;

解析后上送給AL層進行數據查詢

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

主站接到從站的回應,解析報文,上送APP層

03 關于AL Abort

wKgZPGkoKDOADcIqAAFrLcvX5BQ227.png

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

6應用層的EVENT模塊

AL應用層也有單獨的Event處理機制,我們分別看一下主站AL Event和從站的AL Event。

01 主站AL EVENT

wKgZPGkoKDOAFqqLAACZTqs1rXI832.pngwKgZPGkoKDOAfUOqAAFA9JS0_3s367.png

02從站AL EVENT

wKgZPGkoKDOAVyCWAACF7qXzVH4286.pngwKgZPGkoKDSAPY-NAAFWAgaHqno342.png

03事件上報過程

wKgZPGkoKDSABbdmAAHA-zhB-Ss464.png

從站的App創(chuàng)建一個事件,并開始發(fā)送請求信息

該請求信息從AL傳遞到DL層,并把事件緩存到內存中

從站的AL激活EventTrigger服務,置位EventFlag

主站讀取從站的EventFlag后,開始讀取從站的StatusCode以及相關EventCode

主站把相關Event繼續(xù)上報給網關,網關應用確認事件消息

主站把事件確認消息同步給從站,寫入StatusCode信息,即清除事件標志,等待下一個事件的上報

結語

好了,本篇總結了ISDU的狀態(tài)機和EVENT事件的業(yè)務邏輯,以及對AL應用層的OD和Event做了介紹,內容有點多,希望大家慢慢消化。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • IO-Link
    +關注

    關注

    2

    文章

    199

    瀏覽量

    20684
  • IO-Link收發(fā)器

    關注

    0

    文章

    16

    瀏覽量

    6292
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    研究院IO-Link規(guī)范解讀(十五):數據類型詳解

    前言 本篇對IO-Link規(guī)范的附錄F的數據類型做個詳細解釋,附錄定義了 ?基本數據類型 (Basic Data Types) 和? 組合數據類型 (Composite Data Types),并
    的頭像 發(fā)表于 01-14 18:25 ?5203次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(十五):數據類型詳解

    研究院IO-Link規(guī)范解讀(十四):DS模塊詳解

    前言 ? 上回說到PM模塊,那么緊跟著的一定就是DS模塊了。DS的全稱是Data Storage。雖然DS是很多單詞的縮寫,在IO-Link領域可是比較神圣的一個模塊,還有一個汽車品牌也是DS的縮寫
    的頭像 發(fā)表于 12-23 18:28 ?8590次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(十四):DS模塊詳解

    研究院IO-Link規(guī)范解讀(十三):參數模塊解析

    前言 上次講到CM模塊的內容,那么今天聊聊整個參數模塊的內容。 IO-Link中,我們聊參數,到底在聊啥呢,參數其實是我們口語化的名詞,它的本質前面講了就是存儲在從站或者主站內部的ISDU內容,一個
    的頭像 發(fā)表于 12-12 21:51 ?7390次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(十三):參數模塊解析

    研究院IO-Link規(guī)范解讀(十二):SM模塊與CM模塊解析

    Manager,負責協調主站的各個應用程序模塊,并根據端口狀態(tài)啟動或停止其他應用程序。 1 System Manager模塊 System Manager 模塊作為IO-Link最核心的模塊,承上啟下,把從最底層
    的頭像 發(fā)表于 12-04 18:27 ?5201次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(十二):SM模塊與CM模塊解析

    研究院IO-Link規(guī)范解讀(十):ISDU詳解

    的參數。傳感器的各項參數設置都要靠它,它不僅可以設置參數,也可以作為只讀參數來讀取,甚至可以作為命令,基本是無所不能了。 1 ISDU總覽 ISDU與PD數據不同,在請求的狀態(tài)下才會發(fā)起,一般由主站發(fā)起相關請求,比如讀
    的頭像 發(fā)表于 11-24 10:37 ?5519次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(十):<b class='flag-5'>ISDU</b>詳解

    研究院IO-Link規(guī)范解讀(八):M-Sequence Type 與消息處理狀態(tài)機

    丟棄,減少后端工作量。 那么今天我們就來深入研究下,消息處理模塊中提到的各類M-Sequence,以及主從站的消息處理狀態(tài)機! ? 1 M-Sequence Type 上回講到主站發(fā)出來的MC和CKT
    的頭像 發(fā)表于 11-07 16:18 ?6282次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(八):M-Sequence Type 與消息處理<b class='flag-5'>狀態(tài)機</b>

    研究院IO-Link規(guī)范解讀(七):消息處理模塊

    ,特別是固定的協議一般都有協議的報文頭和報文尾,根據簡單規(guī)則過濾該報文是否為合法報文,避免進一步的深度解析,減少MCU的處理壓力。 1 M-Sequence定義 11.8 主站與從站的交互,通過一系列的消息來交換數據,因此我們稱之為“M-Sequence”,它也是IO-Lin
    的頭像 發(fā)表于 11-01 17:43 ?9050次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(七):消息處理模塊

    研究院IO-Link規(guī)范解讀(六):主從站狀態(tài)機解析

    前言 書接上文,今天我們就來好好聊聊主從站的DL-Mode狀態(tài)機,還請各位童鞋前排坐好! 1主站狀態(tài)機解析 主站的DL-Mode狀態(tài)機有5個大狀態(tài),也是我們很熟悉的 建立通信、開始、預
    的頭像 發(fā)表于 10-28 17:34 ?6195次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(六):主從站<b class='flag-5'>狀態(tài)機</b>解析

    研究院IO-Link規(guī)范解讀(三):物理層概覽

    前言 物理層是 IO-Link 通信的 “硬件底座”,它直接決定了系統的可靠性、抗干擾能力和部署靈活性。打個比方,就像蓋房子,物理層就是地基和骨架,地基不穩(wěn)、骨架不牢,房子肯定住著不踏實。本期我們
    的頭像 發(fā)表于 10-21 17:26 ?3101次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(三):物理層概覽

    IO-Link規(guī)范解讀(五):數據鏈路層解析

    前言 本篇就來講講IO-Link的數據鏈路層。 01 鏈路層總覽 數據鏈路層(Data Link Layers)在整個IO-Link協議棧起到承上啟下的作用,通過物理鏈路在主從站之間傳遞 消息,其
    的頭像 發(fā)表于 10-20 18:08 ?4332次閱讀
    <b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(五):數據鏈路層解析

    研究院IO-Link規(guī)范解讀(二):IO-Link通信技術概述

    前言 今天我們繼續(xù)解讀IO-Link 1.1.4規(guī)范,本篇文章將給大家介紹IO-Link技術的概覽,包含IO-Link命名的含義、主從站交互
    的頭像 發(fā)表于 09-25 19:25 ?898次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(二):<b class='flag-5'>IO-Link</b>通信技術概述

    研究院IO-Link規(guī)范解讀(一):技術定義與組織規(guī)范

    ? IO-Link 技術定義與組織規(guī)范 從今日起,小將開始長篇連載IO-Link規(guī)范解讀系列文
    的頭像 發(fā)表于 09-18 18:17 ?990次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>遠</b><b class='flag-5'>研究院</b><b class='flag-5'>丨</b><b class='flag-5'>IO-Link</b><b class='flag-5'>規(guī)范</b><b class='flag-5'>解讀</b>(一):技術定義與組織<b class='flag-5'>規(guī)范</b>

    RASIGHT IO-Link智能傳感器通信解決方案

    ? 南京工業(yè)互聯網有限公司?是一家技術驅動的工業(yè)通信及工業(yè)物聯網解決方案提供商,構建了以IO-Link技術為核心的產品矩陣,提供產品的定制開發(fā)、技術服務以及相關解決方案,致力于以標準化、低成本
    的頭像 發(fā)表于 08-11 17:42 ?712次閱讀
    RASIGHT <b class='flag-5'>睿</b><b class='flag-5'>遠</b> <b class='flag-5'>IO-Link</b>智能傳感器通信解決方案

    Analog Devices / Maxim Integrated MAXREFDES177 IO-Link通用模擬IO特性/框圖

    Analog Devices MAXREFDES177 IO-Link通用模擬IO是一款完備的IO-Link?通用模擬輸入-輸出 (IO) 參考設計,采用內置集成保護功能的MAX225
    的頭像 發(fā)表于 06-30 09:30 ?775次閱讀
    Analog Devices / Maxim Integrated MAXREFDES177 <b class='flag-5'>IO-Link</b>通用模擬<b class='flag-5'>IO</b>特性/框圖

    倍加福推出新型G11和G16系列IO-Link集線器

    借助IO-Link集線器,技術方面的局限已成過往:它們支持在IO-Link主站上實現IO-Link設備與二進制標準傳感器/執(zhí)行器的協同運行。
    的頭像 發(fā)表于 05-27 15:23 ?1001次閱讀