三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)

第 1 章 485 设备与力控通讯. 2

1.1 DI/DO/AI/AO 接入. 2

1.1.1 添加设备. 3

1.1.2 测试设备. 6

1.2 读取 DI 状态. 7

1.3 输出/读取 DO 状态. 8

1.4 读取 AI 值. 10

第 2 章 以太网设备与力控通讯. 12

2.1 DI/DO/AI/AO 接入. 12

2.1.1 添加设备. 13

2.1.2 测试设备. 15

2.2 读取 DI 状态. 16

2.3 输出/读取 DO 状态. 17

2.4 读取 AI 值. 19

第 1 章 485 设备与力控通讯DI/DO/AI/AO 接入

以 ZKA-4088-RS485 为例,介绍综科智控 485 设备与力控进行通讯的步骤设置。ZKA-4088-RS485 是 8 路数字量输入(DI),8 路数字量输出(DO),4 路模拟量输入设备(AI,0/4-20mA),485 通信总线。

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(1)

以 ZKA-4088-RS485 出厂默认通讯参数如下:

站号:01

波特率:115200

数据格式:8,N,1

与电脑连接的端口:客户查看电脑设备管理器中的COM口,选择实际使用的端口

添加设备

选择:IO 设备组态>[PLC] > [莫迪康] > [ModbusRTU] 如下图所示:

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(2)

为设备取一个名称,在此输入 TEST,单击“下一步”, 如下图所示。

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(3)

为设备选择连接串口,选择 COM4,根据实际对应 COM 参数设置,并保存

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(4)

选择 6 和 16 号命令,选择 32 位数数据存放格式:

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(5)

测试设备

在设备上右键> [TEST],如下图所示:

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(6)

读取 DI 状态

ZKA-4088-RS485的 8路 DI 寄存器为 10001~10008:

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(7)

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(8)

如上图所示,寄存器 DI001 变量值为 1,表示此时第 1 个输入通道X1闭合。

输出/读取 DO 状态

ZKA-4088-RS485 的 8路 DO 寄存器为 00001~00008:

新建 IO 点,选择可读可写

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(9)

建立 IO 点完成后,点击运行按

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(10)

,即可读取 DO 状态

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(11)

在对应的 IO 点上右键>写数据

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(12)

写入 1,则通道 DO1 输出,设备上 Y1灯亮

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(13)

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(14)

读取 AI 值

ZKA-4088-RS485 的 4 路 AI(模拟量输入)寄存器为 30001~30008,因为ZKA模块采用的是32位AD芯片,所以每个模拟量通道占用 2 个寄存器,共4 个字节(32bit),其中高两个字节为采集结果的高16bit,低两个字为采集结果的低16bit,模块出厂时为保证高精度,滤波后输出16bit,所以用户实际使用时只需要读取低16bit采集结果即可,,也就是读取偏置0002,0004,0006,0008地址上的寄存器数据,数据类型为 无符号整型。

新建 IO 点,选择只读

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(15)

注意:以上截图是根据我司出厂默认配置的16bit AI采集精度,举例:客户的温度变送器为500℃的量程(也就是量程下限是0,量程上限是500,工程单位是℃), 0℃对应4ma(也就是AD裸数据12800),满量程500℃对应20ma(也就是AD裸数据64000)。

建立 IO 点完成后,点击运行按

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(16)

,即可读取 AI 状态

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(17)

第 1 通道采集的原始AD裸数据为30000,那么对应当前温度值为(30000-12800)/(64000-12800)x 500℃=167.968℃。

第 2 章 以太网设备与力控通讯

本章介绍本系列下以太网设备与力控组态软件通讯的设置方法,该方法适用于本系列下所有以太网设备。

DI/DO/AI/AO 接入

以 ZKA-4088-ETH为例说明 DI\DO\AI\AO 如何接入力控使用,ZKA-4088-ETH 为 8路数字量输入(DI)和 8 路数字量输出(DO)以及4路模拟量输入(AI)采集控制设备,采用标准的 Modbus TCP 通讯协议,可以通过 TCP/IP 网络远程采集模拟量数据。

ZK模块 IP 为:192.168.0.105

TCP 端口为:10001

(注意:我们模块出厂时默认端口为10001,客户也可以通过ZK模块的配置文件把ZK通讯端口改成modbus-tcp的默认端口502)

工作模式为:服务器模式

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(18)

添加设备

选择:[PLC] > [莫迪康] > [ModbusTCP],建立设备名称为 Test,设备地址固定为:

255 如下图所示:

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(19)

选择“下一步”,填入 IP,端口

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(20)

选择 6 和 16 号命令,选择 32 位数数据存放格式:

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(21)

测试设备

在设备“TEST”上右键>测试

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(22)

右键>新建点

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(23)

读取 DI 状态

ZKA-4088-ETH的 8路 DI 寄存器为 10001~10008:

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(24)

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(25)

如上图所示,寄存器 DI001 变量值为 1,表示此时第 1 个输入通道X1闭合。

输出/读取 DO 状态

ZKA-4088-ETH 的 8路 DO 寄存器为 00001~00008:

新建 IO 点,选择可读可写

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(26)

建立 IO 点完成后,点击运行按

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(27)

,即可读取 DO 状态

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(28)

在对应的 IO 点上右键>写数据

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(29)

写入 1,则通道 DO1 输出,设备上 Y1 灯亮

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(30)

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(31)

读取 AI 值

ZKA-4088-ETH 的 4 路 AI(模拟量输入)寄存器为 30001~30008,因为ZKA模块采用的是32位AD芯片,所以每个模拟量通道占用 2 个寄存器,共4 个字节(32bit),其中高两个字节为采集结果的高16bit,低两个字为采集结果的低16bit,模块出厂时为保证高精度,滤波后输出16bit,所以用户实际使用时只需要读取低16bit采集结果即可,,也就是读取偏置0002,0004,0006,0008地址上的寄存器数据,数据类型为 无符号整型。

新建 IO 点,选择只读

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(32)

注意:以上截图是根据我司出厂默认配置的16bit AI采集精度,举例:客户的温度变送器为500℃的量程(也就是量程下限是0,量程上限是500,工程单位是℃), 0℃对应4ma(也就是AD裸数据12800),满量程500℃对应20ma(也就是AD裸数据64000)。

建立 IO 点完成后,点击运行按

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(33)

,即可读取 AI 状态

三菱modbusrtu通讯协议实例(力控组态软件modbus-rtu)(34)

第 1 通道采集的原始AD裸数据为30000,那么对应当前温度值为(30000-12800)/(64000-12800)x 500℃=167.968℃

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页