选择的程序问题,被难倒了求简单程序方法

一、控制要求:
1、按下启动按钮,小车启动运行(1、若小车停在左限位,则启动后向右运动;2、若小车停在右限位,则启动后向左运动;3、若小车停在左限位和右限位之间,则启动后向右运动;)。

2、现场有8个小灯,安装在一小车上,小车在水平台上来回运动。安装有左,右限位。

3、编号1#灯,2#灯,3#灯,4#灯,5#灯,6#灯,7#灯,8#灯。

4、与8个小灯对应的手动开关有8个,分别为编号1#手动开关,2#手动开关,3#手动开关,4#手动开关,5#手动开关,6#手动开关,7#手动开关,8#手动开关,手动开关合上是使对应灯亮的必要条件,
5、可以选择任意闭合2个或以上手动开关数量(接通),使这些灯在系统运行过程中:单个循环点亮或2个一组循环点亮,或3个一组循环点亮。
6、当选择好任意闭合的开关后,按下启动按钮,系统启动。按下停止按钮,系统停止。

二、举例1:单个循环点亮
假如:选择2#,3#,7#,8#  
则系统启动后,2#灯亮,小车向右运转,当碰到右限位,2#灯灭,3#灯亮;
小车改变运行方向,向左运行,当碰到左限位,3#灯灭,7#灯亮;
小车改变运行方向,向右运行,当碰到右限位,7#灯灭,8#灯亮;
小车改变运行方向,向左运行,当碰到左限位,8#灯灭,小车停止运行,同时定时器T开始工作;
当T时间到,小车自动启动向右运行,2#灯亮,当碰到右限位,2#灯灭,3#灯亮;
小车改变运行方向,向左运行,当碰到左限位,3#灯灭,7#灯亮;
小车改变运行方向,向右运行,当碰到右限位,7#灯灭,8#灯亮;
小车改变运行方向,向左运行,当碰到左限位,8#灯灭,小车停止运行,同时定时器T开始工作;
如此循环,直到系统停止按钮按下。

三、举例2:2个一组循环点亮
假如:选择2#,3#, 4#,5#,6#,8#   (2#,3#自动分配为一组;4#,5#自动分配为一组;6#,8#自动分配为一组;)  
则系统启动后,2#,3#灯亮,小车向右运转,当碰到右限位,2#,3#灯灭,4#,5#灯亮;
小车改变运行方向,向左运行,当碰到左限位,4#,5#灯灭,6#,8#灯亮;
小车改变运行方向,向右运行,当碰到右限位,6#,8#灯灭,小车停止运行,同时定时器T开始工作;
当T时间到,小车自动启动向右运行,2#,3#灯亮,当碰到右限位,2#,3#灯灭,4#,5#灯亮;
小车改变运行方向,向左运行,当碰到左限位,4#,5#灯灭,6#,8#灯亮;
小车改变运行方向,向右运行,当碰到右限位,6#,8#灯灭,小车停止运行,同时定时器T开始工作;
如此循环,直到系统停止按钮按下。


四、举例3:3个一组循环点亮
假如:选择1#,3#, 4#,5#,7#,8#   (1#,3#,4#自动分配为一组;5#,7#,8#自动分配为一组;)  
则系统启动后,1#,3#,4#灯亮,小车向右运转,当碰到右限位,1#,3#,4#灯灭,5#,7#,8#灯亮;
小车改变运行方向,向左运行,当碰到左限位,5#,7#,8#灯灭,小车停止运行,同时定时器T开始工作;
当T时间到,小车自动启动向右运行,1#,3#,4#灯亮,小车向右运转,当碰到右限位,1#,3#,4#灯灭,5#,7#,8#灯亮;
小车改变运行方向,向左运行,当碰到左限位,5#,7#,8#灯灭,小车停止运行,同时定时器T开始工作;
如此循环,直到系统停止按钮按下。

问题补充:
难点是不知道选择了哪些灯,怎么用程序总结出来

图片说明:

选择的程序问题,被难倒了求简单程序方法    选择的程序问题,被难倒了求简单程序方法   

最佳答案

看了你的控制要求,建议采用步进指令编辑。
步进初始化执行“要求1、2”内容,其余的控制则由判断跳转来编辑,当完成本次执行(或多次执行后返回初始步后等待判断条件的确认,再进行下一个跳转循环。
补充问题回复:
你应该参考电梯控制方面的内容,优先就近处理。

提问者对于答案的评价:
学习

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc135085.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年5月31日 下午11:21
下一篇 2017年5月31日 下午11:21

相关推荐

  • 数据传送指令BLKMOV_D是否可以传送指针地址

    例如,我想把vd0~vd4共两个双字传送到vd100以及vd104,是否可以使用“&vb0”通过“BLKMOV_D”传送给“vd100”?是传送地址,不是传送数据 问题补充…

    2021年7月5日
  • S7-200MODBUS通讯 数据错误

    以下是我做的一个软件,请指点一下。编程软件是V4.0 STEP 7 MicroWIN SP6 S7226 PLCLD&n…

    SIMATIC S7-200 2020年11月1日
  • PLC数据线

    谁知道S7-200 PLC CPU与扩展模块EM222连接数据线 订货号   另外还有S7-200 PLC下载…

    SIMATIC S7-200 2020年11月1日
  • 组态EM253出错

    各位大侠本人初次接触EM253,现想将其与CPU226进行组态,但按照向导将其进行组态后进入EM253调试界面后在diagnostic里显示有错:1,配置项显示没配置.2,模式错误…

    SIMATIC S7-200 2020年11月1日
  • 如何在符号表删除的情况下,保持程序正确

    为了增加别人阅读自己程序的难度,我想把符号表删除,但是这样带来一个问题,就是原来的程序中的符号都没有了对应地址,引起程序错误,请问如何才能达到“在符号表删除的情况下,保持程序正确”…

    SIMATIC S7-200 2021年7月5日
  • 200CPU之间如何数据读取,怎么设置置位时间?

    我有一个MP277的屏,现在与两个CPU226连接,现在想做一个程序,点击触摸屏使A电机启动,A电机启动后自动启动B电机10分钟,然后自动停止B电机,B电机停止后自动停止A电机。现…

    SIMATIC S7-200 2020年11月5日
  • s7-200smart怎么自建配方库

    wincc自带一套配方,但是功能很少,不能满足客户需求。客户需要每一个新建的配方中,有一个能计数的变量。比如配方A有个计数A,计数A计数到10,然后更换了配方B,计数B计数到了20…

    SIMATIC S7-200 2021年7月5日
  • 求助:S7-200设置内部时钟

    小弟刚涉及PLC,求教 S7-200设置内部时钟的的程序到底怎么编啊? 为什么我照着例子编的不写入时钟呢??求答疑解惑! LD  …

    SIMATIC S7-200 2021年7月4日
  • 200plc的uss-ctrl指令问题

    USS-CTRL指令里的速度给定和反馈是用全速的百分数表示的,我能否把这个数直接转换成电机的转速来显示?比如转换成0—1435R/MIN。谢谢指教 最佳答案 我能否把这个数直接…

    SIMATIC S7-200 2021年7月4日
  • sm0.0和sm0.7

    sm0.0是始终为1,而sm0.7是run模式为1.请各位老师详细介绍他俩的区别? 最佳答案 SM0.0: 该位始终为1;SM0.7 :该位指示 CP…

    SIMATIC S7-200 2020年11月1日