雷楠南
(三门峡职业技术学院, 河南 三门峡 472000)
数控车床的自动换刀过程通常由PLC控制回转刀架来实现,在实际使用过程中回转刀架有两种:电动回转刀架和液压回转刀架。电动回转刀架因为结构简单、易于控制且经济性好等原因,广泛应用于经济型数控车床。液压刀架结构较复杂、但刀具容量大、换刀速度快,且定位准确,所以广泛应用于高档数控车床[1]287-289。电动回转刀架通常由底座、刀架体、驱动电机、蜗轮蜗杆、螺纹升降机构、端面齿牙盘和刀位检测装置等部件组成,刀具可通过刀架体上部的螺钉夹紧于刀架体上,刀架定位利用端面齿牙盘实现[2]231-232。在数控车床上,电动刀架换刀控制通常涉及CNC辅助功能T指令控制与PLC控制,所以换刀控制PLC程序设计时主要考虑CNC系统信号与PLC信号处理。以配置西门子802D系统的数控车床为例,因为PLC集成在数控系统上,所以编制换刀控制PLC程序时,要先分析控制要求,弄清编程涉及的接口信号,然后可参照西门子系统换刀控制子程序编制出合适的换刀控制程序。
电动刀架换刀的一般过程为:刀架抬起、刀架转位、刀架定位和刀架锁紧四步[2]231-232。电动刀架换刀控制有两种,手动换刀与自动换刀:手动换刀指的是在手动JOG操作方式有效时,按下换刀按键,刀架体转位至下一把刀具;自动换刀,即当CNC系统在执行数控加工程序过程中,读入并执行换刀T指令时,刀架实现正转换刀的方式。以四工位的电动刀架为例,在自动换刀方式下,CNC系统读入编程刀号后,首先应判断编程刀号,若编程刀号不为0、不等于当前刀号且T代码正确(T代码指令刀号范围应为1至4)情况下才能进行换刀。当T指令刀具换刀到位后,刀架电机停止转动并延时,延时时间到后刀架电机进行反转锁紧,换刀过程完成。手动换刀时,按下换刀按键,刀架转位至下一把刀具,控制流程较为简单。为便于换刀PLC程序设计,绘制出数控车床电动刀架的控制流程如图1所示[3]92-95。
图1 电动刀架换刀控制流程
在实现电动刀架换刀控制时,西门子数控系统厂家为方便用户使用,专门设计了PLC子程序库。在西门子802D系统上,涉及电动刀架控制的子程序为SBR46(TURRET1)[4]148-150。一般情况下,在实际机床使用过程中,用户会根据刀架控制要求对子程序进行修改和完善。但是,不论是基于子程序修改方式或重新编制换刀控制程序,在实现电动刀架控制时所涉及的控制信号及编程地址应保持一致,802D系统涉及换刀控制的信号如表1所示。
表1 802D系统电动刀架控制信号表
V25000001.4 TF 来自CNC的T修改信号来自CNC的32位二进制T代码信号V27000000.1 CNC急停VD25002000 T代码输出来自CNC的急停状态信号V31000000.2 JOG方式来自CNC的JOG操作方式信号V32000006.0 进给使能禁止输出至CNC的通道进给使能禁止V32000006.1 读入使能禁止输出至CNC的通道读入使能禁止LW0 VW45000040刀架最大刀位数用户数据MD14510[20]设定值LW2 MW90 反转锁紧时间用户数据MD14510[22]设定值LW4 MW92 最大选刀时间用户数据MD14510[21]设定值L6.0 V10000000.3 MCPK4键定义MCP按键K4为手动换刀键L7.4 V11000000.3 MCPK4 指示灯MCP手动换刀按键K4指示灯V10000003.0 MCPNC 复位键MCP NC复位键输入L6.1 M101.0 刀位1测输入 PLC输入I1.0 L6.2 M101.1 刀位2测输入 PLC输入I1.1 L6.3 M101.2 刀位3测输入 PLC输入I1.2 L6.4 M101.3 刀位4测输入 PLC输入I1.3 L7.1 刀架电机过载刀架电机过载输入,接常闭触点L7.2 M102.4 刀架正转输出 PLC输出Q0.4
L7.3 M102.5 刀架反转输出 PLC输出Q0.5 L7.6 V16000002.7报 警700023编程刀具号大于刀架最大刀位数L7.7 V16000003.0报 警700024在监控时间内未找到目标刀具L7.5 V16000003.1报 警700025 刀架无位置检测信号L8.0 刀架电机过载报警信号LD12 32位二进制编码的实际刀位LD16 32位二进制编码的最大刀号LD20 32位二进制编码的CNC编程指令刀号M112.0 刀架正转指令M112.1 刀架反转指令M112.6 编程指令刀号为0 M112.7 编程指令刀号和实际刀位一致M113.1 T代码换刀起动
根据前述电动刀架换刀控制流程,下面以CK6140数控车床电动刀架换刀控制为例,编制换刀控制程序。在编制换刀控制PLC程序时,首先应编制刀位检测程序如图2所示。在自动换刀过程中,为防止编程T代码错误,通常要编制程序读入用户设定的最大刀位数。因此,在图2所示第一行程序便是将用户数据MD14510[20]设定的16位二进制格式“最大刀位数”转换成32位二进制格式并保存在局部变量LD16上。如此处电动刀架为四工位,则最大刀位数设定值为4。在后续换刀程序中,CNC系统读入编程T代码后,要将T代码数值与LD16中数值进行比较,只有T代码数值小于LD16中设定的最大刀位数值时,T代码才有实际意义。因为刀架为四工位电动刀架,所以编程时只需读入四个刀位信号。由于机床类型为数控车床,所以CNC用户数据MD14510[16]应设定为“0”,即变量 VW45000032 值为“0”,该触点接通;若CNC用户数据MD14510[11]bit7设定为“1”时,表示电动刀架有效即变量VW45001011.7值为“1”,该触点接通;由此便可将局部变量L6.1至L6.4输入的刀位检测信号转换为32位二进制格式数据存储在LD12中。在生产实际中,刀架无论处于某一刀位必有一个位置检测信号。如果刀架处于停止状态则表明刀架无正反转信号输入,即 M112.0、M112.1为“0”。此时,若刀架无位置检测信号输入,则LD12中数值为0,从而接通局部变量L7.5,使CNC报警变量V16000003.1为“1”,显示用户报警700025:“刀架无位置检测信号”。
图2 刀位转换控制PLC梯形图程序设计
当数控车床通过编程T代码指令实现自动换刀时,可编制如图3所示PLC程序。在西门子802D系统上,当CNC读入编程T代码指令时,其译码数值存储于变量VD25002000。同时,来自CNC的T代码修改信号TF选通,即变量V25000001.4为“1”。利用该触点接通的上升沿信号可将编程指令中的32位二进制T代码刀号读入并输出到LD20。若编程T代码数值小于用户设定的最大刀位数,即LD20数值小于刀架刀位设定值LD16,则表示编程指令中指定的刀号正确,通过取反指令使“编程刀具号大于刀架最大刀位数”信号L7.6为“0”;接着,要进一步判断LD20中的 T代码数值是否为“0”;若为“0”则“编程刀号为0”信号M112.6为“1”,由于实际生产中无0号刀,所以电动刀架无换刀动作。最后,再利用一致性判别指令判断存储于LD20中的编程指令T代码数值与LD12中的实际刀位T代码数值是否相等,若相等则表示编程刀位到达,即“编程刀号与实际到位一致”信号M112.7为“1”,无需换刀。由此可见,只有当LD20中的T代码数值小于刀架刀位设定值LD16,且LD20中的T代码数值不为“0”,电动刀架才具备换刀条件。
图3 自动换刀控制PLC梯形图程序设计
当电动刀架满足换刀条件、执行自动换刀时,应编制PLC程序实现刀架正转换刀与反转锁紧控制如图3所示后续程序。由于换刀前,刀架处于停止状态,所以“刀架停止”信号 L8.1为“1”;当 LD20中的T代码数值小于刀架刀位设定值LD16,且LD20中的T代码数值不为“0”时,则L7.6信号为“0”、M112.6为“0”;若LD20中的编程指令T代码与LD12中的实际刀位T代码不相等,则M112.7信号为“0”;此时,如果T代码修改信号TF选通时V25000001.4为“1”,可利用上升沿信号置位“刀架正转”信号M112.0和“T代码自动换刀起动”信号M113.1,实现刀架回转换刀。刀架回转换刀时,应禁止下一程序段的读入和进给,使CNC进入辅助功能执行等待状态,所以编程时必须使CNC进给禁止使能信号V32000006.0、读入使能禁止信号V32000006.1置位为“1”。当换刀结束时,即LD20中的编程指令T代码与LD16中的实际刀位T代码相等,则表示编程的刀位到达,“编程刀号与实际到位一致”信号M112.7变为“1”,利用最后一行程序执行上升沿信号,复位“刀架正转”信号M112.0,同时置位“刀架反转”信号M112.1,使刀架反转锁紧。
图4 手动换刀控制PLC梯形图程序设计
数控车床采用手动换刀方式时,可编制手动换刀控制PLC程序如图4所示。只要将CNC操作方式选择在JOG方式,则变量V31000000.2信号为“1”。由于换刀起动前,刀架处于停止状态,所以“刀架停止”信号L8.1为“1”。当按下机床操作面板上的换刀按键K4时,L6.0信号为“1”。利用该信号的上升沿可置位“刀架正转”信号M112.0为“1”,起动刀架回转;松开换刀按键时,L6.0信号为“0”,利用该信号的下降沿可置位“刀架反转”信号M112.1为“1”,使刀架反转锁紧;同时复位“刀架正转”信号M112.0为“0”,清除刀架正转信号。
电动刀架在换刀过程中,为了保证刀架选刀及锁紧正确,通常设计刀架反转锁紧及最大选刀时间监控PLC程序如图5所示。不论是自动换刀还是手动换刀,只要“刀架反转”锁紧信号M112.1为“1”,首先会接通反转锁紧时间控制定时器T14;当定时器T14定时时间达到用户数据MD14510[22]设定的反转锁紧时间LW2时,T14常开触点接通便可复位“刀架反转”信号M112.1、“T代码换刀起动”信号M113.1;同时,要结束辅助功能控制,进行下一程序段的读入和进给,就必须复位进给禁止使能信号V32000006.0和读入使能禁止信号V32000006.1。此外,当“T代码换刀起动”信号 M113.1为“1”,且“刀架正转”信号M112.0为“1”时,可接通定时器T15用于监控最大选刀时间。若刀架正转换刀过程时间超过用户数据MD14510[21]设定的最大换刀时间LW4,定时器T15常开触点接通便可复位“刀架正转”信号M112.0,停止刀架转动;并置位L7.7并使报警变量V16000003.0为“1”,使CNC显示700024报警:“在监控时间内未找到目标刀具”。
图5 刀架反转锁紧及选刀时间监控PLC梯形图程序设计
如图6所示PLC程序为电动刀架控制信号输出程序。在电动刀架换刀过程中,若按下机床操作面板MCP上的NC复位按键,则V10000003.0信号为“1”,可直接复位“刀架正转”信号M112.0、“刀架反转”信号 M112.1、“T 代码换刀起动”信号 M113.1、报警信号L7.7,以及复位进给禁止使能信号V32000006.0和读入使能禁止信号V32000006.1。当松开急停按钮且刀架电机不发生过载情况下,急停状态信号V27000000.1为“0”、“刀架电机过载输入”信号 L7.1 为“1”;若“刀架正转”信号 M112.0 为“1”、“刀架反转”信号M112.1为“0”,则“正转输出”信号L7.2为“1”;同理,若“刀架反转”信号 M112.1为“1”、“刀架正转”信号 M112.0 为“0”,则“反转输出”信号 L7.3为“1”;程序中串联 M112.0、M112.1的常闭触点用于正反转输出的互锁控制。当按下急停按钮时,急停状态信号V27000000.1为“1”;或刀架电机发生过载情况时,“过载输入”信号L7.1为“0”。当发生急停或刀架电机过载任意一种情况时,均可断开正反转信号输出。此外,刀架电机过载时,“过载输入”信号L7.1为“0”,可利用L7.1的常闭触点接通L8.0,输出刀架电机过载报警信号。刀架正反转信号正常情况下,可接通L7.4,作为换刀按键K4指示灯输出信号。电动刀架换刀控制PLC程序一般由上述几部分组成,用户编程时可根据控制要求自行编写,也可基于西门子系统提供的子程序进行修改以达到控制目的。
图6 刀架输出信号PLC梯形图程序设计
文中详细分析了数控车床电动刀架的换刀控制流程,并以西门子802D系统为例介绍了电动刀架换刀控制相关接口信号。然后,以CK6140数控车床四工位电动刀架换刀控制为例,介绍了换刀控制PLC程序编制方法。目前,西门子数控系统PLC编程技术资料相对较少、程序编制复杂且较难理解,通过完整的换刀程序编制及说明,一方面可为编程人员提供参考,另一方面在涉及到换刀控制系统故障时,可帮助数控维修人员识读相应PLC程序,迅速判断故障点,排除故障。
[1]龚仲华.数控机床故障诊断与维修[M].北京:高等教育出版社,2012:287-289.
[2]龚仲华.西门子数控系统PLC程序典例[M].北京:机械工业出版社,2015:25,231-232.
[3]陈学军.数控机床故障诊断与维修[M].北京:北京大学出版社,2012:92-95.
[4]陈炳森,胡华丽.西门子802D数控系统PLC编程与应用[J].装备制造技术,2008,(9):148-150.