1寫在前面
上一章節提供的例程是標準、數據幀格式的傳輸例程,結合前面理論知識,相信你根據參考例程可以實現遠程幀及其他類型的數據傳輸。
前面教程講述內容為CAN總線協議,屬于底層硬件相關的一些內容。從本文開始,將正式講述CANOpen協議。
CANOpen協議是基于CAN總線的上一層軟件協議。該教程前面內容是建立底層通信,只有在底層通信成功基礎上,才能實現上一層的通信協議。
提示:CANOpen協議內容很多,有許多內容都是一些抽象的概念。所以,有一些內容相對較難理解,隨著慢慢深入即可消除那些疑慮。
2
CANopen協議總述
CANopen 是一個基于 CAN 串行總線的網絡傳輸系統的應用層協議,遵循 ISO/OSI 標準模型。
網絡中不同的設備通過對象字典或者對象來相互交換數據,其中,主節點可以通過過程數據對象 (PDO) 或者服務數據對象 (SDO) 來獲取或者修改其它節點對象字典列表中的數據。
CANOpen協議主要內容分為三大塊,如下圖CANopen 的設備模型。
CANOpen協議從大方向的劃分,就如上圖所示三大塊。但是,這三大塊里面的內容就牽涉到許多......
初學者可以以上圖模型為中心,再結合實際例程理解CANOpen協議的各種抽象概念。
下面章節將進一步講述模型中三大塊內容的一些概念,初學者能理解盡量理解,不能理解可以先做了解即可。
3
通信對象
CANopen協議中常用的通信對象包含如下幾點:
1) 網絡管理對象(NMT)
網絡管理對象包括 Boot-up 消息, Heartbeat 協議及 NMT 消息,基于主從通信模式, NMT 用于管理和監控網絡中的各個節點,主要實現三種功能:節點狀態控制、錯誤控制和節點啟動。
2) 服務數據對象 (SDO)
包括接收 SDO(R-SDO) 和發送 SDO(T-SDO)。
通過使用索引和子索引, SDO 使客戶機能夠訪問設備對象字典中的項。
SDO 通過 CAL 中多元域的 CMS 對象來實現,允許傳送任何長度的數據,當數據超過 4 個字節時分拆成幾個報文。
協議是確認服務類型,為每個消息生成一個應答。 SDO 請求和應答報文總是包含 8 個字節。
3) 過程數據對象(PDO)
包括接收 PDO(RPDO) 和發送 PDO(TPDO)。
用來傳輸實時數據,數據從一個創建者傳到一個或多個接收者。數據傳送限制在 1 到 8 個字節。
每個 CANopen 設備包含 8 個缺省的 PDO 通道, 4 個發送 PDO 通道和 4 個接收 PDO 通道。
PDO 包含同步和異步兩種傳輸方式,由該 PDO 對應的通信參數決定。
PDO 消息的內容是預定義的,由該 PDO 對應的映射參數決定。
4) 同步對象 (SYNC)
同步對象是由 CANopen 主站周期性地廣播到 CAN 總線的報文,用來實現基本的網絡時鐘信號,每個設備可以根據自己的配置,決定是否使用該事件來跟其它網絡設備進行同步通信。
5) 緊急報文 (EMCY)
設備內部通信故障或者應用故障錯誤時發送的報文。
4
對象字典
對象字典是設備規范中最重要的部分。它是一組參數和變量的有序集合,包含了設備描述及設備網絡狀態的所有參數。
通過網絡可以采用有序的預定義的方式來訪問的一組對象。這里就牽涉到定義對象字典的生成問題,后面我會講述關于對象字典生成工具相關內容。
CANopen 協議采用了帶有 16 位索引和 8 位子索引的對象字典。你可以理解為一本漢語字典,我們需要查找里面的某個漢子(可以理解定義的某個數據),我們就會從拼音或筆畫(索引)進去找到對應位置。
CANOpen 協議對象字典主索引如下圖,這只是一個主要的索引。其實還能細分下去,這里不過多講述,后續會進一步講述。
5
應用
應用這一塊的內容包含應用程序、設備子協議實現。可以從CANopen 的設備模型明白,對外就是IO接口,也就是供我們調用的接口。
應用這一塊包含CANOpen協議上層的內容,可以簡單理解封裝的一些供用戶讀寫操作的函數。
應用這一塊內容在后面結合實例分析會牽涉,初學者可以簡單了解有這么一塊,且知道這一塊在CANOpen協議中大致的作用即可。
-
CAN
+關注
關注
57文章
2769瀏覽量
464388 -
CANopen
+關注
關注
8文章
270瀏覽量
43754 -
NMT
+關注
關注
0文章
7瀏覽量
3654
發布評論請先 登錄
相關推薦
2025必備知識,CANopen轉EtherCAT協議允許配備啥協議的電氣設備
![2025必備知識,<b class='flag-5'>CANopen</b>轉EtherCAT<b class='flag-5'>協議</b>允許配備啥<b class='flag-5'>協議</b>的電氣設備](https://file1.elecfans.com//web3/M00/04/11/wKgZPGduj9SAdwRvAACTJL8T1qg173.png)
AGV行業設備協議新生態:canopen轉Profinet網關揭秘!
![AGV行業設備<b class='flag-5'>協議</b>新生態:<b class='flag-5'>canopen</b>轉Profinet網關揭秘!](https://file1.elecfans.com/web3/M00/01/9E/wKgZPGdWtJeAKM-sAADiPGEJvSo561.png)
三格電子-MODBUS TCP轉CANOpen網關
![三格電子-MODBUS TCP轉<b class='flag-5'>CANOpen</b>網關](https://file1.elecfans.com//web1/M00/F5/50/wKgaoWc61jGAI9rRAABXg5vof-M30.jpeg)
Profinet轉CanOpen網關連接與CanOpen協議磁軌道實現高效連接
![Profinet轉<b class='flag-5'>CanOpen</b>網關連接與<b class='flag-5'>CanOpen</b><b class='flag-5'>協議</b>磁軌道實現高效連接](https://file1.elecfans.com/web2/M00/0C/74/wKgaomc1WdmAKd69AAC4R89awU8008.png)
CANopen協議架構和應用原理
MODBUS TCP 轉 CANOpen
![MODBUS TCP 轉 <b class='flag-5'>CANOpen</b>](https://file1.elecfans.com/web2/M00/08/97/wKgaombyRnmAZrAyAAGHzRG0j8s875.png)
DeviceNet轉CANopen協議網關(DeviceNet轉CANopen)
![DeviceNet轉<b class='flag-5'>CANopen</b><b class='flag-5'>協議</b>網關(DeviceNet轉<b class='flag-5'>CANopen</b>)](https://file1.elecfans.com/web2/M00/05/DC/wKgZombfq6SAP3JlAAKyK2mvB_8691.png)
EtherNet/IP轉CANopen主站協議轉換網關
![EtherNet/IP轉<b class='flag-5'>CANopen</b>主站<b class='flag-5'>協議</b>轉換網關](https://file1.elecfans.com/web2/M00/05/1F/wKgaombMJkyACJddAAKqa8sqIXM558.png)
風力發電領域canopen轉Profinet網關的應用
![風力發電領域<b class='flag-5'>canopen</b>轉Profinet網關的應用](https://file1.elecfans.com/web2/M00/05/7D/wKgaombQFQ2AG5BxAABEtGk-dzs677.png)
EtherNet/IP轉CANopen主站協議網關(JM-EIP-COP)
![EtherNet/IP轉<b class='flag-5'>CANopen</b>主站<b class='flag-5'>協議</b>網關(JM-EIP-COP)](https://file1.elecfans.com/web2/M00/05/1F/wKgaombMJkyACJddAAKqa8sqIXM558.png)
EtherCAT從站轉CANopen主站協議網關(JM-ECT-COP)
![EtherCAT從站轉<b class='flag-5'>CANopen</b>主站<b class='flag-5'>協議</b>網關(JM-ECT-COP)](https://file1.elecfans.com/web2/M00/02/C8/wKgZoma9yoyABunTAAaz3E2enmI577.png)
EtherNet轉CANopen協議轉化網關功能與配置詳解
![EtherNet轉<b class='flag-5'>CANopen</b><b class='flag-5'>協議</b>轉化網關功能與配置詳解](https://file1.elecfans.com/web2/M00/FE/5D/wKgZomahzoGANX7VAAB-bhgDuBQ343.png)
Profinet轉CANopen協議轉化網關
![Profinet轉<b class='flag-5'>CANopen</b><b class='flag-5'>協議</b>轉化網關](https://file1.elecfans.com/web2/M00/FE/92/wKgaomad_USADtv_AAFIottSHFM190.png)
解鎖工業自動化:通過CANopen轉Profinet的無縫對接
![解鎖工業自動化:通過<b class='flag-5'>CANopen</b>轉Profinet的無縫對接](https://file1.elecfans.com/web2/M00/EE/FE/wKgZomZvpYaAYq9cAADI9Q8P6y8547.png)
CANopen轉Profinet網關連接西門子PLC與變流器通訊
![<b class='flag-5'>CANopen</b>轉Profinet網關連接西門子PLC與變流器通訊](https://file1.elecfans.com//web2/M00/C4/0C/wKgZomXwX9WAFswpAABiP6vJIBE106.png)
評論