1、数控编程技术 NC 程序仿真与校验本文应用 NC 程序仿真校验软件 VERICUT,研究了 NC 程序的仿真技术,分别探讨了手工编写的和由 CAD/CAM 软件生成的 NC 程序的校验方法,完成了典型零件手工编写的和由CAD/CAM 软件生成的 NC 程序的切削加工仿真和程序校验。一、引言NC 程序作为数控加工的信息载体,其正确与否直接影响零件的加工质量。目前实际生产使用的 NC 程序,在投入加工之前通常采用机床空运行和样件试切,完成 NC 程序的校验。该方法加工准备周期长,生产成本高,难以实现数控机床的高效率。图形仿真是目前通用的 NC 校验方法,一般采用离线工作方式,用三维图形直观显示机床
2、、刀具、工件以及辅助设备(机械手等) ,在计算机上对检验程序进行编译,并驱动图形加工系统进行准实时加工,检查 NC 代码中的语法和语意错误,实现干涉校验。NC 程序仿真能直观安全地模拟、验证、分析切削过程,免去了以往样件生产的样件材料损耗、刀具磨损、机床清理等,从而缩短生产准备周期,降低成本。本文选择了两个典型零件作为研究对象,探讨利用计算机辅助技术生成 NC 程序,然后进行仿真校验的技术问题。以 Unigraphics NX 和 VERICUT 5.3 为工具。在 Unigraphics NX/Modeling 模块中做零件和模型造型,用 VB 和 Unigraphics NX/Manufa
3、cturing 等软件生成 NC 程序,再用VERICUT 5.3 仿真软件实现 NC 程序仿真校验。二、NC 程序仿真与校验工作流程VERICUT 仿真校验 NC 程序的工作流程如图 1 所示。图 1 VERICUT 仿真校验 NC 程序的工作流程几乎所有形式的 NC 程序代码都可以作为 VERICUT 的输入程序,包括手工编写的纯文本格式的数控加工程序。MG 代码与 APT 形式的 CL 文件一样,都可以被 VERICUT 直接执行。类似真实加工的是,VERICUT 需要刀具轨迹代码,需要对于被加工的原材料的描述,也需要对于切削刀具的描述。验证过程的结果之一是一个加工过的三维实体模型产品。
4、结果之二是一个报告包含模拟加工过程所监测到的所有错误信息的日志报告。三、VERICUT 实现 NC 程序仿真校验的方法和步骤1. 手工编写的 NC 程序仿真校验对于这种情况,这里以一个用 VB 编写的纯文本数控加工程序为例加以说明。如图 2 所示的是一个已经粗加工的零件,要对其顶面进行精加工。顶面为一不能用 CAD 软件完成造型的三维空间曲面,原曲面上相应点的坐标是在三坐标测量机上测量得到的,只能根据这些坐标值进行编程,然后加工出曲面。用 VB 编写的数控程序有 5 万多行,程序的校验原先是在数控机床上对样件进行试切完成的,要经历试切测量修改程序再试切的程序校验过程,整个过程既费工又费时,而且
5、效果也不理想。改用 VERICUT 对 NC 程序进行仿真和校验,不仅节省时间和降低成本,而且效果很好。图 2 毛坯模型本例为了获得好的仿真效果,利用 Unigraphics NX 制作了一个近似的实体模型。模型制作好后,输出为*.IGS 文件并保存。仿真需要完成三个操作步骤:准备 NC 程序;准备被加工零件的原材料模型;完成仿真。进入 VERICUT 主界面,首先定义工作环境,单击 FileProperties,Default Units=Millimeter 设置为公制毫米单位,然后单击 FileNew Session 新建一个*.USR 文件。在其中定义刀具路径、毛坯和刀具,并完成仿真。
6、(1)毛坯单击 VERICUT 主菜单的 ModelModel Definition:Import 标签,单击 Browse,点选保存*.IGS 原材料模型文件的目录,选择预先制作好的原材料模型文件。取Tolerance=0.005,单击 Apply,被加工零件的原材料模型即被输入 VERICUT 主界面,如图1 所示。(2)NC 程序手工编写的 NC 程序如图 2 所示。共 5 万多行,预先编好的 NC 程序保存为纯文本格式。NC 程序以顶面中心为编程原点,精加工工序使用的刀具为 20 球头铣刀。NC 程序调用步骤:单击 Setup menuToolpath :Toolpath TypeG-
7、Code Data,单击 Add,选择预先编好的程序文件,单击 Ok,刀具路径文件被调入 VERICUT。图 3 NC 程序(3)刀具根据程序的要求,在 VERICUT 中定义刀具,可以从 VERICUT 附带的刀具库中选择。步骤是:单击 SetupTool ManagerFileOpen,在 VERICUT 的安装目录下,找到刀具库文件 fanuc3xm.tls,并打开。对 ID 号为 1 的刀具进行编辑,改为 20 的球头铣刀,并将其 Gage Offest 设为零。删除其余刀具,将修改的结果另存至相应的目录。(4)数控系统这里要为 VERICUT 仿真环境指定一个数控系统控制文件。可直接
8、从 VERICUT 的库文件中选择相应的数控系统控制文件,本例选用的控制文件是 fan0mctl (mill)。调用步骤:单击 SetupControlOpen,在 VERICUT 安装目录下找到库文件 fan0mctl,并打开。该文件是一个文本文件,包含数控系统如何处理 G 代码的指令、程序的格式、机器码编写规则和程序调用的规则等,用于将刀具路径编译为机床能识别的机器码。(5)机床要根据实际机床定义仿真的机床组件。下面以 Funac-3Axis 立式加工中心为例,说明如何添加机床各轴组件到组件树形关系中。在 Base 下建立 Z 轴,并定义 Z 轴零点相对于机床零点的位置;在 Z 轴上建立刀
9、具 Tool,并定义其相对于机床零点的位置;再在 Base 下建立 Y 轴,在 Y 轴上建立 X 轴;然后利用剪切、粘贴功能,将组件树形关系调整为如图(4)所示结构。图 4 组件树形关系说明:机床组件中各轴零点均设在毛坯底面中心,刀具 Tool 的 Z 坐标根据程序中的G92 指令和毛坯顶面中心至底面中心的高度设置,类似于在数控机床上将工件坐标零点设置在毛坯顶面的中心。(6)仿真这里要确保刀具路径的原点与机床各组件的零点相符。本例根据以上的设置将刀具路径原点设在 Stock_Origin。设置步骤:单击 Setup menuToolpath:在刀具原点列表下拉菜单中,点选 Stock_Orig
10、in,然后单击 Ok。单击 Play to End 图标即可仿真刀具切削过程。仿真过程中,打开 Info/Status 窗口,则在动态切削过程的同时,还能实时得到其相应的刀具位置、错误信息、警告信息、刀具信息等,如图 5 所示。a)仿真切削过程 b)有误切程序的仿真结果 c)调整后的程序仿真结果图 5 仿真结果查看日志文件,可得到 VERICUT 记录的错误信息和警告信息。如有错误,则会显示发生错误的程序段。如记录数均为零,则说明 NC 程序通过了 VERICUT 的验证。2. Unigraphics NX/Manufacturing 中生成的 NC 程序仿真校验对于这种情况,本文着重探讨 N
11、C 程序的仿真校验。尽管在 Unigraphics NX/Manufacturing 中,生成刀具路径时,Unigraphics NX/Manufacturing 提供了加工仿真功能,但是对一些复杂零件的刀具路径在实际加工前还应对 NC 程序进行进一步的验证。如图 6 所示的零件,在 Unigraphics NX/Manufacturing 中编制刀具路径时,经加工仿真未发现问题,用默认的三轴铣后处理器将刀具路径后处理生成 NC 程序,再用 VERICUT 进行验证,却出现了错误报告,错误程序段为 N3340 G2 X59.026 Y33.681 I-33.91 F250,圆弧插补缺少 J 地
12、址字,对应的刀具路径如图 6a 所示。类似的错误有好几处,这样的错误一般难以检查发现。但用 VERICUT 软件很容易就能发现问题。经 VERICUT 仿真的 NC 程序,除了能在动态切削过程的同时,实时得到其相应的刀具位置、错误信息、警告信息、刀具信息外,还生成相应的日志报告。报告中详细记载了错误的性质和相应的程序段,通过路径重放还能再现错误发生的过程,而且能立即在路径重放窗口中对相应的程序段进行修改。如图 6b 为原错误程序段修改后的路径重放。图 6 一个盘型零件三、结束语利用 VERICUT 仿真校验 NC 程序可以在计算机上模拟整个 NC 机床的切削环境,而不必在实际的机床上运行。它降低甚至消除了在机床上验证输出的必要性。利用该技术不仅节省了编程和调试的时间,还减少了重复性的工作、消除了损坏零件及损坏机床的可能性。