大家详细分享一个多工位打孔设备的改造。该设备原本只有一台横移的三相异步电机控制一个导轨,打孔操作依靠人工手动完成,效率低下且精度难以保证。现在,我们要对这台设备进行改造,以低成本实现自动化控制。由于此次设备是临时改造,预算有限,所以无法更换伺服或者步进电机。本次改造使用的 PLC 是仿三菱 PLC 的工控板,其具体点位设置如下。
设备的控制要求较为明确。当按下 X0 时,设备启动,转孔电机上升,随后左移至 X2 接近开关处。接着电机右移,每当 X1 感应到特定位置时,设备会停下进行打孔操作,打完孔后回到 X2 位置。
在项目中,打孔动作需要重复多次。每次打孔动作都是先启动电机旋转,然后下降到下极限进行打孔,打孔完成后上升,转轴停止动作。由于这部分动作具有重复性,我们可以将其编写成一个子程序,用 P0 子程序进行控制。当需要打孔时,触发 P0 子程序即可。需要注意的是,子程序需要写在 FEND 指令后面。
当 M2 导通时,电机会停止右移。因此,在打孔结束后,需要复位掉 M2,电机才能继续右移进行打孔操作。同时,还需要复位打孔子程序调用的 M0 元件,并让 D1 寄存器加 1,以此记录打孔的个数。
在电机移动过程中,每次碰到 X1 都需要停下打孔。为了提高系统的响应性,我们需要使用中断功能,让 X 点能够快速响应。X1 所对应的上升沿中断指针是 I101,即当 X1 产生上升沿时,I101 中断程序就会执行。在程序的行,需要使用 EI 指令开启中断功能,这样中断才能正常使用。
当打孔个数少于 7 个,并且设备处于运行状态时,每次触发 I101 时,就会置位打孔 M0,同时置位 M2,控制设备停止右移。
接下来,我们看看设备的启停控制程序。通过 X1 按钮可以利用 ALT 交替输出指令控制设备的启停。当设备没运行时,停止所有 Y 点的输出。当打孔个数小于 7 时,控制电机右移。每次触发停止右移的 M2 时,Y0 线圈断开。在 Y 点后面还使用了一条输入输出刷新指令刷新 Y0,这样当 Y0 停止时,能够马上将 Y0 状态刷新给外部设备,提高系统的响应性。当打孔个数等于 7 时,触发左移动作,设备移动到 X2 感应器时,停止动作。
