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

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

3天内不再提示

西门子PLC自由口通讯+中断

qianyanjishuhui 来源:爱上PLC 作者:爱上PLC 2022-11-16 11:12 次阅读

在一些特定场合,比如说与松下系列伺服驱动器的控制时,为了保证数据的安全,我们需要进行多次往返的数据交换,这就需要严格控制通讯的时间。那么这个时候对于PLC来说通讯就是最重要的,所以我们需要打断PLC的正常功能,优先处理通讯,这就需要通讯中断。

实例:2台S7-200 SMART CPU(端口0)采用自由口通信方式实现相互通信

(本文仅为展示自由口通讯和中断,如果想要实现这两个PLC的通讯其实最好是使用向导进行以太网通讯,有机会我们也会进行讲解!)

通信任务:CPU1 每秒触发一次 XMT 指令将 CPU 的实时时钟发送到 CPU2;CPU2 接收到 CPU1 发送的信息后立即将 CPU2 的实时时钟回复到 CPU1。

接线:每个 S7-200 SMART CPU 都提供一个以太网端口和一个 RS485 端口(端口0),标准型 CPU 额外支持 SB CM01 信号板(端口1),信号板可通过 STEP 7-Micro/WIN SMART 软件组态为 RS232 通信端口或 RS485 通信端口。

CPU 通信端口引脚分配

1521daee-655b-11ed-8abf-dac502259ad0.png

1、CPU1 编程

1.1、CPU1 主程序编程如图 所示:

15442d60-655b-11ed-8abf-dac502259ad0.jpg

CPU1主程序

程序讲解:

1. 设置 SMB30 = 2#00001001 (自由口通信,波特率 9600 bps,8 位数据位,无校验)。

2. 设置 SMB87 = 2#10010100,使用空闲线检测为信息接收的起始条件,使用字符间定时器为信息接收的结束条件。

3. 设置空闲线定时器 SMW90 = 5 ms,字符间定时器 SMW92 = 5 ms,允许最大接收字符个数 SMB94 = 10。

4. 连接中断子程序 INT_0 到通信端口 0 发送完成事件,并启用中断。

5. 每秒钟读取一次 CPU 的实时时钟,并将发送缓冲区长度设置为 8 个字符。

6. 执行 XMT 指令之前设置 SM87.7 = 0,同时执行 RCV 指令,终止消息接收。

7. 每秒钟执行一次 XMT 指令将 CPU 的实时时钟发送出去。

1.2、 CPU1 发送完成中断子程序 INT_0 编程

中断子程序INT_0用于恢复 SMB87 的设置(SM87.7 = 1),并执行 RCV 指令开始接收 CPU2的应答信息。程序如图4. 所示:

1708dc36-655b-11ed-8abf-dac502259ad0.png

CPU1 中断子程序 INT_0

2、CPU2 编程

2.1、CPU2 主程序编程如图所示:

1740b84a-655b-11ed-8abf-dac502259ad0.jpg

CPU2主程序

1. 设置 SMB30 = 2#00001001 (自由口通信,波特率 9600 bps,8 位数据位,无校验)。

2. 设置 SMB87 = 2#10010100,使用空闲线检测为信息接收的起始条件,使用字符间定时器为信息接收的结束条件。

3. 设置空闲线定时器 SMW90 = 5 ms,字符间定时器 SMW92 = 5 ms,允许最大接收字符个数 SMB94 = 10。

4. 连接中断子程序 INT_0 到通信端口 0 接收完成事件,中断子程序 INT_1 到通信端口 0 发送完成事件,并启用中断。

5. 使用 SM0.1 调用 RCV 指令地执行。

2.2、 CPU2 接收完成中断子程序 INT_0 编程

中断子程序INT_0用于读取 CPU 实时时钟,并调用 XMT 指令将实时时钟信息发送出去。程序如图所示。

17602e6e-655b-11ed-8abf-dac502259ad0.png

CPU2 接收完成中断子程序 INT_0

2.3、 CPU2 发送完成中断子程序 INT_1 编程

中断子程序 INT_1 用于执行 RCV 指令,并开始新的信息接收任务。程序如图 7.所示。

1794872c-655b-11ed-8abf-dac502259ad0.png

CPU2 发送完成中断子程序 INT_0

审核编辑 :李倩

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

    关注

    5022

    文章

    13449

    浏览量

    467333
  • 通讯
    +关注

    关注

    9

    文章

    919

    浏览量

    35241
  • 伺服驱动器
    +关注

    关注

    22

    文章

    496

    浏览量

    32035

原文标题:西门子PLC自由口通讯+中断,有多少人用过?

文章出处:【微信号:爱上PLC,微信公众号:爱上PLC】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ABB机器人与西门子PLC通讯案例

    在现代工业自动化领域中,机器人与可编程逻辑控制器(PLC)之间的通讯是实现高效、精准生产线的关键。ABB机器人与西门子PLC作为行业内的佼佼者,其
    的头像 发表于 02-02 16:43 369次阅读

    Profinet转Profinet网关应用在霍尼韦尔DCS与西门子1500PLC通讯案例

    Profinet转Profinet网关在霍尼韦尔DCS与西门子1500PLC通讯中的应用案例
    的头像 发表于 12-12 06:31 356次阅读
    Profinet转Profinet网关应用在霍尼韦尔DCS与<b class='flag-5'>西门子</b>1500<b class='flag-5'>PLC</b><b class='flag-5'>通讯</b>案例

    Profinet 转 EtherNet/IP 网关怎样化解西门子 S7 - 1500 PLC 与 AB PLC 之间的通讯难题

    寄存器文件涉及到通讯,分别对应西门子PLC的M、DB1、DB2三个存储区域。通过捷米特网关的参数设置软件进行配置,配置完成后下载重启,再通过网关的参数配置软件读取网关参数,根据状态消息调试。 二.设备
    的头像 发表于 12-09 16:51 539次阅读
    Profinet 转 EtherNet/IP 网关怎样化解<b class='flag-5'>西门子</b> S7 - 1500 <b class='flag-5'>PLC</b> 与 AB <b class='flag-5'>PLC</b> 之间的<b class='flag-5'>通讯</b>难题

    西门子PLC的复位操作

    西门子PLC(Programmable Logic Controller,可编程逻辑控制器)是一种广泛应用于工业自动化领域的控制设备。在实际应用过程中,有时需要对PLC进行复位操作,以解决一些程序
    的头像 发表于 08-16 17:46 4813次阅读

    西门子PLC与ABB变频器通讯怎么实现

    在现代工业自动化领域中,西门子PLC(Programmable Logic Controller,可编程逻辑控制器)与ABB变频器之间的通讯是实现高效、稳定控制的关键环节。西门子
    的头像 发表于 06-19 15:29 3888次阅读

    西门子PLC与IO模块如何通讯

    Module)作为与外部设备交互的桥梁,其重要性不言而喻。本文将详细阐述西门子PLC如何与IO模块进行通讯,从通讯原理、通讯方式、配置步骤
    的头像 发表于 06-19 10:46 2477次阅读

    ABB机器人与西门子PLC的Profinet通讯设置

    在现代工业自动化领域中,机器人与PLC之间的通讯是实现高效、精准生产的重要环节。ABB机器人与西门子PLC之间的Profinet通讯设置,是
    的头像 发表于 06-17 10:59 6531次阅读

    西门子PLC中OB块的功能详解

    西门子PLC(Programmable Logic Controller)作为工业自动化领域的核心设备,其内部功能强大、应用广泛。在西门子PLC中,OB块(Organization B
    的头像 发表于 06-15 11:27 5658次阅读

    西门子PLC的作用和工作原理

    在工业自动化领域中,可编程逻辑控制器(Programmable Logic Controller,简称PLC)扮演着至关重要的角色。西门子PLC,作为PLC市场中的佼佼者,凭借其卓越的
    的头像 发表于 06-15 11:26 2931次阅读

    西门子PLC的发展历史

    西门子,作为全球知名的工业自动化和数字化企业,其PLC(可编程逻辑控制器)产品的发展历程是工业自动化领域的重要篇章。从早期的二进制控制器到如今的智能化、网络化控制系统,西门子PLC的发
    的头像 发表于 06-15 11:26 2568次阅读

    西门子PLC与伺服控制器如何通讯

    在工业自动化领域中,西门子PLC(Programmable Logic Controller,可编程逻辑控制器)与伺服控制器之间的通讯是实现高效、精确控制的关键环节。本文旨在详细阐述西门子
    的头像 发表于 06-14 15:49 3042次阅读

    西门子PLC总线故障怎么解决

    在工业自动化领域,西门子PLC(Programmable Logic Controller,可编程逻辑控制器)以其高可靠性、强稳定性和丰富的功能而备受青睐。然而,在实际应用中,PLC总线故障时有发生
    的头像 发表于 06-13 18:18 2873次阅读

    西门子plc模块型号详解

    西门子PLC(Programmable Logic Controller,可编程逻辑控制器)是工业自动化领域中非常重要的一种设备,其模块化的设计使得其应用范围非常广泛。本文将详细介绍西门子PL
    的头像 发表于 06-11 16:18 7507次阅读

    485还是网西门子PLC通讯方式到底怎么选?

    西门子PLC都有一定的了解,但要你说出西门子PLC各种通信方式的特点,相信很多人都不能完整答出。下面给大家介绍几种常见的西门子通信方式及其
    的头像 发表于 04-24 11:04 1425次阅读
    485<b class='flag-5'>口</b>还是网<b class='flag-5'>口</b>?<b class='flag-5'>西门子</b><b class='flag-5'>PLC</b><b class='flag-5'>通讯</b>方式到底怎么选?

    西门子S7-COMM协议300 400如何使用?

    1 驱动简介 西门子3****00 (包括314C-2PN/DP、315-2PN/DP等) 400 (包括412-2PN、414-3PN/DP等) 自带网 ,外部设备可通过此PLC
    的头像 发表于 04-18 16:18 1281次阅读
    <b class='flag-5'>西门子</b>网<b class='flag-5'>口</b>S7-COMM协议300  400如何使用?