CAN和CANopen相关技术
义了它与网络上其他
CANopen设备之间的隐式数据交换。 当设备运行时,PDO交换被激活。
PDO类型
有两种PDO类型:
◆ TXPDO/TPDO:PDO被设备传送
◆ RXPDO/RPDO:PDO被设备接收
PDO的供给者与消费者
PDO基于“供给者/消费者”模型。传送的叫“供给者”,接收的叫“消费者”。
PDO的传送模式
◆同步(通过接收SYNC对象实现同步)
非周期:由远程帧预触发传送,或者由设备子协议中规定的对象特定事件预触发传送。 周期:传送在每1到240个SYNC消息后触发。
◆ 异步
由远程帧触发传送。
由设备子协议中规定的对象特定事件触发传送。
服务数据对象(SDO)
SDO定义
服务数据对象SDO允许使用显示请求交换数据。
当设备处于预处理、工作状态,SDO服务是有效的 。
SDO的类型
有两种SDO类型:
◆读SDO(上传)
◆写SDO(下载)
客户端/服务器模型
SDO协
议是基于“客户端/服务器”模型。
对于下载SDO
客户端发送一个标示被写对象的请求,服务器返回一个确认信息。
对于上传SDO
客户端发送一个标示被读对象的请求,服务器返回被读对象的数据。
对于一个未处理的SDO
对于以上的两种情况,如果一个SDO不能被处理,服务器返回一个错误代码。
“节点保护”和“寿命保护”
使用期限的定义
“使用期限”参数是按以下来计算的:
使用期限=保护时间(看门狗时间)*使用期限系数;保护时间的典型值在250ms到2S之间。对象0X100CH含有以毫秒时间定义的保护时间,对象0X100DH含有“使用期限系数”。
监控机制:
1、节点保护
2、心跳报文
监控激活
如果两个参数中有一个为零,那么模块不执行监控,即无寿命保护。为了激活监控,必须在两个对象中输入非零的数值。
保证可靠工作
为了保证可靠工作,建议设置“使用期限系数”为2。如果不是只样,主模块会产生延时(例如,在“节点保护”时高优先级信息的处理或者内部处理时),模块会转入预处理模式而不产生错误。
监控的重要性
这两种保护机制对
CANopen系统的安全运行特别重要,特别是对不工作于事件-被控模式的设备。
从设备的监控
监控按以下的方法执行:
◆ 主设备发送远程帧,来读取从设备的状态;
COB-ID
0x700+Node_ID
从设备答复:
COB-ID Byte0
0x700+Node_ID Bit 7 : toggle Bit6-0 : 状态
◆从设备可以被配置为产生周期性的被称着“心跳报文”的报文,周期性的发送从设备的状态。
COB-ID Byte0
0x700+Node_ID状态
主设备的监控
如果主设备基于严格循环请求“保护”信息,从设备可以检测主设备的状态。如果从设备在也定义的使用期限内没有收到主设备的请求(保护错误),它会认为主设备故障。这种情况下相应输出进入出错状态并且从设备进入预处理状态。
“保护”协议
在第一个“保护”信息里,“锁住位”(t)的值是0,然后在每个后来的保护信息里,该位都会改变,只有可以显示信息是否丢失。总线头部用7个剩余的位来指示网络状态:
网络状态 响应
被停止 0x04或0x84
预处理 0x7f或0xff
操作 0x05或0x85
四、CANopen设备
CAN总线网络中有如下几类设备:
(1) PLC:PLC做CAN上的一个主站,起到中央控制器的作用,对整个系统的工作起安排、调度、执行各个操作等作用。作为CAN网络中的主站,PLC可以访问网络中任何节点的任何可以访问的数据,并起总线监控作用,实时监控总线上各个节点的工作状态,如果出现错误并执行相应的处理程序;
(2) 分散式I/O:通常由电源部分、通信适配器部分、接线端子部分组成。 分散式I/O不具有程序存储和程序执行,通信适配器部分接收主站指令,按主站指令驱动I/O,并将I/O输入及故障诊断等信息返回给主站。
(3) 驱动器、传感器、执行机构等现场设备:即带CAN接口的现场设备,可