S7-300与第三方的TCP通信_Server(STEP7)

描述

概述

SIMATIC S7- 300 CPU集成了 PROFINET 接口,该接口除了具备连接 PROFINET总线通信功能,同时还可用于标准的 TCP 通信。

通过组态TCP连接及使用开放式通信专用功能块与其它设备建立TCP连接以实现通信。

本文以S7-300CPU作为TCP的服务器,PC机上运行的TCP&UDPDebug软件模拟第三方设备作为客户端;进行通信的配置过程。

自动化解决方案

网络拓扑结构

如图1所示,300 PLC(192.168.0.1/24)与 PC(192.168.0.2/24)进行OPEN IE TCP通信。300 PLC作为TCP通信连接的客户端。

TCP

图 1网络拓扑结构

硬件与软件需求

 

设备 数量 订货号 注释
PS307 120/230 VAC 1 6ES7307-1EA01-0AA0 负载电源模块
CPU 300 1 6ES7315-2EH14-0AB0  
存储卡4MB 1 6ES7953-8LM11-0AA0 作为装载存储器
安装导轨 1 6ES7390-1AE80-0AA0  
PC 1    

 

表 1硬件列表

 

                  设备 数量 订货号 注释
STEP 7 V5.5 SP4 1 6ES7810-4CC10-0YA5  
Windows 7 专业版 SP1
64-bit Operating System
1    

 

表 2软件环境

组态配置

分配 IP地址

通过如下的步骤配置 PC的 IP地址

 

步骤 操作 备注
1.
.
选择 “开始 > 控制面板 > 网络和共享 > 本地连接>属性”打开 Internet 协议版本 4(TCP/IPv4),
设置 PC 的 IP 地址。
 

TCP

 

 

分配CPU模块的IP地址

 

步骤 操作 备注
1.
.
用网线直接连接PC和CPU315。 连接两个设备到同一个以太网物理网上
2. 在 Engineer PC 上打开 STEP 7 V5.5。进入 SIMATIC Manager 主界面,展开菜单栏“PLC”,单击 “Edit Ethernet Node”(编辑以太网节点)。  

TCP

 
4. 弹出“Edit Ethernet Node”(编辑以太网节点)对话框,点击“Browse”。  

TCP

 
3. 按照打印在CPU315模块上的 X2接口MAC地址来确定需要分配IP地址的设备,本案例为00-0E-8C-CD-B4-AA,选中此设备,点击“OK”。  

TCP

 
4. 在工作区“IP address”处输入IP地址192.168.0.1和“Subnet mask”处输入255.255.255.0,点击“Assign IP  Configuration”。  

TCP

 
5. 操作成功后可显示 “The parameters were transferred successfully.”消息。  

TCP

 

 

创建 PLC 项目

在 STEP7 V5.5中创建一个项目并插入CPU315 站。操作步骤如表3

 

步骤 操作 备注
1.
.
在 Engineer PC 上打开 STEP7 V5.5。在 “File” 菜单中选择 “New…” 选项。  

TCP

 
2. 在弹出的创建新项目窗口里输入项目名为“TCP_Server”,然后点击“OK”按钮。  

TCP

 
3.
.
在TCP_Client下点击右键“Insert New Object”,选择“SIMATIC 300 Station”。  

TCP

 
4. 双击“Hardware”打开硬件组态。  

TCP

 
5. 插入 S7-300 插槽。  

TCP

 
  插入S7-300 CPU,与实际PLC一致:6ES7 315-2EH14-0AB0 V3.2。  

TCP

 
  在弹出的“Properties-Ethernet interface PN-IO”对话框的“Parmeters”选项卡中为以太网接口添加,设置IP地址192.168.0.1和子网掩码255.255.255.0 。  

TCP

 
  点击“New...”新建子网。  

TCP

 
  “New subnet Industrial Ethernet”对话框下 Name:Ethernet(1)。  

TCP

 
  新建 Subnet 后,点击“OK”。  

TCP

 
  点击“Save and Compile”按钮。编译保存硬件组态信息。  

TCP

 

 

表3 硬件组态

TCP通信向导组态

创建用于开放式 TCP/IP 通信的连接数据的向导 (开放式通信向导)下载链接:

https://support.industry.siemens.com/cs/cn/en/view/98957840/zh

 

步骤 操作 备注
1. 开始菜单中选择“SIMATIC”—“Open Communication Wizard”。  

TCP

 
2. 打开“Open Communication Wizard”。  

TCP

 
3. 选择 STEP 7 project。  

TCP

 
4 选择 TCP_Server 项目。  

TCP

 
5 选择 Block folder。  

TCP

 
  选择项目下的Blocks。  

TCP

 
  点击“Next”。  

TCP

 
  点击“OK”。  

TCP

 
  点击“Next”。  

TCP

 
  选择“Connection type”—“TCP native”,
点击“Next”。
 

TCP

 
  选择“Communication parter B is not a S7-CPU(eg. a PC)”, 点击“Next”。  

TCP

 
  Connect name:“300_Server”。  

TCP

 
  因为 S7 300 作服务器,因此选择“Passive”。  

TCP

 
  选择User interface:CPU 314/315/317/ET200pro(IM154-8 CPU)。  

TCP

 
  Communication parter B 的IP地址192.168.0.2,点击“Next”。  

TCP

 
  Communication parter A 端口号:2000,点击“Next”。  

TCP

 
  Communication parter A,数据块Name:DB1,点击“Next”。  

TCP

 
  点击“Next”。  

TCP

 
  点击“Finish”。  

TCP

 
  点击“是”。  

TCP

 

 

表4 T_BLOCK编程

TCP通信编程

 

步骤 操作 备注
1. 查看 SIMATIC Manager—Blocks 下生成了 DB1。  

TCP

 
2. 双击 OB1进入。  

TCP

 
3. 需要的功能块。  

TCP

 
4. 插入 FB65 TCON  

TCP

 
5. 添加背景DB。  

TCP

 
7. 打开DB1,复制“OUCW_1”名称。  

TCP

 
8. “CONNECT”引脚输入DB1. 粘贴“OUCW_1”。  

TCP

 
9. 正确填写 FB65 引脚。  

TCP

 
10 添加 Bata Block。  

TCP

 
  添加共享 DB11,作为发送数据区。  

TCP

 
11 添加变量,类型为数组。  

TCP

 
12 添加100个 BYTE 的数组变量。  

TCP

 
13 添加 FB63,背景数据块为DB63,正确填写 FB63 引脚。  

TCP

 
14 添加共享 DB12,作为接收数据区。  

TCP

 
15 添加变量,类型为数组。  

TCP

 
16 添加100个 BYTE 的数组变量。  

TCP

 
17 添加 FB64,背景数据块为DB64,正确填写 FB64 引脚。  

TCP

 
18 添加 FB66,背景数据块为DB66,正确填写 FB66 引脚。  

TCP

 

 

表4 T_BLOCK编程

下载组态到站点

 

步骤 操作 备注
1. 返回 SIMATIC Manager 主界面。  

TCP

 
2. 下载项目到 PLC。  

TCP

 
3. 弹出的“Download”对话框,点击“Yes”。  

TCP

 

 

TCP&UDPDebug组态

 

步骤 操作 备注
1. 桌面选择“TCP&UDPDebug”图标。 TCP
2. 双击进入“TCP&UDPDebug”界面。  

TCP

 
3. 右键“客户端模式”,点击“创建连接”。  

TCP

 
  在弹出的创建连接对话框中填写目标IP:192.168.0.1;
端口:2000;本机端口:随机端口;点击“创建”按钮。
 

TCP

 
  显示客户端模式(未连接状态)。  

TCP

 

 

TCP通信测试

 

步骤 操作 备注
1. 在SIMATIC Manager 中,Blocks 下插入变量表“Variable Table”。  

TCP

 
2. 添加变量。  

TCP

 
3. 触发“TCON_REQ ”。  

TCP

 
  M10.0 TCON_REQ 显示为“true”。  

TCP

 
  TCP&UDP测试工具,右键客户端模式下的 192.168.0.1:2000,点击“连接”。  

TCP

 
  TCP&UDP测试工具,显示连接以建立。  

TCP

 
  硬件组态,点击在线按钮。  

TCP

 
  硬件组态在线后,双击CPU 315-2PN/DP。  

TCP

 
  进入CPU的 Module Information 对话框。  

TCP

 
  进入“Communication”选项卡,可以看到“Open communication via Industrial Ethernet”下“Connection resources in use:”显示为:1。  

TCP

 
  点击“Diagnostics...”,可以看到连接以建立。  

TCP

 
  “TCP&UDPDebug”界面,接收区选择“十六进制”。  

TCP

 
  写入16进制数据“99 88 77 66 55 44 33 22 11 00”。  

TCP

 
  触发“TSEND_REQ”,发送。  

TCP

 
  TCP&UDP 测试工具,接收区显示16进制数据“99 88 77 66 55 44 33 22 11 00”。  

TCP

 
  在发送区写入16进制数据“00 11 22 33 44 55 66 77 88 99”,点击“发送”按钮。  

TCP

 
  触发“TRCV_EN_R”,接收到 10 个字节数据。  

TCP

 

 

  审核编辑:汤梓红

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

全部0条评论

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

×
20
完善资料,
赚取积分