S7-1500做服务器端与三方设备的TCP通信

电子说

1.3w人已加入

描述

1. 概述

SIMATIC S7- 1500 CPU 集成了 PROFINET 接口,该接口除了具备连接PROFINET 总线通信功能,同时还可用于标准的 TCP 通信。通过组态 TCP 连接或使用开放式通信专用功能块与其它设备建立 TCP 连接以实现通信。介绍 S7-1500 CPU 作为 TCP 服务器与 PC 进行 TCP 通信的配置过程。

2.网络拓扑结构

1500 PLC(192.168.0.1/24)与 PC(192.168.0.2/24)进行OPEN IE TCP通信。1500 PLC作为TCP通信连接的服务器端。

3.组态配置

3.1分配IP

服务器

分配PLC的IP

服务器

服务器

服务器

3.2创建PLC项目

服务器

服务器

服务器在项目树1500_TCP_Server下点击“添加新设备”。

输入设备名称TCP_Server并组态控制器,SIMATIC S7-1500下的CPU1511-1PN, 选择实际使用CPU的订货号以及版本号,本案例使用的是6ES7590-1AF30-0AA0V1.7,点击“确认”后进入设备视图。

服务器

服务器

3.3TCP通信编程

添加新块,类型为全局DB,创建发送数据区DB1,并定义10个字节的数组数据为发送区。区大小根据实际应用定义)

服务器

添加新块,类型为全局DB,创建接收数据区DB2,并定义10个字节的数组为接收区。数据区大小根据实际应用定义

服务器

打开OB1,将指令TSEND_C拖拽至OB1的程序段1,根据提示操作添加背景数据块“TSEND_C_DB”

服务器

在巡视窗口下选择“属性”,“组态”下的“连接参数”:伙伴选择“未指定”;接口选择CPU实际使用的以太网接口;连接类型选择“TCP”组态模式选择“使用组态的连接”

服务器

连接数据选择“<新建>”将自动创建“TCP连接166并自动生成连接ID,此处为256;由于CPU作为TCP连接服务器端,所以在伙伴侧选择主动建立连接伙伴地址表示允许与TCP服务器建立连接的客户端IP地址,此处未填表示允许任意有效的IP地址。本地端口是TCP服务器端使用的端口号,此处为2000,用于侦听来自客户端的TCP连接请求;伙伴端口是客户端向服务器端发起建立连接请求时使用的端口号,此处不填表示客户端可使用任意端口;

服务器

选择“属性”页下“组态”中“块参设置“Tag_1”(%M0.0)作为REQ触发信号,上升沿有效;CONT = 1,保持连接;将步骤1中预定义的发送DB数组作为起始地址;设置发送字节长度,此处为10个字节;

服务器

将指令TRCV拖拽至0B1的程序段2中根据提示操作添加背景数据块TRCV_DB”,填写TRCV参数:EN R设置为TRUE,保持接收;ID参数为TSEND C创建连接时系统自动生成的连接ID号(见步骤5),此处为256LEN参数此处设置为接收10个字节。DATA参数使用步骤2中预定义的接收DB数组。

服务器

3.4下载组态到站点

点击工具栏中的下载图标,弹出下载如图所示,在项目树中选中TCP Server,对话框如图所示。

服务器

下载对话框设置

a. PG/PC接口的类型下拉框中选择 PN/IE

b.PG/PC 接口下拉框中选择连接 CPU的实际以太网卡

c.接口/子网的连接下拉框选择 CPU连接的子网PN/IE

d.点击“开始搜索”按钮,搜索网络连接的兼容设备

e.在兼容设备列表中选择搜索出的设备 CPU1511-1 PN

f.点击“下载”按钮,按照提示完成站点下载

服务器

4.TCP 通信测试

在PC上启动TCP客户端程序,设置服务器地址为192.168.0.1,端口号为2000.建立TCP连接。在“网络视图”下的在线监视中可查看TCP连接的状态,如图所示选择工作区列表的“连接”页面,选择组态的连接“TCP 连接 1”,在巡视窗口中选择“诊断”页面下面的“连接信息”->“连接详细信息”下可查看到在线状态“已连接。

服务器

在“连接地址详细信息”处可查看连接双方的的IP 地址及端口号。

服务器

TCP连接建立后可通过“Tag_1”(%M0.0)脉冲信号将发送数据区的数据发送到 TCP客户端,在接收数据区可查看 TCP 客户端发给 S7-1500 的数据。

  审核编辑:汤梓红
 
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分