TCW-32系列智能精密数显温控仪通讯协议说明(ModBus RTU)
一、功能介绍
TCW-32系列智能精密数显温控仪(以下称下位机或仪表)可配置通讯接口与上位机进行通讯,接口电平符合RS485标准。通讯协议可选择国龙协议或ModBus RTU协议,通讯速率9600bit/s。一个通讯接口最多可接32台仪表,通讯距离最长500米。
二、通讯协议与指令
1、通讯协议选择
仪表二级菜单密码5中参数td设为90时,通讯协议为国龙协议;td设为80时通讯协议为ModBus RTU。
国龙协议请参照《TCW-32系列智能精密数显温控仪使用说明书》。
参数td 通讯协议
80 ModBus RTU
90 国龙协议
2、读指令格式 一条完整的读指令由“地址”、“功能代码”、“起始地址”、“读取字个数”和“校验码CRC16”
组成(H高字节,L低字节)。
上位机发送指令格式为:
地址 + 功能代码 + 起始地址 + 读取字个数 + 校验码CRC16
单字节 单字节 2字节(H+L) 2字节(H+L) 2字节(L+H)
① ② ③ ④ ⑤
① 仪表地址与地址指令(单字节)
工作中,通常一个通讯接口上连有多台仪表,为了方便区分,需将每台仪表进行独立编号,约定称
下位机号,设定范围0-99。
如某下位机号b(b在仪表的二级菜单中)=11(16进制为0BH),
该下位机的地址指令为: 0BH
② 功能代码(单字节)
读参数指令代码为:03H
③ 起始地址 2字节(H+L)
读取内容不同,起始地址编号不同,具体见参数代号表,如读取当前实际温度,则起始地址为:00H。
④ 读取字个数 2字节(H+L)
读取参数个数决定读取字个数, 如只读取当前实际温度,则读取字个数为:01H;如同时读取“实
际温度、输出功率、设定温度”三个参数,则读取字个数为:03H
⑤ 校验码(CRC16) 2字节(L+H)
根据发送的内容进行CRC16计算,计算的结果作为校验码发送,发送校验码的格式为(L+H)低字 节在前,高字节在后。注:将发送指令中除校验码之外的所有参数进行CRC16计算,得到CRC校
验码,放在发送指令最后面。
下位机返回数据格式为:
地址 + 功能代码 + 读取字节个数 + 读取的数据 + 校验码CRC16 单字节 单字节 单字节 (H+L···H+L) 2字节(L+H)
① ② ③ ④ ⑤
① 地址(单字节)
下位机机号,与发送指令中的地址相同。
② 功能代码(单字节)
与发送指令中的功能代码相同。
③ 读取字节个数(单字节)
所读取数据的字节个数,是发送指令中读取字个数的两倍,如发送指令中读取字个数为03H, 则下位机返回的读取字节个数为06H。
④ 读取的数据
上位机不同的读取内容,下位机返回不同的读取数据。
⑤ 校验码CRC16
下位机根据发送内容经过CRC16计算出的校验码,用于上位机纠错。校验码的格式为(L+H)低 字节在前,高字节在后。
注:下位机将发送指令中除校验码之外的所有参数进行CRC16计算,得到CRC校验码,放在发送
指令最后面。
例:要读取11号机(TCW-32A型仪表)当前测量温度,
上位发送指令为:0BH + 03H + 00H 00H + 00H 01H + 33H C0H
地址 + 功能代码 + 起始地址 + 读取字个数 + 校验码CRC16
0BH 03H 00H 00H 00H 01H 33H C0H
下位机返回的数据位(如测量温度为200度):0BH + 03H + 02H + 00H C8H + 21H D3H
地址 + 功能代码 + 读取字节个数 + 读取的数据 + 校验码CRC16
0BH 03H 02H 00H C8H 21H D3H
“校验码CRC16”组成。
上位机发送指令格式为:
地址 + 功能代码 + 起始地址 + 要写入的数据 + 校验码CRC16
单字节 单字节 2字节(H+L) 2字节(H+L) 2字节(L+H)
① ② ③ ④ ⑤
① 地址(单字节)
下位机机号。
② 功能代码(单字节)
单字写指令代码为:06H。
③ 起始地址 2字节(H+L)
根据写的参数不同,起始地址代码不同,具体见参数代号表。
④ 要写入的数据 2字节(H+L)
所写参数的具体内容。
⑤ 校验码(CRC16) 2字节(L+H)
根据发送的内容进行CRC16计算,计算的结果作为校验码发送,发送校验码的格式为(L+H)低 字节在前,高字节在后。
下位机返回的数据格式为:
地址 + 功能代码 + 起始地址 + 写入的数据 + 校验码CRC16 单字节 单字节 2字节(H+L) 2字节(H+L) 2字节(L+H)
① ② ③ ④ ⑤
例:要将3号机(TCW-32A型仪表)设定值修改为180度(16进制为B4H),
上位发送指令为:03H + 06H + 00H 02H + 00H B4H + 29H 9FH
地址 + 功能代码 + 起始地址 + 要写入的数据 + 校验码CRC16
03H 06H 00H 02H 00H B4H 29H 9FH
下位机返回的数据为:03H + 06H + 00H 02H + 00H B4H + 29H 9FH
地址 + 功能代码 + 起始地址 + 写入的数据 + 校验码CRC16
03H 06H 00H 02H 00H B4H 29H 9FH