王 伟 谢 堂 梁 浩 沈瑞雪 周学成 陶建华
(广州大学机械与电气工程学院,广东 广州 510006)
木材加工数控技术由金属加工数控技术逐渐发展转变而来,是根据木材机械加工工艺要求,使用电子计算机对整个加工过程进行信息处理与控制,解决复杂、精密、多品种和中小批量木质产品加工问题,实现生产过程的自动化,是木工机械设备中最复杂、科技含量最高的技术。数控技术在木工机械中的广泛应用是推动木材加工技术进步的重要途径,是实现生产自动化、柔性化、集成化与网络化的基础[1]。木工数控机床是数控技术应用于木工机械的典型,研究数控机床对提高产品质量、增强我国木工机械在国际市场上的竞争力具有重要意义[2-4]。
特征技术是CAD/CAPP/CAM集成的核心技术,是集成过程中信息传递的载体,通过该载体封装各个模块需要的参数信息,实现三者的最终集成,该技术已成为新一代智能化、集成化产品建模系统的核心技术[5-11]。本文研究了一种基于特征技术的木工数控自动编程系统,在木工构件特征分析的基础上,归纳出木工榫头特征的基本单元,并对基本单元进行划分和模块封装,从而实现木工数控中榫头快速编程与加工的目的。
木工数控编程系统分为五大功能模块,各功能模块之间相互独立。系统的功能模块包括:文件管理、系统设置、特征建模、加工仿真和后置处理。木工数控编程系统的架构设计如图1 所示。文件管理模块主要用于对工程项目与数据文件的处理。系统设置模块主要用于对加工工艺参数的设置。特征模块主要用于CAD模型的构建。加工仿真模块具有刀路轨迹仿真与机床仿真功能。后置处理模块用于对刀位点数据的后置处理与格式转换。该系统各功能模块都编译成独立的DLL文件,各功能模块在组织结构上是相互独立的,主程序在执行某功能时只需直接调用相应的DLL文件。
图1 系统架构设计图Fig.1 System architecture design drawing
在构建特征模型前,木工数控编程系统需设置刀具和加工工艺参数,若未设置,则按照默认数据处理。特征模块根据木工机床实际加工需求进行开发设计,在操作特征模块前需提前设置加工方法,若未设置加工方法,则将按照默认的刀路轨迹规划处理并生成刀位点数据。用户通过属性页的选择框来交互式选择加工面与定位边对象。每新建一个工程项目,系统就会自动生成一个特征树对话框,通过特征树节点可修改和删除特征模型的外形尺寸和数据,也可进行参数化设计与调整特征树的节点顺序。数控编程系统自上而下读取特征树上特征节点的名称,并按照节点名称顺序将特征的数据保存在特征模型数据文件中。加工仿真模块包括刀路轨迹仿真和机床仿真。后置处理模块是根据刀位点数据、刀具和加工工艺参数等进行数据处理,转换输出可用于实际加工的G代码[12-14]。系统操作流程如图2 所示。
图2 系统操作流程图Fig.2 System operation flow chart
特征信息主要包括三部分:工艺信息、形状信息和加工信息。形状信息包括几何参数和约束关系,是描述榫头特征最重要的一种信息[15-19]。木工榫头工艺性分析是数控编程规划的第一步,在此基础上,方可确定榫头在数控加工过程中所需的机床类型、工艺装备、刀具类型、切削用量及数控加工工艺路线,从而获得最佳的加工工艺方案,满足榫头工程图纸和有关技术文件的要求[20-25]。
通过对木工构件中榫头特征分析,得出榫头特征可分为倒角、圆榫、腰圆榫、方榫、L-形槽、圆槽、腰圆槽、方槽、等腰三角形槽、倒圆角和L-型榫头等(图3),这些特征相互组合,可以形成复杂多样的加工模型。将每类特征开发设计为独立的加工功能模块,并且拥有独立的属性页和封装函数。为了在毛坯上实现榫头的加工,需要用到交互界面(图4),榫头特征成功生成后,都会在右上角的特征树显示相对应的特征名,双击特征树中的特征名,相对应的榫头特征会高亮显示,也可以右键修改和删除特征树中的节点,在修改功能模块做参数化设计(图5)。右上角的特征树代表木工构件的加工工序,即机床加工这些特征的先后顺序,由上至下依次加工。每类特征都有相应的刀路轨迹规划,用户也可以通过设置不同的加工方法实现指定榫头特征的开发(图6)。
图3 特征功能模块示意图Fig.3 Feature function module diagram
图4 特征交互界面示意图Fig.4 Schematic diagram of feature interaction interface
图5 特征的高亮显示和参数化修改示意图Fig.5 Highlights and parametric changes to features
图6 特征的刀路轨迹示意图Fig.6 Schematic diagram of tool path of feature
木工数控编程系统的加工仿真模块用于仿真模拟木工榫头的加工过程,以检验加工过程中的干涉与碰撞。它由刀路轨迹仿真和机床加工仿真两个功能模块组成。该系统的机床仿真模块需在SolidWorks装配环境中进行,在装配环境中每增添一个零部件,系统均会自动设定整体装配体的坐标系和零部件的局部坐标系。木工数控编程系统加工仿真的本质实际是进行各部件坐标系之间的几何变换。在加工仿真前,需提前设定刀具与机床装配模型的坐标原点。加工仿真流程在于运用刀位轨迹点数据,设置每个木工机床构件的位姿并进行几何变换,通过刀位点数据刷新屏幕和重构模型位姿以达到运动仿真的功能。
2.2.1 刀路仿真
刀路仿真在于验证获取刀路轨迹点数据的正确性以及模拟刀具加工的走刀过程。刀路轨迹数据即刀位点的位置轨迹,刀路轨迹仿真即按照刀位点的位姿显示轨迹(图7)。刀路仿真用于模拟刀具的实际切削过程,通过刀路仿真可以判别刀位点计算、进退刀方法及进给路线是否合理,观察是否会发生刀具过切以及刀具与约束面发生干涉或碰撞等情况。
图7 刀路轨迹仿真示意图Fig.7 Schematic diagram of tool path simulation
2.2.2 机床仿真
机床仿真是应用实体造型技术建立木工机床、木工榫头、刀具以及夹具的实体几何模型,并运用真实感图形显示技术显示加工过程中的机床模型、木工榫头、刀具模型以及夹具模型动态,模拟木工榫头的实际加工过程。机床仿真过程综合考虑了机床控制器的特点和刀具配置,可以验证刀路轨迹数据的正确性,检验机床部件、刀具、夹具和木工榫头之间相互运动关系以及相互间的碰撞可能,并对加工后的木工榫头与期望的木工榫头进行比较,以提高加工过程的质量,减少操作者不规范操作导致的误差,降低机床、夹具和工件损坏的风险。
木工数控机床仿真模块需将以刀路轨迹算法计算的刀位点数据转换成刀轴运动量,循环输入刀位点转换的刀轴运动量,并设置机床各部件的位姿矩阵,不断刷新屏幕和模型重构,从而达到机床运动仿真的目的。在木工机床加工仿真前,需将被加工工件添加至机床仿真的装配文件中;为达到更好的仿真效果,需根据刀具参数和机床参数对装配模型进行重构;同时将加工模型原点设置与木工机床装配环境的原点重合以减少刀位点计算量。
后置处理模块是将前置处理模块中获取的刀位点数据、刀具和加工工艺等相关数据转换成能被数控机床直接识别的数控程序。后置处理计算流程如图8 所示,首先应输入机床的结构参数与加工工艺参数,并获取相关的辅助工艺参数,之后逐步读取由刀路轨迹算法计算的刀位点数据,并进行运动学求解,计算刀位点数据相对应的机床各轴运动量,直到刀位点文件读取结束;最后,将每个刀路轨迹点数据对应的各轴运动量逐个存入数据中。后置处理计算模块所需的机床和工艺参数包括刀具偏置、工件偏置、主轴转速、吃刀量等。木工数控系统生成的刀位数据包括刀位点数据与加工面法矢量,刀位点数据是刀具相对于工件坐标系的刀心位置;加工面法矢量是刀具相对于工件坐标系的刀轴矢量数据。运动学求解的作用就是根据具体的机床运动结构将刀位文件中的刀位数据转换成机床各运动轴的运动数据。
图8 后置处理计算流程图Fig.8 Post processing calculation flow chart
将获得的各轴运动量数据和加工工艺数据转换成适用于特定数控系统类型的数控程序。加工工艺参数包括平面参数、位置参数、尺寸参数和加工参数等。刀具参数包括刀具类型(T1~T4)、刀具直径、刀具长度、主轴转速和切削速度等。将以上数据信息储存为刀位文件数据,再通过后置处理模块,将刀位文件数据转换为加工数据,此加工数据可以被HUST数控控制器识别。
以某公司研制的木工数控机床为应用平台,将木工数控自动编程系统应用于木工榫头的加工。如图9所示,木工榫头的加工轨迹被分为形切刀路轨迹和环切刀路轨迹,通过木工数控自动编程系统中的特征加工与轨迹生成模块,在其平面形成凹槽和加工轨迹,在非曲线边界的平面内形成平行加工轨迹,曲线边界的平面形成环形加工轨迹;通过刀路轨迹规划算法计算刀位点数据并将刀位点数据保存在刀具链表数据结构中;刀位点数据经后置处理与优化后,输出可用于木工数控机床加工的G代码。
图9 木工榫头加工轨迹示意图Fig.9 Sketch map of woodworking tenon processing track
本文介绍了木工数控自动编程系统的总体设计过程,包括系统的需求分析与架构设计。根据系统的需求分析,参照典型CAM软件对功能模块进行划分,设计了各功能模块交互界面,并将系统各功能模块分为文件管理模块、系统设置模块、特征模块、加工仿真模块与后置处理模块。该系统利用SolidWorks二次开发技术采用插件方式进行开发设计,各功能模块之间相互独立。将该系统应用于某公司研制的木工数控机床上进行测试,用于对榫头的现场加工,测试表明:木工数控编程系统提高了加工效率和产品的一致性,产品加工质量符合加工精度要求,实现了木工数控自动编程系统的开发。