关于该文档:
描述了泰科智能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。如果一个对象不能存储,或者对象包括子检索对象,存储区就会包含一个破折号(-) |
本节描述深圳泰科智能驱动器CANopen的使用以及其基础---控制器区域网络(CAN)。
泰科智能AP系列多款驱动器支持CAN和CANopen协议,可以进行分布式运动控制。通过使用CANopen,驱动器可以接受来自主控制器的指令,完成回零点操作,点对点的运动,速度控制,转矩控制和插补运动。(这些驱动器也支持串口通讯)
CAN给出了高速可靠网络的数据链路层和物理层的定义。CANopen给出了如何使不同的设备类型(包括运动控制设备)在CAN网络中以高效的方式工作。
如下图所示,在CANopen运动控制系统中,每个驱动器都有自己独立的闭环控制环路。主应用控制器通过网络发送指令和接收状态信息,从而协调多个设备的工作。每个设备都可以向主控制器或网络中其它设备发送消息。CANopen定义了映射设备和主控制器通过网络共享的消息的协议格式。
CANopen网络支持多达127个节点。每个节点都有一个7位的节点ID,其中节点ID 0是保留节点,不允许用户使用。
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米。较低的速率可传输更远的距离。
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, 高速通讯控制器区域网络。
CANopen是基于CAN的一系列应用层协议。它实现了两个基本的目的:
1. 它们实现了一种可以将多个CAN消息进行打包的方法,从而可以以整体的方式发送大的数据块。
2. 它们简化并标准化了多种应用类型(包括运动控制)的设备之间的通讯
CANopen由CiA小组开发,包括基本的CANopen应用层和通讯协议(DS 301),以及多个设备子协议,包括驱动器和运动控制的CANopen协议(DSP 402)。
通讯协议:
应用层和通讯协议描述了网络上设备使用的通讯技术。所有的CANopen应用必须遵守该协议。
驱动器和运动控制协议:
每一个CANopen设备协议都描述了一个标准设备的特定应用。泰科CANopen驱动器遵循驱动器和运动控制协议。该协议列出了一个状态机和一个位置控制函数,还支持多个运动控制模式,包括:
1. 回零点
2. 位置曲线
3. 速度曲线
4. 转矩曲线
5. 位置插补
6. 位置周期同步
7. 速度周期同步
8. 转矩周期同步
驱动器的工作模式使用工作模式对象设置。
本节描述了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 | 保留空间 |
支持电话:0755-26712958 工作日8:30-18:00
联系地址:深圳市南山区南岗第二工业园12栋5楼 市场合作:info@techservo.com 购买咨询:sales@techservo.com