根据以上电动刀架的控制要求,其PMC程序设计一般可分为刀号出错检查、刀号一致判别、刀架回转控制、完成应答4部分,典型程序如下。
1.刀号出错检查
刀号出错检查程序用于CNC加工程序中的编程刀号(T代码)检查,如加工程序中的T代码超出了刀架实际允许的刀号范围,PMC程序应直接结束T代码的执行,并发出相应的操作出错报警。刀号出错检查程序如图5-5所示。
由于FS-0iD等CNC的T代码输出为32位二进制编码信号T01~T31(F026~F029),因此,刀号出错检查程序使用了4字节二进制比较指令COMPB(SUB32);比较指令在CNC的T代码选通信号TF输出为“1”时执行。
程序中的第1条比较指令用于刀号为0检查,如CNC加工程序中的T代码为T00,则F026~F029的二进制输出值为“0”,执行指令后,PMC的特殊内部继电器R9000.0的状态将为“1”,故R500.0=1并保持。
程序中的第2条比较指令用于刀号大于4检查,对于4刀位的电动刀架,如CNC加工程序中所编制的T代码大于T04,则F026~F029的二进制输出值大于0004,执行指令后,PMC的特殊内部继电器R9000.1的状态将为“1”,故R500.1=1并保持。
R500.0或R500.1一旦为“1”,一方面可通过相关的PMC报警处理程序,产生机床报警或操作者出错信息,停止机床的运行;另一方面,可通过后述的T代码应答程序,直接输出辅助功能执行完成信号FIN(G004.3)、结束T指令的执行过程。
图5-5 刀号出错检查程序
2.刀号一致判别
刀号一致判别程序用于CNC加工程序中的编程刀号和刀架实际刀号的一致检查,如两者相同,可直接结束换刀;否则,应产生换刀启动信号,使刀架回转换刀。刀号一致判别程序如图5-6所示。
当CNC加工程序中的T代码编程正确(0<T≤4)时,在CNC的TF信号有效期间,程序中的R500.2将保持状态“1”,图中的PMC程序将进行以下处理。
1)T译码。为了进行编程刀号和实际刀号的比较,应保证实际刀位检测信号的格式和CNC的T代码一致。电动刀架的刀位检测通常是通过4个霍尔元件,直接检测刀位,即刀位T01的检测信号(X4.3~X4.0)输入状态为0001(X4.0=1)、T02的输入状态为0010(X4.1=1)、T03的输入状态为0100(X4.2=1)、T04的输入状态为1000(X4.3=1);而CNC的T代码输出F026为32位二进制编码信号,执行T01指令时的T代码输出(F026的低字节)为0001、T02的输出为0010、T03的输出为0011、T04的输出为0100。因此,需要通过PMC程序的设计,保证两者格式的一致。
代码变换的方法有多种,作为简捷的方法之一,可直接利用PMC的二进制译码功能指令DECB(SUB25),将来自CNC的32位T代码信号F026~F029,一次性转换成与刀位检测信号格式相同的信号。DECB为4字节二进制译码指令,程序中定义了指令的输入数据为来自CNC的32位T代码F026~F029、基准数据为0001、结果寄存器为R508;因此,执行该指令可将F026~F029的二进制代码输入T0001~T0008,依次转换为结果寄存器R508.0~R508.7上的二进制位状态,如T0001对应R508.0=1、T0002对应R508.1=1等。对于实际有效的编程T代码T01~T04,执行DECB指令后,可在R508.0~R508.3上得到与T01~T04对应的信号,而R508.4~R508.7则始终为0,因此,R508上将得到和实际刀位检测信号格式一致的指令刀号,达到了T代码格式转换的目的。
图5-6 刀号一致判别程序
2)实际刀号读取。程序中的MOVE(SUB8)指令用于实际刀号输入的读取。执行MOVE指令,可将含有刀位检测信号的输入字节X4的状态和“00001111”进行“位与”运算,以便在内部继电器R510.0~R510.3上得到刀位检测输入X4.0~X4.3的状态,而R510.4~R510.7则始终为0。(www.xing528.com)
3)刀号一致判别。程序中的二进制比较指令COMPB(SUB32)用于刀号一致判别。当刀号一致时,CNC的T代码译码结果R508和实际刀位检测输入R510的状态相同,执行指令后,PMC的特殊内部继电器R9000.0将为“1”、R501.0为“1”。如CNC输出TF信号时,实际刀号和编程刀号已相同(R501.0=1),则可产生结束换刀信号R500.3,此时,可通过后述的完成应答程序,直接输出辅助功能执行完成信号FIN(G004.3)、结束T指令;如实际刀号和编程刀号不一致(R501.0=0),则可产生启动换刀信号R501.3,启动刀架正转。
由于在整个换刀过程中,R500.2(TF)信号保持为“1”,因此,刀号一致判别指令COMPB始终有效,但实际刀位检测输入信号X4.0~X4.3的检测区间较窄;因此,电动刀架在正转到停止、反转锁紧的过程中,R501.0的状态通常存在“1”→“0”→“1”的变化。为了避免由此引起的换刀动作异常,引起换刀动作的提前结束或刀架二次启动,信号R500.3和R501.3需要使用R500.2(TF)的上升沿脉冲R501.1生成。
3.回转控制和完成应答
电动刀架的换刀控制可根据图5-4的要求,利用刀架电动机的正反转直接实现;换刀结束后,PMC应输出FIN(G004.3)信号,结束CNC加工程序中的T代码执行。实现这一动作的PMC程序如图5-7所示。
图5-7 换刀控制和结束应答程序
刀架回转可通过前述的刀架启动信号R501.3启动,如坐标轴运动结束、DEN(F001.3)=1,且其他条件满足(R500.4=1),则R501.3将使得刀架电动机正转输出Y0.0为“1”,刀架将抬起、回转。
由于在整个换刀过程中,图5-6程序中的刀号一致判别指令始终有效,因此,一旦刀架转到加工程序T代码所指定的刀位,信号R501.0将为“1”,程序中的到位信号R501.4将为“1”并保持。R501.4=1后,将撤销图5-6程序中的启动换刀信号R501.3、刀架正转输出Y0.0,停止刀架正转。
信号R501.4经过定时器T1的延时后,将输出反转信号R501.5,使刀架电动机反转输出Y0.1为“1”并保持,刀架执行反转锁紧动作。与此同时,Y0.1=1将启动定时器T2,开始反转锁紧延时,并复位正转到位信号R501.4和反转起动信号R501.5。
刀架电动机的反转锁紧时间利用定时器T2的延时进行控制,延时到达后,R501.6将为“1”,PMC可通过R501.7输出T代码执行完成信号FIN(G004.3),结束CNC的T代码执行过程。CNC接收到PMC的FIN信号后,可自动撤销TF信号,使图5-6程序中的R500.2状态变为“0”,因此,刀架电动机的反转输出Y0.1也将被撤销,并使R501.6、R501.7、G004.3(FIN)成为“0”,结束换刀动作。
PMC程序中的T代码执行完成应答信号R501.7,可在以下3种情况下输出。
1)CNC加工程序中的编程刀号出错、R500.0或R500.1为“1”时,PMC将直接输出FIN(G004.3)信号,结束T代码执行过程。CNC接收到PMC的FIN信号后,可自动撤销TF信号,使R501.7、G004.3(FIN)重新成为“0”,而机床则可通过报警处理程序,进入报警状态。
2)换刀开始时实际刀位和CNC程序中的T代码指令刀号一致。此时,图5-6程序中的R500.3为“1”,同样可以直接输出FIN(G004.3)信号,结束T代码执行过程。CNC接收到PMC的FIN信号后,可自动撤销TF信号,使R500.2、R500.3为“0”,R501.7、G004.3(FIN)信号复位,换刀直接结束。
3)正常换刀过程结束。正常的换刀过程结束时,可利用前述的反转锁紧的延时到达信号R501.6进行应答。
因FS-0iD等CNC的普通M、T、S、B辅助功能执行完成应答,使用的是共同的完成信号FIN(G004.3),因此,其FIN信号需要同时考虑辅助功能M、S、B的应答要求。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。