正泰变频器RS485-MODBUS通讯说明插图1

组网方式

变频器提供RS485通信接口,采用国际标准的Modbus通讯协议进行的主从通讯。用户可通过PC/PLC、上位机监控软件等实现集中控制(设定变频器的控制命令、运行频率、相关功能码参数的修改,变频器工作状态及故障信息的监控等),以适应特定的应用要求。

如下图所示,变频器(作为从站)的组网方式有两种:单主机/多从机方式、单主机/单从机方式。

正泰变频器RS485-MODBUS通讯说明插图3
变频器组网方式示意图

接口方式

RS485接口:异步,半双工。默认:1-8-N-2(1位起始位,8位数据位,无校验,2位停止位),

19200bps,RTU,从地址0x0A。参数设置见Fb组功能码说明。

通讯方式

1)变频器通讯协议为Modbus协议,支持RTU和ASCII协议方式。

2)变频器为从机,主从式点对点通讯。主机使用广播地址发送命令时,从机不应答。

3)在多机通讯或者长距离的情况下,在主站通讯的信号线正端和负端并接(100~120)欧姆的电阻能提高通讯的抗扰性。

4)变频器只提供RS485一种接口,若外接设备的通讯口为RS232时,需要另加RS232/RS485

转换设备。

协议格式

Modbus协议同时支持RTU方式和ASCII方式,对应的帧格式如下图所示。

正泰变频器RS485-MODBUS通讯说明插图5

Modbus协议格式

RTU方式

在RTU方式下,帧之间的空闲时间取功能码设定和Modbus内部约定值中的较大值。Modbus内部约定的最小帧间空闲如下:帧头和帧尾通过总线空闲时间不小于3.5个字节时间来界定帧。数据校验采用CRC-16,整个信息参与校验,校验和的高低字节需要交换后发送。具体的CRC校验请参考协议后面的示例。值得注意的是,帧间保持至少3.5个字符的总线空闲即可,帧之间的总线空闲不需要累加起始和结束空闲。

下面示例用于在RTU方式下读取5号从机的内部寄存器0x0101(F1.01)的参数。

请求帧:

正泰变频器RS485-MODBUS通讯说明插图7

应答帧:

正泰变频器RS485-MODBUS通讯说明插图9

其中,校验码为CRC校验值。

ASCII方式

在ASCII方式下,帧头为“0x3A”,帧尾缺省为“0x0D、0x0A”,帧尾还可由用户配置设定。在

此方式下,除了帧头和帧尾之外,其余的数据字节全部以ASCII码方式发送,先发送高4位位元组,

然后发送低4位位元组。ASCII方式下数据为7位长度。对于“A”~“F”,采用其大写字母的ASCII码。

此时数据采用LRC校验,校验涵盖从从分。校验和等于所有参与校验数据的

字符和(舍弃进位位)的补码。

下面示例用于在ASCII方式写4000(0xFA0)到从机5的内部寄存器0201(F2.01)。

请求帧:

正泰变频器RS485-MODBUS通讯说明插图11

其中,校验码为LRC校验和,其值等于(05+06+02+01+0x0F+0xA0)的补码。

应答帧:

正泰变频器RS485-MODBUS通讯说明插图13

变频器通过功能码可以设置不同的应答延时以适应各种主站的具体应用需要,对于RTU模式实际的应答延时不小于3.5个字符间隔,对于ASCII模式实际的应答延时不小于1ms。

协议应用

Modbus命令码

Modbus最主要的功能是读/写变频器的功能参数,不同的命令码决定不同的操作请求。变频器Modbus协议支持下表中的操作。

正泰变频器RS485-MODBUS通讯说明插图15
Modbus命令码及用途

变频器功能参数地址映射规则

变频器功能参数的组号映射为modbus寄存器地址的高字节(0~F对应值0x00~0x0F),组内索引(即参数在组内的序号)映射为Modbus寄存器地址的低字节(00~99对应0x00~0x63),当数据只需保存到RAM中(即掉电不保存数据)时,将地址最高位置“1”。例如:通讯修改频率值,可通过修改功能参数F0.05实现。

功能参数“F0.05”(数字设定频率值)对应的寄存器地址为“0x0005”:

1)当数据只保存RAM时,对应的地址为 ”0x8005”。

2)当数据需要保存至EEPROM掉电保存数据)时,对应的地址为 “0x0005”。

备注:

当需要频繁修改设定频率,且不需要掉电保存该参数时,建议采用采用第一种方式,即只保存到RAM中,可以延长EEPROM使用寿命。

获取变频器功能码的参数属性

可通过0x04命令码获取变频器的功能码参数对应的参数属性,属性定义格式如表:

正泰变频器RS485-MODBUS通讯说明插图17
读取参数属性时数据格式定义
正泰变频器RS485-MODBUS通讯说明插图19
参数属性取值位(bit)定义

注意:

参数属性包含了4个(或5个)16位数据值,寄存器个数需是4(或5)的整数倍,否则通信反馈非法寄存器值出错。

控制命令、状态信息、故障信息

Modbus主站可通过控制命令对所控制的变频器启动、停止、设定运行频率等操作。通过相应命令检索变频器的状态参数信息(如:运行频率、输出电流、输出转矩等参数),同时可监控所控制变频器的故障信息。(通用参数地址映射规则参考3.5.2),下表特殊控制参数详细说明。

正泰变频器RS485-MODBUS通讯说明插图21
控制参数详细说明
正泰变频器RS485-MODBUS通讯说明插图23
续表1
正泰变频器RS485-MODBUS通讯说明插图25
续表2

参数管理

Modbus主站可通过相应命令从CPU板子中获取系统参数的组数和组号值,并获取相应组的组内编号。规定通信功能码为0x03”,通信地址定义如表

正泰变频器RS485-MODBUS通讯说明插图27
参数管理功能说明
正泰变频器RS485-MODBUS通讯说明插图29
续表

接线说明

拓扑结构

没有配置中继器RS-485-Modbus有一个与所有设备直接连接(菊花型)或通过短分支电缆连接的干线电缆。

干线电缆,又称总线,可能很长。它的两端必须接线路终端。也可以在多个RS-485Modbus之间使用中继器。且网络中的每个从机地址的地址具有唯一性,这是保证Modbus串行通讯的基础。

长度

必须限制干线电缆的端到端长度。最大长度与波特率、电缆(规格、电容或特性阻抗)、菊花链上的负载数量以及网络配置(2线或4线制)有关。

对于高速波特率为9600bps、AWG26(或更粗)规格的电缆来说,其最大长度为1000m。

分支必须短,不能超过20m。如果使用n个分支的多端口分支器,每个分支最大长度必须限制为40m除以n。

接地形式

必须将“公共端”电路(信号与可选电源的公共端)直接连接到保护地上,最好是整条总线单点接地。通常,该点可选在主站上或其分支器上。

电缆

串行链路上的Modbus电缆必须是屏蔽的。在每条电缆一端,其屏蔽必须连接到保护地上。若在这端使用了连接器,则将连接器外壳连接到电缆屏蔽层上。RS485-Modbus必须使用一对平衡线对和第三根线(用于公共端)。

对RS485-Modbus来说,必须选择足够宽的线缆直径以便允许使用最大长度(1000m)。

AWG24能够满足Modbus数据传输的需要。

通讯异常码定义

当通信过程中检测到相应的出错信息时,下位机(即CPU板)会将功能码的高位置“1”,并反馈相应的出错码(异常码),以便上位机识别当前出错原因,相应定义如表

正泰变频器RS485-MODBUS通讯说明插图31
通讯异常码定义
正泰变频器RS485-MODBUS通讯说明插图33
续表

Modbus通讯举例

在通讯之前首先设置好相关通信功能参数,使上位机和下位机的通讯地址、波特率、数据格式等一致。

例1:

如果需要改变变频器起始设定频率,将50.00Hz改为25.00Hz。

主机发送的数据:

变频器地址写命令参数地址数据内容CRC校验
010600 0509 C49E 08

主机接收到的数据:

变频器地址写命令参数地址数据内容CRC校验
010300 0509 C49E 08

例2:

如果需要读取变频器F0.00组控制方式。

主机发送的数据:

变频器地址读命令参数地址数据个数CRC校验
010300 0000 0184 0A

主机接收到的数据:

变频器地址读命令参数地址数据内容CRC校验
01030200 0239 85

例3:

如果输入命令超出功能码参数设定范围,以F0.01(运行命令通道选择)组为例,如果输入命令为4,超出了设定范围0~2,那么会出现错误回应信息。

主机发送的数据:

变频器地址写命令参数地址数据内容CRC校验
010600 0100 04D9 C9

主机接收到的数据:

变频器地址错误回应码错误代码数据内容CRC校验
01861200 02C2 6D

相关新闻

发表回复

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

邮箱

cloud@modbus.cn

QQ
QQ
微信
微信
SHARE
TOP