0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2022-04-03 09:13 次阅读

概述

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

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

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

自动化解决方案

网络拓扑结构

如图1所示,300 PLC192.168.0.1/24)与PC192.168.0.2/24)进行OPEN IE TCP通信。300 PLC作为TCP通信连接的客户端。

17f210de-b130-11ec-aa7f-dac502259ad0.png

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 地址。

18219c1e-b130-11ec-aa7f-dac502259ad0.png

分配CPU模块的IP地址

步骤

操作

备注

1.

.

用网线直接连接PC和CPU315。

连接两个设备到同一个以太网物理网上

2.

在 Engineer PC 上打开 STEP 7 V5.5。进入 SIMATIC Manager 主界面,展开菜单栏“PLC”,单击“Edit Ethernet Node”(编辑以太网节点)。

183dda0a-b130-11ec-aa7f-dac502259ad0.png

4.

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

185d1398-b130-11ec-aa7f-dac502259ad0.png

3.

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

18787fac-b130-11ec-aa7f-dac502259ad0.png

4.

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

18975a8a-b130-11ec-aa7f-dac502259ad0.png

5.

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

18b20ea2-b130-11ec-aa7f-dac502259ad0.png

创建 PLC 项目

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

步骤

操作

备注

1.

.

在 Engineer PC 上打开 STEP7 V5.5。在“File”菜单中选择“New…”选项。

18d0903e-b130-11ec-aa7f-dac502259ad0.png

2.

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

18e60f40-b130-11ec-aa7f-dac502259ad0.png

3.

.

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

190059b8-b130-11ec-aa7f-dac502259ad0.png

4.

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

1913f220-b130-11ec-aa7f-dac502259ad0.png

5.

插入 S7-300插槽。

193696e0-b130-11ec-aa7f-dac502259ad0.png

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

194efe4c-b130-11ec-aa7f-dac502259ad0.png

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

19649766-b130-11ec-aa7f-dac502259ad0.png

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

19779c08-b130-11ec-aa7f-dac502259ad0.png

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

199ce10c-b130-11ec-aa7f-dac502259ad0.png

新建 Subnet 后,点击“OK”。

19b844ce-b130-11ec-aa7f-dac502259ad0.png

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

19cb762a-b130-11ec-aa7f-dac502259ad0.png

3硬件组态

TCP通信向导组态

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

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

步骤

操作

备注

1.

开始菜单中选择“SIMATIC”—“Open Communication Wizard”。

19e4f6ea-b130-11ec-aa7f-dac502259ad0.png

2.

打开“Open Communication Wizard”。

1a083e52-b130-11ec-aa7f-dac502259ad0.png

3.

选择 STEP 7 project。

1a1da670-b130-11ec-aa7f-dac502259ad0.png

4

选择 TCP_Server 项目。

1a3a7584-b130-11ec-aa7f-dac502259ad0.png

5

选择 Block folder。

1a7038e0-b130-11ec-aa7f-dac502259ad0.png

选择项目下的Blocks。

1a9020ce-b130-11ec-aa7f-dac502259ad0.png

点击“Next”。

1ab18020-b130-11ec-aa7f-dac502259ad0.png

点击“OK”。

1ad9e682-b130-11ec-aa7f-dac502259ad0.png

点击“Next”。

1af3179c-b130-11ec-aa7f-dac502259ad0.png

选择“Connection type”—“TCP native”,

点击“Next”。

1b032c18-b130-11ec-aa7f-dac502259ad0.png

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

1b2584ac-b130-11ec-aa7f-dac502259ad0.png

Connect name:“300_Server”。

1b572a20-b130-11ec-aa7f-dac502259ad0.png

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

1b7b173c-b130-11ec-aa7f-dac502259ad0.png

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

1b98e56e-b130-11ec-aa7f-dac502259ad0.png

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

1bb8cbea-b130-11ec-aa7f-dac502259ad0.png

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

1bec23a0-b130-11ec-aa7f-dac502259ad0.png

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

1c0fb1a8-b130-11ec-aa7f-dac502259ad0.png

点击“Next”。

1c3f0b6a-b130-11ec-aa7f-dac502259ad0.png

点击“Finish”。

1c7dd854-b130-11ec-aa7f-dac502259ad0.png

点击“是”。

1c9f4d7c-b130-11ec-aa7f-dac502259ad0.png

表4 T_BLOCK编程

TCP通信编程

步骤

操作

备注

1.

查看 SIMATIC Manager—Blocks 下生成了 DB1。

1cce62f6-b130-11ec-aa7f-dac502259ad0.png

2.

双击 OB1进入。

1ce6b4b4-b130-11ec-aa7f-dac502259ad0.png

3.

需要的功能块。

1d06a3b4-b130-11ec-aa7f-dac502259ad0.png

4.

插入FB65 TCON

1d2ab984-b130-11ec-aa7f-dac502259ad0.png

5.

添加背景DB。

1d474bbc-b130-11ec-aa7f-dac502259ad0.png

7.

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

1d5def34-b130-11ec-aa7f-dac502259ad0.png

8.

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

1d82edd4-b130-11ec-aa7f-dac502259ad0.png

9.

正确填写 FB65 引脚。

1db73648-b130-11ec-aa7f-dac502259ad0.png

10

添加 Bata Block。

1dce2452-b130-11ec-aa7f-dac502259ad0.png

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

1de1316e-b130-11ec-aa7f-dac502259ad0.png

11

添加变量,类型为数组。

1df73b62-b130-11ec-aa7f-dac502259ad0.png

12

添加100个 BYTE 的数组变量。

1e0e8e98-b130-11ec-aa7f-dac502259ad0.png

13

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

1e2b7d1e-b130-11ec-aa7f-dac502259ad0.png

14

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

1e3fca76-b130-11ec-aa7f-dac502259ad0.png

15

添加变量,类型为数组。

1e587de6-b130-11ec-aa7f-dac502259ad0.png

16

添加100个 BYTE 的数组变量。

1e759b9c-b130-11ec-aa7f-dac502259ad0.png

17

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

1e8e1c8a-b130-11ec-aa7f-dac502259ad0.png

18

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

1ea46daa-b130-11ec-aa7f-dac502259ad0.png

表4 T_BLOCK编程

下载组态到站点

步骤

操作

备注

1.

返回 SIMATIC Manager 主界面。

1eb3ba44-b130-11ec-aa7f-dac502259ad0.png

2.

下载项目到 PLC。

1ecd4a90-b130-11ec-aa7f-dac502259ad0.png

3.

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

1ee901c2-b130-11ec-aa7f-dac502259ad0.png

TCP&UDPDebug组态

步骤

操作

备注

1.

桌面选择“TCP&UDPDebug”图标。

1efc96c4-b130-11ec-aa7f-dac502259ad0.png

2.

双击进入“TCP&UDPDebug”界面。

1f151ee2-b130-11ec-aa7f-dac502259ad0.png

3.

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

1f404ce8-b130-11ec-aa7f-dac502259ad0.png

在弹出的创建连接对话框中填写目标IP:192.168.0.1;

端口:2000;本机端口:随机端口;点击“创建”按钮。

1f69fa16-b130-11ec-aa7f-dac502259ad0.png

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

1f9d1630-b130-11ec-aa7f-dac502259ad0.png

TCP通信测试

步骤

操作

备注

1.

在SIMATIC Manager 中,Blocks 下插入变量表“Variable Table”。

1fc776a0-b130-11ec-aa7f-dac502259ad0.png

2.

添加变量。

1fe5dd48-b130-11ec-aa7f-dac502259ad0.png

3.

触发“TCON_REQ ”。

20058d1e-b130-11ec-aa7f-dac502259ad0.png

M10.0 TCON_REQ显示为“true”。

20216fb6-b130-11ec-aa7f-dac502259ad0.png

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

203f4540-b130-11ec-aa7f-dac502259ad0.png

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

206436f2-b130-11ec-aa7f-dac502259ad0.png

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

208a772c-b130-11ec-aa7f-dac502259ad0.png

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

20aa6a96-b130-11ec-aa7f-dac502259ad0.png

进入CPU的 Module Information 对话框。

20c87464-b130-11ec-aa7f-dac502259ad0.png

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

20e11776-b130-11ec-aa7f-dac502259ad0.png

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

20fb70da-b130-11ec-aa7f-dac502259ad0.png

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

21144ff6-b130-11ec-aa7f-dac502259ad0.png

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

21490a8e-b130-11ec-aa7f-dac502259ad0.png

触发“TSEND_REQ”,发送。

217ace16-b130-11ec-aa7f-dac502259ad0.png

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

21a18344-b130-11ec-aa7f-dac502259ad0.png

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

21c1fe8a-b130-11ec-aa7f-dac502259ad0.png

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

21de04fe-b130-11ec-aa7f-dac502259ad0.png

--------------------END---------------------

审核编辑 :李倩


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

    关注

    8

    文章

    1270

    浏览量

    78282
  • S7-300
    +关注

    关注

    8

    文章

    224

    浏览量

    33781
  • 网络拓扑
    +关注

    关注

    0

    文章

    93

    浏览量

    11239

原文标题:S7-300与第三方的TCP通信_Server(STEP7)

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Labview如何内嵌操作第三方EXE程序!

    自己在网上搜了下相关资料,能把第三方EXE内嵌进入容器里,但是有个问题,这个第三方软件必须手动拖到容器正中间,手动最大化。请问有什么方法可以自动实现吗? 下图是我内嵌的POLL 软件。如图!
    发表于 04-18 14:26

    stm32H743IIT6串口2跟第三方设备通讯,不插USB就通讯不了怎么解决?

    stm32H743IIT6串口2跟第三方设备通讯。插上USB就可以通讯,不插USB就通讯不了,有没有大神帮忙解决下
    发表于 03-22 06:42

    使用cubemx 生成usb驱动和配置第三方fatfs,fread读取大于100k的文件,会超时的原因?

    使用cubemx 生成usb驱动和配置第三方fatfs,打开文件没有报错,使用fread读取文件的时候大于100k的文件,会读超时,小于100k正常读完,为什么
    发表于 03-07 06:35

    如何将SCOUT的工程关联到STEP7中?

    如何将SCOUT的工程关联到STEP7中,就是SCOUT添加了一个伺服的设置,然后如何关联到STEP7中,可以在STEP7中打开SCOUT 的文件
    发表于 01-09 13:16

    python第三方库有哪些

    Python 作为一门功能强大的编程语言,拥有丰富的第三方库,几乎覆盖了各个领域的应用。下面是一些常见且广泛应用的 Python 第三方库的总结,希望能为您提供帮助。 NumPy(Numerical
    的头像 发表于 11-29 14:31 813次阅读

    S7-1200集成PN接口MODBUS TCP通信概述

    软件 STEP7 V11 SP1版本开始,S7-1200CPU 从Firmware V1.0.2开始,不再需要安装Modbus TCP的库文件,可以直接调用Modbus TCP的库指令“MB_CLIENT”和“MB_
    的头像 发表于 10-29 17:24 4469次阅读
    S7-1200集成PN接口MODBUS <b class='flag-5'>TCP</b><b class='flag-5'>通信</b>概述

    浅谈S7-300 CPU集成PN口配置的Modbus TCP通讯技术

    S7-300单站系统及Modbus Slave软件为例,详细介绍如何将S7-300单站系统CPU的集成PN口配置为Client,Modbus Slave作为Server进行Modbus TC
    发表于 10-17 15:36 1027次阅读
    浅谈<b class='flag-5'>S7-300</b> CPU集成PN口配置的Modbus <b class='flag-5'>TCP</b>通讯技术

    最受欢迎的第三方平台——呼叫中心系统

    中小企业一定要选择正规的呼叫中心供应商,只有应有强大的第三方合作平台,才能拥有更专业的系统团队以及系统维护平台,只有可信的团队才能为企业带来良好的业绩。 本公司呼叫中心系统凭借多年的呼叫中心
    发表于 09-20 17:54

    如何在蜂鸟处理器核的基础上扩展第三方指令?

    想咨询一下如何在蜂鸟处理器核的基础上扩展第三方指令,使用户自定义指令,并如何构建机器码等内容? 我看了胡老师的RISC-V处理器设计的书里面讲的使用custom1-4来进行扩展,并以EAI为实例进行
    发表于 08-16 07:36

    如何确定OpenVINO中第三方组件的相关许可?

    无法确定 OpenVINO™中第三方组件的相关许可。
    发表于 08-15 06:45

    第三方供应商风险评估|不要单独管理第三方风险|虹科分享

    使用ProcessUnity和虹科网络安全评级的整体方法保护您的供应商生态系统赛义亚研究所的一项新研究发现,98%的组织与遭受入侵的第三方有业务往来。报告还发现,公司平均有11个第三方关系,以及数百
    的头像 发表于 05-31 09:34 561次阅读
    <b class='flag-5'>第三方</b>供应商风险评估|不要单独管理<b class='flag-5'>第三方</b>风险|虹科分享

    调用第三方 API 接口会遇到哪些问题

    了 11、接口时好时坏 12、文档和接口逻辑不一致 13、欠费了   前言 在实际工作中,我们经常需要在项目中调用第三方API接口,获取数据,或者上报数据,进行数据交换和通信。 那么,调用第三方 API 接口会遇到哪些问题?如何
    的头像 发表于 05-29 14:31 924次阅读

    S7-300/400集成PN口MODBUS TCP通讯(STEP7)

    该功能块库可以用于S7-300/400单站系统或ET200S带CPU的接口模块通过CPU的集成PN口进行ModbusTCP通讯。
    的头像 发表于 05-29 14:23 3709次阅读
    <b class='flag-5'>S7-300</b>/400集成PN口MODBUS <b class='flag-5'>TCP</b>通讯(<b class='flag-5'>STEP7</b>)