通过SCA-102实现CANopen从站节点应用案例
关键词:CANopen,RS232,RS485
系统要求:实现带有RS232/RS485接口变频器设备和CANopen主站之间的通信。
系统实现:
- 解决方案:采用SiboTech的网关SCA-102通过串口(RS232或RS485)来模拟实现CANopen从站节点。变频器通过串口和SCA-102通信,SCA-102是采用透传式进行串口数据和CAN口数据交换的,即CAN口发送的数据完全由串口决定,因此,变频器编程人员必须对CANopen协议有一定的了解;以下以SCA-102的RS232口为例实现CANopen接口。
- 技术特性:SCA-102的CAN口支持CAN2.0A和CAN2.0B,波特率:5K~1000Kbps;串口支持RS232/RS485,波特率:1200 ~115200bps;提供两种数据转换模式:透明转换、透明带标识转换;可设置断帧超时时间;CAN接口采用光电隔离,DC-DC电源隔离;串口接收缓存:4.5K字节,CAN接收缓存:1.6K字节。
- 假定:变频器有6个变量要发送给CANopen主站,分别是3相电流,3个相电压,每个变量占用2个字节,分别用TPDO1(COBID=0x181)和TPDO2(COBID=0x281),CANopen主站对变频器进行参数设置,参数设置采用1个RPDO(COBID=201),主要设置变频器的2个字节的参数;SCA-102模拟1号CANopen从站节点;CANopen采用Heartbeat;
- 配置方法:建立SCA-102串口(RS232)和电脑串口的连接,通过配置软件配置通讯相关参数:

图1 RS485/CAN 设置工具

图2 高级设置
系统连接:

图3 系统结构
按照上面2个图来配置SCA-102,如上图串口采用透明传输式,即串口数据中包含CANopen的COBID。
如上图所示:变频器周期性发送01 00 00 07 01 05串口数据给SCA-102,SCA-102就会发送Heartbeat报文;变频器周期性的发送06 00 00 01 81 01 02 03 04 05 06(绿色为可变的部分,即三个电流值)串口数据给SCA-102,SCA-102就会发送TPDO1;同理,变频器周期性的发送06 00 00 02 81 07 08 09 10 11 12(绿色为可变的部分,即三个电压值)串口数据给SCA-102,SCA-102就会发送TPDO2;而CANopen主站发送的RPDO(COBID=201)经过SCA-102就会转换为串口数据02 00 00 02 01 07 08(绿色为可变的部分,即2个字节的配置参数)。
|