彭鸣 PENG Ming
(上海筑东机电工程技术服务有限公司,上海 201206)
在我国制造业向高端转型背景下,对工业零件的柔性化和精密化加工要求越来越高。数控机床不仅实现了自动化加工,而且能大幅度提升零件加工精度。其中,伺服性能、结构参数、传动特性、生产环境等因素都会对数控机床的加工精度产生影响。要想实现超精密加工,现阶段常用的方法有误差防止和误差补偿两种。前者是通过提高各项精度指标,例如机床运动部件的设计精度、加工精度、运动精度,将误差控制在允许范围之内,其成本较高。相比之下,误差补偿则是在掌握机床误差数据的前提下,修改数控加工代码补偿加工误差,操作起来更加方便,实用性更强。
超精密数控机床误差补偿主要分为两种形式,即硬件误差补偿、软件误差补偿。在生产实践中,硬件误差补偿受到诸多限制,例如需要更改机械结构,增加了成本;加工精度的优化范围有限,经常会出现补偿之后仍然达不到精度要求的情况。相比之下,软件误差补偿则具有操作简便、成本较低、精度提升明显等一系列优势。其补偿原理为:在不改变数控机床机械结构的前提下,测量获得机床误差数据,将误差补偿量运算到修改加工代码中,通过软件控制实现对加工误差的补偿。软件误差补偿中综合运用了传感器技术、数控技术、计算机技术,在保证加工精度符合要求的基础上,可以实现零件的高效率、批量化生产。本文所述的超精密数控机床误差补偿流程如图1 所示。
图1 数控机床误差补偿流程图
在应用软件误差补偿技术时,首先要根据待加工零件的外形轮廓,规划走刀路线。按照该路线可以得到理想状态下的数控机床加工指令,但是该数控指令中并不包含机床实际加工时存在的运动误差。因此,还需要通过误差补偿技术计算出运动误差,以便于提高误差补偿效果。刀具路线得到数控指令后,查询各点运动数值处的误差值,即可生成机床的实际运动模型。对比刀具的实际运动轨迹和理想运动轨迹,即可直观地判断两者之间存在的误差。然后执行一次判断程序,判断实际测得误差是否小于允许误差。如果判断结果为“否(N)”,则修改数控指令后,重新构建实际机床运动模型,重复上述步骤并进行再次对比,直到判断结果为“是(Y)”,说明加工精度达到要求,则终止此次误差补偿。
为了进一步验证软件误差补偿的应用效果,在仿真软件上进行了模拟试验。仿真软件的参数设置界面上,可手动输入对刀坐标(x,y)、理想工件坐标系原点(Fx,Fy,Fz)、工件坐标系中坐标(Gx,Gy,Gz)等。在仿真实验开始后,首先输入对刀坐标、工件轮廓坐标,这样通过软件自动计算后可以得出理想工件坐标系中的坐标原点以及实际工件坐标系原点。通过数控机床误差辨识,得到对应机床坐标的X 轴6 项误差和Z 轴6 项误差。根据仿真软件计算、提供的工件坐标系原点和各项运动误差,可以根据工件所需的加工精度,进行补偿计算并得出实际刀具路径。另外,在补偿计算中还能得到补偿前、补偿后待加工零件在机床坐标系、工件坐标系中的具体坐标。这样一来,就可以在仿真软件的显示页面上直观地了解补偿前后工件坐标变化。在完成补偿计算后,还能通过误差辨识数据库模块,调用内部数据并进行线性拟合,得到各项误差的拟合曲线。设定某零件的加工路径为“沿X 轴行进30mm,沿Z 轴行进30mm”,可以达到一条与X 轴呈45°角的直线,每隔1mm取点进行补偿计算,将补偿前后的走刀轨迹与理想的走刀轨迹进行对比,如图2 所示。
图2 理想、补偿后及未补偿轨迹图示(放大5000 倍)
结合图2 可知,在误差补偿前数控机床的走刀轨迹与理想轨迹相差明显;在误差补偿后,数控机床的走刀轨迹向理想轨迹靠拢,说明工件实际加工精度趋近于预期精度,误差补偿效果良好。
UMAC 是Delta Tau 的系统级控制器,可根据用户需要配置个性化的UMAC 系统,同时还能提供高速SUB、MACRO 等完备的通讯方式,保证UMAC 控制器与主计算机之间进行稳定的信息传递。本文设计的超精密数控机床系统采用UMAC 控制器搭建全闭环伺服系统。其中,UMAC 控制器共有4 个运动轴通道,系统设计中选择3 个通道,分别对应了机床的X 轴、Z 轴和电动轴。确保UMAC控制器发出的控制指令能够从通道快速传递至运动轴,完成相应的动作。三轴运动装置控制系统的结构组成如图3所示。
图3 三轴运动装置控制系统
该控制系统中,X 轴和Z 轴分别沿着导轨做定向的直线运动。导轨上安装有光栅尺,可以用于采集导轨上X 轴与Z 轴的运动信息。同时利用通信装置将采集到的位置信息实时反馈给该系统中的控制器、驱动器,形成闭环控制。
为了保证超精密数控机床的运动特性、伺服特性达到理想状态,需要借助于UMAC 控制器对各个控制环节的变量进行调节,本文提出了一种基于PID 控制算法的UMAC 控制器参数调节方法。PID 控制算法作为一种寻求最佳系统控制特性的常用算法,其原理是:设定积分环节是否加入的条件,如果出现大的偏差,则不加入积分环节,并通过参数调节的方式缩小偏差。当大偏差减小到一定程度后,再次进行判定,如果偏差(|e(k)|)在允许的阈值(ε)之内,则加入积分环节。PID 控制算法可表示为:
上式中,Kd表示微分系数,Kp表示比例系数,Ki表示积分系数。K 为变量,表示在该系统中进行积分处理的时间。
基于PID 控制算法的UMAC 控制器被广泛应用于数控机床的多轴控制中,并且能够做到效率与精度的兼顾。在PID 参数调整中,可支持手动、自动两种模式。在实际生产中,自动整定虽然能够快速得到一组理想PID 参数,但是也有可能存在整定参数超出电机额定性能的情况,电机长时间处于超负荷运行状态将会增加发生故障的概率。因此PID 参数整定中一般选择手动调节。另外,考虑到本文设计的数控机床三轴统一采用了气浮机构,因此在每次开机运行前必须要认真检查X 轴、Z 轴、电动轴是否均已通气。对于不能正常通气的要排查故障、在完成通气后再运行。之后检查UMAC 控制器和主计算机之间的通信是否正常,确定不存在异常后开始启动PID 进行软件调试。根据调试结果重新修改PID 参数。调试软件支持阶跃信号、斜坡信号、梯形信号等七种信号源,用户可根据实际情况自定义选择。本系统为了提高动态性能选择了阶跃信号(Position Step),其优势在于调节测试系统的跟随误差,保证速度前馈系数和加速度前馈系统能够灵活调节。
基于UMAC 控制器开发超精密数控机床系统。由于UMAC 控制器配套的Pcomm32.dll 动态链接库中包含了许多类函数,为系统开发提供了便利,在VC++10.0 环境下完成系统开发。其中UMAC 卡与PC 机之间用通讯装置完成指令的下达和信息的反馈,另外还提供了板卡开闭、状态显示等功能。整个数控系统可提供的功能有电机回零、电机电动、运行状态监视、NC 代码下载、自动运行控制等。系统整体架构如图4 所示。
图4 基于UMAC 控制器的数控系统结构图
在完成系统搭建后,逐步进行各功能验证:
①上位机与下位机之间的通讯功能。调用动态链接库中的Open Pmac Device9()函数检查通讯功能。在上位机上编辑并发送指令,如暂停运行指令,下位机接收该指令后运行数控程序中的暂停程序,正在进行工件加工的刀具暂停运行。同时观察UMAC 面板上“运动状态”一栏显示“暂停”。说明上位机可以正常向下位机发送控制指令,下位机能够正常反馈指令执行情况,相互之间通讯正常。
②数控系统的点动功能。进入系统的点动功能菜单,涵盖了X 轴正方向运动“X+”、X 轴负方向运动“X-”、Z 轴正方向运动“Z+”和Z 轴反方向运动“Z-”四个选项。验证功能时,从菜单中点击“X+”时,观察到X 轴沿着导轨向正方向运动一段距离,松开按钮后X 轴停止运动,其他3 个选项同样如此,说明数控系统的点动功能正常。
③运行状态监视功能。监视内容包括运动轴状态信息和安全信息。当机床运动轴在机床坐标系中的位置、速度发生变化后,在UMAC 显示界面可同步展示变化后的位置信息、速度信息。同时,在运动轴正常运行时显示为绿色,到运动轴达到最大行程后显示红色,同时强制执行电机停机指令,防止电机烧坏。
超精密数控机床由于对工件的加工精度有更高的要求,因此在实际生产中需要借助于误差补偿技术,通过实时收集刀具的实际运动轨迹,与理想运动轨迹进行对比。如果两者之间的误差太大,则重新修改参数,再次进行加工,经过反复多次的误差补偿后,直到实际运动轨迹趋近于理想运动轨迹,两者之间的误差符合加工精度要求。在此基础上基于UMAC 控制器搭建数控系统,在保持加工精度的前提下,可以实现点动加工、自动回零、状态监视等功能,进一步提高了数控机床高精度、自动化加工水平。