simatic s7-1500 modbus tcp通讯概述
s7-1500 plc需要通过tia portal博途软件进行组态配置,从tia portal v12sp1开始软件中增加了s7-1500的modbus tcp块库,用于s7-1500与支持modbus tcp的通信伙伴进行通信,如下图2-1所示:
配置 s7-1500 cpu作为modbus tcp server与通信伙伴建立通讯
打开tia portal v13软件,新建一个项目,本例中命名为“s7_1500modbustcp_final_v13”,在项目中添加cpu1516-3pn/dp,为集成的profinet接口新建一个子网并设置ip 地址,本例中为“192.168.1.30”,如图3-1所示:
在cpu1516-3pn/dp的ob1组织块中添加modbus tcp server功能块“mb_server”,软件将提示会为该fb块增加一个背景数据块,本例中为db2“mb_server_db”,如图3-2所示:
之后在cpu1516-3pn/dp中添加一个全局数据块用于匹配功能块“mb_server”的管脚参数“connect”,本例中为数据块db3“mb_tcon”,打开该数据块,手动输入一个“tcon_ip_v4”的数据类型,如图3-3所示:
创建一个全局数据块用于匹配功能块“mb_server”的管脚参数“mb_hold_reg”,本例中为db1“server_db”,用于存储保持寄存器的通信数据,需要注意的是该数据块必须为非优化数据块(支持绝对寻址),在该数据块的属性中不勾选“优化的块访问”选项,如图3-5所示:
功能块“mb_server”的其它管脚参数如表3-2所示:
上面提到保持寄存器功能块db1“mb_server”与管脚参数“mb_hold_reg”关联,对于其它数据类型,如线圈、离散输入、输入寄存器等通过功能块均已经与s7-1500的过程映像区进行了映射,其映射地址对应如图3-6所示:
设置完上述各管脚参数后,下载项目到cpu1516-3pn/dp中,打开modsan32应用程序,下面以保持寄存器为例介绍通信测试过程。
在modscan32的数据定义界面中设置数据类型为保持寄存器,并设置modbus偏移量及长度,建立与cpu1516-3pn/dp集成pn口的通信连接,可以看到双方可以建立通信连接并进行数据读写,如图3-7所示:
对于其它数据类型,已与s7-1500cpu的过程映像区进行了映射,其过程类似。
使用功能块“mb_server”的一些注意事项:
1)s7-1500 cpu的集成pn口通过功能块“mb_server”支持与多个modbus客户端的通信,支持的个数取决于cpu所支持的tcp连接数,必须为每一个客户端连接分别调用一次功能块“mb_server”,其背景数据块、id、端口号等参数必须唯一。
2)s7-1500 cpu的集成pn口可以同时作为modbus tcp的server及client。
3)s7-1500 cpu的集成pn口支持多协议,除了运行modbus tcp协议外,同时可以运行profinet、tcp/ip、s7等协议。
配置 s7-1500 cpu作为modbus tcp client与通信伙伴建立通讯
在上述新建的项目中增加一个cpu1516-3pn/dp的站点,设置profinet的ip 地址“192.168.1.30”,之后在cpu1516-3pn/dp的ob1组织块中添加modbus tcp client功能块“mb_client”,软件将提示会为该fb块增加一个背景数据块,本例中为db1“mb_client_db”,如图4-1所示:
同样在cpu1516-3pn/dp中添加一个全局数据块用于匹配功能块“mb_client”的管脚参数“connect”,本例中为数据块db2“mb_client_tcon”,打开该数据块,手动输入“tcon_ip_v4”的数据类型,如图4-2所示:
展开db块后其“tcon_ip_v4”的数据类型的各参数设置如下:
创建一个全局数据块用于匹配功能块“mb_client”的管脚参数“mb_data_ptr”,本例中为db3“mb_client_data”,用于存储modbus通信的各数据类型,需要注意的是该数据块必须为非优化数据块(支持绝对寻址),在该数据块的属性中不勾选“优化的块访问”选项,如图4-4所示:
对于功能块“mb_client”的其它参数管脚含义如表4-2所示:
之后,打开上述功能块“mb_client”的背景数据块,在“mb_unit_id”参数中表示通信服务器伙伴的从站地址,该地址必须一致,如图4-6所示:
设置完上述各管脚参数后,下载项目到cpu1516-3pn/dp中,打开modslave应用程序,下面以保持寄存器为例介绍通信测试过程。
在modslave的数据定义界面中设置数据类型为保持寄存器,在功能块“mb_client”的“mb_data_addr”和“mb_data_len”设置起始地址和长度,可以看到双方可以建立通信连接并进行数据读写,如图4-7所示:
对于其它数据类型,测试过程类似。
使用功能块“mb_client”的一些注意事项:
1)s7-1500 cpu的集成pn口通过功能块“mb_client”支持与多个modbus服务器的通信,支持的个数取决于cpu所支持的tcp连接数,必须为每一个服务器连接需要分别调用一次功能块“mb_client”,其背景数据块、id 等参数必须唯一。
2)s7-1500 cpu的集成pn口可以同时作为modbus tcp的server及client。
3)s7-1500 cpu的集成pn口支持多协议,除了运行modbus tcp协议外,同时可以运行profinet、tcp/ip、s7等协议。
高精度小型流量计
Google经常会对其服务进行一些细微的更改
工控机箱计算机BIOS如何进行修改参数并保存
电子元件是如何安装在PCB上的
高压耐压测试仪的应用案例
基于S7-1500 CPU集成PN口的Modbus TCP通信快速入门
抓取系统相关的八大智能生产趋势
智能热水器设计:您不应忘记使用的三项重要技术
标准和白光二极管LED的基础知识与驱动原理
中国新能源成本历史变动和未来趋势
基于机械CAD基础的自主学习系统
扫描电子显微镜(SEM)在失效分析中的应用
如何通过S参数来评估通道的串扰情况?
电话机器人的出现使电销行业发生了翻天覆地的变化
进口汽车将在中国市场迎来更大、更好的发展机遇
虹膜矿灯柜为什么要有实时视频监控功能?
荣耀8XMax骁龙660版怎么样 性能更好续航更持久
让每一个人受益,收获更大的成功 | 一文了解无障碍体验
应用案例 | 河南省某机场集团数字化转型升级应用案例
Cegedim全面推出第二代MI for iPad