| 作者 | 主题 |
|---|---|
|
ASK 游民 经验值:118 发帖数:5 精华帖:0 |
楼主
主题:程序请教
程序要求:一个门上有内外两个传感器I0.1(外),I0.2(内)。如果物体从外面往里面进,先触发I0.1,门打开,在触发I0.2,门关闭。如果物体从里面出来先触发I0.2,门打开,在触发I0.1,门关闭。
我编写了程序,可是一直运行不出来,请各位学长帮我看看。 NET 1 LD SM0.1 R M0.0, 3 NET 2 LDN M0.2 A I0.1 EU S Q0.0, 1 S M0.0, 2 NET 3 LDN M0.0 A I0.2 EU S Q0.0, 1 S M0.2, 1 NET 4 LDN M0.0 A I0.1 EU R Q0.0, 1 R M0.2, 1 NET 5 LD M0.1 A I0.2 EU R Q0.0, 1 R M0.0, 2 |
|
夕阳 游士 经验值:243 发帖数:99 精华帖:3 |
楼
主题:回复:程序请教
首先,楼主的系统的是不安全的。
1,当门外开关ON时,系统分辨不出物体是进来的还是出去的。门内亦同。 2,不清楚楼主的系统是否存在物体同时出入的情况,比如说自动门,人是可以同时出入通过的。 3,门是什么控制楼主没说清楚,比如说是马达,还是气缸。 4,楼主的系统没有门下检测,当PLC出错时,或程序有错时,没办法判断门下有无物体,不安全。 5,物体通过要多久,不清楚,不能写时间保护,也不能判断开关是否正常。 6,门是什么驱动,如果驱动系统坏了,程序没办法处理。 7,如果物体在通过时停电,怎么处理,楼主没写清楚。 。。。。。。。 其他就先不说了,假设物体是不可能同时进出,先写个简单的,对付着看。 TITLE=程序要求:一个门上有内外两个传感器I0.1(外),I0.2(内)。如果物体从外面往里面进,先触发I0.1,门打开,在触发I0.2,门关闭。如果物体从里面出来先触发I0.2,门打开,在触发I0.1,门关闭。 Network 1 // 网络标题 // 网络注释 LD SM0.1 CALL SBR0 Network 2 LD SM0.0 CALL SBR1 Network 1 // 网络标题 // 初始化状态字 LD SM0.0 R Q0.0, 1 MOVW +0, MW0 Network 1 // 网络标题 // 门外开关上升沿,状态+1 LD I0.1 EU INCW MW0 Network 2 // 网络标题 // 当门外开关上升沿,状态-1 LD I0.2 EU DECW MW0 Network 3 // 网络标题 // 当门内开关上升沿,状态-1 LDW<> MW0, +0 = Q0.0 |
|
醉书生 侠士 经验值:1348 发帖数:718 精华帖:25 |
楼
主题:回复:程序请教
如果有人同时进出怎办?
如果有人走一半又退回来了呢? 一个还未通过时另一个人进/出再次触发传感器怎么处理? 如果单个传感器无法判断方向,就不好处理复杂的情况,因为没法判断两个传器中间是否有人,处理关门的逻辑就不充分。 那么就只能用简单的逻辑处理复杂的问题:任一传感器有信号,开门,无任何信号时延时关门(缺点是如果一个人站在门的位置不走,一段时间后会被夹住)
生命存在的方式只有两种:腐烂或燃烧
|
|
夕阳 游士 经验值:243 发帖数:99 精华帖:3 |
楼
主题:回复:程序请教
要考虑的还这么多呀,真不简单呀!
任何一个设备或机器都有可能出现故障,包括本身的或外部的(例如停电,干扰等),本身的又分机械的和电气的,电气又分一次和二次的,电路的和控制的,硬件的和软件的,更何况人会出错,故意或无意的。仅仅满足工艺的要求是简单的(比较而言),任何程序如果尽可能考虑周全马上就会变成一个噩梦。以上我和醉书生仅仅分析的工艺的条件,一个设备在写程序时仅仅满足工艺的要求我个人认为最多30分,把意外和保护,以及连锁,互锁,干扰,提示,确认,故障自检,维修指导等写进去才能算全面。当然写程序是仁者见仁,智者见智的事情,也许有人会说不必要,无意义,有些情况十年甚至遇不到一次,但是如果遇见一次可能是灾难性的,所谓的人性化,智能化,就是体现在这儿,程序开发者的价值也就一下体现出来了,就如当初我学写程序一样,那些科班出身的工程师看我不顺眼,在他们眼睛里我一个中学没毕业的人不可能写出程序,他们写程序很快,也很短,结果设备到了现场后,外部条件一旦发生错误,程序动作或结果就全乱了,后来换我的程序,只要设备出现错误,马上报警,并且人机上显示报警信息,提示操作人员哪儿故障,应该检测哪儿,应该检查哪个状态,哪个元器件,相应的元器件安装位置有图像显示在HMI上并且闪烁,该元器件什么规格,同类厂家的替代品规格等信息。所以一个工程师要尽量的考虑全面,要有孔乙己茴字的精神,事无绝对,本着求真,求是的精神事情肯定会上一个台阶的。 |