风电变流器设备CANopen通信的快速实现
2011-11-08
作者:致远电子
来源:来源:电子技术应用2011年第9期
风能作为一种高效、清洁、可再生的能源,越来越受到世界各国的重视,中国新能源战略把大力发展风力发电设为重点。近几年,由于风能的诸多优点以及国家政策的大力支持,国内风力发电行业得到了快速的发展。风力发电系统中各个设备之间需要通信,CAN总线是国际风电行业中流行而且应用成熟的通信方式,基于CAN总线应用层的CANopen协议对所有设备做出了“设备级”的规范。大部分国外的变流器设备通过CANopen接口与风电系统中的其他设备进行通信,因此,为了替代国外的变流器,实现变流器设备自主化,就要求国内厂商的变流器提供CANopen接口。
本期文章将介绍如何利用XGate-COP10模块设计风电变流器的CANopen从站接口。
1 XGate-COP10简介
XGate-COP10是一款CANopen从站协议转换模块,内部集成了CANopen从站协议栈,遵循CiA DS301 V4.02进行设计,其内部集成了网络管理(NMT)、服务数据(SDO)、过程数据(PDO)、错误管理等功能。同时也遵循了DS303-3指示灯以及DS305层设置(LSS)等相关协议,使模块功能更强大。所有的功能均通过CiA提供的一致性测试软件的测试,保证了与其他CANopen设备良好的兼容性。
XGate-COP10为DIP24封装,拥有较小的占位面积(6 cm2),非常容易集成到用户设备中,其外观如图1所示。
2 变流器CANopen接口硬件设计
XGate-COP10硬件设计框图如图2所示。
变流器控制板的MCU与XGate-COP10通过串口(TTL电平)进行连接。用户可以使用MCU的一个I/O口连接到XGate-COP10的复位引脚(/RST)实现对模块的复位控制。某些情况下还需要把XGate-COP10中断信号输出引脚连接到变频器的中断输入引脚,以便及时处理RPDO数据。MCU只需要预留1路串口、1路中断输入和1个I/O口即可。对于XGate-COP10来说,由于其内部未集成CAN收发器,推荐使用带隔离的CAN收发器模块CTM8251T。XGate-COP10采用的是标准的CANopen协议,这里使用外接DIP开关来设置设备的节点地址和波特率,以及外接LED指示灯来指示当前模块的CANopen状态。
3 风电变流器参数资源分配
对于实时数据,XGate-COP10有96 B的输入和96 B的输出存储区供用户使用,这些存储区可以用于变流器的各项实时参数与其他CANopen设备之间的数据交换。
对于非实时数据,XGate-COP10提供了直接访问对象字典的串口命令,用户可以通过该命令对模块的对象字典进行读写,实现变流器对CANopen网络中非实时参数的访问。
这样,CANopen主站设备或其他设备和变流器的之间通信就变得十分方便。
(1)资源分配
变流器相关参数在XGate-COP10存储区的分配情况如表1所示,用户只需要把数据写入XGate-COP10数据输入存储区,XGate-COP10就会按照CANopen协议的定义对数据进解析处理。同样来自CANopen网络中控制信息也会经过解析之后存放于数据输出区,用户只需要从输出区读出即可。
(2)实时数据传输配置
XGate-COP10中最多支持12个RPDO和12个TPDO数据的传输,并且PDO数据可映射到数据存储区的任意数据区,其数据映射示例如表2和表3所示。
4 变流器控制器MCU对XGate-COP10的操作
XGate-COP10提供了一个串口与变流器控制器MCU进行连接。为了方便用户快速可靠地实现模块与MCU通信,广州致远电子有限公司提供了XGate-COP10串口协议的驱动源码。当XGate-COP10的输出内存区接收到CANopen网络中的实时数据之后就会立即向用户MCU产生一个中断,此时用户可以通过UART发送相关命令字读取数据输出区的内容。用户可将实时更新的传感器数据写入输入缓冲区,XGate-COP10自动发送至主站或者其他从站设备。用户程序软件操作流程示例如图3所示。
经过以上步骤,快速地实现了风电变流器的CANopen接口,并能与其他CANopen设备进行通信。XGate-COP10的出现,使开发者不再为开发CANopen协议栈而苦恼,大大缩短了开发周期。相信在XGate-COP10的帮助下,你能获得更大的成功。
广州致远电子有限公司提供各种接口的CANopen接口卡、CANopen终端设备(包括数据采集、电机控制等)、CANopen分析仪、网关及网桥、OPC服务器以及基于CANopen协议的整套组网方案及应用开发。