2017-10-11 65 views
0

你好,我是一名學習canopen的學生。 Canopen中的COB-ID和CAN標識符之間的關係是什麼? 我在CIA的主頁上看到COB-ID不是CAN ID,但我不明白。CAN標識符和COB-ID

例如,如果PDO通過CAN總線傳輸,它將從CANopen幀轉換爲CAN幀。使用COB-ID的節點ID不能轉換CAN標識符嗎? 此時,COB-ID根據功能代碼而有所不同,但更加令人困惑的是,CAN標識符每個設備只有一個。

總結我的問題,我想知道CANopen在通過CAN總線發送消息時如何轉換標識符。

+0

在互聯網上的研究的問題,我「這個問題太廣泛了,因爲它沒有關注具體的程序問題。順便說一下,看看這裏,它可能會幫助你:http://www.microcontrol.net/download/appnotes/td-03011e.pdf – Juan

+0

請編輯該問題,以限制它到一個具有足夠的細節識別的具體問題一個適當的答案。避免一次詢問多個不同的問題。請參閱[如何提問](https://stackoverflow.com/help/asking)頁面以獲得幫助,以澄清此問題 – Sand

+0

Re,「如果PDO通過CAN總線傳輸,它將從CANopen幀轉換爲CAN幀「。不,因爲CANOpen框架是一個CAN框架。 –

回答

1

節點ID和COB ID是不同的東西。

節點ID是CANopen設備的硬編碼ID(在連接器中)。

COB ID是CAN標識(11個比特或29個比特)和RTR

位1:用於請求,0:用於數據

的CAN標識本身包含的優先級。

在某些(?)CANopen標準如CiA-301中,某些COB-ID範圍或值被保留。

參見: https://en.wikipedia.org/wiki/CAN_bus#Frames

https://www.can-cia.org/standardization/specifications/ 中央情報局301 V4.2.0§7.3.5 (下載你需要有一個登錄,但它是免費的)

0

節點ID基本上是can線中設備的名稱。如果要控制設備,則需要使用該名稱來訪問設備。每個設備都有不同的節點ID,因此您可以單獨控制每個設備。您可以創建該名稱,如果需要,可以更改。這些設備通常帶有默認的Node-ID。您可以在設備的數據表中看到它。例如,默認節點ID = 1。

COB-ID(s)包含Node-ID(s)並且有一個COB-ID的標準。

COB-ID

正如你所看到的鏈接放在桌子上。如果你想使用PDO的發送和接收數據,例如要使用PDO1和設備的節點ID爲1

所以你的COB-ID是180 +節點ID = 181(你可以得到與PDO1數據從設備(信息))

和200 +節點ID = 201 PDO1(您可以發送數據(命令)設備)