无刷电机驱动器Modbus 通讯协议及寄存器说明

无刷电机驱动器Modbus 通讯协议及寄存器说明缩略图
本文目录
  1. 1. 1. 通讯协议
  2. 2. 1.1 通讯参数
  3. 3. 1.2 MODBUS-RTU 帧格式
  4. 4. 2. 标准寄存器定义
  5. 5. 2.1 设备描述信息寄存器
  6. 6. 2.3  电机控制寄存器
  7. 7. 2.4  电机参数配置寄存器
  8. 8. 2.5 系统参数配置寄存器
  9. 9. 2.6 PID 参数配置寄存器
  10. 10. 3.CRC16 的计算
无刷电机驱动器Modbus 通讯协议及寄存器说明插图

1. 通讯协议

本驱动器使用 MODBUS-RTU(国标 GB/T19582-2008)通讯协议进行通讯, 支持一台主站控制多个从站(即驱动器),支持最多 255 个从站,支持通讯广播(从站地址为 0 视为广播帧),主站可以是单片机、PLC 或 PC 机等。

1.1 通讯参数

默认通讯参数:

  • > 波特率固定为 9600bps。
  • > 数据位为 8 位。
  • > 校验为“无+1 停止位”。
  • > 从站地址固定为 1。 用户自定义通讯参数:
  • > 波特率可配置范围 9600-115200bps。
  • > 数据位固定为 8 位。
  • > 校验方式可配置为: “偶+1 停止位”、“奇+1 停止位”和“无+2 停止位”。
  • > 从站地址可设置范围 1~255。

当数据帧通信中断超过 4 个字节的打包时间判定为帧接收超时。当发生帧超时的时候,之前接收到的数据将被 视为无效。

1.2 MODBUS-RTU 帧格式

本驱动器支持 MODBUS 的 0x03(读保持寄存器)、0x06(写单个寄存器)和 0x10(写多个寄存器)功能码。

1.2.1 0x03 读保持寄存器

主站发送:

字节12345678
内容ADR0x03起始寄存器 高字节起始寄存器 低字节寄存器数高字节寄存器数 低字节CRC 低字节CRC  高字节

第 1 字节 ADR: 从站地址码(=001~254)。

第 2 字节 0x03: 读寄存器值功能码。

第 3、4 字节: 要读的寄存器开始地址。

第 5、6 字节: 要读的寄存器数量。

第 7、8 字节: 从字节 1 到 6 的 CRC16 校验码 。

从站回送:

字节1234 56 7M-1MM+1M+2
内容ADR0x03字节总数寄存器 数据 1寄存器 数据 2寄存器数据 MCRC 低字节CRC 高 字节

第 1 字节 ADR: 从站地址码(=001~254)。

第 2 字节 0x03: 返回读功能码。

第 3 字节:从 4 到 M(包括 4 及 M)的字节总数。

第 4 到 M 字节:  寄存器数据。

第 M+1、M+2 字节: 从字节 1 到 M 的 CRC16 校验码。

当从站接收错误时, 从站回送:

字节12345
内容ADR0x83异常码CRC 低字节CRC 高字节

第 1 字节 第 2 字节 第 3 字节

ADR: 从站地址码(=001~254)。

0x83: 读寄存器值出错。

异常码: 见表 1.1

第 4、5 字节: 从字节 1 到 3 的 CRC16 校验码。

1.2.2 0x06 写单个寄存器

主站发送:

字节12345678
内容ADR0x06寄存器高 字节地址寄存器低 字节地址数据高字节数据低字节CRC 码低字节CRC 码高字节

当从站接收正确时, 从站回送:

字节12345678
内容ADR0x06寄存器高 字节地址寄存器低 字节地址数据高字节数据低字节CRC 码低字节CRC 码高字节

当从站接收错误时, 从站回送:

字节12345
内容ADR0x86异常码CRC 低字节CRC 高字节

第 1 字节 第 2 字节 第 3 字节

ADR: 从站地址码(=001~254)。

0x86: 写寄存器值出错功能码。

异常码: 见表 1.1

第 4、5 字节: 从字节 1 到 3 的 CRC16 校验码。

1.2.3 0x10 写多个寄存器值

主站发送:

字节1234567
内容ADR0x10起始寄存器 高字节地址起始寄存器 低字节地址寄存器数 量高字节寄存器数 量低字节数据字 节总数
字节8,910,11N,N+1N+2N+3
内容寄存器数据 1寄存器数据 2寄存器数据 MCRC 码低字节CRC 码高字节

当从站接收正确时, 从站回送:

字节12345678
内容ADR0x10寄存器高 字节地址寄存器低 字节地址寄存器数 量高字节寄存器数 量低字节CRC 码低字节CRC 码高字节

当从站接收错误时,从站回送:

字节12345
内容ADR0x90异常码CRC 低字节CRC 高字节

第 1 字节 第 2 字节 第 3 字节

ADR: 0x90:  异常码:

从站地址码(=001~254)。

写寄存器值出错。

见表 1.1

第 4、5 字节: 从字节 1 到 3 的 CRC16 校验码。

1.2.4 错误异常码

MODBUS 异常码 :如表 1.1 

表 1. 1 MODBUS 异常码表

异常码含义
0x01非法功能码
0x02非法数据地址
0x03非法数据值
0x04从站设备故障
0x05请求已被确认,但需要较长时间来处理请求
0x06从设备忙
0x08存储奇偶性差错
0x0A不可用的网关
0x0B网关目标设备响应失败

2. 标准寄存器定义

2.1 设备描述信息寄存器

设备描述信息寄存器如表 2.1 示。

表 2. 1 设备描述信息寄存器

寄存器地址描述取值范围支持功能码备注
0x0000 (0)设备标识号 0x03每个型号都有对应的设备标识号
0x0001 (1)设备版本 0x03高字节为主版本号,低字节为副版本号
0x0002 (2)最大电流 0x03数值乘以0.01为电流值,单位为A
 0x0003~0x0007(3)~(7) 保留  0x03  

2.2 实时状态寄存器

实时状态寄存器如表 2.2 示。

表 2.2 实时状态寄存器

寄存器地址描述取值范围支持功能码备注
0x0008 (8)实时电流0~655350x03数值乘以 0.01 为电流值,单位为 A
0x0009 (9)实时速度之高半字 -110000~110000 0x03 实时转速,单位为 RPM
0x000A (10)实时速度之低半字
        0x000B (11)        错误状态         0~13         0x030 无错误1:堵转停机2:相序未学习3:相位异常4:相线过流5:母线过流6:电压过高7:电压过低,8:相位学习异常9:过载异常10:485 通信中断11:CAN 通讯中断12:母线电压过高13:温度过高,14:无感启动失败15:相电流异常
0x000C (12)内部电位器电压0~33000x03单位为 mV
0x000D (13)外部信号电压0~100000x03单位为 mV
0x000E (14)保留   
0x000F (15)保留   
 0x0010 (16) 使能电平 0,1 0x030:低电平1:高电平
 0x0011 (17) 刹车电平 0,1 0x030:低电平1:高电平
 0x0012 (18) 方向电平 0,1 0x030:低电平1:高电平
                        0x0013 (19)   控制模式                 0x07,0x09,0x19,0x01,0x11,0x0a,0x1a,0x02,0x12,0x0b,0x1b,0x03,0x13,0x0c,0x1c,0x04,0x14,0x0d,0x1d,0x05,0x15,0x08,0x18,0x00,0x10,0x030-4 位中从低到高定义:①第 4 位表示无感 0 或有感 1,②第 3 位表示开环 0 或闭环 1,③第 0-2 位表示模式:相序学习(111),通讯控制(000),内部电位器(001),模拟量(010),PWM(011),航模 PWM(100),摇杆(101)④取值意义:0x07:相序学习, 0x09:无感/闭环/内部电位器控制,0x19:有感/闭环/内部电位器控制,0x01:无感/开环/内部电位器控制,0x11:有感/开环/内部电位器控制, 0x0a:无感/闭环/模拟量控制,0x1a:有感/闭环/模拟量控制,0x02:无感/开环/模拟量控制,0x12:有感/开环/模拟量控制, 0x0b:无感/闭环/PWM 控制,0x1b:有感/闭环/PWM 控制,0x03:无感/开环/PWM 控制,0x13:有感/开环/PWM 控制, 0x0c:无感/闭环/航模 PWM 控制,0x1c:有感/闭环/航模 PWM 控制,0x04:无感/开环/航模 PWM 控制,0x14:有感/开环/航模 PWM 控制, 0x0d:无感/闭环/摇杆控制,0x1d:有感/闭环/摇杆控制,0x05:无感/开环/摇杆控制,0x15:有感/开环/摇杆控制, 0x08:无感/闭环/通讯控制,0x18:有感/闭环/通讯控制,0x00:无感/开环/通讯控制,0x10:有感/开环/通讯控制,
0x0014(20)负载率0~10000x03数值乘以 0.1%为 PWM 百分比,单位为‰
0x0015(21)输入 PWM 占空比0~10000x03数值乘以 0.1%为输入 PWM 占空比,单位为‰
0x0016(22)电压0~1000x03电源电压,单位为 V
0x0017(23)温度-200~2000x03电路板温度,单位为℃
0x0018(24)保留   

2.3  电机控制寄存器

电机控制寄存器如表 2.3 示。

表 2.3 电机控制寄存器

寄存器地址描述取值范围支持功能码备注
 0x0020 (32) 停止 0, 1, 2 0x03 0x060:正常停止1:紧急制动2:自由停止
0x0021 (33)设定目标参数之高半字闭环:-最高转速~ 最高转速开环:-1000~1000  0x03 0x06 0x10当速度控制为闭环,代表速度,则单位为 RPM;当速度控制为开环,代表 PWM,数值乘以 0.1%为 PWM 百分比。正数表示正转,负数表示反转, 0 正常停止
0x0022 (34)设定目标参数之低半字
 0x0023 (35) 测试控制 0, 1 0x03 0x060:取消测试,1:相序学习
 0x0024 (36) 输出控制 0, 1 0x03 0x060:输出低电平1:输出高电平
0x0025~0x27(37)~ (39) 保留   

2.4  电机参数配置寄存器

电机参数配置寄存器如表 2.4 示。

表 2.4 电机参数配置寄存器

寄存器地址描述取值范围支持功能码备注
0x0028 (40)电机额定电流0~15000x03 0x06 0x10数值乘以 0.01 为电流值, 单位为 A
0x0029 (41)电机最大转速之高半字 0~110000 0x03 0x06 0x10 单位为 RPM
0x002A (42)电机最大转速之低半字
0x002B (43)电机最小转速之高半字 0~110000 0x03 0x06 0x10单位为 RPM,一般设置在 200RPM 以下
0x002C (44)电机最小转速之低半字
 0x002D (45)电机极对数 0~65535 0x03 0x06 0x10定子南北磁极对数,是磁 极的一半
 0x002E (46) 电机 1 、2 相相序数据高字节为 0~6低字节为 0~6 0x03 0x06 0x10低字节为 1 相高字节为 2 相
 0x002F (47) 电机 3 、4 相相序数据高字节为 0~6低字节为 0~6 0x03 0x06 0x10低字节为 3 相高字节为 4 相
 0x0030 (48) 电机 4 、6 相相序数据高字节为 0~6低字节为 0~6 0x03 0x06 0x10低字节为 4 相高字节为 6 相
 0x0031 (49) 相序学习状态 0,1 0x03 0x06 0x100:未学习1:已经学习
   0x0032 (50)   无感启动负载大小   0~4   0x03 0x06 0x100:轻载1:中载2:重载3:小惯性负载4:大惯性负载
0x0033 (51)闭环速度加速加速度100~最大速度0x03 0x06 0x10单位为 RPM/S
0x0034 (52)闭环速度减速加速度100~最大速度0x03 0x06 0x10单位为 RPM/S
0x0035 (53)开环速度加速加速度4~5000x03 0x06 0x10单位为%/S
0x0036 (54)开环速度减速加速度4~5000x03 0x06 0x10单位为%/S
 0x0037 (55) 停止模式 0, 1, 2 0x03 0x06 0x100:正常停止1:紧急制动2:自由停止
 0x0038 (56) 自动换向模式 0, 1, 2 0x03 0x06 0x100:正常换向1:急停换向
 0x0039 (57) 停机锁相电流 0~1500 0x03 0x06 0x100:不停机锁相其他数值:数值乘以 0.01 为电流值,单位为 A
0x003A~0x 3F(58)~ (63) 保留   

2.5 系统参数配置寄存器

系统参数配置寄存器如表 2.5 示。

表 2.5 系统参数配置寄存器

寄存器地址描述取值范围支持功能码备注
0x0040 (64)堵转停机时间0~666350x03 0x06 0x10单位为 mS
0x0041 (65)保护关断电流0~42000x03 0x06 0x10数值乘以 0.01 为电流值, 单位为 A
0x0042 (66)内部电位器控制阈值最大值0~33000x03 0x06 0x10单位为 mV
0x0043 (67)内部电位器控制阈值最小值0~33000x03 0x06 0x10单位为 mV
0x0044 (68)外部输入控制阈值最大值0~100000x03 0x06 0x10单位为 mV
0x0045(69)外部输入控制阈值最小值0~100000x03 0x06 0x10单位为 mV
0x0046 (70)保护电压阈值最大值(过压保护 电压)8~560x03 0x06 0x10 保护电压范围,单位为 V
0x0047 (71)保护电压阈值最小值(欠压保护 电压)8~560x03 0x06 0x10
 0x0048 (72)电压保护设置 0,1 0x03 0x06 0x100:不保护1:电压保护
   0x0049(73)   输出类型   0,1,2,3,4,5   0x03 0x06 0x100:不输出(即输出低电 平)1:长输出2:报警信号输出3:FG 反馈信号输出4:停机信号输出5:通讯控制

2.6 PID 参数配置寄存器

闭环控制 PID参数配置寄存器如表 2.6 示。

表 2.6 闭环控制 PID 参数配置寄存器

寄存器地址描述取值范围支持功能码备注
0x004A (74)速度闭环 P 系数高半字 建议 1~327680 0x03 0x10 数值除以 32768 为实际值
0x004B (75)速度闭环 P 系数低半字
0x004C (76)速度闭环 I 系数高半字 建议 1~326780 0x03 0x10 数值除以 32768 为实际值
0x004D (77)速度闭环 I 系数低半字
0x004E (78)速度闭环 D 系数高半字 建议 1~326780 0x03 0x10 数值除以 32768 为实际值
0x004F (79)速度闭环 D 系数低半字

2.7 通讯参数配置寄存器

通讯参数配置寄存器如表 2.6 示。

表 2.7 通讯参数配置寄存器

寄存器地址描述取值范围支持功能码备注
0x0050 (80)485通讯中断制动时间0~666350x03 0x060x10单位为 S
0x0051 (81)485通讯设备地址0~2550x03 0x060x10Modbus 从设备地址
    0x0052 (82)    485通讯串口波特率    0~4   0x03 0x060x100:96001:192002:384003:576004: 115200单位为 bps
  0x0053 (83)  485 通讯串口检验方式  0~3  0x03 0x060x100:无+停止位1:偶+1 停止位2:奇+1 停止位3:无+2 停止位
0x0054(84)~0 x0059 (89)保留   

3.CRC16 的计算

C 语言 CRC 生成函数如程序 3.1所示。所有的可能的 CRC  值都被预装在两个数组中, 当计算报文内容时可  以简单的索引即可。 一个数组含有 16 位 CRC 域的所有 256 个可能的高位字节,另一个数组含有低位字节的值。 这种索引访问 CRC  的方式提供了比对报文缓冲区的每个新字符都计算新的 CRC  更快的方法。

注意: 此函数内部执行高/低 CRC  字节的交换。此函数返回的是已经经过交换的 CRC  值。也就是说,从该 函数返回的 CRC 值可以直接放置于报文用于发送。

函数使用两个参数:

unsigned char *puchMsg;指向含有用于生成 CRC  的二进制数据报文缓冲区的指针。

unsigned short usDataLen;报文缓冲区的字节数。

注:以下 CRC16 生成函数程序摘自 <MODBUS over Serial Line Specification and Implementation Guide

V1.02> 。

程序 3.1   CRC16 生成函数程序清单

/*  高位字节的 CRC 值*/

static unsigned char auchCRCHi[] = {

0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81,

0x40

} ;

/* 低位字节的 CRC 值*/

static char auchCRCLo[] = {

0x00, 0xC0, 0xC1, 0x01, 0xC3, 0x03, 0x02, 0xC2, 0xC6, 0x06, 0x07, 0xC7, 0x05, 0xC5, 0xC4,

0x04, 0xCC, 0x0C, 0x0D, 0xCD, 0x0F, 0xCF, 0xCE, 0x0E, 0x0A, 0xCA, 0xCB, 0x0B, 0xC9, 0x09, 0x08, 0xC8, 0xD8, 0x18, 0x19, 0xD9, 0x1B, 0xDB, 0xDA, 0x1A, 0x1E, 0xDE, 0xDF, 0x1F, 0xDD,

0x1D, 0x1C, 0xDC, 0x14, 0xD4, 0xD5, 0x15, 0xD7, 0x17, 0x16, 0xD6, 0xD2, 0x12, 0x13, 0xD3,

0x11, 0xD1, 0xD0, 0x10, 0xF0, 0x30, 0x31, 0xF1, 0x33, 0xF3, 0xF2, 0x32, 0x36, 0xF6, 0xF7,

0x37, 0xF5, 0x35, 0x34, 0xF4, 0x3C, 0xFC, 0xFD, 0x3D, 0xFF, 0x3F, 0x3E, 0xFE, 0xFA, 0x3A, 0x3B, 0xFB, 0x39, 0xF9, 0xF8, 0x38, 0x28, 0xE8, 0xE9, 0x29, 0xEB, 0x2B, 0x2A, 0xEA, 0xEE, 0x2E, 0x2F, 0xEF, 0x2D, 0xED, 0xEC, 0x2C, 0xE4, 0x24, 0x25, 0xE5, 0x27, 0xE7, 0xE6, 0x26,

0x22, 0xE2, 0xE3, 0x23, 0xE1, 0x21, 0x20, 0xE0, 0xA0, 0x60, 0x61, 0xA1, 0x63, 0xA3, 0xA2,

0x62, 0x66, 0xA6, 0xA7, 0x67, 0xA5, 0x65, 0x64, 0xA4, 0x6C, 0xAC, 0xAD, 0x6D, 0xAF, 0x6F,   0x6E, 0xAE, 0xAA, 0x6A, 0x6B, 0xAB, 0x69, 0xA9, 0xA8, 0x68, 0x78, 0xB8, 0xB9, 0x79, 0xBB,  0x7B, 0x7A, 0xBA, 0xBE, 0x7E, 0x7F, 0xBF, 0x7D, 0xBD, 0xBC, 0x7C, 0xB4, 0x74, 0x75, 0xB5,

0x77, 0xB7, 0xB6, 0x76, 0x72, 0xB2, 0xB3, 0x73, 0xB1, 0x71, 0x70, 0xB0, 0x50, 0x90, 0x91,

0x51, 0x93, 0x53, 0x52, 0x92, 0x96, 0x56, 0x57, 0x97, 0x55, 0x95, 0x94, 0x54, 0x9C, 0x5C,

0x5D, 0x9D, 0x5F, 0x9F, 0x9E, 0x5E, 0x5A, 0x9A, 0x9B, 0x5B, 0x99, 0x59, 0x58, 0x98, 0x88,  0x48, 0x49, 0x89, 0x4B, 0x8B, 0x8A, 0x4A, 0x4E, 0x8E, 0x8F, 0x4F, 0x8D, 0x4D, 0x4C, 0x8C,

0x44, 0x84, 0x85, 0x45, 0x87, 0x47, 0x46, 0x86, 0x82, 0x42, 0x43, 0x83, 0x41, 0x81, 0x80,

0x40

};

unsigned short CRC16(puchmsg, usDataLen)     /*  函数以 unsigned short  类型返回 CRC */

unsigned char *puchMsg,                                      /*  用于计算 CRC  的报文*/

unsigned short usDataLen/*  报文中的字节数*/
{ 
unsigned charuchCRCHi = 0xFF;/* CRC  的高字节初始化*/

unsigned charuchCRCLo = 0xFF;     /* CRC  的低字节初始化*/

unsigned uIndex ;           /* CRC  查询表索引*/

while (usDataLen–)

{

/*  完成整个报文缓冲区*/

uIndex = uchCRCLo ^ *puchMsg++; /*  计算 CRC */

uchCRCLo = uchCRCHi ^ auchCRCHi[uIndex];

uchCRCHi = auchCRCLo[uIndex];

}

return (uchCRCHi << 8 | uchCRCLo);

}

技术术语(共 7 个)—— 点击展开
功能码Modbus功能码指定读/写操作类型,如01读线圈、03读保持寄存器
寄存器Modbus 寄存器存储数据单元,分线圈/离散输入/保持/输入寄存器四类
PLC可编程逻辑控制器,工业自动化控制的核心设备
波特率串行通信每秒传输符号数,Modbus RTU常用9600/19200
网关协议转换设备,如 Modbus RTU ↔ Modbus TCP
串口计算机与外部设备进行串行通信的物理接口
保持寄存器Modbus 16位可读写数据,地址从40001开始
来源/工具信息 —— 点击展开
来源 Modbus中文网(modbus.cn) —— 国内领先的Modbus通信协议技术社区 分类 Modbus通讯协议 字数 15126 字 · 阅读约 38 分钟 更新 2024-01-15 永久链接 https://www.modbus.cn/%e6%97%a0%e5%88%b7%e7%94%b5%e6%9c%ba%e9%a9%b1%e5%8a%a8%e5%99%a8modbus-%e9%80%9a%e8%ae%af%e5%8d%8f%e8%ae%ae%e5%8f%8a%e5%af%84%e5%ad%98%e5%99%a8%e8%af%b4%e6%98%8e/
推荐工具:Modbus调试助手 微信小程序
Modbus中文网官方推出的Modbus调试工具,支持 Modbus RTU/TCP 实时通信调试、寄存器读写、线圈控制、数据监控和报文分析。 无需安装,微信搜索「Modbus调试助手」即可使用。 电脑端入口:https://www.modbus.cn/modbustool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 modbus.cn
把这篇资料用于真实项目?

进入工具中心进行报文解析、CRC 校验和设备调试,或提交需求获取选型与接入建议。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注