通信协议
• 概述
U-7071/7072 智能空调遥控通信协议采用标准 MODBUS-RTU 协议,本协议规定了应用系统中主机与 U-7071/7072 之间在应用层的通信协议。U-7071可遥控 1 台空调,U-7072可控制 2 台空调。
• 通信接口特性
接口类型:异步串行 RS485 通讯口。
通信波特率为:2400、4800、9600bps 可选,出厂默认为 9600bps。
数据传输格式:N, 8,1
说明:上位机与 U-7071/7072通信时间间隔不小于 50ms。
• MODBU RTU 通信协议详述
• 主机发送命令
地址 | 功能码 | 数据起始地址 高位 | 数据起始地址 低位 | 数据个数 高位 | 数据个数 低位 | CRC16 校验 |
1 字节 | 1 字节 | 1 字节 | 1 字节 | 1 字节 | 1 字节 | 2 字节 |
| | | | | | |
• U-7071/7072返回信息
地址 | 功能码 | 字节长度 | 数据 1 | 数据 2 | … | CRC16 校验 |
1 字节 | 1 字节 | 1 字节 | 1 字节 | 1 字节 | | 2 字节 |
| | | | | | |
• 功能码描述
• 04H 功能码:读温湿度
功能代码 | 数据起始地址 | 数据个数 | 内容说明 |
04H | 0000H | 1 | 读温度值 |
0001H | 1 | 读湿度值 |
| | | |
说明:
返回的每一个参数用两个字节有符号整型表示,高位在前,低位在后。
带符号整数范围 -32768~32767,上传数据需除以十,负数用补码表示。
如温度上传 16 进制 0xFF9C,高位为 1,表示负数,表示-10.0℃。
如温度上传 16 进制 0x00FA,对应十进制 250,表示 25.0℃。
如湿度上传 16 进制 0x0258,对应十进制 600,表示 60.0%。
• 05H 功能码:空调遥控
功能代码 | 遥控命令号 | 控制信息 | 发射探头号 | 内容说明 |
05H0 | 0000H 0001H …… 003FH | FFH | 01H: 探头 1 输出 02H: 探头 2 输出 其他:探头 1、2 同时输出 | 每个遥控命令号对应一个自 学习的遥控命令码。 命令发送 成功后,原数据返回上位机。 |
| | | | |
说明:
通过 RS485 接口发送空调遥控前,必须先按照说明书对原空调遥控器进行自学习,把需要通过RS485 进行远程控制的遥控命令自学习到U-7071/7072的储存器中。
• 06H 功能码:控制设置命令组
功能代码 | 寄存器地址 | 数据 | 内容说明 |
06H | 0004H | 01xxH | 使能自启动01(01空调1,02空调2,03空调1和2)+时间xx(单位秒) |
00xxH | 禁止自启动00+时间xx(无效) |
vvint 06H | 0030H | 0100H | 使能温度控制 |
0000H | 禁止温度控制 |
06H | 0032H | xxxxH | 温度控制上下限设置 |
例如:1A14上限(0x1A)26度,下限(0x14)20度 |
06H | 0034H | xxxxH | 遥控通道1开关机命令码设置 |
例如:003FH 00(开机命令号)3F(关机命令号) |
06H | 0036H | xxxxH | 遥控通道2开关机命令码设置 |
例如:003FH 00(开机命令号)3F(关机命令号) |
06H | 0038H | 01xxH | 使能空调轮换01+时间xx(单位小时) |
00xxH | 禁止空调轮换00+时间xx(单位小时) |
06H | 0040H | AABBH | AA红外载波参数及BB发码次数 |
例如:2601H 载波为38K,发码次数为1次(不大于3) |
| | | |
• 08H 功能码:读配置数据
u交08H | 0000H | 0000H | 读取U-7071/7072所有配置数据 |
| | | |
返回见调试案例。
• 调试案例
• 读温湿度数据
• 地址为 1,读温湿度数据
• 主机下发命令:
01 04 0000 0002 71CB (读温湿度)
• 返回:
01 04 04,温度 H,温度 L,湿度 H,湿度 L,CRCL,CRCH。
• 空调遥控功能
• 地址为 1,发送遥控通道号 0 命令
• 主机下发命令:
01 05 0000 FF00 8C3A
• Ø返回:
01 05 0000 FF00 8C3A
• 来电自启动使能硅胶加热膜
• 地址为 1
• 主机下发命令:
01 06 0004 0105 0998 --- 使能来电自启动 --使能自启动01+时间05(单位秒)
01 06 0004 0005 0808 --- 不使能来电自启动--不使能自启动00+时间05(时间无效)
• 返回:
原码返回。
• 温度智能控制使能
• 地址为 1
• Ø主机下发命令:
01 06 0030 0100 8855 --- 使能温度控制
01 06 0030 0000 89C5 --- 不使能温度控制
• Ø返回:
原码返回。
• 温度控制上下限/开关机命令码设置
• 地址为 1
• 温度控制上下限设置
• 主机下发命令:
01 06 0032 1 A(上限)14(下限) 236A --上限(0x1A)26度,下限(0x14)20度
• 返回:
原码返回
• 遥控通道1开关机命令码设置
• 主机下发命令:
01 06 0034 00(开机)3F(关机) 8814
• 返回:
原码返回
• 遥控通道2开关机命令码设置
• 主机下发命令:
01 06 0036 00(开机)3F(关机) 29D4
马蹄去皮机• 返回:
原码返回
• 设置空调轮及换时间
• 地址为 1
• 主机下发命令:
01 06 0038 0106 8995 --- 使能空调轮换--大蒜分瓣脱皮机使能空调轮换01+时间06(单位小时)
01 06 0038 0006 8805 --- 不使能空调轮换--不使能空调轮换00+时间06(时间无效)
• Ø返回:
原码返回。
• 设置空调遥控载波及次数
• 地址为 1
• 主机下发命令:
01 06 0040 2601 53be --- 载波频率38K--红外发码次数1次(发码次数1~3)
• Ø返回:
原码返回。
• 读取U-7071/7072配置参数
• 地址为 1
• 主机下发命令:
01 08 0000 0000 e00b --- 读取配置数据
• Ø返回:
返回码结构:
地址(1字节)+功能码(08H)+温度偏移值(1字节)+湿度偏移值(1字节)+载波频率(1字节)+发射次数(1字节)+通道1开机命令号(1字节)+通道1关机命令号(1字节)+通道2开机命令号(1字节)+通道2关机命令号(1字节)+空调之气轮换控制(1字节)+空调轮换时间(1字节)+空调自启动控制(1字节)+自启动时延(1字节)+空调智能温度控制(1字节)+智能温度控制上限(1字节)+智能温度控制下限(1字节)+CRC校验(2字节)
说明:
温湿度偏移值为实际偏移值×10 范围+125~-125 (即-12.5~+12.5)
空调轮换控制 0x00adsl分离器禁止,0x01使能
来点空调自启动控制 0x00禁止,0x01通道1自启动,0x02通道2自启动,0x03通道一二自启动。
温度控制上下限 即实际温度取整。