Canopen概述
CAN (Controller Aera Network,控制器局部网) 是德国Bosch公司在1983年开发的一种串行数据通讯协议,最初应用于现代汽车中众多的控制与测试仪器之间的数据交换,是一种多主方式的串行通讯总线,介质可以是双绞线、同轴电缆和光纤,速率可达1Mbps,支持多达128个节点;具有高抗电磁干扰性,而且能够检测出产生的任何错误,保证数据通讯的可靠性。通信机制比较简单,适合于所有机械的嵌入式网络,可以降低设备的复杂程度,在工业领域(如汽车、电梯、医疗、船舶、纺织机械等)得到了广泛应用,是欧洲最重要的网络标准。
TWIDO CANopen介绍
Twido 控制器提供一个 TWD NCO1M master 模块.该Twido CANopen模块可管理最多 16 CANopen 从站.该模块适用于以下Twido 本体:
●一体型本体单元: TWDLC•A24DRF 和 TWDLCA•40DRF
●所有的模块本体单元: TWDLMDA20••• 和 TWDLMDA40•••
系统结构图
变频器的Canopen的接线
ATV7变频器的Drivecom流程
当变频器上电时,如果没有故障,则变频器处于状态2(通电被禁止)。此时变频器状态是NST,如果通了三相交流电,则状态字ETA最后两位的值为16进制的50,否则是16进制的40。 这时,给变频器发命令字CMD=16#0006,如果变频器无故障,则变频器进入状态3(通电准备好)。这时,如果通了三相交流电,则状态字ETA最后两位的值为16进制的31,否则是16进制的21。 然后我们给变频器发命令字CMD=16#0007,则变频器完成起动准备,进入状态4。此时三相电必须加上。状态字ETA=16#**33。如果要运行,我们给变频器发命令字CMD=16#000F(正转),则变频器进入状态5。此时如果要停车,我们给变频器发命令字CMD=16#0007,则变频器返回状态4。在大多数情况下,变频器在状态4和状态5之间切换,只有当出现快速停车、故障、或者重新上电后,才需要再根据上图的流程表确定如何响应。
Twido PLC CANopen硬件设置
添加TWDNC01M-CANopen通讯模块Twido主意用于纺织,塑机,包装,印刷等行业最大驱动16台ATV71变频器,建议小于9台。最高速度500Kbps。在Expansion bus右键添加模块
在弹出菜单中选TWDNC01M模块,然后点击Add,添加模块完成。
配置TWDNC01M-CANopen通讯模块
CANopen现场总线编程和诊断
-
-
-
- 主模块状态
-
-
使用%SW8X (X=1-7) 的前7位来显示TWIDO CANopen 主模块的状态
系统子 | 位 | 描述 |
%SW8x(x=1-7) | 0 | CANopen主模块配置状态(=1配置好,否则为0) |
1 | CANopen主模块工作模式(=1数据交换使能,否则为0) | |
2 | 系统停止(=1数据交换使能,否则为0) | |
3 | CAN_CMD指令完成(=1指令完成,否则为0) | |
4 | CAN_CMD指令错误(=1指令错误,否则为0) | |
5 | 初始化错误(=1错误,否则为0) | |
6 | 信息丢失,电源错误(=1错误,否则为0) |
注意:在执行CAN_CMD指令之前,必须检测%SW8x:3是否为1,以保证另外一条指令没有执行。也可以通过%SW8x:4 来检测指令是否被正确执行
从设备状态
同样,也可以通过系统字%SW20-%SW27来诊断从站的状态,他们分别代表从站1-16,这些系统字是只读的
系统字 | 节点地址 | 字内容及描述 %sw2x= | |
低8位 | 高8位 | ||
%SW20 | 1 | 2 | 1:在网络上出现不可预料的模块,在移除前已被定义为“非无差错” 2:节点处于工作状态(无差错) 3:节点处于工作状态(非无差错) 4:节点处于预处理状态(模块处于预处理状态) — 已在配置表中声明 — 模块可以被置为工作状态 — 无差错 5:节点处于预处理状态(模块处于预处理状态) — 已在配置表中声明 — 模块可以被置为工作状态 — 非无差错 6:节点处于预处理状态(模块处于预处理状态) — 已在配置表中声明 — 模块可以存在,但当前不允许置为工作状态 — 无差错 7:节点处于预处理状态(模块处于预处理状态) — 已在配置表中声明 — 模块可以存在,但当前不允许置为工作状态 — 非无差错 8: 模块错误(模块被检测出与标示信息不符) — 无差错 9: 模块错误(模块被检测出与标示信息不符) — 非无差错 10:从站配置错误(模块已经应答了带错误信息的SDO命令表写请 求,或不遵循SDO协议规则) — 无差错 11:从站配置错误 — 非无差错 12:模块丢失/错误控制超时/SDO超时(已配置的模块无效,在运行 中丢失,或者不应答SDO) — 无差错 13:模块丢失/错误控制超时/SDO超时(已配置的模块无效,在运行 中丢失,或者不应答SDO) — 非无差错 14:不可预料的模块(模块被检测出不在配置表里) — 无差错 15:不可预料的模块(模块被检测出不在配置表里) — 非无差错 |
TwidoPLC的软件编程
速度给定和写控制字