HLP_SV Modbus RTU 标准通讯协议格式
通信资料格式
Address Function Data CRC check
8 bits 8 bits N×8bits 16bits
1)Address通讯地址:1-247
2)Function:命令码8-bit命令
01 读线圈状态
上位机发送数据格式:
ADDRESS 01 ADDRH ADDRL NUMH NUML CRC
注: ADDR: 00000 --- FFFF(ADDR=线圈地址-1);NUM: 0010-----0040 (NUM为要读线圈状态值的二进制数位数)
正确时变频器返回数据格式:
ADDRESS 01 BYTECOUNT DA TA1 DA TA2 DA TA3 DA TAN CRC
注: BYTECOUNT:读取的字数
错误时变频器返回数据格式:
ADDRESS 0X81 Errornum CRC
注: Errornum为错误类型代码
如:要检测变频器的输出频率
应发送数据:01 01 00 30 00 10 3D C9(16进制)
变频器返回数据:01 01 02 00 20 B8 24(16进制)
发送数据:0030hex(线圈地址49)
返回的数据位为“0020”(16进制),高位与低位互换,为2000。即输出频率为
303(Max Ref)的50%。关于2000对应50%,具体见图1。
03读保持寄存器
上位机发送数据格式:
ADDRESS 03 ADDRH ADDRL NUMH NUML CRC
注:ADDR: 0 --- 0XFFFF;NUM: 0010-----0040 (NUM为要读取数据的字数)
ADDR=Parameter Numbe r×10-1
正确时变频器返回数据格式:
ADDRESS 03 BYTECOUNT DA TA1 DA TA 2 DA TA 3 DA TAN CRC 注: BYTECOUNT:读取的字节数
错误时变频器返回数据格式:
ADDRESS 0X83 Errornum CRC
如:要读变频器参数303的设定值
应发送数据:01 03 0B D5 00 02 95 BC (16进制)
Parameter 303(3029)=0BD5HEX
变频器返回数据:“:”01 03 04 00 00 EA 60 B5 7B
返回的数据位为“00 00 EA 60”(16进制)转换为10进制数为60000,
表示303设置值为60.000
※当参数值为双字时,NUM的值必须等于2。否则无法读取或读取错误。
05 写单个线圈状态
上位机发送数据格式:
ADDRESS 05ADDRH ADDRL DA TAH DA TAL CRC
注:ADDR: 0 ---- 0XFFFF(ADDR=线圈地址-1);DATA=0000HEX(OFF) OR FF00(ON) HEX
正确时变频器返回数据格式:
ADDRESS 05 DATAH DATAL BYTECOUNT CRC
错误时变频器返回数据格式:
ADDRESS 0X85 Errornum CRC
如:要使写参数为写入RAM和EEPROM
应发送数据:01 05 00 40 FF 00 CRC(16进制)
变频器返回数据:01 05 FF 00 00 01 CRC(16进制)
发送数据:0040hex(线圈地址65)
06 写单个保持寄存器值(只能写参数值为单个字的参数)
上位机发送数据格式:
ADDRESS 06 ADDRH ADDRL DA TAH DA TAL CRC
注:ADDR: ADDR=Parameter Numbe r×10-1
正确时变频器返回数据格式:
ADDRESS 06 ADDRH ADDRL DA TAH DA TAL CRC
错误时变频器返回数据:
ADDRESS 0X86 Errornum CRC
如:要对变频器参数101写入1
应发送数据:01 06 00 03 F1 00 01 19 BD(16进制)
变频器返回数据:01 06 03 F1 00 01 19 BD(16进制)
PARAMETER 101(1009)=03F1 HEX
返回的数据位为“0001”(16进制)转换为10进制为“1”表示101设置值为1
0F 写多个线圈状态
上位机发送数据格式
ADDRESS 0F ADDRH ADDRL NUMH NUML COUNT DATAH1
DA TAL1 DA TA2H DA TA2L ------- DA TANH DA TANL CRC
注:ADDR: 0 -------- 0XFFFF (ADDR=线圈地址-1); NUM: 0010-----0040 (NUM为要写值的二进制数的位数) ; COUNT: NUM / 8
正确时变频器返回数据格式:
ADDRESS 0F ADDRH ADDRL NUMH NUML CRC
错误时变频器返回数据格式:
ADDRESS 0X8F Errornum CRC
如:变频器运行,频率是参数303的40%
应发送数据:01 0F 00 00 00 20 04 7C 04 9A 19 37 43(16进制)
变频器返回数据:01 0F 00 00 00 20 54 13(16进制)
运行命令:0000 0100 0111 1100=047C HEX
速度命令:4000 HEX=100% Speed
40% of 4000 HEX=199A HEX
10 写多个保持寄存器(只能写单个参数的值)
上位机发送数据格式
ADDRESS 0x10 ADDRH ADDRL NUMH NUML BYTECOUNT
DA TAH1 DA TAL1 DA TA2H DA TA2L ------- DA TANH DA TANL CRC
注:ADDR: 0 ------ 0XFFFF:ADDR=Parameter Numbe r×10-1;NUM: 0-2 (NUM 为要写的字的字数)
COUNT=NUM*2
正确时变频器返回数据格式
ADDRESS 0x10 ADDRH ADDRL NUMH NUML CRC
错误时变频器返回数据格式:
ADDRESS 0X90 Errornum CRC
如要同时对参数303写入60.000(Parameter 303(3029)=0BCB HEX)
应发送数据:01 10 0B CB 00 02 04 00 00 EA 60 82 34(16进制)
变频器返回数据:01 10 0B CB 00 02 32 12(16进制)
发送的要写入16进制数据“00 00 EA 60”转换为10进制数为60000表示对参数303写入的数据分别为60.000
※注意:NUM的值必须写对,否则返回的数据可能出错
通信错误代码(Errornum)说明:
00 参数号码不存在
01 不能写入已定义的参数
02 参数的值超出该参数的上限
03 子索引不存在
04 该参数不是数组类型
05 数据类型与已定义参数的数据类型不同
06 仅用于复位
07 不可改变
11 不许写
parameter数据类型17 在变频器当前模式下不能更改已定义参数的数据
某些参数只能在电机关闭时才能更改
18 其它错误
64 无效的数据地址
65 无效的长度
66 无效的数据长度和值
67 无效的参数
130 已定义参数没有总线连接
131 出厂设定值已被选定数据,不能更改
功能码说明
线圈功能码说明
线圈地址名称R/W 说明1-16 变频器控制字R,W 见附表
17-32 变频器转速或设定频率R,W 见附表
33-48 变频器状态字R
49-64 变频器输出频率R
65 参数写控制R,W 0 –参数写入RAM:1-参数写入RAM 和EEPROM
66-65536 保留
4)DATA:资料内容n×8-bit资料
5)CRC:侦误值
附表:
变频器控制字:
位位=0 位=1
00 预置最小参考值
01 预置最大参考值
02 直流制动
03 惯性停机
04 快停
05 冻结输出频率
06 加减速停车起动
07 复位
08 点动
09 加减速1 加减速2
10 数据无效数据有效
11 无功能
12 无功能
13 选择最小安装
14 选择最大安装
15 反转
变频器状态字:
位位=0 位=1
00 控制准备完毕
01 驱动准备完毕
02 惯性停机
03 错误
04 无用
05 无用
06 无用
07 无警告警告
08 速度!=参考值速度=参考值
09 本地控制串行通信
10 频率范围溢出频率限制正常
11 电机正常运行
12
13 电压警告
14 电流限定
15 热警告
读数组参数310[2](index=2)
发送:01 06 00 08 00 02 CRC
“0002”Index的值
接收:01 06 00 08 00 02 CRC
发送:01 03 0C 1B 00 01 CRC
接收:01 03 02 00 00 CRC
写数组参数310[2](index=2)
发送:01 06 00 08 00 02 CRC
“0002”Index的值
接收:01 06 00 08 00 02 CRC
发送:01 10 0C 1B 00 01 02 00 00 CRC
接收:01 10 0C 1B 00 01 CRC
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论