自动化任务
PCS neo控制器CPU410-5H作为Modbus客户端,通过ModbusTCP通讯主动连接S7-1500(服务器)读取数据,410-5H的X5接口与S7-1500的X1接口IP地址在同一网段并建立了物理连接。
参数 | PCS neo CPU 410-5H | TIA Portal S7-1500 |
指令 | MODBUS_TCP_CLIENT | MB_SERVER |
Modbus 功能码 | 3 (读保持寄存器) | |
连接ID | 1 | |
连接类型 | 0x0B (hex) = 11(dec) : TCP 连接 | |
连接建立 | 主动 | 被动 |
本机IP | 192.168.10.15 | 192.168.10.30 |
伙伴IP | 192.168.10.30 | 192.168.10.15 |
本地端口 | 0 (任何端口) | 503 |
远程端口 | 503 | 0 (“MB_SERVER”指令接受来自任何远程连接伙伴的连接请求。) |
TIA Portal组态
1.创建DB6全局数据块“HoldingRegister”,并创建变量dataBuffer,数据类型为实数数组
2.创建DB7全局数据块“ModbusServerData”,其中连接参数connParaServer数据类型为TCON_IP_v4结构体,ID设置为2,IP地址设置为192.168.10.15,本地端口指定为503
3.创建FB功能块并命名为ModbusServer,并对系统提供的MB_SERVER进行简单的封装
4.在OB1中调用FB ”ModbusServer” ,并使用创建的全局DB变量对功能块形参进行填写,可以对保持寄存器的几个实数进行自加运算测试通讯效果
PCS neo组态
1.PCS neo的Project cockpit中双击打开Library management,勾选Modbus库后,点击Apply按钮并发布项目
2.在CFC中调用MODBUS_TCP_CLIENT功能块,填写连接参数,在例子中由于使用的是单PCS neo控制器,对于功能块参数带有_A和_B的内容只需填写A部分即可
关键连接参数如下:
Input Parameter | Description | Type | Value( CPU A) |
Connect | Switch the communication on/off: TRUE=Establish connection: FALSE=Terminate connection | BOOL | 1 |
ID | Unique ID for each connection | INT | 256 |
Interface | IO selection for connection A: 0 = X5, 1 = X8 , 2 = External communications processor | BYTE | 16#00 |
IPAddress | IP address of the partner CPU. | STRING[15] | ‘192.168.10.30’ |
Port | Port number for the connection | INT | 503 |
Rack | Rack selection for connection : 0 = Rack0 1 = Rack1 | INT | 0 |
UnitID | Device identifier for connection [A..B]. Device identifier is used in message frame. | INT | 1 |
PCS neo程序组态:
MODBUS_TCP_CLIENT与辅助功能块,MODBUS_AI1和MODBUS_AI_EXT的CFC连线较简单,对于MODBUS_AI1与MODBUS_AI_EXT的使用请参考PCS neo的PUD帮助文件。
示例中用于读取从服务器40001开始寄存器连续4个浮点数模拟量值组态。
MODBUS_AI1与MODBUS_TCP_CLIENT进行互连,且本体可以读取一个模拟量值,MODBUS_AI_EXT与MODBUS_AI1互连读取剩余3个模拟量值。
MODBUS_AI_EXT 输入参数
Area:值1,FC03功能码读取寄存器
ID: 值1,功能块背景唯一ID号
Interval:值5,通信任务请求间隔时间5s
Offset:值0,从寄存器40001开始
Swap:值0,无字节或字交换
Type:值2,32位浮点数
MODBUS_AI_EXT 输入参数
ByteOffset:值4/8/12,按浮点数4字节偏移
Type:值2,32位浮点数
在线测试
完成该自动化任务,PCS neo中无需Modbus TCP授权(PCS 7使用Modbus TCP通讯需要Open IE授权),在PCS neo集成安装的库中已经包含Modbus TCP通讯相关库,该库程序功能块适用于PCS neo的410单或冗余控制器,也可以基于集成PN口或CP443-1进行与第三方设备Modbus TCP通信。
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved