产品说明:
Design of Multi-computer Communication system Based on CANOpen Protocol
摘要 :针对煤矿中多机通讯系统要求远距离、抗干扰性强等特点,介绍了基于 CANOpen协议的多机通讯设计方法。基于 TMS320F2812DSP的变频器平台 ,采用一主节点和两从节点组成 CANOpen网路的多机通讯方案。通过主节点与任一从节点的 SDO报文和 PDO报文的通信以及从节点一致性的实验表明 ,基于CANOpen协议的多机通讯数据传输快速、可靠性高、CANOpen协议 ;多机通讯 ; CAN总线通信中图分类号 : TD655文献标识码 :B
Abstract: The multi -computer mommunication system used in coal mine require the characteristic of long -distance and outstanding anti-jamming capability, and so on. the design method about multi -computer communication was persent based on CANOpen Protocol. The multi-computer communication plan adopted one master and two slaver make up a network based on the Inverter platform about TMS320F2812DSP. Through the SDO telegram、PDO telegram experiment and the slave experiment of Consistency between the master and any of the slaver , which can verify the multi-computer communication have fast transmission、high reliability and outstanding anti-jamming capability.
Key words: CANOpen protocol; CAN_bus communication; Multi-computer communication
1引言
煤矿的控制系统需要对分布在不同位置的设备进行远程监控 ,要求系统具备通讯距离远 ,抗干扰性能强等特点。目前的工业现场应用中多采用基于 modbus协议的 485多机通信 ,485短距离多机通信具有通信可靠性高和组网成本低等优点。
在一对多的多机通讯系统中 ,当 485总线有数据传输时 ,从节点需要接收数据 ,产生中断进行地址判断 ,若不是本机地址 ,则退出中断等待下次数据传输。因此 ,当节点数越多 ,节点为判定地址其软件被中断干扰的次数多。而 CAN通讯是通过硬件设置判定总线上标识符和本节点标识符 ,若相同 ,本节点接收总线数据 ,否则不予响应 ,减小软件被中断干扰次数 ,提高可靠性。
与 485通讯相比 ,can总线通讯还具备以下优点 :
- (1) can总线通信最大传输距离 10Km,而 485通信最大传输距离仅为 1.2Km。
- (2) can总线通信可靠通信速率可达到 1Mbps,而 485通信可靠通信速率仅为几十 Kbps。
- (3) can总线通信一次传输数据最大可传输八个字节 ,而 485通信一次传输数据量仅为一个字节。
- can总线硬件具有一定的错误处理能力 ,能减少软件的工作量。
由于煤矿现场环境恶劣 ,电磁干扰严重 ,要求传输距离远 ,因此 CAN通讯更适合于煤矿中多机系统通讯。但 CAN现场总线仅仅实现了物理层和数据链接层 ,由于 CAN没有规定应用层 ,需要一个高层的协议来对使用的 CAN报文进行描述。 CANOpen协议是 CiA定义的标准之一 ,CANOpen协议使得 CAN
武强:硕士研究生
总线的功能更强 ,应用范围更广。
本文在基于 TMS320F2812DSP的变频器系统中 ,按照 CANOpen协议进行多机通讯系统平台设计 ,通过实验验证主从之间通信的实时性、准确性和从节点的一致性的特点。
2多机通讯系统硬件设计
为模拟煤矿控制系统的多机通讯 ,硬件设计方案如图 1所示。本实验采用两台基于 TMS320F2812DSP的变频器和型号为 BX3100的倍福 PLC搭建试验平台组成两从节点和一主点的网络。为把 DSP控制器的 CAN信号转换为符合 ISO11898标准的要求需要外接 CAN控制器芯片。
在多机通讯中 ,信号电缆上经常会引起信号反射 ,导致通信不正常 ,产生的主要原因是阻抗不连续和阻抗不匹配。阻抗不连续是指在传输线末端突然遇到电缆阻抗很小甚至没有 ,信号由此引起反射 ;阻抗不匹配主要表现在通信线路处在空闲方式时 ,整个网络数据混乱。在实际应用中 ,为简单方便 ,在传输线两端分别接 120Ω匹配电阻 ,减小在长距离通讯中电缆的信号反射 ,提高信号传输的可靠性。
3多机通讯系统软件设计
在软件设计中 ,主站采用倍福 PLC的 SSB口即 canopen通信口,从站为两基于 DSP的变频器硬件平台。首先要对 CAN控制器进行主从设置 ,然后按照 CANOpen协议进行通讯 ,最后给出多机通讯验证方案。
3.1 DSP软件寄存器配置
首先对 DSP的 CAN寄存器进行初始化配置。主从节点工作模式和波特率配置相同 ,区别是接受和发送邮箱的标识符以及屏蔽索引寄存器不同 ,寄存器配置如下 :
(1)将主从节点 eCAN配置为标准 CAN模式 ,设置主控制寄存 CANMC.SCB=1。
(2)主从节点波特率设置为 500kbps,根据 DSP系统时钟是
120MHz,寄存器配置如下 : CANBTC.bit.BRP = 9; CANBTC.bit.TSEG2 = 6; CANBTC.bit.TSEG1 = 15。
- PLC中设置两个邮箱其节点 ID分别为 1和 2。其设置方法如图 4所示。
- 两个从节点是基于 DSP的变频器平台 ,其节点 ID分别为 1和 2。
- 从节点的邮箱标识符屏蔽位设置相同。邮箱 0的 7-10被屏蔽 ,通过设置局部接收屏蔽寄存器 ECanaLAMRegs.LAM0 [25-28]=1和接收邮箱 0的消息标志寄存器 MSGID.AME=1实现。
3.2多机通讯验证方案设计。
在多机通讯系统中 ,主节点 PLC通过外部开关量改变相应发送数据内容 ,从节点采用中断接收和中断发送报文。为验证基于 CANOpen协议的 can总线多机通信过程 ,采用主从节点进行 SDO报文和 PDO报文的通信实验。当主节点发送 SDO报文 ,从节点接收 SDO报文处理流程图如图 2。
主节点发送 SDO报文的功能码为 60H;发送数据的内容 Byte [0]根据 canopen协议定义为读写命令 ,写命令定义为 0x23,读命令定义为 0x40;Byte[1]为索引的低八位 ,Byte[2]为索引的高八位 ;Byte[3]为子索引 ;Byte[4]代表 16位变量的高八位 ,Byte
[5]代表 16位变量的低八位 ;Byte[6]和 Byte[7]代表数据传输的保
留位。 PDO报文选择四种 PDO中的一种 TxPDO3来发送变频器实时运行数据 ,通过标识符 COB_ID判断是不是 PDO报文 ,然后根据从节点的状态决定是否响应处理 PDO报文 ,其处理流程图如图 3。
4实验验证
为验证多机网路中主从节点正确通信和从节点的一致性 ,按照软件设计的验证方案进行如下两个通信实验。
4.1主节点与从节点 SDO报文通信实验。主节点 PLC通过通过 BOX1发送 RxSDO报文 ,BOX1设置如图 4所示 ,其节点 Node Id=1。
PLC通过外部开关输入状态改变 BOX1中的 RxSDO报文内容 ,RxSDO中的 COB_ID=0X601。其发送报文的数据区内容是随外部输入开关量的变化而变化的 ,当开关 1输入时 ,其数据区内容如图 5,变量的 online值分别为 Var1=0x002B,低八位代表 8字节写命令 ,高八位代表索引低八位 ;Var2=0x0312,低八位代表索引的高八位 ,高八位代表子索引 ;
Var3=0x000A,代表写数据的具体内容 ,在此代表变频器输入频率值 ;Var3=0x0000无意义。
实验结果表明 ,当开关 1输入时 ,变频器输出频率为 PLC的设定值 10Hz,当开关 2输入时 ,变频器输出频率为 PLC的设定值 20Hz。
同时从节点 1通过 TxPDO3将实时运行频率值发送给 PLC,其 COB_ID=0X381。当变频器运行频率值为 10Hz时,PLC显示的运行频率如图 6所示 ,变量 Vab1=0x000A代表实时运行频率为 10Hz。
4.2从节点一致性验证实验
增加 BOX2和从节点 2,BOX2节点设置如图 7,其节点 Node Id=2,实验结果表明 ,BOX2与从节点 2的之间的通信也能实现 BOX1和从节点 1之间通信功能。
主节点 PLC通过 BOX设置和显示从节点 1和从节点 2的实时频率值 ,从节点 1和从节点 2没有影响且 PLC软件能实现数据的正确显示 ,这说明两个从节点之间没有相互影响 ,证明从节点具有一致性。
5结论
基于 canopen协议 ,设计模拟多机通讯平台 ,并进行多机通讯实验 ,得出如下结论 :
- 通过实验得出基于 CANOpen协议的 can总线多机通信方式使每个从节点只响应总线上数据帧的标识符 ID与从节点标识符 ID相同的数据 ,提高了从节点的软件运行效率。
- 主节点和两个从节点组成 CANOpen网络中 ,主节点可以与任一从节点进行独立通信且相互无影响 ,在通信过程中任意退出或接入一个从节点不影响其它节点的通信 ,表明从节点的一致性。
- CANOpen协议的多机通讯可以实现数据的远距离、实时和可靠传输。可以应用到煤矿以及其它远距离多机通讯网络中。
本文的创新点在 :多机通讯系统中 ,当 485总线有数据传输时,从节点需要接收数据 ,产生中断进行地址判断 ,若不是本机地址,则退出中断等待下次数据传输。因此 ,当节点数越多 ,节点为判定地址软件被中断干扰的次数多。而 CAN通讯是通过硬件设置判定总线上标识符和本节点标识符 ,若相同 ,本节点接收总线数据 ,否则不予响应 ,减小软件被中断干扰次数 ,提高可靠性。
canopencan总线CAN总线modbus
参数资料:
|
基于-CANopen协议的多机通讯设计
|
价格列表:
基于-CANopen协议的多机通讯设计
葩星订货号 |
订货号 |
产品名称 |
报价 |
品牌 |
|
PXO_2721 | 200W,CABLE 3M | 200W,CABLE 3M | 233 | ~ | 298 | etherrt | | |
|