基于Object ARX的木门加工代码生成系统
2018-01-06谢玉龙付东翔倪艺凡
谢玉龙,付东翔,倪艺凡,李 双
(上海理工大学 光电信息与计算机工程学院,上海 200093)
基于Object ARX的木门加工代码生成系统
谢玉龙,付东翔,倪艺凡,李 双
(上海理工大学 光电信息与计算机工程学院,上海 200093)
针对木门加工领域中客户的个性化定制需求,每加工一扇木门,即使尺寸只变动一点,也必须重新制图和规划加工路径,造成生产加工耗时过多、生产效率降低。文中基于Object ARX程序设计,通过参数驱动方式绘制CAD加工图纸,对于加工尺寸改动较小的木门,只需调整变动参数,即可快速绘制木门加工图纸。根据绘制的加工图纸,从菜单上选取加工所需的刀具类型及刀具半径等参数,该界面软件快速绘图、设计加工轨迹和生成CNC加工G代码。该方法已经应用于企业生产且效果良好。
木门加工;Object ARX;参数驱动;CNC加工代码
目前,木门生产中采用的数控机床的编程方式有手工编程和自动编程两种。手工编程广泛用于形状简单的点加工和直线、圆弧组成的平面轮廓加工。但在实际加工过程中,如果图案尺寸需稍微修改一下,则需要对图形进行重新编辑,重新编程。随着个人定制需求的不断发展,不同用户产品规格要求不同,就需要产品图形随尺寸参数或规格的变化而自动生成[1]。手工绘图和编程无疑会造成额外耗时和降低生产效率。
本文基于Object ARX二次开发技术,通过参数驱动方式绘制CAD加工图纸,对于加工尺寸改动较小的情况,只需改变变动的参数,即可快速绘制木门加工图纸。根据绘制的加工图纸,从设计的界面选取加工所需的刀具类型及刀具半径补偿等的参数,界面软件可快速设计加工轨迹和生成CNC加工G代码。该方法在实现过程中具有简便快捷和直观高效的特点。
1 木门加工生产系统组成
国内木门行业市场巨大,从国外引进的先进设备,可以实现大批量生产,却不能满足国内木门市场的个人定制化的需求[2]。因此国内的一些设备制造厂商,开始着手研发适用于国内木门加工行业的专业木门加工设备,以提高木门加工生产线的自动化和智能化程度。木门门扇加工生产线主要用于完成木门的门扇定尺、封边、开五金孔槽、铣削成型等工序[3]。自动化木门门扇加工生产线的设备布置示意图如图1所示。
图1 木门加工生产系统组成示意图
生产系统的工作过程可概述为:门扇毛坯经过前期处理后送至上料机,后传送至门扇四边锯,进行定尺锯切,完成横纵向尺寸规格的确定。再经由封边机完成门扇前后左右四边的封边贴合工作。待四侧封边完成,门扇由传送装置传送至门扇打孔开槽的加工平台,进行门扇五金孔槽的开槽工序。待开槽工序完成,木门将被送至CNC木门加工中心进行木门的铣削加工,实现木门的图案设计、雕刻成型。最后由下料机堆放存库,待输送至后续工序。
2 基于Object ARX加工G代码的生成
2.1 界面软件设计思路
目前,有相当一部分木门加工企业在木门生产过程中,因为不同客户的需求不同,一扇木门生产加工的CAD图纸不可能满足客户的不同需求,因此每加工一扇木门,只要尺寸变动一点点,就必须重新制图和规划加工路径,造成生产时间的过多消耗和效率的降低。
针对实际中遇到的此类问题,考虑通过参数驱动方式绘制CAD加工图纸,解决加工尺寸改动较小的情况,只需改变变动参数,即可快速绘制加工图纸[4-5]。根据绘制的加工图纸,选取工艺所需的刀具类型、刀具半径等参数,借助二次开发设计的界面软件快速生成CNC加工G代码。
Auto CAD公司提供的二次开发接口有VBA、.Net、Object ARX、Visual Lisp 等。ARX是面向对象的C++编程环境,为开发者提供了 MFC用户界面相关类,便于开发用户界面[6-9]。以AutoCAD为平台,借助Visual studio和Object ARX为开发工具,通过加入MFC类,开发出具有图形交互功能的参数化图形设计和自动生成CNC G代码的界面应用程序。此种方式开发的应用程序可直接访问AutoCAD数据结构、图形系统以及CAD几何造型核心,也可直接调用CAD底层的图形设计函数,稳定简单[10-13]。从而实现加工过程中因客户需求不同参数需微小变动的情况,提高生产效率。基于Object ARX的木门加工G代码界面软件设计的思路流程如图2所示。
图2 界面软件设计思路结构图
2.2 界面软件实现方式
基于Object ARX木门加工G代码自动生成的编程技术,主要实现参数化驱动图形设计、加工图形的快速绘制、加工轨迹的设计、刀具等参数的选取、CNC加工G代码的自动生成等功能。该界面应用程序是木门加工系统中的一个重要组成部分。具体的实现步骤如下:
(1)Visual studio2010环境下,借助Object ARX二次开发工具,创建Object ARX项目;
(2)ARX项目下,添加MFC类,创建非模态对话框,进行木门加工代码的参数造型界面设计。Object ARX是以动态链接库形式运行的,可直接使用MFC对话框,也可借助AcUi类库来构建非模态对话框,实现创建的用户界面与AutoCAD界面风格相一致。只需创建一个与CDialog 或其派生类相关联的对话框,调用CDialog 类的相关函数即可。这组类从MFC中继承,除具有基类的特性之外,还有一些在AutoCAD 中特有的特性。使用Object ARX 嵌入工具栏创建的对话框,能够节省大量的手工编码工作量[14-16];
(3)创建基元图形的实体类对象,并加入到特定的块表记录。创建所需的实体对象如直线、圆、圆弧、多边形、椭圆和矩形等。由于AutoCAD是内部实现机制,还需把创建的对象加入到图形数据库中,才能将图形对象显示在CAD图形窗口中;建立指向块表的指针;建立指向特定块表记录(模型空间)的指针;将新建的实体类对象添加到指定的模型空间中;关闭图形数据库的各种对象;
(4)参数化造型界面的设计。在实际加工过程中,不同用户要求的图形规格不同,同时结合定制化服务的要求,采用参数驱动绘图的方式,解决加工过程中因微小的尺寸改动,也必须手动重新绘图的问题。针对基元图形不变,只改变图形间距这一类的加工图形绘制,采用参数绘图的方式优势明显。图形根据参数的变化而快速响应,避免过多耗时;
(5)G代码的生成机制。根据提前设定的加工工艺要求,设计中加入加工方向的选取,UCS和WCS坐标之间的转换方式,刀具铣削方式的选取,刀具类型、刀具半径、补偿半径等的选取。结合实际工艺需求,把加工工艺要求融合到设计界面的菜单中和界面开发的程序中,工艺中包含有制定G代码的实现规则,并将该规则融入到设计程序中,从而实现G代码的快速生成。
2.3 界面软件的应用
(1)AutoCAD2014加载ARX项目。载入方式有两种:利用APPLOAD在命令窗口直接调取已注册的命令;在CAD应用程序主菜单的管理项中选择加载项,加载已生成的界面应用程序,即目标ARX项目。本文首选后者的载入方式,加载ARX项目后,弹出Object ARX木门加工G代码生成的MFC界面,载入及加载后的结果如图3所示;
图3 目标ARX项目加载界面
(2)参数输入及绘图。界面加载之后,根据所需的尺寸规格,在界面相应的位置填写参数。此处以简单的双框图为例,实现参数驱动绘图过程。参数输入后,单击界面的“rectangle”按钮,即可快速绘制目标图形。具体的参数值如图4所示。参数设置及绘图界面如图5所示;
图4 目标图形的参数值
图5 参数设置及绘图界面
(3)生成加工G代码。根据目标图形的参数设置以及图形的绘制,结合加工工艺要求,在界面设计的菜单中选取刀具类型以及是否需要进行刀具半径的补偿等。此项操作完成后,单击界面的“G代码生成”,即可快速生成绘制图形的G代码文件,文件保存为123.txt,默认保存在当前工作文件夹的目录下;
(4)卸载程序。G代码生成后,若不在需要执行此界面程序,即可卸载ARX程序,释放内存数据存储空间;
(5)G代码仿真。调取生成的目标G代码文件,借助CIMCOEdit软件,进行G代码的程序仿真,仿真结果如图6所示。
图6 加工代码的仿真结果
通过对AutoCAD的二次开发,设计的MFC界面应用程序,输入绘图参数,此ARX应用程序直接调用CAD底层的绘图函数或者调用自定义的图形类函数,快速绘制加工图纸。选取菜单中的刀具类型及刀具补偿半径等参数,结合加工工艺设计的G代码生成规则,此应用程序可实现自动生成CNC加工代码。如果用户的需求不同,只需重新调整输入参数,借助参数造型的设计理念,快速绘图及生成相应的G代码文件。
3 结束语
在Object ARX2014的开发环境下借助Visual Studio 2010的C++环境和MFC图形化界面设计的开发技术进行AutoCAD2014的二次开发。设计出既可被CAD系统以命令方式直接调用,也可被直接加载的应用到木门加工领域的图形交互式界面。该界面通过参数化造型设计方法,以参数驱动方式快速绘制CAD木门加工图纸,由嵌入式菜单选取刀具类型等加工所需参数,实现了加工路径的快速设计及自动生成CNC木门加工G代码的功能,生产耗时减少,效率得到提高。
[1] 杨德星,王颖.基于AutoCAD的参数化造型设计[J].机械设计与制造,2004(3):32-33.
[2] 姚遥,张占宽,李伟光,等.木门五金件孔槽专用数控加工机的研发[J].木材工业,2013,27(6):21-24.
[3] 李伟光,姚瑶,张占宽.典型木门门扇自动化柔性生产线[J].木材工业,2015,29(1):24-27.
[4] 郭静静,杜宝江,马群,魏雄.多种CAD环境下的标准件参数化方法[J].电子科技,2011,24(12):7-9.
[5] Li Rongfan,Yi Qingcao,Chong Ren.Research on entity model directly layering software design based on the secondary development of AutoCAD[J]. Applied Mechanics and Materials,2013,2668(401):491-494.
[6] Charles McAuley.AutoCAD2000 Object ARX programming guide[M].李世国,译.北京:机械工业出版社,2000.
[7] 王永辉,胡青泥,李红彩.AutoCAD二次开发方法的研究[J].计算机系统应用,2007(3):94-96.
[8] 邓启亮,徐立涛,栗旭光.基于MFC串口连续通信的简易实现[J].电子科技,2014,27(2):99-100.
[9] 袁媛.基于MFC类设计Object ARX 应用程序界面[J].中南大学学报,2004,35(3):448-452.
[10] 李富生,沈景凤.基于VB.NET的余热锅炉蒸发器参数化设计系统[J].电子科技,2015,28(11):135-138,142.
[11] 杜刚,刘学东,张磊.基于Object ARX 的AutoCAD二次开发及应用实例[J].机械设计与制造,2004(3):30-32.
[12] Peng Ting,Zhang Qingfa,Wang Xiaoling. Parameterized highway tunnel inner contour design with Object ARX[J].Advanced Materials Research, 2015,3683(1061):854-857.
[13] 张继兰,宿永利,张志佳.基于MFC和ARX的AutoCAD二次开发研究[J].机械设计与制造,2006(6):125-127.
[14] 王文波,邹清源,张斯珩,等.AutoCAD2010二次开发实例教程:Object ARX[M].北京:机械工业出版社,2013.
[15] 刘其洪,李伟光.基于Object ARX的数控玻璃雕刻G代码自动编程[J].机械与电子,2003(4):21-23.
[16] 张帆,朱文俊.AutoCAD Object ARX(VC)开发基础与实例教程[M].北京:中国电力出版社,2014.
Wood Processing Code Generation System Based on Object ARX
XIE Yulong,FU Dongxiang,NI Yifan,LI Shuang
(School of Optical-Electrical and Computer Engineering,University of Shanghai for Science and Technology,Shanghai 200093,China)
In view of the customization needs of customers in the field of wood processing, during the process of wood processing , even if the processing size only changes a little, the graphics also be redrawn, the path also be re-planned, which caused production and processing time-consuming, lower production efficiency. This article is based on Object ARX program design, and through the parameter-driven way, CAD drawings are drawn rapidly. For the small changes in the size of the wooden door processing parameters, by adjusting the parameters of the change, the wooden processing drawings can be quickly drawn. According to the wooden processing drawings, the machining parameters such as tool type and tool radius are selected from the embedded menu. The interface software can draw machining drawings rapidly, design and processing trails and generate CNC processing G code. The method has been applied to production enterprises and reliable operation.
wood processing;Object ARX;parameter driven;CNC machining code
2017- 03- 29
国家自然科学基金(11104184,61177043)
谢玉龙(1990-),男,硕士研究生。研究方向:工业自动化。付东翔(1971-),男,博士,副教授。研究方向:楼宇自动化技术,光电检测技术等。
TN02;TP391
A
1007-7820(2018)02-012-04