当前位置: 首页 » 数控技术 » 综合技术 » 正文

基于Matlab的数控加工代码仿真检验


放大字体  缩小字体 发布日期:2018-01-16
摘要:为保证实际数控加工的顺利进行,需要采用仿真加工技术对数控加工代码的正确性进行检验。在研究数控加工代码仿真检验技术的基础上,开发了基于Matlab平台的数控工具磨床仿真加工系统,实现了复杂形状刀具数控磨削加工代码的仿真检验。

1 引言

在数控加工过程中,数控系统根据加工代码来控制机床运动。为避免因加工代码错误引起机床运动部件之间、工件与机床之间发生碰撞等危险现象,在加工前必须对加工代码的正确性进行验证。加工代码的验证可通过在机床上进行试切或采用计算机图形仿真等途径实现。由于采用试切方式验证加工代码的成本较高,周期较长,且具有一定危险性,因此通过计算机图形仿真方式验证加工代码的方法得到了越来越多的应用。
采用计算机图形仿真方式验证加工代码就是在由计算机构造的仿真加工环境下进行模拟加工,操作者可通过显示屏观察机床各部分在加工过程中的运行情况及工件加工状况,判断机床各运动部件在加工过程中是否会发生干涉。加工完毕后,可对模拟加工结果进行检验,从而判断加工代码的正确性。采用该方式既可得到在机床上试切的验证效果,又可避免在机床上实际试切存在的弊端。

2 仿真加工环境的构造

仿真加工是数控机床在仿真加工环境中的映射。在构造仿真磨削加工环境时,必须真实地反映实际磨削加工环境。在仿真加工环境中,机床各相关运动部件及所用刀具、工件等均用三维实体图像进行描述,各三维实体的空间位置均按实际加工设备进行布置。
在构造仿真加工环境时,首先需对实际加工系统进行数字化,然后以三维图形方式将数字化的加工系统表达出来。对实际加工系统进行数字化时,机床各相关部件(如主轴、工作台等)的三维造型均应按照数控机床各相关部件的布置、结构及尺寸来构造。同时需兼顾仿真环境与现实环境的一致性以及模型表达的简洁性,使仿真加工环境既可真实、形象地反映现实加工环境,又具有较高运行速度。因此,在构造模型时应对实体进行必要简化,对一些次要细节不必过于精细地描述。
Matlab软件在数据可视化方面功能极佳,具有便捷、实用的图形绘制功能,可便捷地实现计算数据的二维、三维乃至四维图形表达。在Matlab中,运用mesh(X,Y,Z)指令和surf(X,Y,Z)指令可绘制三维模型的三维网格图和实体图,其中X、Y、Z分别为模型表面上离散点的x、y、z 轴坐标矩阵。因此,在对加工系统进行数字化时,机床各部件的三维模型表面的离散点坐标数据需以点的x、y、z 轴的坐标矩阵形式保存起来。利用Matlab提供的图形渲染功能可对所绘制的三维图形进行渲染,运用颜色调配(colormap)、表面细化处理(shading)、设置光照效果(light)、调节光照强度(brighten)等渲染工具,可使仿真加工环境更加逼真。
在实际加工过程中,机床各运动部件之间以及机床与工件之间即使产生非常轻微的干涉都可能造成极其危险的后果,因此在检验加工过程是否会发生干涉现象时,必须从各个角度对任何细微部分进行观察。利用Matlab强大的图形编辑功能,可在加工过程中的任意时刻对图形区域进行旋转、缩放,从而可从任意视角对加工现场进行观察,并可对任何细微部分进行局部观察,甚至可深入到机床各部件及工件内部观察干涉程度或切削深度。

3 仿真加工系统的运动控制

进行仿真加工时,从加工代码文件中逐条读入加工代码,提取代码中机床各运动轴的绝对或相对位移量,并以机床坐标系的绝对坐标值保存在刀位数组中;将代码中各功能指令(如M代码、进给功能设定等)保存在功能数组中。根据刀位数组所要求的机床各运动轴的绝对位移量,根据机床运动轴的配置情况,对相应运动部件三维实体的矩阵数据在机床坐标系中进行旋转、平移变换,从而获得各运动部件在机床坐标系中的空间位置及姿态。
对于直线运动部件,在确定其在加工过程中的空间位置时,只需将相关移动部件的三维造型数据矩阵加上该运动轴的位移量即可;对于旋转运动部件,则需对相关移动部件的数据矩阵进行坐标旋转变换,以确定其在加工过程中的空间姿态;当运动部件在加工过程中同时作直线运动和旋转运动时,则需对相关移动部件的数据矩阵进行坐标旋转及平移变换,以确定其在加工过程中的空间位置及姿态,但必须注意直线运动和旋转运动的主从性,以确定坐标旋转及平移变换的顺序。
在得到砂轮、工件以及相关运动部件在执行该代码时所处的空间位置及姿态后,通过对加工过程中工件(刀具)体与砂轮体之间的运动进行布尔运算,可得到加工工件(刀具)的离散值。运用Matlab的三维绘图指令可以三维图形方式将机床及工件直观地表示出来。在加工过程中,通过不断刷新移动部件的图形,即可实现加工过程的三维动态显示。同时,Matlab提供的图像渲染工具可通过调整三维实体的表面材质、颜色、亮度、灯光等,使三维实体模型更具真实感。
利用Matlab强大的矩阵运算功能,可在极短时间内计算出各三维实体在磨削过程中的空间位置及姿态,使加工过程的实时演示成为可能。此外,Matlab具有完善的编程系统,具有一般编程软件所具备的编程语言及编程环境,并具有图形编程功能,从而可方便地构造所需开发系统的界面。

4 仿真检验实例

对于磨削加工而言,加工代码的仿真检验尤为重要。由于砂轮具有较高脆性,且在磨削加工过程中高速旋转,因此在加工过程中机床各运动部件之间及机床与工件之间即使发生极轻微的干涉,都可能造成极危险的后果。
图1 MMK6026数控工具磨床
图2 数控工具磨床仿真加工环境
现以图1所示的MMK6026数控工具磨床为对象,应用上述数控加工代码仿真检验方法对加工代码进行仿真检验。该磨床为本研究小组自行研制的六轴五坐标联动数控工具磨床,主要应用于复杂形状刀具(如圆锥球头立铣刀等)的数控磨削加工。该磨床具有X、Y、Z、X四个直线运动轴及A、C 两个旋转轴。其中,X、Y、Z、A、C 为联动轴;X轴为调整轴(可控轴),主要功能是对工件(刀具)毛坯在机床坐标系中的位置进行调整。
在构造的仿真环境中,机床各相关部件(如砂轮主轴、工件主轴、工作台等)的三维造型均按照MMK6026数控工具磨床各相关部件的布置、结构及尺寸进行构造。
在计算砂轮的空间位置时,只需将砂轮及相关移动部件的三维造型数据矩阵加上Y 轴和Z 轴的位移量即可;计算工件的空间位置时,其坐标变换式为
Mki=(Mk0TAi+DUi)TCi+DXi
式中,Mk0为工件及相关移动部件处于机床零位时的数据矩阵;DUi为X轴的移动量;DXi为X 轴的移动量。
fA为A轴的旋转角度,其相应的坐标变换矩阵为 TAi=┌ 1  0  0 ┐│ 0  cosfA  sinfA │└ 0  -sinfA  cosfA ┘
fC为C 轴的旋转角度,相应的坐标转换矩阵为 TCi=┌ cosfC  0  sinfC ┐│ 0  1  0 │└ -sinfC  0  cosfC ┘
图2为所构造的数控工具磨床仿真加工环境,图中机床正在磨削加工圆锥球头立铣刀。
实验结果表明,在所开发的仿真磨削加工系统上进行数控加工代码检验时,可及时、准确地发现加工过程中的异常状况。将经仿真检验且确认无误的加工代码输入MMK6026数控工具磨床进行数控磨削加工,加工过程中无任何异常状况发生。
 
 
[ 免费发文

 

 
推荐图文
推荐数控技术
点击排行
网站首页 | 关于我们 | 升级会员 | 联系客服 | 广告合作 | 广告位图 | 使用协议 | 版权隐私 | 蜀ICP备2021024440号
Powered by DESTOON