理论教育 主PLC自动复现示教过程的程序优化设计

主PLC自动复现示教过程的程序优化设计

时间:2023-06-17 理论教育 版权反馈
【摘要】:图9-32 启动自动复现操作程序段图9-33 读A点的值和方向程序段当起动位为A→O、B→O或C→O时,将原点的目标值读入到公共通道中。W3.06的输出将到位主信号置1。图9-38 发送到位主信号程序段从PLC控制方式与主PLC相同,不同的是从PLC发到位从信号。当TIM26到时后,清除主、从PLC的到位信号,此时TIM25、TIM26被重新复位。至此,自动控制的操作全部完成。

主PLC自动复现示教过程的程序优化设计

在自动控制之前,先按“复位”按钮。目的是为了防止在示教过程中,返回原点操作执行时的差值与自动控制时执行的差值相加,影响该控制系统的定位精度。其控制程序如图9-16所示。同时,“复位”按钮又切断了示教保持位的锁存信号,其控制程序如图9-17所示。

当按下“起动”按钮时,清除所有在自动控制过程中用到的标志位和通道的值,并且设置了O→A起动位和自动保持位。当A→O,B→O或C→O起动位任意一个导通时,同时,到位主从信号的上升沿微分位W3.07导通时,将切断自动保持位。其控制程序如图9-32所示。

在O→A起动位导通时,将A点各轴的目标值和方向读入到自动操作中的公共目标值通道和方向通道中。同理除回原点的启动位外,无论当哪个起动位导通时,都将执行相应的操作。如当A→B起动位导通时,将B点的目标值和方向读入到公共通道中。其控制程序(部分)如图9-33所示。

978-7-111-48236-9-Chapter09-35.jpg

图9-32 启动自动复现操作程序段

978-7-111-48236-9-Chapter09-36.jpg

图9-33 读A点的值和方向程序段

当起动位为A→O、B→O或C→O时,将原点的目标值读入到公共通道中。其控制程序(部分)如图9-34所示。

978-7-111-48236-9-Chapter09-37.jpg

图9-34 读O点的目标值程序段

当起动位为A→O时,将A点的方向反传到公共方向控制通道W100中。当起动位为B→O或C→O时,将在示教过程中判断的B点当前方向或C点当前方向的值反传到公共方向控制通道中。其控制程序(部分)如图9-35所示。

978-7-111-48236-9-Chapter09-38.jpg

图9-35 返回原点方向设置程序段

此时,根据起动位、各轴使用的情况和各轴方向的不同来发送脉冲。下面以1#轴的运动为例加以说明。

假定在A点示教时,1#轴向逆时针方向运动;在B点示教时,1#轴未被使用;且此时B→O起动位为导通状态,那么也就意味着机械手的各轴此时均向原点方向运动。B→O起动位的导通将原点的值以及B点的当前方向按要求传到相应的公共通道中。此时,公共方向控制通道W100.00中1#轴的方向应为1,也就是顺时针方向。根据图9-36所示的梯形图,在5s定时器TIM25到时后,发送顺时针转动的脉冲。在回原点的操作时,只要该轴曾使用过,无论是在哪个点示教时使用的,都应发送返回原点的脉冲。如上例在A点示教时1#轴被使用,而在B点示教时1#轴未被使用,所以A点1#轴使用位导通,可以发送返回脉冲。

978-7-111-48236-9-Chapter09-39.jpg

图9-36 1#轴脉冲发送控制程序段

当各轴脉冲发送的同时,编码器通过高速计数器实时把各轴的当前值返回到相应的通道中。通过区域比较指令(ZCPL)把该值与所要到的目标值进行比较,如果该轴的当前值处于目标值的允许误差范围内时,则发送到位信号,停止相应轴的脉冲输出。其控制程序如图9-37所示。

978-7-111-48236-9-Chapter09-40.jpg

图9-37 轴运动到位时停止脉冲输出程序段

A280.04位、A326.04位和A327.04位分别是#2轴、#4轴、和#1轴的忙标志位,即当某个轴在转动时,相应的忙标志位被导通。在自动操作下,当主PLC所控制的三个轴全部到位时,即三个轴的忙标志位全为0时,此时下降沿微分位W3.06输出。W3.06的输出将到位主信号置1。

若在某一点示教时,刚好主PLC所控制的三个轴都没有动作,那么在该点起动位导通的情况下发到位主信号。其控制程序如图9-38所示。

978-7-111-48236-9-Chapter09-41.jpg

图9-38 发送到位主信号程序段

从PLC控制方式与主PLC相同,不同的是从PLC发到位从信号。主PLC和从PLC的到位信号通过串行通信互相交换。主PLC链接如图9-39所示,从PLC的链接如图9-40所示。

978-7-111-48236-9-Chapter09-42.jpg

图9-39 主PLC数据链接程序段(www.daowen.com)

978-7-111-48236-9-Chapter09-43.jpg

图9-40 从PLC数据链接程序段

在获得主PLC和从PLC的到位信号后,上升沿微分位W3.07输出,此时开始判断下一步的运动方向。如在示教时没有使用B点,且此时完毕标志位为0,则A→O起动位被保持。同时O→A起动位将被复位。如果在完毕标志位为1时,且上升沿微分位W3.07产生输出,则说明此时机械手已回到原点,则将A→O起动位复位。其控制程序如图9-41所示。

978-7-111-48236-9-Chapter09-44.jpg

图9-41 A→O启动位的判定程序段

如在示教时用到了A、B两点,此时完毕标志位为0,且当前起动位为A→B,在W3.07产生输出时,则B→O起动位被保持。同时A→B起动位将被复位。如果在完毕标志位为1时,且上升沿微分位W3.07产生输出,则说明此时机械手已回到原点,则将B→O起动位复位。其控制程序如图9-42所示。

978-7-111-48236-9-Chapter09-45.jpg

图9-42 B→O启动位的判定程序段

如在示教时用到了A、B、C三点,此时完毕标志位为0,且当前起动位为B→C,在W3.07产生输出时,则C→O起动位被保持。同时B→C起动位将被复位。如果在完毕标志位为1时,且上升沿微分位W3.07产生输出,则说明此时机械手已回到原点,则将C→O起动位复位。其控制程序如图9-43所示。

978-7-111-48236-9-Chapter09-46.jpg

图9-43 C→O启动位的判定程序段

如在示教时用到了A、B、C三点,此时完毕标志位为0,且当前起动位为A→B,在W3.07产生输出时,则B→C起动位将被设置为1。同时A→B起动位将被复位。其控制程序如图9-44所示。

978-7-111-48236-9-Chapter09-47.jpg

图9-44 B→C启动位的判定程序段

如在示教时用到了A、B两点,此时完毕标志位为0,且当前起动位为O→A,在W3.07产生输出时,则A→B起动位将被置1。同时O→A起动位将被复位。其控制程序如图9-45所示。

978-7-111-48236-9-Chapter09-48.jpg

图9-45 A→B启动位的判定程序段

如起动位为A→O、B→O、C→O时,则设置完毕标志位。其控制程序如图9-46所示。

978-7-111-48236-9-Chapter09-49.jpg

图9-46 完毕标志位设定程序段

同时,主PLC和从PLC到位信号在完毕标志位为0时,起动5s定时器TIM25。当完毕信号为1时,且此时A→O、B→O、C→O任意起动位导通,也起动TIM25。其控制程序如图9-47所示。

978-7-111-48236-9-Chapter09-50.jpg

图9-47 到位后起动定时器程序段

当TIM25到时后,清掉各轴到位标志,并起动0.3s定时器TIM26。当TIM26到时后,清除主、从PLC的到位信号,此时TIM25、TIM26被重新复位。这样操作的目的是保持TIM25的0.3s的导通时间,可以确保各轴脉冲的顺利发送。其控制程序如图9-48所示。至此,自动控制的操作全部完成。

978-7-111-48236-9-Chapter09-51.jpg

图9-48 定时器到时后清标志位

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈