agGRM110无线模块使用说明书(6)

GRM110做MODBUS通讯从机的配置

GRM110作为从机时(GRM110暂时只支持作为MODBUS从机),使用方法如下:

1) 使用GRMDEV5开发工程,根据主机的属性配置好通讯(协议请选择MODBUS_RTU_SERVER),并在从机映射中,建立变量关联到MODBUS寄存器地址。

2) 工程中定义和变量相关的各种控制,查询。

3) 将工程下载到GRM110。

4) 运行时,PLC和GRM110通讯,读写GRM对应MODBUS寄存器地址的变量。(也就是说PLC要写梯形图通过MODBUS读写指令主动来读写GRM110的数据)。

如果是触摸屏或者组态软件作为MODBUS主站和GRM110通讯,直接通过脚本或者在画面上修改变量即可完成写GRM110数据的过程。

 

1.1 GRM110做MODBUS通讯从机配置端口

在工程管理器左侧,在相应的通讯端口上点击右键,选择“编辑端口”,弹出下图所示“通讯端口编辑器”窗口。选择从机通讯协议,设置端口参数。

协议参数

u 从机地址:GRM110作为从机时的从机号。

图片1.png

1.2 GRM110做MODBUS通讯从机地址映射

在开发环境左侧“从机地址映射”窗口中点击“新建地址单元”按钮,弹出下图所示“从机地址单元编辑器”窗口。支持全部范围的MODBUS寄存器地址映射,具体如下表。

寄存器类型

寄存器说明

读取数据类型  

变量类型  

读写属性  

功能码说明

可读写位0x

地址1-65535

逻辑线圈

0XXXX

Bit

开关量

读写  

读命令 0x01。

写命令 0X05,0X0F

只读位1x

地址1-65535

输入位寄存器

1XXXX

Bit

开关量

只读  

读命令 0x02。

只读字3x

地址1-65535

输入寄存器

3XXXX

 

INT16   INT32

UINT16   UINT32

FLOAT32   BCD16

BCD32

整数

浮点

只读  

读命令 0x04。

 

可读写字4x

地址1-65535

输出(保持)

寄存器

4XXXX

INT16   INT32

UINT16   UINT32

FLOAT32   BCD16

BCD32

整数

浮点

读写

读命令 0x03。

写命令0x10,0X06

下图完成了变量“输入电流”与MODBUS RTU地址的映射,当和GRM110连接的MODBUS主机读取GRM110输出(保持)寄存器4X区3号地址时(PLC里面这种地址表示通常写为40003),即可获取变量“输入电流”的值。

 

图片2.png

u 寄存器类型:与连接的主机设备类型有关,不同设备选择不同的寄存器。

u IO数据类型:变量对应的寄存器在主机设备中定义的原始数据类型。

u 地址:映射的寄存器的地址。

1.3 GRM110做MODBUS通讯从机典型应用

现场西门子200 PLC只剩余一个PPI口,需要同时连接一个触摸屏和GRM模块。

解决方法:使用agGRM233无线通讯模块,该型号具备2个独立的485口

GRM233一个485口走PPI通讯作为主机连接西门子。

GRM233另外一个485口做MODBUS从站,配置好从站地址和波特率,用于连接触摸屏。

1.    使用GRMDEV配置2个通讯口的协议和波特率等参数。

2.    使用GRMDEV数据词典,建立一个变量,比如温度1,关联到西门子设备,VW100地址。

3.    在GRMDEV从站地址映射里面,给该变量分配一个MODBUS地址,比如4X区地址5。

4.    触摸屏访问40005地址,即可实现读写西门子PLC VW100寄存器的目的!

图片3.png

图片4.png

图片5.png

1.4 GRM110做MODBUS通讯从机和组态王进行MODBUS通讯

假设组态王数据词典当中已经有一个变量为 西门子PLC温度,现在组态王需要把这个变量通过MODBUS写入到GRM110。

1.    GRM110通过485和电脑直接连接即可。组态王做MODBUS主站,GRM110做MODBUS从站,协议选择如下,注意波特率,设备地址(对应GRM110的从站地址),奇偶校验,停止位和GRM110要一致。

图片6.png

2.    在组态王数据词典当中建立一个名 为GRM温度的变量,注意数据类型,还有勾选读写属性,MODBUS地址为4X区的1地址,即40001

图片7.png

3.    在GRM110当中配置为MODBUS从站,注意使用浮点数时,为了和组态王默认字节顺序一致,请将GRM中的协议参数的字节顺序改为1234。如何配置GRM110为MODBUS从站请参考本章前节所述。

如下图,GRM中变量名为温度,从站地址映射中选4X区地址1,浮点数,和组态王对应。

图片8.png

4.    在组态软件中用脚本赋值:

GRM温度=西门子PLC温度;

这样就完成了组态王将西门子PLC温度通过MODBUS写入到GRM110的过程。

 

GRM110做MODBUS通讯从机相关疑问请联系:

图片2.png