色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

CANOpen系列教程15_NMT網絡網絡與相關源碼說明

黃工的嵌入式技術圈 ? 2020-03-04 11:50 ? 次閱讀

1寫在前面

該系列教程13、14講述了移植相關內容,以及提供給大家可直接編譯、下載運行的源碼工程,想必你已經掌握了一些基礎的知識了。

在《CANOpen系列教程08_CANOpen通信接口引導學習》中,引導大家參看《CANopen輕松入門》通信接口的相關知識。而沒有在文中具體描述關于CANOpen通信接口的知識。

原因在于通信接口的內容太多,單純的去看這些內容,容易讓人產生更多困惑。

對于程序員來說,結合源代碼來理解相關理論知識更加容易。所以,我將其留在了這后面來講述。

下面結合移植好的源代碼,講述CANOpen網絡管理(NMT:Network management)的相關知識。

2

關于網絡管理NMT

在CANOpen網絡中,分主站和從站,而通常由主站來管理整個網絡。比如:復位、停止等。

《CANopen輕松入門》中軍隊的例子說的很好:一個軍隊,如果沒有指揮員來管理,下面士兵豈不亂套了。

例子中指揮員就是CANOpen中的網絡管理主站,士兵就是從站。

重要的一點:每個 CANopen 從節點的 CANopen 協議棧中,必須具備 NMT 管理的相應代碼。也就是說從站是被接收管理。

當然,我們使用的Canfestival這套免費框架,大家不必擔心,肯定是具有相關代碼,我們需要明白怎么使用這套源碼即可。

3

NMT網絡管理節點狀態

3.1 6種節點狀態

NMT網絡管理主要包含以下6種狀態:

1.初始化(Initializing):節點上電后對功能部件包括 CAN 控制器進行初始化;

2.應用層復位(Application Reset):節點中的應用程序復位(開始),比如開關量輸出、模擬量輸出的初始值;

3.通訊復位(Communication reset):節點中的CANopen通訊復位(開始),從這個時刻起,此節點就可以進行CANopen通訊了;

4.預操作狀態(Pre-operational):節點的CANopen通訊處于操作就緒狀態,此時此節點不能進行PDO通信,而可以進行SDO進行參數配置和NMT網絡管理的操作;

5.操作狀態(operational):節點收到NMT主機發來的啟動命令后, CANopen通訊被激活, PDO通信啟動后, 按照對象字典里面規定的規則進行傳輸,同樣SDO也可以對節點進行數據傳輸和參數修改;

6.停止狀態(Stopped):節點收到NMT主機發來的停止命令后,節點的PDO通信被停止,但SDO和NMT網絡管理依然可以對節點進行操作;

NMT網絡管理6種狀態如上圖所示,其中1 --- 15各處代表含義:

(1):Power on上電初始化

(2):Automatic switch to Pre-operational自動切換預操作狀態

(3) 、(6):NMT switch to Operational網絡管理切換到操作狀態

(4)、(7):NMT switch to Pre-operational網絡管理切換到預操作狀態

(5)、(8):NMT switch to Stopped網絡管理切換到停止狀態

(9)、(10)、(11):NMT switch to Application reset網絡管理切換到應用層復位狀態

(12)、(13)、(14):NMT switch to Communication reset網絡管理切換到通訊復位狀態

(15):Power-off or hardware reset掉電或硬件復位

3.2 源碼說明

通過上面描述,需要知道兩點重要內容:主站進行網絡管理,網絡各個節點有多種狀態。當然,一個時刻只能一種狀態。

在Canfestival框架源碼中,主站可通過masterSendNMTstateChange這個函數接口來管理網絡節點的狀態。可以理解為:主站控制,或切換從站節點的狀態。

這里需要理解masterSendNMTstateChange這個函數接口的用法,也就是說接口含義,以及參數。

比如:主站上電之后,讓網絡中節點0x01復位:

這里我們結合《CANOpen系列教程13》提供的代碼基礎上,添加一行管理節點0x01的代碼:

masterSendNMTstateChange(&TestMaster_Data, 0x01, NMT_Reset_Node);

第1個參數TestMaster_Data:主站對象字典

第2個參數0x01:節點(從站)ID

第3個參數NMT_Reset_Node:復位節點

第1,2個參數很好理解,第3個參數是通過宏定義在def.h中,總共5種狀態,如下圖:

寫到這里,相信大家對網絡管理節點有一定認識了,初學者可以多結合代碼理解。

4

NMT網絡管理節點上線報文

該教程上一篇文章末尾講述運行效果時,提供了一張運行時CAN總線數據的截圖:

任何一個 CANopen 從站上線后,為了提示主站它已經加入網絡(便于熱插拔),或者避免與其他從站 Node-ID 沖突。這個從站必須發出節點上線報文(boot-up)。

節點上線報文的 ID 為:700h + Node-ID, 數據規定為0。 生產者(Producer)為 CANopen 從站。如下圖:

5

NMT網絡管理心跳報文

為了監控 CANopen 節點是否在線與目前的節點狀態。 CANopen 應用中通常都要求在線上電的從站定時發送狀態報文(心跳報文),以便于主站確認從站是否故障、是否脫離網絡。

格式:

CAN-ID:700h + Node-ID

數據:一字節狀態

在《CANOpen系列教程13》提供例程中,就是包含一個心跳報文。心跳報文比較簡單,請結合上圖理解。

注意:

1.CANopen從站按其對象字典中 1017h 中填寫的心跳生產時間(ms)進行心跳報文的發送。

2.CANopen主站則會按其1016h 中填寫的心跳消費時間進行檢查,假設超過諾干次心跳消費時間沒有收到從站的心跳報文,則認為從站已經離線或者損壞。

還有一些網絡管理相關內容,大家可以結合這種思路去理解,建議參看:

1.CiA 301 V4.2.0網絡管理章節

2.周立功的CANOpen輕松入門

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

    關注

    57

    文章

    2744

    瀏覽量

    463623
  • 源碼
    +關注

    關注

    8

    文章

    639

    瀏覽量

    29185
  • CANopen
    +關注

    關注

    8

    文章

    253

    瀏覽量

    43582
  • NMT
    NMT
    +關注

    關注

    0

    文章

    7

    瀏覽量

    3631
收藏 人收藏

    評論

    相關推薦

    canopen轉Profinet網關對于工業現場PLC與伺服之間的通訊重要性

    開疆智能Profinet轉Canopen網關是一種能夠實現Profinet網絡Canopen網絡之間通信的設備。
    的頭像 發表于 09-30 14:15 ?189次閱讀
    <b class='flag-5'>canopen</b>轉Profinet網關對于工業現場PLC與伺服之間的通訊重要性

    canopen轉Profinet網關對于工業現場PLC與伺服之間的通訊重要性

    Profinet轉Canopen網關是一種能夠實現Profinet網絡Canopen網絡之間通信的設備。
    的頭像 發表于 09-30 14:05 ?189次閱讀
    <b class='flag-5'>canopen</b>轉Profinet網關對于工業現場PLC與伺服之間的通訊重要性

    MODBUS TCP 轉 CANOpen

    產品概述 SG-TCP-COE-210 網關可以實現將 CANOpen 接口設備連接到 MODBUS TCP 網絡中。用戶不需要了解具體的 CANOpen 和 Modbus TCP 協議即可實現
    的頭像 發表于 09-24 13:59 ?267次閱讀
    MODBUS TCP 轉 <b class='flag-5'>CANOpen</b>

    CANopen系列CANopen從站為什么總不上傳PDO報文?

    CANopen網絡中無法獲取從站的TPDO數據?本文將為您解析可能的原因及解決方案。通過檢查TPDO的通信參數和傳輸類型,確保主站與從站的數據同步,快速定位問題所在。如果你的CANopen
    的頭像 發表于 09-19 08:05 ?309次閱讀
    【<b class='flag-5'>CANopen</b><b class='flag-5'>系列</b>】<b class='flag-5'>CANopen</b>從站為什么總不上傳PDO報文?

    DeviceNet轉CANopen協議網關(DeviceNet轉CANopen

    一,設備主要功能 捷米特JM-DNT-COP網關實現DeviceNet總線和CANopen網絡連接起來。本網關連接到DeviceNet總線中作為從站使用,連接到CANopen總線中作為主站
    的頭像 發表于 09-10 10:16 ?300次閱讀
    DeviceNet轉<b class='flag-5'>CANopen</b>協議網關(DeviceNet轉<b class='flag-5'>CANopen</b>)

    適用于標準化嵌入式網絡CANopen有什么不同?

    電子發燒友網報道(文/吳子鵬)CANopen是一種架構在控制局域網絡CAN上的高層通信協議,包括通信子協議及設備子協議,常在嵌入式系統中使用,也是工業控制常用到的一種現場總線。 ? 在CAN的基礎上
    的頭像 發表于 08-22 01:19 ?3083次閱讀

    EtherCAT從站轉CANopen主站協議網關(YC-ECT-COP)

    怎樣實現EtherCAT網絡CANopen網絡的連接互通?不少朋友在這個問題上存在疑惑。接下來,將為大家集中解惑。實際上, 遠創智控YC-ECT-COP 這一設備能夠有效地處理此難題。下面,作者為
    的頭像 發表于 08-16 11:50 ?284次閱讀
    EtherCAT從站轉<b class='flag-5'>CANopen</b>主站協議網關(YC-ECT-COP)

    EtherCAT從站轉CANopen主站協議網關(JM-ECT-COP)

    一,設備主要功能 捷米特JM-ECT-COP網關實現EtherCAT網絡CANopen網絡之間的數據通訊,可連接CANopen網絡到Eth
    的頭像 發表于 08-15 17:36 ?422次閱讀
    EtherCAT從站轉<b class='flag-5'>CANopen</b>主站協議網關(JM-ECT-COP)

    ACR系列網絡多功能電力儀表安裝使用說明

    電子發燒友網站提供《ACR系列網絡多功能電力儀表安裝使用說明書.pdf》資料免費下載
    發表于 07-23 11:16 ?1次下載

    CANopen協議移植編譯,一直編譯不過的原因?

    CO_Data ObjDict_Data = CANOPEN_NODE_DATA_INITIALIZER(ObjDict); IAR編譯提示Error[Pe253]: expected a
    發表于 04-26 06:03

    【米爾-瑞薩RZ/G2UL開發板】5.CAN通訊進階CANopen

    索引,其范圍是 0x00 到 0xFF 之間。 1.2 NMT網絡管理對象 它負責CAN 網絡上的初始化、配置和故障處理。節點控制: 節點上線報文:任何一個 CANopen 從站上線后
    發表于 03-31 16:19

    CANopen以太網網關怎么用?

    CANopen以太網網關怎么用? CANopen以太網網關是一種連接CANopen總線和以太網的設備,它提供了在CANopen網絡和以太網之
    的頭像 發表于 02-02 16:59 ?3326次閱讀

    Profinet協議轉換為CanOpen協議來連接CanOpen伺服驅動器的應用

    局域網(CAN)網絡的通信協議,被廣泛應用于汽車和其他嵌入式系統中。對于將Profinet協議轉換為CanOpen協議以鏈接臺達B3系列伺服驅動器的應用,以下是一些運用的基本步驟:系列
    發表于 01-10 10:29

    Profinet協議轉換為CanOpen協議來連接CanOpen伺服驅動器的應用

    局域網(CAN)網絡的通信協議,被廣泛應用于汽車和其他嵌入式系統中。對于將Profinet協議轉換為CanOpen協議以鏈接臺達B3系列伺服驅動器的應用,以下是一些運用的基本步驟:系列
    的頭像 發表于 01-10 10:27 ?416次閱讀

    C#網絡串口調試助手源碼

    非常牛B網絡串口調試助手C#源碼,支持添加多條協議
    發表于 12-27 09:45 ?4次下載
    主站蜘蛛池模板: nu77亚洲综合日韩精品| 欧美日韩黄色| 亚洲精品在线不卡| 国产成人a一在线观看| 欧美日韩精品久久久免费观看| 中国人泡妞www免费| 黄色精品视频| 新版孕妇bbwbbwbbw| 高清无码中文字幕影片| 全免费a级毛片免费看| 99热只有精品| 摸董事长的裤裆恋老小说| 中文字幕不卡免费高清视频| 寂寞少妇直播| 亚洲精品在线网址| 国产亚洲精品品视频在线| 午夜在线观看免费完整直播网| 共妻肉多荤文高h一女n男| 日韩亚洲欧美中文高清| 成人国内精品久久久久影| 全是肉的高h短篇列车| xxnx18日本| 日本另类xxxx| 成人国内精品久久久久影| 日本wwwhdsex69| 波野结衣qvod| 日韩精品免费在线观看| 大香网伊人久久综合观看| 日日干夜夜爽| 国产AV亚洲精品久久久久| 桃花色影院| 国产精品无码人妻在线| 亚洲 自拍 欧洲 视频二区| 国产一区免费在线观看| 亚洲日本欧美产综合在线| 健身房被教练啪到腿软H| 一个人在线观看免费高清视频在线观看 | 国产高清视频青青青在线| 私密按摩师在线观看 百度网盘| 国产3级在线| 小SB几天没做SAO死了H|