一、 实验目的
- 了解实验手册上的用数据移位指令来实现机械手动作的模拟的梯形图程序;
- 根据实验手册提供的说明和程序实现的功能,自己实现机械手动作的模拟。
二、 实验说明
实验指导书上的说明:
一个将工件由 A 处传送到 B 处的机械手,上升/下降和左移/右移的执行用双线圈二位电磁阀推动气缸完成。当某个电磁阀线圈通电,就一直保持现有的机械动作,例如一旦下降的电磁阀线圈通电,机械手下降,即使线圈再断电,仍保持现有的下降动作状态,直到相反方向的线圈通电为止。另外,夹紧/放松由单线圈二位电磁阀推动气缸完成,线圈通电执行夹紧动作,线圈断电时执行放松动作。设备装有上、下限位开关和左、右限位开关,它的工作过程如图所示,有八个动作,即为:
实验面板图:
经过实践后,个人理解的功能说明:
将SQ4和SQ2打开,表示机械手默认处于上限位和左限位,即原位。
再打开SB1来启动机械手,观察到原位HL指示灯亮。
当SQ2断开,表示机械手离开的上限位而开始下降,此时YV1指示灯亮,表示机械手正在下降。
这时打开SQ1,表示机械手到达下限位,观察到YV1指示灯熄灭,过一段时间后,YV2指示灯点亮,说明机械手在这段时间内夹紧了工件。
之后再断开SQ1,表示机械手离开了下限位,这时YV3指示灯点亮,表示机械手正在上升,同时YV2保持点亮的状态,此时机械手是边加紧工件边上升。
再打开SQ2,表示机械手到了上限位,此时YV3指示灯熄灭,之后断开SQ4,表示机械手离开的左限位,同时,YV2保持点亮,YV4指示灯会被点亮,表示机械手正在夹着工件向右移动。
当SQ3打开,说明机械手移动到了右限位,YV4指示灯熄灭,这时断开SQ2,表示机械手离开了上限位,那么YV1会被点亮,表示机械手移动到右限位后,开始向下移动。
接下来打开SQ1,表示机械手移动到了下限位,此时YV1指示灯会熄灭,表示机械手停止下移,过段时间后,YV2指示灯会熄灭,表示机械手松开的工件,工件成功地从A点被放到了B点。
之后再断开SQ1,YV3会点亮,表示机械手离开下限位,开始向上移动。
这时再打开SQ2,表示机械手到了上限位,那么YV5会被点亮,表示机械手到了上限位后,开始向左移动,直到SQ4被打开,YV5才熄灭,HL被点亮,表示机械手回到了原位,这样机械手的一轮操作便结束了。
由于实验平台没有SB2的接线端口,原本在程序要实现SB2对应的功能是:当SB2被打开,机械手立即停止移动,若此时夹着工件,则保持加紧。
三 、 实验接线
公共端接线:
1L、2L、M和实验模块的COM相连;
1M、L+和实验模块的V+端相连。
输入输出接线:
输入 | SB1 | SB2 | SQ1 | SQ2 | SQ3 | SQ4 |
I0.0 | I0.5 | I0.1 | I0.2 | I0.3 | I0.4 | |
输出 | YV1 | YV2 | YV3 | YV4 | YV5 | HL |
Q0.0 | Q0.1 | Q0.2 | Q0.3 | Q0.4 | Q0.5 |
四、 实验手册的梯形图参考程序
五、 个人绘制的顺序功能图
六、 根据顺序功能图,绘制的梯形图程序
七、 小结
自己编写的梯形图,虽然在实际操作时,会有一些bug,不过机械手的功能基本实现了,程序后续不打算进一步优化了。
实验指导书上的程序,依旧是使用了经验设计法,我直到现在都无法完全理解它的功能,更不用说仿照它的程序,来写一份新的。只能老实地根据功能绘制顺序功能图,然后根据功能图用置位复位指令实现。一开始将我的代码下载至PLC时,我发现多个指示灯被点亮,当时我以为我的程序出现了重大的错误。直到最后,原来是PLC本身的原因,只要重启电源,再重新下载代码、运行便好了。
补充:
跟之前的实验一样,从实验指导书的工程导出的文本文件,无法在s7-200仿真软件上运行,因为s7-200不认识SHRB这个器件。