關于該文檔:
描述了泰科智能AP系列精密伺服驅動器的CANopen使用方法。任何參與評估和設計分布式運動控制系統的人均可從本手冊中找到所需的信息。本手冊要求用戶對運動控制,網絡和CANopen有一定的了解。
對象說明:
名字 |
描述 |
Type |
對象類型(例如無符號32位,整型,字符串) |
Access |
對象的獲取方式:
RO---只讀
WO---只寫
RW---可讀可寫
RC---可讀取,可清零 |
Units |
對象值的單位 |
Range |
數據類型可接受的范圍 |
Map PDO |
YES---對象可以映射到PDO,NO---不可以映射到PDO。EVENT---對象可以映射并且可設置為由事件觸發 |
Memory |
數據類型可接受的范圍有些對象可以保存到驅動器的flash存儲器(F)中,有些可以保存到RAM(R)中,有些既可以保存到flash也可保存到RAM。如果一個對象不能存儲,或者對象包括子檢索對象,存儲區就會包含一個破折號(-) |
1. CAN和CANopen
本節描述深圳泰科智能驅動器CANopen的使用以及其基礎---控制器區域網絡(CAN)。
泰科智能AP系列多款驅動器支持CAN和CANopen協議,可以進行分布式運動控制。通過使用CANopen,驅動器可以接受來自主控制器的指令,完成回零點操作,點對點的運動,速度控制,轉矩控制和插補運動。(這些驅動器也支持串口通訊)
2.1. CAN和CANopen簡介和結構
CAN給出了高速可靠網絡的數據鏈路層和物理層的定義。CANopen給出了如何使不同的設備類型(包括運動控制設備)在CAN網絡中以高效的方式工作。
如下圖所示,在CANopen運動控制系統中,每個驅動器都有自己獨立的閉環控制環路。主應用控制器通過網絡發送指令和接收狀態信息,從而協調多個設備的工作。每個設備都可以向主控制器或網絡中其它設備發送消息。CANopen定義了映射設備和主控制器通過網絡共享的消息的協議格式。

CANopen網絡支持多達127個節點。每個節點都有一個7位的節點ID,其中節點ID 0是保留節點,不允許用戶使用。
2.2. CAN協議概述
CANopen是基于CAN的,CAN是一種串口總線網絡,最早由Robert Bosch GmbH設計,用來協調汽車制造中多個控制系統的工作。
CAN模型后來被廣泛應用于分布式控制。任何設備都可以向網絡中發送廣播信息。每個設備都會收到這些信息,然后經過濾波器,只接受那些對自己適用的消息。因此,單個消息可以到達多個節點,減少了消息發送的數量。這樣也可以極大的節省對地址的帶寬要求,允許分布式控制以實時的速度傳輸過整個系統。
CAN的其它優勢包括:
1. CAN在汽車及其它工業上被廣泛使用,可以降低硬件成本,并且有連續的支持。已有的標準部件也可以降低系統設計的難度。
2. CAN相對的簡單性降低了培訓的難度。
3. 通過對設備的分布式控制,CAN可以減少設備和中央控制器之間的連線。線纜的減少可以提高系統工作的可靠性。
4. 基于設備的錯誤檢測和處理方法也會使CAN網絡更加可靠。
CAN的物理層以差分方式驅動,需兩根總線,首尾兩個終端各接一個120歐姆的電阻。CAN支持的最大傳輸速率可達1,000,000 bits/second,距離可達25米。較低的速率可傳輸更遠的距離。
2.3. CAN消息
CANopen消息以CAN消息(CAN消息也被稱為通訊對象或者COB)的格式傳輸。
CAN消息格式:
CAN消息以網絡包的形式在總線上傳輸。每個包由一個標識號 (CAN的消息ID),一些控制位和0-8個字節的數據組成的。
CRC錯誤校驗:
每個包的發送都帶有CRC(冗余檢測)信息,以便控制器可以判定并重新發送不正確的數據包。
CAN消息ID:
每一個CAN消息都有一個CAN消息ID(也叫COB-ID)。消息ID有兩個重要的作用:
CAN消息頭部分是消息ID,數越小,優先級越高。當同一時間有兩個或多個設備要發送消息時,有更高優先級的消息先發送。其它設備等待后重發。
相對于其它網絡技術,這種碰撞處理方法可以提高帶寬的利用率。而其它網絡技術,如因特網,處理碰撞的方法則是要求兩個設備都放棄發送,并延時后再重新嘗試。
其它信息:
更多關于CAN協議的信息,請參考CAN 2.0規格書,作者Robert Bosch GmbH,和ISO 11898, Road Vehicles, Interchange of Digital Information, 高速通訊控制器區域網絡。
2.4. CANopen協議概述
CANopen是基于CAN的一系列應用層協議。它實現了兩個基本的目的:
1. 它們實現了一種可以將多個CAN消息進行打包的方法,從而可以以整體的方式發送大的數據塊。
2. 它們簡化并標準化了多種應用類型(包括運動控制)的設備之間的通訊
CANopen由CiA小組開發,包括基本的CANopen應用層和通訊協議(DS 301),以及多個設備子協議,包括驅動器和運動控制的CANopen協議(DSP 402)。
通訊協議:
應用層和通訊協議描述了網絡上設備使用的通訊技術。所有的CANopen應用必須遵守該協議。
驅動器和運動控制協議:
每一個CANopen設備協議都描述了一個標準設備的特定應用。泰科CANopen驅動器遵循驅動器和運動控制協議。該協議列出了一個狀態機和一個位置控制函數,還支持多個運動控制模式,包括:
1. 回零點
2. 位置曲線
3. 速度曲線
4. 轉矩曲線
5. 位置插補
6. 位置周期同步
7. 速度周期同步
8. 轉矩周期同步
驅動器的工作模式使用工作模式對象設置。
2.5. CANopen設備的定義和存取
本節描述了CANopen網絡中用來配置和控制設備的對象和方法。
定義一個設備:CANopen對象和對象字典
控制CANopen網絡上的一個設備,主要是向該設備寫入參數,讀取設備的狀態信息。為實現該目標,每個設備都定義了一組可以寫入的參數,還有一些可以被讀取的狀態值。這些參數和狀態值的集合即是設備的對象。
這些對象定義和控制著設備的全部特性和操作。例如,一些對象定義了設備的基本信息:設備類型,具體型號,串口號等,其它的被用來檢測設備的狀態,傳送運動指令。
一個設備的所有對象的集合就被稱為對象字典。CANopen網絡中的每一個對象都必須定義一個對象字典,而幾乎每一個CANopen網絡消息都包含了從每個設備上讀取值或向每個設備上寫入值。
作為接口的對象字典:
對象字典是一個設備和網絡上其它實體之間的接口。如下圖所示:

CANopen協議和對象字典:
CANopen協議中定義了包括大多數對象字典的強制和可選的對象。通訊協議定義了所有的設備如何在網絡上進行通訊。例如,通訊協議給出了設備的字典對象發送和接收消息的方式。設備協議給出了如何獲取設備的特殊函數。例如,驅動器和運動控制的CANopen協議(DSP 402)給出了用來控制設備回零點和位置控制的對象。
除了應用層和通訊協議、設備協議給出的對象之外,CANopen還允許制造商向字典中加入特定設備的對象。
對象字典的結構:
對象字典是一個查找表。每個對象由一個16位檢索號和8位子檢索號標識。大多數對象由簡單的數據類型表示,如16位整形,32位整形和字符串類型。這些可以直接由16位檢索號獲取。
其它的對象使用子檢索號來表示相應參數所屬的組。例如,Motor Data(電機數據)對象由24個字檢索對象組成,這些子對象定義了電機的基本特性,如電機類型,電機線配置和霍爾類型。(子檢索號提供多達255個檢索號的子入口)
如下所示為字典的組成:
索引范圍 |
對象 |
0000 |
未使用 |
0001-001F |
靜態數據類型 |
0020-003F |
復合數據類型 |
0040-005F |
制造商定義的復合數據類型 |
0060-007F |
設備協議定義的靜態數據類型(也包括運動控制中定義的) |
0080-009F |
設備協議定義的復合數據類型(也包括運動控制中定義的) |
00A0-0FFF |
保留空間 |
1000-1FFF |
通訊協議區(DS 301) |
2000-5FFF |
制造商定義協議區 |
6000-9FFF |
標準化設備協議區(包括運動控制協議) |
A000-FFFF |
保留空間 |
|