1、CAN與CANopen的共同點與不同點:
CAN只定義了物理層與鏈路層,而沒有定義用戶層,用戶可根據自己的需要定義一些網絡上的通信約定;??CANopen是在CAN的基礎上定義了用戶層,即規定了用戶、軟件、網絡終端等之間用來進行信息交換的約定。?2、從OSI網絡模型的角度來看同,現場總線網絡一般只實現了第1層(物理層)、第2層(數據鏈路層)、第7層(應用層)。因為現場總線通常只包括一個網段,因此不需要第3層(傳輸層)和第4層(網絡層),也不需要第5層(會話層)第6層(描述層)的作用。
CAN(Controller?Area?Network)現場總線僅僅定義了第1層、第2層(見ISO11898標準);實際設計中,這兩層完全由硬件實現,設計人員無需再為此開發相關軟件(Software)或固件(Firmware)。
同時,CAN只定義物理層和數據鏈路層,沒有規定應用層,本身并不完整,需要一個高層協議來定義CAN報文中的11/29位標識符、8字節數據的使用。而且,基于CAN總線的工業自動化應用中,越來越需要一個開放的、標準化的高層協議:這個協議支持各種CAN廠商設備的互用性、互換性,能夠實現在CAN網絡中提供標準的、統一的系統通訊模式,提供設備功能描述方式,執行網絡管理功能。
3、can2.0是物理層和鏈路層協議,基本上由硬件來實現,CANOpen是應用層協議基本上由軟件來實現