当前位置: 首页 > news >正文

S7-1200 与 S7-300 CPS7-400 CP UDP 通信 Step7 项目编程

S7-1200 CPU 与S7-300 CP STEP7 UDP通信

S7-1200 与 S7-300 CP 之间的以太网通信可以通过 UDP 协议来实现,使用的通信指令是在S7-1200 CPU 侧调用通信-开放式用户通信TSEND_C,TRCV_C指令或TCON,TDISCON,TUSEND,TURCV 指令,在 S7-300 CPU 侧调用 AG-SEND, AG-RECV 指令来实现。

此外对于伙伴是S7-400 CP也可以参考本文档。

硬件和软件需求及所完成的通信任务

测试软/硬件:

① S7-1214 DC/DC/DC V4.4

② S7-315-2PN/DP V2.6

③S7-300 CP343-1 V2.0

④STEP7 V16

⑤STEP7 V5.5 SP4

所完成的通信任务:

① S7-1200 CPU将通讯数据区 DB4 块中的 10 个字节的数据发送到 S7-300 CPU的接收数据区 DB5 块中。

② S7-300 CPU将通讯数据区 DB5 块中的 10 个字节的数据发送到 S7-1200 CPU的接收数据区 DB4 块中。

S7-1200 侧硬件组态、编程和连接参数的配置

该部分内容和S7-1200 与 S7-300 PNS7-400 PN UDP 通信 TIA 不同项目的S7-1200 侧硬件组态、编程和连接参数的配置章节一致,请参见相关文档。

S7-300CP 侧硬件组态、编程和连接参数的配置

1.添加300CPU和CP343-1硬件

在硬件配置内添加300机架,在300机架内添加315-2PN/DP CPU和CP343-1,如图1所示。

A screenshot of a computerDescription automatically generated

图1. 添加300 CPU和CP343-1设备

为了编程方便,使用 CPU 属性中定义的时钟位,定义方法如下:

双击硬件配置机架内的CPU 315-2PN/DP ,进入CPU属性设置,选择Cycle/Clock Memory,然后激活Clock memory时钟字节定义为 MB0,如图2所示。

时钟位使用 M0.5,以 1Hz 的速率自动激活发送任务。

A screenshot of a computer programDescription automatically generated

图2. 启动时钟存储器

2.组态CP343-1并配以太网地址

双击CP343-1设置CP IP地址,分配 IP 地址为 192.168.0.4,子网掩码为255.255.255.0,如图3所示。

A screenshot of a computerDescription automatically generated

图3. 分配300CP IP 地址

3.在Netpro内组态UDP连接

①硬件配置完毕后,点击Netpro图标,如图1所示。进入Netpro组态UDP连接,如图4所示。

A screenshot of a computerDescription automatically generated

图4. Netpro内新建UDP连接

②选择未指定的伙伴,然后确定,如图5所示。

A screenshot of a computerDescription automatically generated

图5. 新建未指定UDP连接

③添加完成后,可进一步设置UDP连接参数, 如图6所示。

A screenshot of a computerDescription automatically generated

图6. 查看新建的UDP连接

④连接的属性-地址内,设置新建连接的本地ID和伙伴IP及端口,如图7所示。

A screenshot of a computerDescription automatically generated

图7.设置连接伙伴IP及端口号

⑤300侧新建UDP连接配置完毕,如图8所示。

A screenshot of a computerDescription automatically generated

图8.Netpro内新建的UDP连接

4.在 S7-300 中调用通信指令

打开OB1,在作出指令树内调用UDP通信指令,“库” > “SIMATIC_NET_CP” > “CP300”下,调用 “AG_SEND” 、“AG_RECV” 指令。创建接收和发送数据块 DB5,发送10字节数组,接收10字节数组,如图9所示。

A screenshot of a computerDescription automatically generated

图9. 调用AG_SEND和AG_RECV指令

指令管脚参数说明:

CALL “AG_SEND”// 调用 AG_SEND
ACT:=%M0.5// 使用 1Hz 的时钟脉冲,上升沿激活发送任务
ID:=1// 连接号,要与连接配置中一致
LADDR:=W#16#100// CP 的地址,要与配置中一致见图8,块参数
SEND:=“Data”.usend// 发送数据区
LEN:=10// 发送数据的长度
DONE:=%M10.1// 为1时,发送完成
ERROR:=%M10.2// 为1时,有故障发生
STATUS:=%MW12// 状态代码

CALL “ AG_RECV”// 调用 AG_RECV
ID:=1// 连接号,要与连接配置列表中一致,
LADDR:=W#16#100// CP 的地址,要与配置中一致见图8,块参数
RECV:==“Data”.urcv// 接收数据区
NDR:=%M20.0// 为1时,接收到新数据
ERROR:=%M20.1// 为1时,有故障发生
STATUS:=%MW22// 状态代码
LEN:=%MW24// 接收到的实际数据长度

300CPU侧配置和编程完成,编译并存盘。

下载硬件组态及程序并监控通信结果

下载两个 CPU 中的所有硬件组态及程序,实现 两个 CPU 之间数据交换,监控结果如图10所示。

A screenshot of a computerDescription automatically generated

图10. 监控结果

http://www.dtcms.com/a/273419.html

相关文章:

  • MS1826+MS9332 4K@30Hz HD4×2视频分割器
  • .net服务器Kestrel配置Nginx作为反向代理
  • 如何准确查看服务器网络的利用率?
  • 如何查看自己本地的公网IP地址?内网环境网络如何开通服务器公网ip提供互联网访问?
  • UDP服务器的优缺点都包含哪些?
  • Spring Boot主从服务器详解教程
  • 性能狂飙 Gooxi 8卡5090服务器重新定义高密度算力
  • 中国银联豪掷1亿采购海光C86架构服务器
  • 没有管理员权限,在服务器安装使用 Jupyter + R 内核
  • JVM 内存结构
  • QTextCodec的功能及其在Qt5及Qt6中的演变
  • RLHF(人类反馈的强化学习)
  • Java JDK 下载指南
  • ThinkBook 14s IWL(20RM)OEM系统镜像原厂Win10系统
  • Zero-Shot(零样本学习),One-Shot(单样本学习),Few-Shot(少样本学习)概述
  • CVE-2023-41990/CVE-2023-32434/CVE-2023-38606/CVE-2023-32435
  • Spring事务管理深度解析:原理、实践与陷阱
  • 开发需要写单元测试吗?
  • 关键字前跟空格或首字母, 关键字后跟空格或标点符号; 标点符号后面不是必须跟空格;
  • 无监督光流,unflow, uflow,upflow
  • imx6ull-裸机学习实验14(下)——驱动DDR3和测试
  • 数组和指针回顾,练习与解析
  • OSCP官方靶场-Solstice WP
  • 【第二节】ubuntu server配置静态IP
  • (思维)洛谷 P3081 USACO13MAR Hill Walk 题解
  • 网络安全基础概念以及虚拟环境的搭建
  • alpinelinux的网络配置
  • ZW3D 二次开发-创建六面体方框
  • 力扣面试150题--全排列
  • AOSP自启动拦截框架Intent Firewall