CANopen協(xié)議誕生及發(fā)展
摘要:OSI是Open System Interconnection的縮寫,意為開放式系統(tǒng)互聯(lián)。國際標準化組織(ISO)制定了OSI模型,該模型定義了不同計算機互聯(lián)的標準,是設計和描述計算機網絡通信的基本框架。OSI模型把網絡通信的工作分為7層,分別是物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層和應用層。
從OSI的7層網絡模型的角度來看同,CAN(Controller Area Network)現(xiàn)場總線僅僅定義了第1層(物理層,見ISO11898-2標準)、第2層(數據鏈路層,見ISO11898-1標準);而在實際設計中,這兩層完全由硬件實現(xiàn),設計人員無需再為此開發(fā)相關軟件(Software)或固件(Firmware),只要了解如何調用相關的接口和寄存器,即可完成對CAN的控制。如圖 1所示。
圖 1 CAN控制器結構
但CAN沒有規(guī)定應用層。也就是沒有規(guī)定與實際應用相關的邏輯,比如開關量輸入輸出,模擬量輸入輸出。所以本身對于應用來說,是不完整的。這就像鐵礦石(物理層)冶煉成鐵錠(數據鏈路層),然后針對具體應用,再加工做成汽車、輪船、鋼筋、坦克、鋼結構建筑等等。如圖 2所示。
圖 2 從物理層到應用層
因此,基本每個行業(yè)的CAN應用,都需要一個高層協(xié)議來定義CAN報文中的11/29位標識符、8字節(jié)數據的使用。但在CAN總線的工業(yè)自動化應用中,由于設備的互通互聯(lián)的需求越來越多,所以需要一個開放的、標準化的高層協(xié)議:這個協(xié)議支持各種CAN廠商設備的互用性、互換性,能夠實現(xiàn)在CAN網絡中提供標準的、統(tǒng)一的系統(tǒng)通訊模式,提供設備功能描述方式,執(zhí)行網絡管理功能。其中包括:
應用層(Application layer):為網絡中每一個有效設備都能夠提供一組有用的服務與協(xié)議。
通訊描述(Communication profile):提供配置設備、通訊數據的含義,定義數據通訊方式。
設備描述(Device proflile):為設備(類)增加符合規(guī)范的行為。