admin 管理员组

文章数量: 887021


2024年1月24日发(作者:powerful workout)

信息与电脑2019年第17期China Computer & Communication软件开发与应用数控加工G代码程序三维加工仿真软件开发梁子财(华中科技大学 中欧清洁与可再生能源学院,湖北 武汉 430074)摘 要:笔者利用Qt平台与OpenGL库开发了一款针对数控加工G代码程序的三维加工仿真软件。该软件能够根据加载的G代码程序提取加工图像点位信息并绘制加工图像并且可以模拟刀具的加工过程,同时可以检测G代码程序的错误并给出错误信息,方便用户提前验证G代码的可行性。通过使用该软件,技术人员无须试加工就可以验证G代码的加工效果,从而能减少资源浪费与缩短开发周期。关键词:Qt;OpenGL;G代码;G代码程序加工仿真中图分类号:TG659  文献标识码:A  文章编号:1003-9767(2019)17-057-03Development of 3D Machining Simulation Software for NC Machining G

Code ProgramLiang Zicai(China-EU Institute for Clean And Renewable Energy, Huazhong University of Science and Technology, Wuhan Hubei

Abstract:

Using Qt platform and OpenGL library, the author developed a three-dimensional machining simulation software for

430074, China)NC machining G code program. The software can extract the point information of the processing image and draw the processing image

according to the loaded G-code program, and can simulate the process of cutting tool. At the same time, it can detect the errors of

G-code program and give the error information, so as to facilitate users to verify the feasibility of G-code in advance. By using this

shortening the development re, technicians can verify the processing effect of G code without trial processing, thus reducing the waste of resources and

Key words: Qt; OpenGL; G code; G code program processing simulation0 引言开发周期,又可减少材料浪费。数控加工G代码包含加工所需的所有信息,指导数控机1 软件的总体设计床加工工作[1]。为检测数控加工G代码的正确性,传统做法G代码程序三维加工仿真软件主要由三维建模模块、是采用试切法[2],但是这种方法废材费时。因此,人们通过G代码显示模块和错误显示模块3部分部分组成,如图1

运用计算机仿真技术提前验证G代码的准确性[3],既可缩短所示。图1 G代码程序三维加工仿真软件的系统结构图三维建模模块主要有4个功能版块:绘制坐标网格功能、操作功能。绘制坐标网格功能实现坐标系的绘制、三维坐标加工图像与刀具建模功能、加工仿真动画建模功能以及图像轴的建立;工图像与刀具建模功能实现绘制G代码的加工图作者简介:梁子财(1993—),男,福建泉州人,硕士研究生在读。研究方向:生产物流系统仿真优化研究。—   57   —

软件开发与应用信息与电脑China Computer & Communication2019年第17期像与刀具的三维立体建模;加工仿真动画建模功能实现刀具像进行操作,系统则会立即刷新图像显示。当启动动态加工的加工动态仿真,可验证G代码加工工艺的正确性与加工效仿真时,系统会周期自动更新点位数据并刷新图像显示,达果;图像操作功能实现图像翻转、尺寸放大或者缩小、坐标到动态仿真的效果。软件的运行效果如图4所示。平移等操作。G代码显示模块:主要加载显示G代码程序文件。错误显示模块:显示G代码程序的语法错误或者语义错误,提示用户进行修改。2 三维建模模块设计三维建模模块通过调用OpenGL库进行刀具三维建模、图像绘制和图像操作。软件界面如图2所示。三维建模模块创建了刀具的三维立体模型,还可以加载G代码文件绘制加工图像,并进行加工动态仿真。此外还可以对图像进行操作,如放大、缩小、翻转、平移等。三维建模模块的具体实现流程如图3所示。图4 软件运行效果2.1 动态加工仿真动态加工仿真功能实现刀具模型沿着加工图形的轨迹移动,从而实现数控加工仿真。实现的功能原理是:绘制刀具三维模型是以某个坐标(X,Y,Z)为底尖点,平行Z轴方向绘制圆柱体以及圆锥,成一个笔状模型来模拟刀具,如图5所示。图2 数控加工G代码程序仿真验证软件的界面图3 图像绘制模块实现流程当软件启动时,首先对GLWidget(绘图窗体)进行初图5 刀具三维模型始化设置,完成绘图准备工作。之后,绘制坐标网格和三维G代码译码模块提供刀具的移动坐标,三维图形绘制模坐标轴以及刀具三维模型建模。完成这些操作后即可进入绘块只需在每次绘制刀具三维模型时实时更新刀具的底尖点坐图等待阶段。当有G代码程序文件加载后,系统对G代码进标_lfCurPos,然后调用DrawTool(lfCurPos)函数就可以实行译码并将图像数据传给绘图模块进行绘图。如果用户对图现刀具沿轨迹移动的动画效果。—   58   —

信息与电脑2019年第17期China Computer & Communication软件开发与应用2.2 刀具移动变色轨迹而[499]则存储新的位置点(即当前的刀具刀尖点坐标)。本部分实现刀具三维模型移动时,另外绘制一条随刀尖3 G代码显示模块和错误显示模块设计移动的轨迹线,从而显示刀具加工过的部分,从而美化轨迹仿真的效果,如果6所示,黄色线就是刀尖移动的轨迹线。G代码显示模块采用QTableWidget类作为显示载体,同时增加浏览上一行、浏览下一行、跳转目标行等功能,实习对G代码程序的显示。系统加载G代码程序文件之后,开始对G代码文件的进行译码工作,流程如图7所示。如果检测到错误,则在错误显示模块中显示具体错误信息,提示用户进行修改。图7 译码工作流程4 结 语图6 刀具移动变色轨迹示意本文利用Qt平台与OpenGL库开发了一款针对数控加本部分的实现原理是:定义三个长度为500的坐标一维工G代码程序的三维加工仿真软件,该软件能够根据加载的数组和三个长度为500的颜色一维数组来分别存储X,Y,Z坐G代码程序提取加工图像点位信息并绘制加工图像并且可以标值以及颜色值(G00指令时为绿色,G01、G02和G03指模拟刀具的加工,同时可以检测G代码程序的错误并列出错令时是黄色),具体定义代码:误信息,方便用户提前验证G代码的可行性。通过应用该软GLdouble toolMove_x[500];件,技术人员即使没有试加工也能验证G代码的加工效果, GLdouble toolMove_y[500];从而能减少资源浪费与缩短开发周期。 GLdouble toolMove_z[500]; GLdouble toolMove_color_a[500]; GLdouble toolMove_color_b[500];参考文献 GLdouble toolMove_color_c[500];[1]潘海鸿,叶文海,陈琳,等.特种复合加工中心数控系以上数组的值与刀具三维模型刀尖点的坐标更新同步进统G代码编译器设计[J].组合机床与自动化加工技术,2015(6):

行,同时,为了保证刀具移动轨迹线能够跟随刀尖移动且刀具71-73.移动轨迹线长度保持不变(保持500个位置点的长度),应[2]娄志超,赵先锋,史红艳,等.基于OpenGL车削仿真系进行判断,给数组赋值的位置点数是否超出500个,如果没统的开发与研究[J].现代机械,2018,204(2):19-23.有,则往数组的后面继续赋值;如果超出500个,则将原本[3]李春雷.虚拟数控车削加工误差建模技术研究[J].机械的[1]~[499]的数据往前移动一步,即存到[0]~[498]里面,工程与自动化,2011(4):35-36.—   59   —


本文标签: 加工 代码 刀具 图像 模块