CANopen協(xié)議在現(xiàn)場總線網(wǎng)絡中的應用
1 引 言
本文引用地址:http://m.butianyuan.cn/article/158137.htm基于現(xiàn)場總線的網(wǎng)絡技術研究是自動控制領域發(fā)展的一個熱點。在各種各樣的工業(yè)現(xiàn)場總線中, CAN 總線以其成本低、速度快、實時性和可靠性較高等特點被快速應用于汽車電子、醫(yī)療、軍事等領域。但是, CAN 總線只定義了物理層和數(shù)據(jù)鏈路層,本身并不完整,針對這一問題, CiA(CAN in Automation) 協(xié)會經(jīng)過不斷的發(fā)展于 1995 年發(fā)布了完整的 CANopen 協(xié)議,它不僅定義了應用層和通訊子協(xié)議,也為可編程系統(tǒng)、不同器件、接口、應用子協(xié)議定義了幀狀態(tài),為基于現(xiàn)場總線的全數(shù)字分布式控制系統(tǒng)的廣泛應用和系統(tǒng)的一體化管理提供了解決之道。
本文以改善現(xiàn)場總線網(wǎng)絡通訊系統(tǒng)的運行效率,提高實時性和信息處理能力為前提,針對并條機自調勻整控制系統(tǒng)中各功能模塊的作用,淺析 CAN 總線高層通訊協(xié)議 CANopen ,實現(xiàn)各功能模塊間的數(shù)據(jù)通信。通過實驗測試,證明系統(tǒng)工作穩(wěn)定、可靠,保證了全數(shù)字分布式網(wǎng)絡系統(tǒng)工作的快速性、準確性和實時性。
2 CANopen 協(xié)議概述
2.1 設備模型
CANopen 協(xié)議是由 CiA 協(xié)會針對 CAN 協(xié)議的不完整性而定義出來的一個更高層次的協(xié)議――應用層協(xié)議。一個 CANopen 設備模塊可以被分為 3 部分,如圖 1 所示。通信接口和協(xié)議軟件提供在總線上收發(fā)通信對象的服務。不同 CANopen 設備間的通信都是通過交換通信對象完成的。這一部分直接面向 CAN 控制器進行操作。對象字典描述了設備使用的所有的數(shù)據(jù)類型,通信對象和應用對象。對象字典位于通信程序和應用程序之間,向應用程序提供接口,應用程序對對象字典進行操作就可以實現(xiàn) CANopen 通信。應用程序包括功能部分和通信部分,通信部分通過對對象字典進行操作實現(xiàn) CANopen 通信,而功能部分則根據(jù)應用要求實現(xiàn)。
2.2 對象字典
對象字典 (Object Dictionary , OD) 是一個有序的對象組,每個對象采用一個 16 位的索引值來尋址,為了允許訪問數(shù)據(jù)結構中的單個元素,同時定義了一個 8 位的子索引,對象字典的結構參照表 1 ,對象字典的描述參照表 2 。
評論