您好!欢迎光临 智锋科技!
智锋科技
西门子销售服务商
产品:109  浏览:119663
13681816990
您好,欢迎光临工博士,我们将竭诚为您服务 点击这里给我发消息
您当前的位置:首页 » 新闻中心 » 西门子PLC通讯打断怎么办
产品分类
新闻中心
西门子PLC通讯打断怎么办
发布时间:2022-06-14        浏览次数:25        返回列表

       在一些特定场合,比如说与松下系列伺服驱动器的控制时,为了保证数据的安全,我们需要进行多次往返的数据交换,这就需要严格控制通讯的时间。那么这个时候对于PLC来说通讯就是***重要的,所以我们需要打断PLC的正常功能,优先处理通讯,这就需要通讯中断。
 
实例:2台S7-200 SMART CPU(端口0)采用自由口通信方式实现相互通信
                                      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. 所示:
                                       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 指令将实时时钟信息发送出去。程序如图所示。
 
                 CPU2 接收完成中断子程序 INT_0
 
2.3、 CPU2 发送完成中断子程序 INT_1 编程
 
中断子程序 INT_1 用于执行 RCV 指令,并开始新的信息接收任务。程序如图 7.所示。
 
                        CPU2 发送完成中断子程序 INT_0

此文来源于网络 2022-06-14
想了解更多详情点击:西门子PLC销售
 

工博士热线:0731-82182975  联系人:朱晓梅 联系地址:上海市嘉定区江桥镇博园路1333号1栋7楼

技术和报价服务:星期一至星期六8:00-22:00 西门子销售服务商 访问量:119663  管理入口  技术支持:工博士  免责声明

©2020 智锋科技有限公司 www.zhixianfengw.com