網站首頁 美容小常識 享受生活 東方時尚 識真假 高奢 資訊 遊戲攻略 搞笑段子
當前位置:品位站 > 享受生活 > 心理

canopen和modbus的區別

欄目: 心理 / 發佈於: / 人氣:2.08W
canopen和modbus的區別

CANopen作為一種非常實用的通信協議在工控領域非常實用,相對於RS485的MODBUS協議,該協議有速度快,穩定性好的優點。

1, CAN發送數據時,每次是發一個包,每個包還帶一個ID,這點和RS485有差別。

2, CANopen是軟件協議,是搭建在CAN硬件之上的協議。

3, CANopen和485的modbus類似,都是是一個主站多個從站的形式。主站一般由PLC或者連接CAN模塊的PC實現,從站只要有CAN收發器芯片就可以了。

4, CANopen實現最主要的功能有三個,心跳,SDO和PDO。

1) 心跳:所有的從站都會按一定的節奏發送一個固定格式的心跳包給主站,主站可以設置一個定時檢測,如果一定時間內沒有接收到心跳就會判斷該從站掉線。

2) SDO:類似MODBUS中的10命令,發送固定格式的CAN數據包,該數據包可以修改其他從站的對象字典(配置參數),從站設備接收到該命令後會有結果返回

3) PDO:類似主動上載模式,設置完成後,會按照一定延時自動發送,保證傳輸成功,該功能屬於單向傳輸。

5, 一些名詞的解釋

1) 對象字典:其實就是一個配置列表,每個從站和每個主站都有一個對象字典,對象字典裏可以配置該設備如何進行心跳、PDO、SDO等操作。也可以實現自定義參數,比如對象字典某個地址存放小數點的點位,主站通過SDO修改這個地址來修改小數點位。

2) 每個從站節點有以下狀態:

初始化:上電後對CAN控制器進行初始化

應用層復位:應用程序復位,如開關量模擬量輸出的復位

通訊復位:節點的CANopen通訊復位,復位後可以進行CANopen通訊

預操作狀態:操作就緒,此時不能進行PDO通信,可以進行SDO參數配置,主站可以進行網絡管理

操作狀態:CANopen激活,PDO按照對象字典的設置進行傳輸,SDO也可以傳輸數據和修改參數

停止狀態:主站發送停止狀態,PDO通信停止

主站可以通過發送命令讓網絡中任意一個從站節點進行狀態切換。

canopen

CANopen主要基於CAN應用協議,它是屬於OSI七層模型中的應用層以上的協議。相當於它對物理層CAN再進行了一次協議封裝,作為一個標準並開放出來,這樣每個廠家可以用這個協議彼此通訊,提高互操作性和兼容性。

CANopen源代碼編寫之前要先了解它的結構和重要概念。

modbus

Modbus是一種串行通信協議,是Modicon公司(現在的施耐德電氣 Schneider Electric)於1979年為使用可程式邏輯控制器(PLC)通信而發表。Modbus已經成為工業領域通信協議的業界標準(De facto),並且現在是工業電子設備之間常用的連接方式。

Tags:modbus canopen