西门子PLC经典案例,用两种编程方法实现两灯交替闪烁
今天给大家说一个西门子案例——西门子S7-200SMART PLC怎么实现两灯交替闪烁
我们先来看看这个案例的具体要求:
使用定时器Q0.0和Q0.1,当按下启动按钮时Q0.0亮,1秒后Q0.0灭,同时Q0.1亮,再过两秒后Q0.1灭。以此循环,直到按下停止按钮,Q0.0和Q0.1全灭
首先画时序图。再用定时器加比较的方法会把很多复杂的东西简单化
时序图就是表示地址或变量根据时间的变化而变化的图形
整个占用的时间为3秒,需要用到100毫秒定时器
设:定时器的当前值为X,0≦X﹤10的时候,Q0.0亮;当10≦X﹤30时,Q0.1亮。
接下来就是循环的问题,循环就是用最后一个状态作为第一个状态的启动条件。
定时器PT值为3秒(数值计作30),使用TNO接通延时定时器,当当前值=设定值,状态输出为1时,即定时器状态位T37=1时,就去复位定时器,再从0开始,这个就是自复位,就是自己复位自己,到了3秒就从0开始。
最后梳理下编写程序的思路:
1、 启停控制——输出启动标志位,输出为1,并保持(自锁)
2、 定时器控制——用启动标志位去接通定时器,让其工作
3、 比较——0-1秒Q0.0输出,1-3秒Q0.1输出
于是程序如图:
此外还有第二种方法哦,会使用到震荡电路(闪烁电路)以及两个定时器交替控制,一个控制接通时间,一个控制断开时间,一起来看看。
看完这段程序,建议大家还是自己动手 操作一遍,效果会更好哦!
往期优秀文章回顾:238道低压/初级电工考试题,2017和2018版(附答案)
PLC控制彩灯项目,超详细案例讲解,快来收藏
导读:本案例主要让读者练习西门子S7-200SMART系列PLC位逻辑指令、定时器、移位指令、子程序的结构等。
控制示意图
如图3-1所示为彩灯控制示意图。
图3-1 彩灯控制
控制要求描述
现有L1-L8共8盏彩灯,要求按下开始按钮,霓虹灯L1-L8以正序每隔1S轮流点亮,当L8亮后,停2S;然后,反向逆序间隔1S轮流点亮,当L1再亮后,停5S,重复上述过程。按下停止按钮,彩灯停止工作。
I/O分配
根据控制要求描述对需要用到的I/O进行分配,如图3-2所示:
图3-2 I/O分配表
【相关指令解读】:此案例主要用到移位指令和其它指令配合,这里主要解读移位指令。
循环左移字节(图3-2):循环移位指令将输入值 IN 的位值循环左移位,位置循环移位计数 N,然后将结果装载到分配给 OUT 的存储单元中。 循环移位操作为循环操作。
图3-2:循环左移字节
举例说明1:程序如图3-3,利用系统时钟SM0.1第一个扫描周期给QB0字节中赋值为1,此时QB0中最低位(Q0.0)为 1。当按下I0.0按钮后,QB0字节中的数据左移一位,Q0.1变为1。
图3-3
举例说明2:程序如图3-4,利用系统时钟SM0.1第一个扫描周期给QB0字节中赋值为1,此时QB0中最低位(Q0.0)为 1。当按下I0.0按钮后,QB0字节中的数据左移二位,Q0.2变为1。
图3-4
循环右移字节: 如图3-5,循环移位指令将输入值 IN 的位值循环右移,位置循环移位计数 N,然后将结果装载到分配给 OUT 的存储单元中。 循环移位操作为循环操作。
图3-5:循环右移字节
举例说明1:程序如图3-6,利用系统时钟SM0.1第一个扫描周期给QB0字节中赋值为1,此时QB0中最低位(Q0.0)为 1。当按下I0.0按钮后,QB0字节中的数据右移一位,Q0.7变为1。
图3-6
举例说明2:程序如图3-7,利用系统时钟SM0.1第一个扫描周期给QB0字节中赋值为1,此时QB0中最低位(Q0.0)为 1。当按下I0.0按钮后,QB0字节中的数据右移二位,Q0.6变为1。
图3-7
程序控制程序
(1)主程序,对数据初始化,调用相关子程序。M1.0接通代表左移位开始,左移开始之前,将1赋值给QB0。M1.2接通代表右移开始,将128给到QB0, Q0.7为1。程序如图3-8所示
图3-8主程序
(2)循环子程序主要控制灯是启停和循环。按下启动按钮,左移开始标志位M1.0自锁,总共移7位,定时时间为7秒,左移完成断开M1.0延时2秒接通右移标志位M1.2。右移完成延时5秒接通M1.0左移开始标志位,形成循环。程序如图3-9所示
图3-9循环程序
(3)左移程序,利用移位指令和系统时钟配合。程序如图3-10所示
图3-10左移程序
(4)右移子程序程序,利用移位指令和系统时钟配合。程序如图26-6所示
本案例采用子程序的结构编程,并且结合循环指令、定时器指令等编写彩灯循环案例。希望大家能在此文章中汲取西门子200SMART PLC编程相关知识及理念。
(来源:技成培训网,作者:郭彪,留言处大家可以补充文章解释不对或欠缺的部分)
相关问答
plc怎么控制两个灯循环亮?
使用了R901C与非指令动作2个灯的发光控制,因此启动时不能保证灯1或是灯2首先发光。这是由于启动时刻与R901C的脉冲产生时刻不能保证同步,因此,若启动时R901C刚...
...接着第三个灯亮5秒后熄灭,以后循环。(灯额定电压为22_作业帮
[最佳回答]用顺控图法,很简单了,按时间顺序分步,一步步坐下来就可以了
跑马灯plc控制是怎么亮的?
跑马灯PLC控制是通过编写PLC程序实现的。在程序中,先定义好跑马灯需要控制的灯的个数和顺序,然后通过PLC输出模块控制相应的输出口进行开关控制,从而实现灯的...
如何用PLC控制灯亮3S,灭2S,循环。还有那图的指令怎么编的,怎么我编不出来呢?
这个还是比较简单的,给你提示一下吧,图就不给你画了。可以搞一个自锁回路连接5秒计时器,当时间小于等于3秒让线圈输出,时间大于等于3秒线圈不输出,计时够5秒...
plc输入灯闪烁一会又正常怎么回事?
故障原因的方法:1.电源指示([POWER]LED指示)当向PLC基本单元供电时,基本单元表面上设置的[POWER]LED指示灯会亮。如果电源合上但[POWER]LED指...此时可进行...
plc控制5个灯,按顺序的依次亮和熄灭,相隔时间2秒,要有来回循环?
时间继电器比较指令。第一个小于两秒接通。第二个大于两秒小于四秒接通。以此类推。时间继电器比较指令。第一个小于两秒接通。第二个大于两秒小于四秒接通。...
plc中灯闪烁用程序怎么表示?
如果要在PLC中实现灯闪烁的功能,需要编写一个简单的程序。首先,需要定义一个变量来控制灯的状态,例如将其设置为布尔类型的变量。接下来,在主程序中使用一个...
plc呼吸灯的原理和程序?
PLC呼吸灯的原理是通过控制PLC输出信号的变化,使灯光逐渐从暗到亮再从亮到暗,形成呼吸灯的效果。程序方面,需要使用PLC的计时器、比较器等功能模块,设定相应...
...的启停与控制.3.20盏灯,启动时每隔1秒亮一盏,熄灭时】作业帮
[最佳回答]20换这么多题,你能在小气点不
plc六个灯循环点亮的方法?
将每个灯用一个计时器连接,计时器开通时间为1秒(反正就是一个固定的时间),然后在1秒钟下降沿触发下一个灯的计时器,同样设置成1秒,第六个灯亮1秒钟后,只要...