西门子PLC利用自由口实现通讯,配合中断效果好!图文实例讲解!
以前我们讲过关于自由口通讯的实例,今天我们讲一下自由口通讯配合中断的实例。
在一些特定场合,比如说与松下系列伺服驱动器的控制时,为了保证数据的安全,我们需要进行多次往返的数据交换,这就需要严格控制通讯的时间。那么这个时候对于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 通信端口引脚分配
1、CPU1 编程1.1、CPU1 主程序编程如图 所示:
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. 所示:
CPU1 中断子程序 INT_0
2、CPU2 编程
2.1、CPU2 主程序编程如图所示:
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
电气工程师要收藏!PLC输入端口和输出端口工作原理图解
输入输出接口是plc和工业控制现场各类信号连接的部分。输入口用来接受生产过程的各种参数。输出口用来送出可编程控制器运算后得出的控制信息,并通过机外的执行机构完成工业现场各类控制。由于可编程控制器在工业生产现场工作,对输入输出接口有两个主要的要求,一是接口有良好的抗干扰能力,二是接口能满足工业现场各类信号的匹配要求。
1.输入端口
可编程控制器为不同的接口需求设计了不同的接口单元。主要有以下几种。
( 1 )数字量输入接口
它的作用是把现场的数字(开关)量信号变成可编程控制器内部处理的标准信号。数字(开关)量输入接口按可接纳的外部信号电源的类型不同分为直流输入接口单元和交流输入接口单元。如图 1 、图 2 、图 3 所示。
图 1 直流输入接口单元电路
图 2 交 / 直流输入接口单元电路
图 3 交流输入电路
从图中可以看出,数字量(开关)输入接口单元中都有滤波电路及耦合隔离电路。滤波有抗干扰的作用,耦合有抗干扰及产生标准信号的作用。图中数字量(开关)输入接口单元的电源部分都画在了输入口外(虚线框外),这是分体式数字量(开关)输入接口单元的画法,在一般单元式可编程控制器中输入接口单元都使用可编程本机的直流电源供电,不再需要外接电源。
( 2 )模拟量输入接口
它的作用是把现场连续变化的模拟量标准信号转换成适合可编程序控制器内部处理的由若干位二进制数字表示的信号。模拟量输入接口接受标准模拟信号,无论是电压信号还是电流信号均可。这里标准信号是指符合国际标准的通用交互用电压电流信号值,如 4 ~ 20mA 的直流电流信号, 1 ~ 10V 的直流电压信号等。工业现场中模拟量信号的变化范围一般是不标准的,在送入模拟量接口时一般都需经变送处理才能使用。图 4 是模拟量输入接口的内部电路框图。
图 4 模拟量输入电路框图
模拟量信号输入后一般经运算放大器放大后进行 A/D 转换,再经光电耦合后为可编程控制器提供一定位数的数字量信号。
2.输出端口
( 1 )数字(开关)量输出接口
它的作用是把可编程内部的标准信号转换成现场执行机构所需的数字(开关)量信号。数字(开关)量输出接口按可编程控制器机内使用的器件可分为继电器型、晶体管型及可控硅型。内部参考电路图见图 5 所示。
图 5 数字(开关)量输出电路
从图中可以看出,图 5 ( a )为继电器型、图 5 ( b )为晶体管型、图 5 ( c )为可控硅型。各类输出接口中也都具有隔离耦合电路。这里特别要指出的是,输出接口本身都不带电源,而且在考虑外驱动电源时,还需考虑到输出设备器件的类型。继电器式的输出接口可用于交流及直流两种驱动电源,但接通断开的频率低,晶体管式的输出接口有较高的接通断开频率,但只适用于直流驱动的场合,可控硅型的输出接口仅适用于交流驱动场合。
( 2 )模拟量输出接口
它的作用是将可编程控制器运算处理后的若干位数字量信号转换为相应的模拟量信号输出,以满足生产过程现场连续控制信号的需求。模拟量输出接口一般由光电隔离、 D/A 转换和信号驱动等环节组成。其原理框图见图 2-7 。
图 2-7 模拟量输出电路框图
模拟量输入输出接口一般安装在专门的模拟量工作单元上。
3.智能输入输出接口
为了适应较复杂的控制工作的需要,可编程控制器还有一些智能控制单元。如 PID 工作单元、高速计数器工作单元、温度控制单元等。这类单元大多是独立的工作单元。它们和普通输入输出接口的区别在于其一般带有单独的 CPU ,有专门的处理能力。在具体的工作中,每个扫描周期智能单元和主机的 CPU 交换一次信息,共同完成控制任务。从近期的发展来看,不少新型的可编程控制器本身也带有 PID 功能及高速计数器接口,但它们的功能一般比专用智能输入输出单元的功能稍弱。
加油武汉!加油湖北!加油中国!一起加油吧!
来源:网络
喜欢就点个赞 ,满意就转发一下 ,随手加个关注 呗!(跪求不要取关QAQ)
还想了解更多关于“电气”,欢迎在评论区留言或私信哦!
声明:此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请联系,我们将及时更正、删除,谢谢
相关问答
plc端口设置?
位机开发中三菱PLC如果要走MC协议,是不需要额外编程的,但是需要做一些简单的配置。1.在右侧工程栏中双击PLC参数;2、在弹框中选择内置以太网端口设置,设置I...
step7怎么和plc200通讯?
要将STEP7与PLC200进行通讯,需要通过S7通信协议建立连接。首先,需要配置PLC的IP地址和端口号。然后,在STEP7软件中创建一个S7连接,设置连接的IP地址和端口号...
西门子PLC200闪灯,传程序提示端口无法打开或被其他应用程序使用?
开始---->运行---->cmd输入命令:netstat-ano,列出所有端口的情况。在列表中我们观察被占用的端口看看是哪个程序用了你这个东西的端口解除掉,或者给占用的换...
请问当S7-200PLC使用L+端口24VDC传感器电源作为输入电压时,输入公共端的1M、2M该怎么接线?
当S7-200PLC使用L+端口24VDC传感器电源作为输入电压时,输入公共端的1M、2M需要与传感器电源的M端连接.不同PLC的输入/输出端子的接线可能不同,一定注意阅读...
台达的PLC程序无法写入!通讯端口已使用或无此通讯端口(COM0)?
属于联接问题,不是端口问题,就是线的问题,端口查查电脑的端口设置,还有数据线是不是好的,PLC的端口也要检查一下,最好的办法,再找一个PLC,做下载或上传试...
西门子plc控制柜s7-200smart的通信端口的连接方式是什么大家...
[回答]西门子plc控制柜当S7-200SAMRTCPU与其它节点联网时,可以将CPU模块右下角的传感器电源的M端与其它节点通信端口的0V参考点连接起来做到等电位连接。...
plc串行端口驱动安装方法?
后查阅。如果程序有错误则RUN指示灯会一闪一闪的;3,先模拟运行,或者不接负载运行。直至符合要求,才可以加上负载,在试运行,此时应该密切观察一段时间,以防以...
plc传感器怎么写程序?
对于传感器的开关,在有触发on无触发off,或者有触发off无触发on,只需把这个开关量信号给plc的输入,plc就采集到信号,这个过程是不用编程的,是根据采集到的信...
丰炜plc编程软件中的PC通讯端口肿么设定-ZOL问答
首先需要传输端口,当PLC与电脑连接通讯线之后,右击“我的电脑”,选择“管理”。在弹出的“计算机管理”窗口中,选择“设备管理器”。查看通讯线所使用的com端...
用昆仑通态触摸屏时西门子PLC输入输出端口地址往哪填?
步骤:1、首先在设备窗口添加串口父设备2、在串口父设备下添加PLC(西门子)3、双击PLC进入设备编辑窗口4、编辑连接地址。即触摸屏和PL...步骤:1、首先在...