|
|
| Line 1: |
Line 1: |
| XMT63X 系列仪表通讯协议
| | |
| 通讯速度:1200,2400,4800,9600bps
| |
| 停止位:1
| |
| 数据位:8
| |
| 奇偶校验:无
| |
| 功能代码03:读参数值
| |
| 功能代码10:写参数值
| |
| 功能代码01:读仪表状态位(SV、A/M、R/D、设置、异常、AL2、AL1、AT)(此功能代码为读仪表状态位专用功能代码)
| |
| 功能代码05:改变仪表控制方式(将A/M 置0 或1,将AT 置0)(此功能代码为改变仪表控制方式专用功能代码)
| |
| 1、RTU 帧结构
| |
| 消息发送至少要以3.5 个字符时间的停顿间隔开始;整个消息帧必须作为一连续的流转输,如果在帧完成之前有超过3.5 个字符时间的
| |
| 停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。同样地,如果一个新消息在小于3.5 个字符时间内接着前
| |
| 个消息开始,接收的设备将认为它是前一消息的延续。
| |
| 一帖信息的标准结构如下所示:
| |
| 开始地址域功能域数据域CRC 校验结束
| |
| T1-T2-T3-T4 8Bit 8Bit n 个8Bit 16Bit T1-T2-T3-T4
| |
| 地址域: 主机通过将要联络的从机的地址放入消息中的地址域来选通从设备,单个从机的地址范围是1…64(十进制)。
| |
| 地址0 是用作广播地址,以使所有的从机都能认识。
| |
| 功能域:有效的编码范围是1…64(十进制);当消息从主机发往从机时,功能代码域将告之从机需要去干什么。例如:读/写一组寄存器的数
| |
| 据内容,读从机的诊断状态,允许调入、记录、校验在从机中的程序等。
| |
| 数据域:主机发给从机的数据域中包含了从机完成功能域的动作时所必要的附加信息;如:寄存器地址、实际的字节数等。
| |
| CRC 校验:CRC 生成之后,低字节在前,高字节在后。
| |
| 2、XMT63X 系列仪表参数集
| |
| 1)动态参数集
| |
| 编地址
| |
| 号
| |
| 参数符号参数名称
| |
| 高位低位
| |
| 类型数值范围备注
| |
| 1 PV+SV+OUT
| |
| 测量值(4 字节)+动态设定值(4
| |
| 字节)+输出值(4 字节)
| |
| 01H 64H 读
| |
| 2 A/M A/M:手/自动状态标志00H 01H
| |
| 写(用功能
| |
| 代码05)
| |
| FF,00
| |
| 00,00
| |
| 位
| |
| 3 Pr+ t
| |
| 曲线段号(单字节)+当前段剩余
| |
| 时间(双字节) 01 H 90 H 读0-(63+9999)
| |
| 4 NAT NAT:取消AT 状态标志00H 00H
| |
| 写(用功能
| |
| 代码05)
| |
| 00,00 位
| |
| 2)静态参数集
| |
| 编
| |
| 号
| |
| 参数符号参数名称
| |
| 低位
| |
| 地址
| |
| 小数点类型数值范围字节数
| |
| 1 Sv:设定值0000H DOT 读/写-1999-9999 4
| |
| 2 AL1:第一报警值0001H DOT 读/写-1999-9999 4
| |
| 3 AL2:第二报警值0002H DOT 读/写-1999-9999 4
| |
| 4 At:自整定0003H 0 读/写0-1 4
| |
| 5 ALIy:第一报警类型1000H 0 读/写0-6 ;10-16 4
| |
| 6 ALIC:第一报警回差值1001H DOT 读/写0-9999 4
| |
| 7 AL2y:第二报警类型1002H 0 读/写0-6 ;10-16 4
| |
| 8 AL2C:第二报警回差值1003H DOT 读/写0-9999 4
| |
| 9 P:比例带1004H 1 读/写0.1-300.0 4
| |
| 10 I:积分时间1005H 0 读/写0-2000 4
| |
| 11 d:微分时间1006H 0 读/写0-1000 4
| |
| 12 ct:控制周期1007H 0 读/写0-100 4
| |
| 13 SF:超调抑制系数1008H 1 读/写0-9999 4
| |
| 14 Pd:微分限幅1009H 1 读/写0.1-0.9 4
| |
| 15 bb:PID 工作范围100AH 0 读/写0-9999 4
| |
| 16 OUTL:控制输出下限幅100BH 1 读/写0.0-100.0 4
| |
| 17 OUTH:控制输出上限幅100CH 1 读/写0.0-100.0 4
| |
| 18 nout:输入异常时的输出值100DH 0 读/写0-100 4
| |
| 19
| |
| PSb:在线变送器/传感器零位误
| |
| 差修正
| |
| 100EH DOT 读/写-1999-9999 4
| |
| 20 FILt:数字滤波系数100FH 0 读/写0-3 4
| |
| P1 P1 第一组P 3000H 1 读/写0.1~300.0 4
| |
| I1 I1 第一组I 3001H 0 读/写0~2000 4
| |
| D1 d1 第一组D 3002H 0 读/写0~1000 4
| |
| … … …… …… …… …… ……
| |
| P9 P9 第九组P 3018H 1 读/写0.1~300.0 4
| |
| I9 I9 第九组I 3019H 0 读/写0~2000 4
| |
| D9 d9 第九组D 301AH 0 读/写0~1000 4
| |
| C 01 C-01 第1 段选择PID 组4000H 0 读/写0-9 4
| |
| T 01 t-01 第1 段执行时间4001H 0 读/写-64~9999 4
| |
| SV01 Su01 第1 段终点目标值4002H DOT 读/写-1999~9999 4
| |
| …… …… …… …… …… ……
| |
| C 64 C-64 第64 段选择PID 组40BDH 0 读/写0-9 4
| |
| T 64 t-64 第64 段执行时间40BEH 0 读/写-64~9999 4
| |
| SV64 Su64 第64 段终点目标值40BFH DOT 读/写-1999~9999 4
| |
| 21 Inty:输入类型2000H 0 读/写00-18(注1) 4
| |
| 22 PVL:显示量程下限2001H DOT 读/写-1999-9999 4
| |
| 23 PVH:显示量程上限2002H DOT 读/写-1999-9999 4
| |
| 24 dot:小数点2003H 0 读/写0-3 4
| |
| 25
| |
| rd 正反作用:1:正作用;0:反
| |
| 作用
| |
| 2004H 0 读/写0-1 4
| |
| 26 obty 变送输出方式2005H 0 读/写0-2(注2) 4
| |
| 27 ObL:变送下限2006H DOT 读/写-1999-9999 4
| |
| 28 ObL:变送上限2007H DOT 读/写-1999-9999 4
| |
| 29 oAty:PID 输出方式2008H 0 读/写0-100(注3) 4
| |
| 30
| |
| EL:开方:0:无开方功能;1:
| |
| 有开方功能
| |
| 2009H 0 读/写0-1 4
| |
| 31
| |
| SS:小信号切除0:无作用;
| |
| 1~100%
| |
| 200AH 0 读/写0-100 4
| |
| 32 rES:上电缓启动200BH 0 读/写0-120 4
| |
| 33 uP uP:掉电事件处理200CH 0 读/写0、1 4
| |
| 34
| |
| ModL ModL:工作模式
| |
| 200DH 0 读/写
| |
| 0:SV;
| |
| 1:S-SV;2:M-SV
| |
| 3:S-PV;4:M-PV
| |
| 4
| |
| 35 PrL PrL:起始曲线段200EH 0 读/写1-63 4
| |
| 36 PrH PrH:终止曲线段200FH 0 读/写2-64 4
| |
| 37 ID Id:通讯地址2010H 0 读1-64 4
| |
| 38 bAud:波特率2011H 0 读0-4 4
| |
| 注1:上位机在修改和察看Inty(输入类型)时,通讯数据与实际输入信号之间的对应关系如下表:
| |
| 通讯数据00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18
| |
| 对应的
| |
| 输入信号
| |
| T R J
| |
| Wre3-
| |
| Wre5
| |
| B S K E Pt100 Cu50 0-375Ω 0-80mV 0-30mV 0-5V 1-5V 0-10V 0-10mA 0-20mA 4-20mA
| |
| 如读Inty,仪表返回的数是“08”,则表示此时仪表的输入类型是“Pt100”;如此时需要将“Pt100”改成“K”,则只需将仪表的“Inty”写
| |
| 成“06”即可,那么仪表收到指令后将会把Inty(输入类型)改成“K”。数据格式在后面会有详细说明。
| |
| 注2:上位机在修改和察看obty(变送输出方式)时,通讯数据与实际变送输出之间的对应关系如下表:
| |
| 通讯数据00 01 02
| |
| 对应的
| |
| 变送输出方式
| |
| 0-10mA 4-20mA 0-20mA
| |
| 如读obty,仪表返回的数是“00”,则表示此时仪表变送输出方式是“0-10mA”;如此时需要将“0-10mA”改成“0-20mA”,则只需将仪表
| |
| 的“obty”写成“02”即可,那么仪表收到指令后将会把obty(变送输出方式)改成“0-20mA”。数据格式在后面会有详细说明。
| |
| 注3:上位机在修改和察看oAty(PID 输出方式)时,通讯数据与实际输出方式之间的对应关系如下表:
| |
| 通讯数据00 01 02 3~100
| |
| 对应的
| |
| 输出方式
| |
| 0-10mA 4-20mA 0-20mA 时间比例周期
| |
| 如读oAty,仪表返回的数是“00”,则表示此时仪表PID 输出方式是“0-10mA”;如此时需要将“0-10mA”改成“5(S)”的时间比例,则
| |
| 只需将仪表的“oAty”写成“05”即可,那么仪表收到指令后将会把oAty(输出方式)改成“5(S)”。将数据格式在后面会有详细说明。
| |
| 3、功能代码应用举例
| |
| 1)03:读参数值,如读测量值PV
| |
| 主机发送
| |
| 地址代码地址字数CRC16
| |
| 高位低位高位低位L 位H 位
| |
| 05 03
| |
| 01 64 00 02 85 AC
| |
| 从机应答
| |
| 地址代码数据字节长度数据CRC16
| |
| 05 03 04 13 88 00 01 FA 9D
| |
| 注:4 个字节表示一个数据,前两位表示数值,后两位表示小数点13880001 表示500.0。
| |
| 如读Inty(输入类型):
| |
| 主机发送
| |
| 地址代码地址字数CRC16
| |
| 高位低位高位低位L 位H 位
| |
| 05 03
| |
| 20 00 00 02 CE 4F
| |
| 从机应答
| |
| 地址代码数据字节长度数据CRC16
| |
| 05 03 02 00 06 00 00 5F F2
| |
| 仪表返回的数据是“06”,参考下表:通讯数据与实际输入信号之间的对应关系,得知此时仪表的Inty(输入类型)是06=K
| |
| 通讯数据00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18
| |
| 对应的
| |
| 输入信号
| |
| T R J
| |
| Wre3-
| |
| Wre5
| |
| B S K E Pt100 Cu50 0-375Ω 0-80mV 0-30mV 0-5V 1-5V 0-10V 0-10mA 0-20mA 4-20mA
| |
| 2)10:写参数值,如写OUT 控制输出值: 写入50.0=01F400001
| |
| 主机发送
| |
| 地址代码地址数目值CRC16
| |
| 05 10 高位低位字字节
| |
| 01 6C 00 02 04
| |
| 01 F4 00 01 6CBC
| |
| 从机应答
| |
| 地址代码地址字数CRC16
| |
| 05 10 01 6C 00 02 81 AD
| |
| 如写Inty(输入类型): 将原来的“Pt100”改成“K”,则需参考下表:通讯数据与实际输入信号之间的对应关系
| |
| 通讯数据00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18
| |
| 对应的
| |
| 输入信号
| |
| T R J
| |
| Wre3-
| |
| Wre5
| |
| B S K E Pt100 Cu50 0-375Ω 0-80mV 0-30mV 0-5V 1-5V 0-10V 0-10mA 0-20mA 4-20mA
| |
| 根据查表得知“K”对应的通讯数据是“06”,则只需将下表的“值”写成“00060000”即可,具体格式如下:
| |
| 主机发送
| |
| 地址代码地址数目值CRC16
| |
| 05 10 高位低位字字节
| |
| 20 00 00 02 04
| |
| 00 06 00 00 9F5F
| |
| 从机应答
| |
| 地址代码地址字数CRC16
| |
| 05 10 20 00 00 02 4B 8C
| |
| 那么仪表收到指令后将会把Inty(输入类型)改成“K”。
| |
| 3)05:改变仪表控制方式,将A/M 置1:手动控制;将A/M 置0:自动控制;将AT 置0:取消自
| |
| 整定,具体格式如下:
| |
| 将A/M 置0:自动控制
| |
| 主机发送
| |
| 地址代码位地址字CRC16
| |
| 高位低位
| |
| 05 05
| |
| 00 01
| |
| FF 00 DC7E
| |
| 从机应答
| |
| 地址代码位地址CRC16
| |
| 高位低位
| |
| 05 05
| |
| 00 01
| |
| D129
| |
| 将A/M 置1:手动控制;
| |
| 主机发送
| |
| 地址代码位地址字CRC16
| |
| 05 05 高位低位
| |
| 00 01
| |
| 00 00
| |
| 9D 8E
| |
| 从机应答
| |
| 地址代码位地址CRC16
| |
| 05 05 高位低位
| |
| 00 01
| |
| D129
| |
| 将AT 置0:取消自整定(AT 只能在仪表现场修改,上位机只能取消“AT”,以防止误操作)
| |
| 主机发送
| |
| 地址代码位地址字CRC16
| |
| 05 05 高位低位
| |
| 00 00
| |
| 00 00
| |
| CC4E
| |
| 从机应答
| |
| 地址代码位地址CRC16
| |
| 05 05 高位低位
| |
| 00 00
| |
| 10E9
| |
| 4)01:读仪表状态位(SV、A/M、R/D、设置、异常、AL2、AL1、AT):
| |
| 主机发送
| |
| 地址代码位地址(映射) 位数CRC16
| |
| 05 01 高位低位高位低位L 位H 位
| |
| 00 00 00 08 3C 48
| |
| 从机应答
| |
| 地址代码字节数数据CRC16
| |
| 05 01 01 03 FE 43
| |
| 03:即00000011,表示SV=1,A/M=1
| |
| 数据表示:
| |
| AT AL2 AL1 异常设置热/冷A/M SV
| |
| D7 D6 D5 D4 D3 D2 D1 D0
| |
| SV:当D0=1 时,从机正在修改SV 动态值,禁止写A/M,AT 两项操作。
| |
| A/M:当D1=1 时,从机为手动控制状态,禁止写AT,SV 两项操作。
| |
| 当D1=0 时,从机为自动控制状态
| |
| R/D:当D2=0 时,从机为加热控制
| |
| 当D2=1 时,从机为制冷控制
| |
| 设置:当D3=1 时,从机为静态参数设置状态,禁止所有写操作。
| |
| 当D3=0 时,从机为实时测量状态。
| |
| 异常:当D4=1 时,从机测量为异常状态
| |
| 当D4=0 时,从机测量为正常状态
| |
| AL2:当D6=1 时,从机AL2 项有报警事件发生。
| |
| 当D6=1 时,从机AL2 项无报警事件发生。
| |
| AL1:当D5=1 时,从机AL1 项有报警事件发生。
| |
| 当D5=0 时,从机AL1 项无报警事件发生。
| |
| AT: 当D7=1 时,从机为自整定控制状态,除了操作取消AT 自整状态命令,禁止所有写操作
| |
| 当D7=0 时,从机为PID 控制状态。
| |
| 注:采用RS-485 接口通讯时,配置终端匹配电阻:
| |
| 在长线信号传输时,一般为了避免信号的反射和回波,需要在线缆的两个终端接入终端阻容吸收。
| |
| 其终端匹配电阻值取决于电缆的阻抗特性,与电缆的长度无关。RS-485 一般采用双绞线(屏蔽或非
| |
| 屏蔽)连接,终端电阻一般介于100 至140Ω之间,典型值为120*;电容通常采用0.1uF(104)。在
| |
| 实际配置时,PLC 或PC 上位机电脑接在电缆的一端,线缆两个终端节点上,即最近端和最远端,各
| |
| 接入一个终端阻容吸收,而处于中间部分的节点则不能接入阻容吸收,否则将导致通讯出错。
| |