UART转4-20mA Modbus协议手册

需积分: 9 1 下载量 74 浏览量 更新于2024-09-07 收藏 200KB PDF 举报
"UartTo4_20mA_Modbus版用户使用手册提供了关于通用型UART转4-20mA模块的详细操作指南,该模块能够将Modbus协议的输入转换为对应的4-20mA电流信号,适用于工业自动化领域的信号传输。手册中包含了模块的通讯参数、Modbus RTU协议的读写说明以及CRC16校验函数的参考。" 在了解这个模块之前,首先要理解4-20mA电流环通信标准。这是一种在工业自动化中广泛应用的模拟信号传输方式,4mA代表最小值,20mA代表最大值,用于表示各种传感器或控制器的测量值或控制指令。 该模块基于EFM8BB微控制器,通过UART(通用异步收发传输器)接口与主机设备进行通信,支持Modbus RTU协议。Modbus是一种串行通信协议,允许设备之间交换数据,特别适合于工业控制系统。在这里,模块作为从机,主机可以是PLC、工控机或其他支持Modbus的设备。 模块的默认配置如下: - 地址:0x06 - 波特率:2400bps - 校验位:无 - 数据位:8位 - 停止位:1位 - DA模式:10位,其中0对应4mA,1024对应20mA。出厂时,4mA和20mA电流已进行校准。 Modbus协议的读写说明如下: 1. 数据转换命令(写入): 功能码06用于预置单个寄存器。例如,要写入地址40001的寄存器,主机需发送以下命令: 06 06 9C 40 0f 01 crchih crclo 其中,06是模块地址,06是预置单个寄存器功能码,0000是寄存器地址,01F1是要写入的值,crchih和crclo是CRC16校验高字节和低字节。模块会返回同样的数据,确认写入成功。 2. 读转换寄存器内的当前值(读取): 功能码03用于读取保持寄存器。例如,要读取地址40001的寄存器,主机需发送: 06 03 00 00 00 01 crchih crclo 模块会返回读取的寄存器值,如: 06 03 02 00 21 crchih crclo 其中,02表示返回的数据个数,0021是读取的寄存器值。 CRC16校验是确保数据完整性和正确性的关键部分。手册提供了一个CRC16校验函数的字节数组参考,用于计算和验证数据帧的完整性。 UartTo4_20mA_Modbus模块通过UART与主机设备进行Modbus RTU通信,实现数字信号到模拟信号(4-20mA)的转换。这使得它能够轻松集成到现有系统中,进行高效且可靠的模拟信号传输。通过理解和应用手册中的信息,用户可以正确配置和控制该模块,以满足特定的应用需求。