1、施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 1Twido 与 ATV312Modbus 串行通讯控制Modbus 通讯给定速度、DO 控制命令Twido Modbus Serial Communication with ATV312 Edition:2011-6施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 2目录1. 实验简介.32. 实验环境.32.1 硬件环境.32.2 软件环境.33. 硬件连接.43.1 Twido 与变频器的通讯连接43.2 Twido 与变频器的端子连接64. ATV312 变频器设置 .74
2、.1 操作说明.74.2 主要参数设置.84.2.1 恢复出厂设置.84.2.2 电机参数.94.2.3 控制方式.104.2.4 通讯参数.135. PLC 编程145.1 Modbus 协议简介145.2 交换数据表.145.3 ATV312 参数说明155.3.1 读写变量.155.3.2 状态字.165.3.3 控制字.165.3.4 特殊 DRIVECOM 参数.165.4 DRIVECOM 流程175.5 TwidoSoft 软件的配置185.6 Twido 软件编程语句介绍205.6.1 EXCHx 指令205.6.2 %MSGx 功能块205.7 程序的分步讲解.215.7.1
3、 一台 PLC 与一台变频器通讯.215.7.2 一台 PLC 与多台变频器通讯.236. 实验调试.266.1 计算机和 PLC 连接.266.2 交换数据表对照.276.3 动态变量表的读和写.286.4 ATV312 常见通讯故障297系统扩展.307.1 分配器模块和 RJ45 连接器.308. 附件.308.1 参考程序.318.1.1 Port2 口做通讯318.1.2 Port1 口做通讯31施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 31. 实验简介PLC 通过 modbus 监控变频器的运行是工业中较常见的应用,本文以施耐德 Twido
4、PLC 与ATV312 变频器为例,简要介绍 PLC 与变频器之间 modbus 串行通讯的过程,包括硬件接线、变频器参数设置、硬软件组态、上电调试等,实现在 PLC 上远程控制 ATV312 变频器的故障初始化,启动/停止,正转/反转,频率给定等。本文只介绍了本地端子控制变频器启停,Modbus 远程通讯控制变频器输出频率的情况,关于端子控制和 modbus 通讯控制的其他几种混合使用的情况,以及其他施耐德 PLC,如Premium,Quantum 与 ATV312 的 modbus 串行通讯,将在本书的其他文章中介绍。2. 实验环境2.1 硬件环境主要硬件如下:类型 型号 数量 参考图片电
5、源 24V 开关电源 1PLC Twido PLCTWDLMDA20DRT(CPU 模块)(右)TWDNOZ485T(端子 485扩展模块)(左)1变频器 ATV312 18 针 MiniDIN 圆头线 1Modbus 通讯电缆RJ45 接头屏蔽双绞线 12.2 软件环境TwidoSoft3.5 是施耐德电器支持 Twido PLC 的编程,调试和运行的工具软件。施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 43. 硬件连接3.1 Twido 与变频器的通讯连接A B GD+ D- 公共1 2 3 4 5 6 7 8CAN_H CAN_L CAN_GND D
6、1 D0 不连 10V 公共1 2 3 4 5 6 7 8D+ D- 不连 /DE DPT 不连 0V 5V51234466施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 5TSXPCX1031-C 转接块的拨码拨到 2TWDLMDA20DRT Twido PLC CPU 模块TWDNOZ485T Twido MiniDin 485 扩展模块Port1 8 针圆头RJ45 接头Port2 485 端子 通讯扩展口Port1 口通讯 电缆制作图Port2 口通讯 电缆制作图12561234567878施耐德技术服务中心 Twido 与 ATV312 的 Modb
7、us 串行通讯控制 63.2 Twido 与变频器的端子连接在 4.2.4 控制方式 中对 ATV312 变频器做编程,分别如下:正转开关LI1;闭合正转,断开停止。反转开关LI2;闭合反转,断开停止。ATV312 的控制端子和 PLC 端子连接图如下:逻辑输入配置开关source/源极位置;ATV312 的详细安装,请参照 ATV312 的安装手册。11注意 本实验是以 Twido 上的 DO 为例作为 ATV3122 的控制命令,实际应用过程中可以用其他数字输出设备作为 ATV3122 控制命令,如端子,其他 PLC 的 DO 等。施耐德技术服务中心 Twido 与 ATV312 的 Mo
8、dbus 串行通讯控制 74. ATV312 变频器设置4.1 操作说明ATV312 的前面板说明如下:ATV312 操作面板主要操作规则:旋转导航键 对菜单进行浏览,不会对选定项进行存储;存储选定项,按导航(ENT)键 ,当存储数值时,显示器会闪烁。正常显示状态:无故障出现和无起动时,正常显示有如下几种:频率:SUP菜单中所选的参数的显示(缺省选项:加到电机上的输出频率)。在电流限制模式下,显示器会闪烁。init:初始化顺序rdY:变频器就绪dcb:直流注入制动正在进行施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 8nSt:自由停车FSt:快速停车tUn:
9、正在进行自动整定故障显示状态:显示器闪烁指示出现的故障,如果接中文面板,将会显示故障码,请参阅 ATV312 编程手册中故障处理一节。任何初始显示状态下,均可以先按 Mode 键进入 rEF 菜单,然后旋转导航键找到需要设置菜单。4.2 主要参数设置ATV312 的主菜单如下,所有的参数均在主菜单的子目录里面进行设置。4.2.1 恢复出厂设置施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 9ATV312 上电后,如果用户对液晶显示未知,或者变频器设置未知,可以先恢复出厂设置。如果变频器已经设置过,且不需要恢复出厂设置,请跳过本小节,从 4.2.2 电机参数 开
10、始进行参数的设置和检查。恢复出厂设置操作如下:恢复出厂设置的电机,上电后显示 ready,按照先后顺序,分别做如下设置。4.2.2 电机参数电机参数设定步骤如下:参数路径 参数说明 值 功能描述drC-Frs 电机额定频率 50 根据电机的铭牌设置,范围 10-500HZdrC-nCr 电机额定电流 1.2 根据电机的铭牌设置,范围 0.25-1.5 倍变频器额定电流drC-nSP 电机额定速度 1400 根据电机的铭牌设置,范围 0-32760RPM电机额定频率设定如下;本例中电机的额定频率为 50,与出厂设置相同,所以采用出厂设置即可;读者根据实际情况按照电机铭牌上的额定频率进行设定。电机
11、额定电流设置参数路径 参数说明 值 功能描述drC-Fcs 返回工厂设置 InI No:功能未被激活;InI:恢复工厂设置,此功能被执行后,Fcs又自动回复到 nO 状态。施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 10电机额定转速设置4.2.3 控制方式如果采用端子启停,Modbus 通讯控制速度,ATV312 设定步骤如下:参数路径 参数说明 值 功能描述CTL-LAC* 功能访问等级 L3 访问高级功能与混合控制模式的管理CTL-FR1* 配置给定 1 ndb 通过 modbus 总线给定CTL-CHCF* 混合控制模式 SEP 如果 LAC=L3
12、可访问此参数:SIN组合,控制和频率给定由同一种方式设定;SEP分离,控制和频率给定由不同的方式设定CTL-Cd1* 配置通道给定 1 tEr Cd1 菜单只有在 LAC=L39.6-9600bps;19.2-19200CON-tfo 通讯格式 8n1 8O1:8 个数据位,奇校验,1 个停止位8E1:8 个数据位,偶校验,1 个停止位8n1:8 个数据位,无校验,1 个停止位8n2:8 个数据位,无校验,2 个停止位从站地址设置通讯速率设置通讯格式设置注意设置完毕后,关闭 ATV312 电源再重新上电,参数才生效! 施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯
13、控制 145. PLC 编程5.1 Modbus 协议简介Modbus 协议是 Modicon 公司于 1978 年开发的一个用于 PLC 和编程器之间通讯的协议,1980 年起,为众多制造商所采用而完全开放,成为“事实上的工业标准”。它实现控制器相互之间、控制器经由网络和其它设备之间的通信,支持传统的 RS 一 232422 485 设备和最新发展出来的以太网设备。该协议定义了一个控制器能识别的消息结构,描述了控制器如何请求访问其它设备, 如何回应来自其它设备的请求,以及怎样侦测错误并记录。它是一种应用层报文传输协议,与底层的物理接口及电气规范无关, 这是其目前生命力仍很强的原因。Modbu
14、s 协议是一个分级结构 (主从式) 异步串行通讯协议,为客户机/服务器方式,可使主站对一个或多个从站进行访问,主站和从站之间允许多点连接。 主站和从站可以有两种对话方式:查询方式:主站对一个从站进行对话并等待其回应广播方式:主站对所有从站进行对话 (不等待回应) Modbus 的协议中有两种传输方式:RTU 方式格式: 地址 命令 数据 CRC 校检ASCII 方式格式: 头码 地址 命令 数据 LRC 校检 尾码说明:RTU (Remote Terminal Unit,远程终端单元) CRC (Cyclical Redundancy Check,循环冗余校验)LRC (Longitudina
15、l Redundancy Check,纵向冗余校验)5.2 交换数据表Twido 作为主站进行 Modbus 通信时,必须编程通信程序,而程序的编写是通过填写字表的方式进行的,以下就 Modbus 字表进行详细阐述。另外,Twido 作为 Modbus 从站时,是不需要编程的,只需要配置通信参数即可。读 N 个字MW(功能码 03)表索引高字节 低字节0 01(发送/接收) 06(发送长度)*控制表1 03(接收偏移) 00(发送偏移)2 从站地址(1247) 03(请求码)3 读取的第一个字的地址发送表4 读取的字数 N5 从站地址(1247) 03(请求码)6 00(接收偏移值) 2N 所
16、读的值占用的字节数7 读取的第一个字8 读取的第二个字 接收表N6 读取的第 N 个字*在应答后,长度会变为接收到的字节长度施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 15写 N 个字MW(功能码 16)表索引高字节 低字节0 01(发送/接收) 8(2N)发送长度控制表1 00(接收偏移) 07(发送偏移)发送表 2 从站地址(1247) 16(请求码 16 进制 10)3 所写第一个字地址4 所写字的个数 N5 00(发送偏移值) 2N 所写字节数6 所写的第一个字7 所写的第二个字N5 所写第 N 个字接收表 N6 从站地址(1247) 16(请求码
17、)N7 所写第一个字地址N8 所写的字数有多条 EXCH 指令时,要使用分时控制5.3 ATV312 参数说明5.3.1 读写变量读出变量地址 代码 说明3203 FRH 给定频率3202 RFR 电机输出频率3207 ULN 线电压7121 LFT 上一次故障3201 ETA DRIVECOM 状态字写入变量地址 代码 说明8501 CMD DRIVECOM 命令字8502 LFR 在线给定频率8504 CMI 内部控制寄存器11920 RPI PI 调节器内部设定点9623 UFR IR 补偿施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 165.3.2
18、状态字状态字 ETAD(W8603)或 CMD(W3201)Bit0 准备接通Bit1 接通Bit2 操作被允许Bit3 故障Bit4 电压无效Bit5 快速制动Bit6 接通被禁止Bit7 报警Bit8 0Bit9 线性控制Bit10 达到给定值Bit11 超过给定值Bit12 0Bit13 0Bit14 按 STOP 键停止Bit15 旋转方向5.3.3 控制字控制字 ETAD(W8603)或 CMD(W3201)Bit0 接通Bit1 电压无效Bit2 快速制动Bit3 允许操作Bit4 0Bit5 0Bit6 0Bit7 故障复位Bit8 0Bit9 0Bit10 0Bit11 正传/
19、反转Bit12 斜坡制动Bit13 注入制动Bit14 快速制动Bit15 05.3.4 特殊 DRIVECOM 参数特殊”DRIVECOM”参数地址 代码 说明8606 ERRD 故障代码(写保护)8601 CMDD 命令字8603 ETAD 状态字(写保护)8602 LFRD 给定转速8605 FRHD 带符号输出转速(写保护)8604 RFRD 无符号输出转速(写保护)施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 175.4 DRIVECOM 流程ATV312 的 DRIVERCOM 流程ETA=16#*40ATV锁定接通禁止ETA=16#*8ATV故
20、障功能失常故障?否 CMD=16#0080故障消失,复位nStETA=16#*21ATV等待禁止电压CMD=16#0007接通CMD=16#0006停车CMD=16#0002快速停车或nStETA=16#*23ATV就绪接通CMD=16#0006停车CMD=16#0000禁止电压CMD=16#*F激活运行CMD=16#0007禁止运行rUn,rdYETA=16#*27ATV运行运行激活是rdY,dCbETA=16#*07紧急停车快速停车激活电机停车修改配置参数或CMD=16#0000禁止电压CMD=16#000B快速停车电机停车修改配置参数或CMD=16#0000禁止电压终端上STOP键或CM
21、D=16#*F激活运行CMD=16#0006停车电机停车修改配置参数或CMD=16#0000禁止电压终端上STOP键或上电施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 185.5 TwidoSoft 软件的配置步骤 动作&示例1 新建一个工程2 选择 Twido PLC 的 CPU,本实验采用了 TWDLMDA20DRT3 选择一个 RS485 的扩展端口用于与 ATV312 进行通讯4 选择 TWDNOZ485T,8 针 miniDIN 连接头的扩展模块施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 19步骤 动作&示例5
22、 配置两个端口配置 Port1 为编程端口,设置如下:配置 Port2 为通讯端口,配置如下,且与变频器端的设置一致5.6 Twido 软件编程语句介绍一个 Twido 控制器配置后可与 Modbus 从设备通信,或以字符模式(ASCII)发送和/或接收消息。TwidoSoft 为这些通信提供了下列功能: EXCH 指令用于发送/接收消息Port2 通讯端口Port1 编程端口施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 20 交换控制功能模块(MSG)用于控制数据交换Twido 控制器在处理 EXCH 指令时使用制定端口的配置协议。每个通信端口可被分配一个
23、不同的协议。通过添加端口号到 EXCH 或%MSG 功能(EXCH1,EXCH2,%MSG1,%MSG2)可以访问通信端口。5.6.1 EXCHx 指令发送/接收报文;其中 x 为通讯端口号(1 或 2) EXCHx %MWi:L (i + L 215.7 程序的分步讲解5.7.1 一台 PLC 与一台变频器通讯施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 22施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 235.7.2 一台 PLC 与多台变频器通讯施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行
24、通讯控制 24施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 256. 实验调试本实验中变频器带小电机驱动风扇进行测试,因此负载使用安全。注意 对于使用多台变频器的系统,为保证系统通讯稳定,建议客户使用施耐德的标准 modbus 扩展设备注意 在实际应用过程中,在 PLC 进行通讯测试之前,请用户确保:1 如果带有电机负载和机械负载,确保电机的启动和运行不会对实际生产造成影响;否则请降低测试频率或断开负载。2 如果没有电机负载或负载较小,确保电机缺相故障已经被禁止。电机缺相故障禁止的设置请参照 4.2.3 控制方式 中的说明。施耐德技术服务中心 Twido 与
25、 ATV312 的 Modbus 串行通讯控制 266.1 计算机和 PLC 连接连接图如下:TSXPCX1031-C 电缆的圆头与 Twido PLC 的圆口连接TSXPCX1031-C 转换器拨号到 2TSXPCX1031-C 的 9 针端与计算机的串口连接6.2 交换数据表对照注意:该例使用 DRIVECOM 流程,假如把 ATV312 设为分离控制方式,也就是通信给定频率,端子控制起停的话,可以不使用 DRIVECOM 流程。交换数据表读变量 值(高位字节) 值(低位字节) 说明MW0 01 06 发送接收:01;发送长度:06(字节)MW1 03 00 接收偏移:03;发送偏移:00
26、MW2 01 03 从站地址:02;命令代码:03(读变量)MW3 0c 81 起始变量:160c81(W3201)MW4 00 01 数据长度:1 字MW5 01 03 从站地址:02;命令代码:03MW6 00 02 接收偏移值:00;接收到的字节数:2MW7 00 00 读到的寄存器值写变量 值(高位字节) 值(低位字节) 说明MW50 01 0C 发送接收:01;发送长度:12(字节)MW51 00 07 接收偏移:00;发送偏移:07MW52 01 10 从站地址:02;命令代码:16(写变量)MW53 21 35 起始变量:162135(W8501)MW54 00 02 数据长度:
27、2 字MW55 00 04 发送偏移值:00;写的字节数:04MW56 00 00 写入变量值 1:W8501MW57 00 00 写入变量值 2:W8502MW58 01 10 从站地址:01;命令代码:16(写变量)MW59 21 35 起始变量:162135(W8501)MW60 00 02 数据长度:2 字从站返回值从站返回值123123施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 276.3 动态变量表的读和写施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 286.4 ATV312 常见通讯故障出现通讯故障或者变频
28、器故障时,变频器会自动停止输出。在此例中,常见故障是SLF(serial link fault)通讯故障,通讯故障之后 10 秒 变频器会自动停止输出,并在液晶显1示器上显示 SLF。几种常见的故障原因解决方案如下:故障现象故障起因变频器显示 变频器输出 解决方案 恢复运行硬件线路故障 SLF 约 10 秒 后停止输出1 检查并恢复硬件线路 通讯自动恢复,显示故障,需要复位PLC 断电 SLF 约 10 秒后停止输出 PLC 重新热启动 通讯自动恢复,显示故障,需要复位PLC 热启动 SLF 如 10 秒内不能启动,则停止输出通讯自动恢复,显示故障,需要复位PLC 冷启动 nSt 立即停止输出
29、,变频器复位PLC 冷启动 通讯自动恢复CPU 停止运行 SLF 约 10 秒后停止输出 PLC 启动 通讯自动恢复,显示故障,需要复位10 秒为 ATV312 变频器 modbus 超时的出厂设定值,即在 10 秒之内如果没有检测到 modbus 请求1或接收信号,会报 SLF 故障。此时间一般默认为出厂设定值 10 秒,见菜单 COM-ttO。故障排除且复位后,变频器状态重新回到 waiting 或 ready,变频器液晶显示 rdy(ready/就绪)或nSt(自由停车)后,变频器才能启动。其他更多 ATV312 变频器的 故障原因解决方案 ,请参照 ATV312 编程手册的 故障原因解
30、决方案 章节。施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 297系统扩展本例只是对单个变频器进行控制,对于多个变频器连接的情况,需要对硬件和软件进行扩展,软件的扩展已经在之前的 5.7.2 一台 PLC 与多台变频器通讯 中进行了讲解,下面对硬件扩展作出说明。施耐德提供专门的连接器来进行扩展,主要有两种扩展的方式。7.1 分配器模块和 RJ45 连接器使用施耐德的标准扩展设备,通过分配器模块和 RJ45 连接器方式进行扩展。1,modbus 分支模块 LU9 GC32,modbus 分支电缆 VW3 A8 306R*3,Modbus T 形连接器 VW3
31、A8 306TF*4,线路终端器 VW3 A8 306RC 或线路终端器 VW3 A8 306R采用标准的 modbus 连接时,使用线路终端器 VW3 A8 306RC;采用 modbus jbus 连接时,使用VW3 A8 306R 线路终端器。两种线路终端器的内部实际结构如下图:VW3 A8 306RC VW3 A8 306RC详细的扩展规划,请参照 8.1.4ATV312 的 modbus 用户手册 。8. 附件注意 对于使用多台变频器的系统,为保证系统通讯稳定,建议客户使用施耐德的标准 modbus 扩展设备施耐德技术服务中心 Twido 与 ATV312 的 Modbus 串行通讯控制 308.1 参考程序8.1.1 Port2 口做通讯一台 PLC 与一台变频器 com2 口一台 PLC 与多台变频器 com2 口8.1.2 Port1 口做通讯一台 PLC 与一台变频器 com1 口一台 PLC 与多台变频器 com1 口