读写指令格式参见11.4节。
10.6.1 读指令03H举例
例1:读取地址为01H的变频器的状态字1。从“其他功能的参数表”中可知,变频器状态字1的参数地址为2100H。
RTU模式:
给变频器发送的读命令:
假设回应信息如下:
ASCII模式:
给变频器发送的读命令:
如果操作成功,返回的回应信息如下:
变频器返回的数据内容为0003H,从表中可知变频器处于停机中。
10.6.2 写指令06H举例
例1:将地址为03H的变频器正转运行。参见“其他功能的参数表”,“通讯控制命令”的地址为2000H,正转运行为0001。见下图。
功能说明 | 地址定义 | 数据意义说明 | R/W特性 |
通讯控制命令 | 2000H | 0001H:正转运行 | R/W |
0002H:反转运行 | |||
0003H:正转点动 | |||
0004H:反转点动 | |||
0005H:停机 | |||
0006H:自由停机(紧急停机) | |||
0007H:故障复位 | |||
0008H:点动停止 |
RTU模式:
主机发送的命令为:
如果操作成功,返回的回应信息如下(和主机发送的命令一样):
ASCII模式:
主机发送的命令为:
如果操作成功,返回的回应信息如下(和主机发送的命令一样):
例2:将地址为03H的变频器的“最大输出频率”设为100Hz。
由小数点位数来看,“最大输出频率”(P00.03)现场总线比例值为100。将100Hz乘上比例值100得10000,对应的十六进制为2710H。
RTU模式:
主机发送的命令为:
如果操作成功,返回的回应信息如下(和主机发送的命令一样):
ASCII模式:
主机发送的命令为:
如果操作成功,返回的回应信息如下(和主机发送的命令一样):
10.6.3 连写指令10H举例
例1:将地址为01H的变频器正转运行10Hz。参见“其他功能的参数表”,“通讯控制命令”的地址为2000H,正转运行为0001。“通讯设定频率”的地址为2001H,10Hz对应的十六进制为03E8H。见下图。
功能说明 | 地址定义 | 数据意义说明 | R/W特性 |
通讯控制命令 | 2000H | 0001H:正转运行 | R/W |
0002H:反转运行 | |||
0003H:正转点动 | |||
0004H:反转点动 | |||
0005H:停机 | |||
0006H:自由停机(紧急停机) | |||
0007H:故障复位 | |||
0008H:点动停止 | |||
通讯设定值地址 | 2001H | 通讯设定频率(0~Fmax(单位:0.01Hz)) | R/W |
2002H | PID给定,范围(0~1000,1000对应100.0%) |
具体操作为设置P00.01为2,P00.06为8。
RTU模式:
主机发送的命令为:
如果操作成功,返回的回应信息如下:
ASCII模式:
主机发送的命令为:
如果操作成功,返回的回应信息如下:
例2:将地址为01H的变频器的“加速时间”设为10s,减速时间设为20s。
P00.11对应的参数地址为000B,加速时间10s对应的十六进制为0064H,减速时间20s对应的十六进制为00C8H
RTU模式:
主机发送的命令为:
如果操作成功,返回的回应信息如下:
ASCII模式:
主机发送的命令为:
如果操作成功,返回的回应信息如下:
注意:上述指令中加空格只是便于说明,在实际运用中不要在指令中加空格。
10.6.4 Modbus通讯调试举例
主机为PC机,用RS232-RS485转换器进行信号转换,转换器所使用PC的串口为COM1(RS232端口)。上位机调试软件为串口调试助手,该软件可以在网上搜索下载,下载时尽量找带自动加CRC校验功能的。下图为所使用的串口调试助手的界面。
首先将“串口”选择COM1。波特率要与P14.01设置一致。数据位、校验位、停止位一定要与P14.02中设置的一致。因为使用的是RTU模式,所以选择十六进制的“HEX”。要软件自动加上CRC,一定要选上,并且选择CRC16(ModbusRTU),起始字节为1。一旦使能了自动加CRC校验,在填指令时就不要再填CRC了,否则会重复而导致指令错误。
调试指令为将地址为03H的变频器正转运行(11.4.7.2例1),即指令:
注意事项:
1、 变频器地址(P14.00)一定设为03;
2、 将“运行指令通道”(P00.01)设为“通讯运行指令通道”,同时还要将“通讯运行指令通道选择”(P00.02)设为“MODBUS通讯通道”。
点击发送,如果线路和设置都正确,会收到变频器发过来的回应信息。