一台S7-200CN PLC装了两个激光对射灯作为输入信号源(两个灯垂直安装),当工件经过时遮挡光线,经过延时后对其加工,当工件经过灯后经过延时结束加工。工件只需加工一次,那么问题来了,工件在进入和返回时都在加工。如果把灯的位置错开,比如1前2后,要如何改动程序或者有其他方法使其加工一次?本人初学小白,求各位大师指点,谢谢,有个程序需要安装三个灯,但是现场安装条件不允许。
问题补充:
两个灯在一个垂线上,一个距地1.8米,一个距地2.3米(为安全和防止误动作,只有两个灯都被遮挡才会启动)这是集装箱喷涂控制,对射灯不能装在喷涂区,会被油漆涂盖,当然了,灯肯定是装在加工区前(也无法装编码器,应为箱子位置不固定)。本来软件是没有把问题的,因为箱子原来是不后退的,后来改动场地,箱子必须后退回来。公司发来新软件,要求是在加工区(喷涂区)再加装一个信号源(加第3个对射灯)。喷涂区肯定不能加的,一天就会被油漆涂盖。我的想法是;把两个灯的位置错开,不在一个垂线上,假如进的时候先遮挡1号灯,后遮2号灯(两灯这时会同时遮挡),遮挡2号灯是开始计时进行一系列动作,2号灯露出时(这是两个灯都透光),开始结束计时,计时完毕,喷涂结束,程序复位。当箱子返回时肯定先遮挡2号灯,后遮挡1号灯,这样接收信号源的位置就不同了,这样的话软件该如何改动?本人小白,对西门子编程不熟悉,求各位大师指点,请尽量详细一点。谢谢。
最佳答案
根据你的工况,不改变现有光电对射器的情况下:
1、我假如你原有程序中没有用到VB0,加工工作启动前程序的初始化部分要将VBO的初始值设为0,我用到的VB0有可能与你原程序中用的地址有冲突,你只要改成原程序中不用的一个字节就可以了;
2、工艺第一阶段:工件进入待加工时(假设这个方向为正向),光电检测点会检测到这个信号,在上升沿时刻在原程序上将VB0加1,表示工件第一次正向进入,是要加工的,你原有的程序要利用这个1联合判断并启动加工延时定时器;定时间到加工;
3、工艺第二阶段:工件加工完,继续正向走,当工件出去时,光电检测点会产生一个下降沿,在下降沿时刻,VB0再加1,值就为2;表示工件加工完毕;
4、工艺第三阶段:工件退出(假设这个方向为反向),光电检测点又会产生一个上升沿,这时VB0再加1,值就为3;VB0=3,表示工件正在退出,VB0不等于1则加工延时定时器就不会启动;
5、工艺第三阶段:工件完全退出时,光电检测点又会检测到一个下降沿,此时,VB0=0;等待下一个工件进入继续加工。
6、建议你加一个复位为初始状态按钮,作用是启动工作流程之前,将VB0清0。
提问者对于答案的评价:
大师,非常感谢。能不能说的再详细一点
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc369568.html