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

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

3天内不再提示

S7-300使用单边编程方式PUT、GET指令进行通信

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

S7单边通信,仅需在客户端侧进行组态编程;服务器侧CPU无需组态编程。

所以在编程组态和建立连接方面,S7-300PN口做客户端,只需要在 S7-300CPU 侧建立单边连接,使用单边编程方式 PUT,GET 指令进行通信。

2157bedc-5ab1-11ed-a3b6-dac502259ad0.jpg S7-300集成PN口侧组态编程

2157bedc-5ab1-11ed-a3b6-dac502259ad0.jpg 服务器侧:S7-1200/1500CPU注意事项

所完成的通信任务:

21702cf6-5ab1-11ed-a3b6-dac502259ad0.jpg S7-300 集成PN口CPU 作为客户端读取 对方S7 CPU中 DB1 的数据到 S7-300 的 DB3 中。
21702cf6-5ab1-11ed-a3b6-dac502259ad0.jpg S7-300 集成PN口CPU 作为客户端将本地 DB4 中的数据写到 对方 S7 CPU中 DB2 中。

项目创建环境:TIA V13 SP1

S7-300集成PN口侧组态编程

21702cf6-5ab1-11ed-a3b6-dac502259ad0.jpg 新建项目并完成硬件配置(具体步骤请参见文档:CPU硬件组态入门)

2188a70e-5ab1-11ed-a3b6-dac502259ad0.png

图1. 组态设置子网

219c524a-5ab1-11ed-a3b6-dac502259ad0.jpg 网络组态

打开 “Network View(网络视图)” 配置网络,首先点中左上角的“Connections(网络)”图标,选择“S7 Connection(S7连接)”,然后选中300 CPU,右键选择“Add new connection(添加新连接)”如图所示。

21a1934a-5ab1-11ed-a3b6-dac502259ad0.png

图2. 添加连接

然后在“Create new connection(连接)”窗口中,选择“Unspecified”,然后点击“Add”建立 S7 连接,如图2.所示。

21ae1ad4-5ab1-11ed-a3b6-dac502259ad0.png

图3.建立 S7 连接

“S7_Connection_1(S7_连接_1)”为建立的连接,选中连接,在属性的“General(常规)”条目中填写对方设备的IP地址,如下图4.所示。

21db8758-5ab1-11ed-a3b6-dac502259ad0.png

图4. 定义连接对方的 IP 地址

21eb3900-5ab1-11ed-a3b6-dac502259ad0.png

图5. 定义通讯双方的 TSAP 号

21fd589c-5ab1-11ed-a3b6-dac502259ad0.jpg注意:

通信的对方设备为

S7-300集成PN口或CP卡 ,TSAP地址:03.02

S7-400集成PN口或CP卡 ,TSAP地址:03.XX; XX为400CPU设计插槽号

S7-1200集成PN口 ,TSAP地址:03.00,或03.01

S7-1500集成PN口或CP卡,TSAP地址:03.01

2209f32c-5ab1-11ed-a3b6-dac502259ad0.png

图6. 连接 ID 号

21fd589c-5ab1-11ed-a3b6-dac502259ad0.jpg注意:此处的ID号,将在编程的PUt,GET块中填写(16进制)

配置完网络连接,编译保存并下载

2245599e-5ab1-11ed-a3b6-dac502259ad0.jpg

图7. 通讯连接状态

219c524a-5ab1-11ed-a3b6-dac502259ad0.jpg 指令块编程

在 OB1 中,从“Instruction(指令)” >“Communication(通信)” >“S7 Communication(S7通信)”下,调用Get、Put通信指令,创建接收和发送数据块 DB3 和 DB4,定义成 101 个字节的数组,程序调用如下图8.所示。

225aedd6-5ab1-11ed-a3b6-dac502259ad0.png

图8. 程序调用功能

功能块管脚说明:

CALL “GET” DB1 //调用 GET,使用背景DB块:DB1;
REQ M10.0+P沿 //上升沿触发或使用系统时钟
ID W#16#0001 //连接号,要与连接配置中一致,创建连接时的连接号,如图5.所示;
NDR M30.0 //为1时,接收到新数据;
ERROR M30.1 //为1时,有故障发生;
STATUS MW32 //状态代码;
ADDR_1 P#DB1.DBX0.0 BYTE 10 //从通信伙伴数据区读取数据的地址;
RD_1 P#DB3.DBX0.0 BYTE 10 //本地接收数据地址;
CALL “PUT” DB2 //调用 PUT,使用背景DB块:DB2;
REQ M10.0+P沿 //上升沿触发或使用系统时钟 ;
ID W#16#0001 //连接号,要与连接配置中一致,创建连接时的连接号,如图5.所示;
DONE M30.2 // 为1时,发送完成;
ERROR M30.3 // 为1时,有故障发生;
STATUS MW34 // 状态代码;
ADDR_1 P#DB2.DBX0.0 BYTE 10 // 发送到通信伙伴数据区的地址;
SD_1 P#DB4.DBX0.0 BYTE 10 // 本地发送数据区。

219c524a-5ab1-11ed-a3b6-dac502259ad0.jpg 监控结果

通过在 S7-300 侧编程进行 S7 通讯,实现两个 CPU 之间数据交换,以S7-1200为例,结果如下图。
227b821c-5ab1-11ed-a3b6-dac502259ad0.jpg

图9. 监控结果

服务器侧:S7-1200/1500CPU注意事项

当通信的对方CPU为S7-1200或S7-1500时,有如下步骤必须设置。

1. S7-1200,S7-1500用于通信存放数据的DB块,必须设置为“非优化”(即默认的勾选取消掉)如图10所示:

22885460-5ab1-11ed-a3b6-dac502259ad0.png

图10. S7-1x00的数据块非优化设置

2. S7-1200CPU固件V4.0以上和S7-1500CPU,在CPU属性--->保护--->连接机制中,

勾选“允许从远程伙伴...”,如图11所示,

2298c872-5ab1-11ed-a3b6-dac502259ad0.png

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

    关注

    12

    文章

    8352

    浏览量

    83567
  • 编程
    +关注

    关注

    88

    文章

    3474

    浏览量

    92869
  • PUT
    PUT
    +关注

    关注

    0

    文章

    5

    浏览量

    6280

原文标题:S7-300 集成PN口作客户端与S7-300/400/1200/1500的 S7 单边通信(TIA)

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

收藏 人收藏

    评论

    相关推荐

    S7-300模块数据(中文)

    S7-300模块数据(中S7-300模块数据(中S7-300模块数据(中
    发表于 06-16 17:57 3次下载

    SIMATIC S7-300 PLC及指令系统

    SIMATIC S7-300 PLC及指令系统
    发表于 12-09 15:30 0次下载

    S7-200与S7-300之间的通讯方式图文详解

    S7-200和S7-300进行MPI通信S7-200 plc与S7-300 PLC之间采用MPI
    的头像 发表于 12-04 18:33 5.4w次阅读
    <b class='flag-5'>S7</b>-200与<b class='flag-5'>S7-300</b>之间的通讯<b class='flag-5'>方式</b>图文详解

    S7-300编程超全超细讲解

    本文是关于S7-300编程超全超细讲解
    发表于 03-06 10:15 1.2w次阅读
    <b class='flag-5'>S7-300</b><b class='flag-5'>编程</b>超全超细讲解

    S7-1200的PUTGET通信操作手册免费下载

    本文档的主要内容详细介绍的是S7-1200的PUTGET通信操作手册免费下载。
    发表于 01-22 08:00 25次下载
    <b class='flag-5'>S7</b>-1200的<b class='flag-5'>PUT</b>和<b class='flag-5'>GET</b><b class='flag-5'>通信</b>操作手册免费下载

    西门子S7-200和S7-300进行的以太网通信

    S7-200和S7-300进行以太网通信,使用STEP 7 Micro/WIN32中的向导进行
    的头像 发表于 04-28 15:27 7576次阅读
    西门子<b class='flag-5'>S7</b>-200和<b class='flag-5'>S7-300</b><b class='flag-5'>进行</b>的以太网<b class='flag-5'>通信</b>

    西门子S7-300PLC与S7-200的SMART系列进行以太网S7通信

    通信接口为S7-300 集成PN接口时,需要使用Standard Library中PUT/GET指令
    发表于 02-13 17:12 1.2w次阅读
    西门子<b class='flag-5'>S7-300</b>PLC与<b class='flag-5'>S7</b>-200的SMART系列<b class='flag-5'>进行</b>以太网<b class='flag-5'>S7</b><b class='flag-5'>通信</b>

    SIMATIC S7-300S7-400梯形逻辑编程

    SIMATIC S7-300S7-400梯形逻辑编程说明。
    发表于 04-21 14:07 8次下载

    详解西门子S7-300基本指令应用

    详解西门子S7-300基本指令应用说明。
    发表于 04-22 14:58 23次下载

    VB与西门子S7-300的通讯方式

    VB与西门子S7-300的通讯方式说明。
    发表于 04-23 15:55 26次下载

    用于S7-300S7-400的功能块图(FBD)编程

    用于S7-300S7-400的功能块图(FBD)编程说明。
    发表于 04-30 09:54 26次下载

    S7-1200与S7-300 PN口之间的以太网通信方法

    S7-1200 与 S7-300 PN 口之间的以太网通信可以通过 UDP 协议来实现,使用的通信指令是在双方 CPU 调用
    的头像 发表于 04-11 09:44 6372次阅读

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

    S7-1200 与 S7-300 CP 之间的以太网通信可以通过 UDP 协议来实现,使用的通信指令是在
    的头像 发表于 04-08 10:48 1486次阅读

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

    S7-1200 与 S7-300 CP 之间的以太网通信可以通过 UDP 协议来实现,使用的通信指令是在
    的头像 发表于 04-08 10:49 1823次阅读

    使用PUTGET指令通过S7连接在两个CPU之间交换数据

    使用 PUTGET 指令通过 S7 连接在两个 CPU 之间交换数据。
    的头像 发表于 12-14 16:53 4954次阅读
    使用<b class='flag-5'>PUT</b>和<b class='flag-5'>GET</b><b class='flag-5'>指令</b>通过<b class='flag-5'>S7</b>连接在两个CPU之间交换数据