一、 Modbus通讯协议介绍
1 Modbus协议
工业控制已从单机控制走向集中监控、集散控制,如今已进入网络时代,工业控制器连网也为网络管理提供了方便。Modbus就是工业控制器的网络协议中的一种。
2 两种传输方式
控制器能设置为两种传输模式(ASCII或RTU)中的任何一种在标准的Modbus网络通信。用户选择想要的模式,包括串口通信参数(波特率、校验方式等),在配置每个控制器的时候,在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数。 1)ASCII模式
当控制器设为在Modbus网络上以ASCII(美国标准信息交换代码)模式通信,在消息中的每个8Bit字节都作为两个ASCII字符发送。这种方式的主要优点是字符发送的时间间隔可达到1秒而不产生错误。 代码系统
· 十六进制,ASCII字符0...9,A...F
· 消息中的每个ASCII字符都是一个十六进制字符组成 每个字节的位
· 1个起始位
· 7个数据位,最小的有效位先发送 · 1个奇偶校验位,无校验则无
· 1个停止位(有校验时),2个Bit(无校验时) 错误检测域
· LRC(纵向冗余检测) 2)RTU模式
当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。 代码系统
· 8位二进制,十六进制数0...9,A...F
· 消息中的每个8位域都是一个两个十六进制字符组成 每个字节的位
· 1个起始位
· 8个数据位,最小的有效位先发送 · 1个奇偶校验位,无校验则无 · 1个停止位(有校验时),2个Bit(无校验时) 错误检测域
· CRC(循环冗余检测)
3 命令格式 ASCII模式
: 地址 功能代码 数据数量 数据1 ... 数据n LRC高字节 LRC低字节 回车 换行
RTU模式
地址 功能代码 数据数量 数据1 ... 数据n CRC高字节 CRC低字节
特点: 无头代码和结束码 注意点:数据长度和校验计算
二、Modbus-RTU简易主站功能说明
三、Modbus应用地址分配
四、实验设备及程序说明:
CP1H+CP1W-CIF11+3G3RV-ZV1
CP1H:Port1 CPU DIP4设OFF 设串口网关 通信波特率 9600,8,1,N
CP1W-CIF11 背后开关设定,1=ON(终端电阻);2,3=ON(RS485方式);5=ON(不要echo back数据);6=ON(RS485方式)
1.引脚定义
FG RDA-
RDB+ SDA- SDB+
2.正背面视图 LED
COMM
Dip switch
RS-422A/485
3.DIP SWITCH的含义
DIP SWITCH Pin No. 1 ON Yes 终端电阻 OFF No 2 ON 2 wires( RS485) 2,3必须设置相同 OFF 4 wires( RS422) 3 ON 2 wires( RS485) OFF 4 wires( RS422) 4 5 - ON - RD:RS controll 无 无响应返回设置 OFF RD:No RS controll (Always possible to resive ) 6 ON RS4221:N连接 N侧单元的 NO.6 = ON. OFF SD:No Rs controll 方式设 ( Always possible to send ) RS485No.6=ON. SD:RS control CP1W-CIF11与3G3RV接线
3G3RV-ZV1终端电阻
3G3RV-ZV1
参数设定
2 2 1 3 0 3 1 5 1
串口1:D32200 A641.00 串口2。D32300 A640.00
举例:
D32300写变频器的节点号 D32301:0010 写命令
D32302:0009 发送的字节数 D32303:0001 写命令开始编号 D32304:0002 写连续两个通道 D32305:0400 写4个字节
D32306:01** 0001代表正转 运行
D32307:** ****表示设置的变频器频率,是Hex方式的。
程序使用说明: 1 CP1H设置如下
变频器设相同通信格式
2 程序:
1)内置Modbus区域赋值
通信触发:
2)与多台变频器通信: 通讯命令设置:
通讯触发:
通信轮询:由通讯正常完成标志A640.01触发
通信异常处理:
A640.02:若其中一台出现通讯异常处理,触发计数加1进行下一命令通讯
并上A641.02错误标志,并且在串口参数设置超时时间,超时时间可由两次正常标志A641.01ON之间的时间来设置,设置数值大于这个时间
因篇幅问题不能全部显示,请点此查看更多更全内容