注册名:

密码:

个人注册

企业注册

商务申请

商务管理平台

企业管理平台

个人管理平台

我的工控博客

中国工控网www.chinakong.com

首页 | 新闻中心 | 工控论坛 | 经验视点 | 工控商务 | 电气手册 | 工控博客 | 招聘求职 | 网上调查 | 企业中心 | 供求信息 | 资料中心 | 工控书店

所在位置:工控论坛 -- PLC论坛 -- PLC论坛(非专题) -- PLC应用

中国工控网搜索:

 自动化企业招聘

更多..

 登陆:密码:  注册  密码

搜索:

发表人:空格 发表时间:2009/9/5 17:24:00  

 

 本栏论题: 交通红绿灯的定时器编程方法  [8432]

    交通红绿灯的定时器编程方法
   
    (不知道原来有谁这样做过,不过,这是我的原创首发)
   
    红绿灯编程是学习PLC编程的典型实例。方法有许多,比如顺序控制继电器。
   
    本人刚刚开始学习PLC,本帖介绍完全使用定时器控制红绿灯的方法。此法的原理:
   
    一是任一定时器的时标都是来自系统时钟,不会发生积累误差----我是这样认为的,不过,只是推测,不敢断定。而语句间的时差,不会影响实际效果。
    二是两个方向红绿灯之间的时序关系很简单。
   
    请看时序图:
   
   
   

交通红绿灯的定时器编程方法


   
    图中,红线的波形不在输出信号的范围内,只是表示它是对应控点的一个信号波形。它们和其它多个波形一样,虽然周期相同,但波形高低电平的时刻并不相同,为的是实现我们希望的时序控制。〖说明一点〗图中黑色竖线表示绿灯闪光,红色竖线表示按照启动信号(红线)是可以让绿灯闪的,但如果这样就违背原定灯光发出规则,因此,要用别的逻辑电平来参与并将其封住,使其不能输出。
   
    根据时序图所示,可以看出以下规律:
   
    1)【南北红灯和东西红灯】南北红灯和东西红灯总是状态相反的。因此,一个设定占空比的振荡器可以直接完成控制。根据图中的时间编排,该振荡器的周期为:T= 25 s + 30 s。
   
    2)【南北黄灯】也比较简单,用一个周期为T= 50 s + 5 s的振荡器就OK。
   
    3)【东西黄灯】东西黄灯的控制稍为复杂一点。因为由定时器组成的振荡器,不能实现图闪光方式需要的波形,即只在中间现一次高电平。为了获得t10 = 10 s的发光时间,可以用与红灯输出电平进行与运算的方法来达到目的。
   
    4)【绿灯的发光】也可以通过定时器加上相关逻辑的控制来实现。对东西绿灯,可以在用红灯的反信号点亮,然后,通过一个周期为T= 18 s + 37 s的振荡器转入绿闪过程,而当东西黄灯发光后,又将其关闭就OK了。同理,对南北绿灯,也可以在用红灯的反信号点亮,然后,通过一个周期为T= 50 s + 5 s的振荡器转入绿闪过程,而当东西黄灯发光后,也将其关闭就OK。
   
    5)【绿闪控制】一个专门的振荡器输出信号在启动闪光时刻插入到绿灯通道同时禁止绿灯常亮就可以了。
   
    以东西绿灯为例,当南北红灯亮时,就立即开启它们。当到达绿闪时间后,东西绿闪信号启动,切换到绿闪通道。而要实现这一功能,只要将绿灯常亮信号----南北红灯信号与启动绿闪的反信号串联就可以。实现切换后,将绿闪正逻辑信号直接与闪光信号串联,即能输出绿灯闪亮信号。最后,在黄灯信号到来时关闭它们,就完成了一个周期的绿灯控制了。
   
    南北绿灯的控制方法,同理。不过,由于它是在一个周期的末段,因此,逻辑上并不需要引用南北红灯信号
   

以下是关于《交通红绿灯的定时器编程方法》论题的回复(共10篇)

回复人:空格 

 回复时间:2009/9/5 17:30:00

支持(350) | 反对(366)

 

    用S7-200的程序。没有验证过,劳请有条件的帮助验证。西门子的机子不能仿真,没招。
   
   
    TITLE=PROGRAM COMMENTS ■红绿灯全自动控制
    Network 1
    // ■东西和南北红灯控制1
    LD M3.0
    AN T38
    TON T37, 250
   
    Network 2
    // ■东西和南北红灯控制2
    LD T37
    TON T38, 300
    Network 3
    // ■东西和南北红灯控制3 M0.1=南北红灯(开机或启动时先亮);M0.2=东西红灯
    LD M3.0
    LPS
    A T37
    = M0.2
    LPP
    AN T37
    = M0.1
    Network 4
    // ■南北黄灯控制1
    LD M3.0
    AN T40
    TON T39, 500
    Network 5
    // ■南北黄灯控制2
    LD T40
    TON T40, 50
    Network 6
    // ■南北黄灯控制3
    LD M3.0
    A T39
    = M0.3
    Network 7
    // ■东西黄灯控制1
    LD M3.0
    AN T42
    TON T41, 230
   
    Network 8
    // ■东西黄灯控制2
    LD T41
    TON T42, 320
   
    Network 9
    // ■东西黄灯控制3
    LD M3.0
    A T41
    AN T37
    = M0.4
    Network 10
    // ■绿灯闪动频率与占空比控制1
    LD M3.0
    AN T44
    TON T43, 5
   
    Network 11
    // ■绿灯闪动频率与占空比控制2
    LD T43
    TON T44, 5
   
    Network 12
    // ■东西绿灯及其闪动控制1
    LD M3.0
    AN T46
    TON T45, 200
   
    Network 13
    // ■东西绿灯及其闪动控制2
    LD T45
    TON T46, 350
   
    Network 14
    // ■东西绿灯及其闪动控制3
    // >>绿灯在南北红灯亮时才有可能发光。下图中T37*只说明这一基本关系,但实际却是T41*才恰当地给出绿灯亮时间,因此,T37*是多余的;
    // >>在T45定时时间到前,绿灯常亮,时间到后绿灯将转由T43控制----按T43和T44的定时规则闪亮。
    LD M3.0
    AN T37
    AN T41
    LDN T45
    LD T45
    A T43
    OLD
    ALD
    = M0.6
    Network 15
    // ■南北绿灯及其闪动控制1
    LD M3.0
    AN T48
    TON T47, 460
   
    Network 16
    // ■南北绿灯及其闪动控制2
    LD T47
    TON T48, 90
   
    Network 17
    // ■南北绿灯及其闪动控制3
    // >>显然,南北绿灯只能在东西红灯期间点亮,因此,基本关系是由T37"放行"。再看看T39*,它本是用于南北黄灯控制的,因此,要用它的"反信号"来点亮绿灯。
    // >>但要注意,此处T37是不能省的,不然,T47低期间它也乱亮了。这和东西绿灯是不同的。
    LD M3.0
    A T37
    AN T39
    LDN T47
    LD T47
    A T43
    OLD
    ALD
    = M0.5
    Network 18
    // ■
   
   
    Network 19
   

回复人:空格 

 回复时间:2009/9/5 17:32:00

支持(611) | 反对(520)

 

    上帖不包括启动和输出部分。

回复人:fansl2008 

 回复时间:2009/9/6 0:33:00

支持(575) | 反对(533)

 

    这是什么编程啊?谢谢
   

回复人:空格 

 回复时间:2009/9/6 10:13:00

支持(381) | 反对(378)

 

    这不是编程?程序设计思想、具体思路和例程都给出来了,还差什么?
   
    2楼的帖子,复制下来后,“TITLE=PROGRAM COMMENTS ■红绿灯全自动控制”前面的内容不要,之后,删除各行首尾的空格,然后在指令视图界面粘贴进去就可以直接在编程中看了,OK!
   
    帖图太麻烦。

回复人:方江四 

 回复时间:2009/9/6 12:34:00

支持(351) | 反对(391)

 

    为什么要把东西与南北的时间搞得不一样长,请说明原因
   

回复人:空格 

 回复时间:2009/9/7 10:10:00

支持(396) | 反对(504)

 

    是否一样长,不是主要的。对编程影响也不大。
   
    不过,从实际情况来说,不一样长,更具有代表性。

回复人:hfahuahua 

 回复时间:2009/9/8 16:47:00

支持(347) | 反对(933)

 

    你怎么不把你的PLC的顺序功能图画出来拉!~这样的话 你编写程序的时候就简单多拉!~~其实你说的那个红绿灯,我做过的。只要你把那个顺序功能图画出来后,就很简单了。

回复人:497457347 

 回复时间:2010/12/31 22:24:00

支持(504) | 反对(624)

 

    受教

回复人:2234706542 

 回复时间:2011/6/12 11:32:00

支持(434) | 反对(626)

 

    受教

回复人:zz116532 

 回复时间:2015/4/10 16:44:00

支持(294) | 反对(470)

 

    这个 应该 是比较基础的东西了,不难

如果要回复本栏论题,请首先中国工控网www.chinakong.com

·如果你已经是中国工控网www.chinakong.com成员,请直接登录。

·如果你还不是中国工控网www.chinakong.com成员,请首先注册,注册为免费!

注册名:

密  码:

           注册中国工控网www.chinakong.com
           忘记密码

关闭该窗口

关于我们     免责声明     服务项目     广告联系     友情链接     联系方式     意见反馈     设为首页     加入收藏

 ©2023-2025 中国工控网(www.chinakong.com) 版权所有 豫ICP备17046657号

管理员信箱:chinakong98@163.com  服务热线:13525974529

洛阳博德工控自动化技术有限公司

中国    洛阳