首页 理论教育 PLC程序典例优化方案

PLC程序典例优化方案

时间:2023-06-29 理论教育 版权反馈
【摘要】:L13.3可通过子程序调用指令的赋值,通过其他PLC程序使机床发出相应的报警信号。刀具夹紧后,检测信号L12.2为1,进给使能和读入使能禁止信号V32000006.0和V32000006.1恢复为0,CNC继续执行换刀子程序中的程序暂停指令G04F0.5,延时0.5s。

PLC程序典例优化方案

1.程序组成

用于Z轴移动换刀的加工中心自动换刀PLC程序同样可由刀位计数、捷径选择、换刀控制3部分组成。其中,刀位计数和捷径选择程序可直接使用前述车床液压刀架相同的子程序SBR20、SBR48,换刀控制子程序需要进行单独设计。

假设换刀控制子程序号为SBR23,该子程序需要对表9.1-3所示的输入/输出变量进行表9.2-1所示的调整,其他输入/输出变量的定义与SBR22相同。

表9.2-1 SBR23输入/输出变量调整表

978-7-111-50291-3-Chapter09-17.jpg

SBR23可参照SBR22编写,程序可分为T代码处理、换刀起动,卸刀、选刀、装刀控制,换刀调试,输出处理等部分。其中,T代码处理程序Network1和Network2的设计与上述SBR22程序Network1和Network2完全相同,可参见图9.1-5。程序可在T代码编程正确时,通过调用子程序SBR48,得到刀库的捷径转向信号M20.3(正转)或M20.4(反转),并将自动换刀准备信号M20.5置为1;如T代码与现行实际刀位一致,则M20.5为0。如编程T代码大于刀库最大刀位数,或T代码等于0,则M20.5将为0,并输出相应的报警信号。程序的其他部分说明如下。

2.换刀起动程序

换刀起动控制程序Network3的设计如图9.2-2所示。当CNC执行换刀子程序L06时,首先执行M06指令。

执行M06指令时,如T代码编程正确并处理完成(M20.5=1)、主轴定向及Z轴到位等换刀起动条件具备(L12.0=1),则ATC起动信号M20.7和程序跳段信号V32000002.0置1,使得CNC换刀子程序中的程序段“/N1 GOTOF ATC_END”被跳过,启动随后的自动换刀程序段。如刀号一致或T代码出错(M20.5=0),则程序跳段V32000002.0置0,CNC可通过执行程序段“/N1 GOTOF ATC_END”,直接跳转至N10,执行M80指令结束子程序L06。如自动换刀起动条件不具备(L12.0=0),则报警输出变量L13.3为1。L13.3可通过子程序调用指令的赋值,通过其他PLC程序使机床发出相应的报警信号。

978-7-111-50291-3-Chapter09-18.jpg

图9.2-2 换刀起动程序

3.卸刀控制程序

卸刀控制程序Network4的设计如图9.2-3所示。

978-7-111-50291-3-Chapter09-19.jpg

图9.2-3 卸刀控制程序

当ATC起动信号M20.7为1,且刀库处于起始位置时,执行CNC换刀子程序中的刀库前移指令M82,则刀库前移命令M21.0为1,刀库向后命令M22.0复位,并将CNC通道进给使能禁止信号V32000006.0、读入使能禁止信号V32000006.1置1,使CNC进入辅助功能执行等待状态。

当刀库前位到达、检测信号L12.5为1后,CNC通道进给使能禁止信号V32000006.0、读入使能禁止信号V32000006.1将恢复0,CNC继续执行换刀子程序中的程序暂停指令G04F0.5,延时0.5s。接着,执行刀具松开指令M85,PLC产生刀具松开命令信号M21.1,并再次将信号V32000006.0和V32000006.1置1,使CNC再次进入辅助功能执行等待状态。

刀具松开后,检测信号L12.3为1,CNC通道进给使能禁止信号V32000006.0、读入使能禁止信号V32000006.1恢复0。随后,CNC将继续执行程序暂停指令G04 F0.5,延时0.5s,接着,执行Z轴移动指令,使Z轴上升至换刀点。

4.回转选刀程序

回转选刀程序Network5的设计如图9.2-4所示。

978-7-111-50291-3-Chapter09-20.jpg

图9.2-4 回转选刀程序

当Z轴上移到达卸刀点后,Z轴上位检测信号L12.7为1。CNC将执行回转选刀指令M86,PLC程序将根据子程序SBR48输出的转向信号M20.3/M20.4,输出刀库正/反转命令信号M21.3/M21.4,并利用信号V32000006.0和V32000006.1使CNC进入辅助功能执行等待状态。

当刀库回转到达目标刀位后,当前实际刀位输入变量LD4将和Network1生成的T代码指令刀号LD16相等,此时,只要刀库到位信号L13.0为1,便复位转向信号M20.3/M20.4、正/反转命令信号M21.3/M21.4,停止刀库的回转,同时,将刀库回转完成信号M20.5置为1、信号V32000006.0和V32000006.1恢复为0。随后,CNC将执行换刀子程序中的Z轴下移程序段,将新刀具装入主轴。

5.装刀控制程序(www.xing528.com)

装刀控制程序Network6的设计如图9.2-5所示。

在Network6上,当Z轴通过CNC换刀子程序下移到换刀开始点时,检测信号L12.6为1。CNC继续执行刀具夹紧指令M84,PLC程序将发出刀具夹紧命令信号M21.7和复位刀具松开信号M21.1,并利用CNC通道进给使能和读入使能禁止信号V32000006.0和V3200 0006.1,使CNC进入辅助功能执行等待状态。

刀具夹紧后,检测信号L12.2为1,进给使能和读入使能禁止信号V32000006.0和V32000006.1恢复为0,CNC继续执行换刀子程序中的程序暂停指令G04F0.5,延时0.5s。接着,执行刀库向后指令M83,PLC发出刀具向后命令信号M22.0和复位刀库向前信号M21.0,并再次将进给使能和读入使能禁止信号V32000006.0和V32000006.1置1,使CNC重新进入辅助功能执行等待状态,直至刀库到达后位。

6.结束处理程序

自动换刀结束处理程序Network7的设计如图9.2-6所示,程序有3方面用途,下面逐一介绍。

978-7-111-50291-3-Chapter09-21.jpg

图9.2-5 装刀控制程序

978-7-111-50291-3-Chapter09-22.jpg

图9.2-6 结束处理程序

对于正常的自动换刀,程序可在刀库到达后位、检测到信号L12.4=1时,将进给使能和读入使能禁止信号V32000006.0和V32000006.1恢复为0,使CNC将继续执行结束指令M80,以复位刀库后移信号M22.0和自动换刀起动信号M20.7、回转记忆信号M21.5、T代码处理完成信号M20.2和M20.5,结束换刀。

当CNC编程T代码出错或编程刀号和实际刀位一致时,如调用CNC换刀子程序,子程序L06中的换刀指令M82~M86将被跳过,而直接执行M80。此时,M80可复位由M06指令生成的程序跳段信号V32000002.0,取消程序跳段功能。

当CNC通过后述M81指令进行换刀调试操作时,M80可复位换刀调试信号M22.1,结束调试操作。

7.换刀调试程序

换刀调试程序Network8的设计如图9.2-7所示。

978-7-111-50291-3-Chapter09-23.jpg

图9.2-7 换刀调试程序

自动换刀的调试可在CNC选择操作方式MDA或JOG时,通过执行M81指令选择换刀调试操作,在此基础上,可利用换刀指令M82~M86进行动作的调试。调试方式一旦选定,信号M22.1将为1,此时,执行M82~M85指令将生成对应的刀库运动和刀具松夹等控制信号,调试结束后,可利用M80复位全部调试信号。

刀库的回转可通过两种方式进行。在JOG操作方式下,如刀库位于后位(L12.4=1),可直接利用MCP的按键K4(L12.1)手动回转刀库,进行装刀等操作;在刀库调试时(M22.1=1),可通过M86指令生效刀库手动回转操作,并利用MCP的按键K4(L12.1)手动回转刀库,它对刀库的位置没有规定的要求。

8.输出处理程序

输出处理程序Network9的设计如图9.2-8所示,它可将换刀控制信号转换为子程序SBR23的输出变量,控制相关电磁元件动作。

程序中的换刀调试和自动换刀时的输出处理稍有不同。例如,对于刀库的前后移动,换刀调试(M22.1=1)时,需要检查Z轴的位置,以防碰撞;在自动换刀(M20.7=1)时,前后移动信号M21.0和M22.0已经考虑了动作条件,故可直接控制输出变量。此外,为了使得机床正常加工时能保持刀库后位和刀具夹紧的状态,程序中的刀库前移输出L14.0及刀具松开/吹气输出L13.6/L13.7,只能在M20.7或M22.1为1时输出;而刀库后移的输出L14.1可在正常工作、M20.7及M22.1=0时保持为1。

978-7-111-50291-3-Chapter09-24.jpg

图9.2-8 输出处理程序

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

我要反馈