-
-2 15
- 贾毅朝,孙培禄(青岛卓东机械科技有限公司,山东青岛266400)摘要:提出了一种基于AuioCAD的模块化设计方法,并对自动编程系统开发的关键技术进行了研究,包括图形数据的采集,加工模具的选择,加工路径的优化处理以及NC代码的生成等自动编程的一系列过程。研究了仿真模块的总体结{弩方案,实现了基于AutoCAD Wj=维动态仿真。实践生产证明,基于AutoCAD的数控冲床自动编程系统能够满足实际生产的需要,能够有效提高数控冲压加工的生产效率和安全性。关量词:VisuaIUSP;数控冲床;自动编程;加工仿真O概述随着科学技术的发展,数控冲床越来越广泛地应用在机械制造行业中。在数控加工系统中,传统的NtC代码手工编程不仅效率低,而且容易出错;而采用APT语言的自动编程虽然几何定义语句简洁,功能较强,但要求编程人员要熟记系统的语言与规则,一旦出错又不易发现。国外的数控冲床图形编程系统已应用于工业生产实际,而我国在这方面还处于研究阶段。本文作者对数控冲床的自动编程系统进行了深入的研究,并在AuIoCAD的VisuaIUSP环境下进行了相应的系统开发工作,并成功通过了AutoCAD2000—AutoCAD2006多个版本的兼容性测试。1 自动编程系统的总体结构自动编程系统采用模块化结构,由六大功能模块组成,分别为自动编程主模块、图形信息处理模块、加工路径确定与优化模块、模具库与模具选择模块、后置处理模块、图形仿真模块,模块化数控冲床自动编程系统的总体结构图如图1所示。自动编程主模块的主要工作是调用如工路径模块和模具库模块,将图形信息转化为加工路径信息及模具信息,并生成刀位文件。此模块还可以直接调用后置处理模块与图形仿真模块,生成加工所需的NC代码,并对其进行图形仿真。本模块所具有的功能还包括保存、编辑刀位文件和NC代码文件等文件编辑功能。2 系统开发的关键技术研究2.1 图形信息的处理要想生成数控转塔冲床NC代码,首先就要让计算机识别所需要加工的图形。图形信息处理模块的作用是将CAD图形中的有用图形信息提取出来,比如图形中圆孔的直径和圆心、方孔的边长和中心、腰圆孔的孔径和中心线圆弧的半径与圆心、矩形孔的边长和几何中心等,然后将这些信息输送到主程序模块中。获取图形信息的方法有多种,比如通过DXF文件导入,或者通过人机交互获取。由于VisualLISP可以直接操作选择集,所以选择后一种方法更为合适,并且有利于设定编程原点(工件坐标系原点)等人机交互更为方便的操作。2.1.1 圆形类基本参数的获取在AutoLISP中,通过交互操作获取圆基本参数是非常容易的,如下简单程序段即可获得圆形的主要参数:(SETQ cir_data(ENTGET(CAR(ENTSEL”、n请选择一个圆形:”)));通过交互操作获得图形信息( SETQ cir_pt( CDR( ASSOC 10 cir_data)));从图形信息中获取圆心坐标(SETQ cir_r(CDR(ASSOC 40 cir_data)));从图形信息中获取圆的半径2.1.2矩形类基本参数的获取矩形类的主要参数是2个边长和4个顶点.4个顶点可以用AutoLISP函数获得,边长可以通过计算相邻的两点间的距离确定。获得点的位置一般要用到ASSOC函数,其作用是从关联表中搜索1个元素,如果找到则返回该关联表条目,如果点的数目较多则一般采用循环读取的方法,只需做1个循环即可获得4个顶点。(SETQ re8_data( ENTGET( CAR( ENTSEL”、n请选择一个矩形:”))));通过交互操作获得图形信息( WHILE( SETQ pt( ASSOC IO reg_data》;设置循环条件(SETQ reg_data(CDR(MEMBER pt reg_dtt-ta)));将以获得的点从关联表中删除(SETQ ptb (CONS( CDR pt) ptb ))将获得的依次点位存储到变量ptb中计算边长的时候将点位从点表变量ptb中提取,通过Distance函数直接求取,无需做距离计算。2.1.3腰圆孔、腰直孔类基本参数的获取腰圆孔、腰直孔基本参数的获取涉及到多段线数据的提取。为了实现图形的自动编程,必须将这两类孔均转换为多段线PolyLine或者Lwpolyline。采用AutoLISP表处理函数可以获得各节点坐标及圆弧凸度,其方法如下:(SETQ pcl_data( ENTGET( CAR( ENTSEL”\n请选择一个矩形:”))))( SETQ ptl( CDR( ASSO(: 10 pel_data)))i从pel_data中取出第一个节点坐标给变量ptl(SETQ par(CDR(ASSOC 42 pel_data)));从pel_data中取出第一条线段凸度给变量par圆弧半径可由凸度值和相邻两节点坐标计算出来,圆弧半径尺的值由式(1) 2 3确定:式中:R为圆弧半径;dist为两节点距离;par为凸度绝对值。腰圆孔类基本参数主要有4个半径和4个圆心。其实.只需要计算出其中4个圆心就可以实现编程功能了。有了4个圆心又可以确定圆弧步冲的起点和终点。通过分析计算出的圆弧半径就可以获得模具的半径和圆弧步冲所需的圆弧半径。腰直孔获得其多段线的4个顶点圆弧半径就可得出步冲的起点、终点和步冲的长度。计算出的圆弧半径即模具的半径。2.2加工模具的自动选择2.2.1模具库的建立对于一个具体的刀具,具体有以下几个参数:模具号,形状,X方向长,y方向长以及直径。对于圆形模具,没有X、y方向长参数,对于矩形模具,没有直径参数。用户可以由对话框建立刀具和修改刀具。定义变量m _dia为模具直径,m一xlen为模具X方向长,m-ylen为模具y方向长,m_shape为模具形状,m_sym为模具号,如下程序段定义刀具信息格式。(list m_8ym m_shape m_xlen m_ylen m_dia);刀具信息组成表格式模具类的建立即是建立了刀具存储的格式,即刀具信息在刀具库中是以表的格式存储的,模具库管理通过表操作来完成对模具库的管理功能。2.2.2加工模具的自动选择一般的数控冲压机可以多副模具,其中既有圆形模具,也有矩形模具,其要加工的孔可分为圆孔、矩形孔、腰圆孔,腰直孔四类。为了方便选择图形和不同类图形的处理,系统可以通过交互式操作将不同类型图形赋值于四个不同的选择集ss1、ss2、883、as4。通过对SSGET函数的参数设置,可以避免赋值过程的误操作。系统自动模具选择的总体流程如图2所示。图2系统自动模具选择的总体流程其中模具匹配需要编写专用的匹配函数,根据孔型的不同自动从建立好的模具库中选择合适的模具进行加工。2.3加工路径确定加工路径的确定就是数控冲床冲压路径的确定,主要的设计任务就是实现以何种方式来确定加工顺序,加工路径如何实现最短优化,如何使加工时间缩到最少,如何使程序适应多种加工方案。2 3.1 加工路径确定的基本原则数控冲床加工路径的确定主要涉及两个基本原则:(1)同一把刀工序尽量集中。在数控冲压加工时,为了减少转刀所占用的辅助时间,可按集中工序的方法加工零件,尽可能用同一把冲模加工完零件表面上的相同冲切部分。(2)走刀路径最短。对于数控设备来说,每一秒钟的时间都是宝贵的,冲压过程所需的时间较短,而横具的空行程决定了加工效率,合理安排空行程路径显得尤为重要。2.3.2加工路径的优化加工路径的优化的问题即是对加工孔寻找最短遍历路径的问题,对尺寸相同的加工孔而言,路径的优化可以归属与完全NP问题,完全NP问题的典型是货郎担问题,货郎担问题和本文研究的最短遍历路径问题的差别在于货郎担问题的最终节点是起始点,而最短遍历路径不要求最后回到起始点,但如果能够以一个高效的算法来解决货郎担问题,最短遍历路径也可参照得出近似算法。完全NP问题完全的算法是不存在的,因为对于遍历点大于20时要想得出结果需要几年甚至几十年的时间。一般采用近似算法来代替最优算法,常见的算法有正交路径法、最近点路径法一等。2. 4后置处理后置处理模块的主要作用是用来将刀位文件转化为NC代码。把它作为独立模块的作用是可以通过不同的后置处理生成适应不同数控系统的NC代码,增强系统的通用性。2.4.1 后置处理模块的设计后置处理模块分为两大类:一类为专用后置处理模块,另一类是通用后置处理模块。根据冲压数控系统的特点,通用后置处理模块更适合本系统,通过制定标准格式的机床文件,通过对话框实现机床数据的标准化文件。在NC代码生成和图形仿真时调用机床标准文件,即可获得相应的数控代码信息。数控系统C代码的设置界面如图3所示。2.4.2 NC代码生成(1)点位冲孔的NC代码生成点位冲孔的G代码是GOO,但为了适应更多的数控系统,作者建立一个变量gcode_00,用来表示快速点定位冲孔指令,系统默认代码为GOO,不同的数控系统可以在自动编程系统的后置处理设置中设定。刀具的中心位置坐标由加工路径模块确定,刀具信息由模具选择模块确定。(2)步冲加工的NC代码生成以直线步冲为例,系统默认的直线步冲的G代码是G69,不同的数控系统仍然可以在自动编程系统的G代码设置中设定。步冲的起始位置和终点位置坐标由加工路径模块确定,刀具信息由模具选择模块确定。步冲的长度即是起点位置和终点位置的距离,用函数DisIance可以轻松实现,步矩的确定分为圆形。模具步冲和矩形模具步冲两种情况。2.4.3步冲步矩的确定用圆形的模具进行步冲时必然会产生均匀的步冲齿花,步距越大,齿花越明显。圆形模具的步冲步距取决于步冲齿花的高度,即取决于步冲精度的大小,齿花大小决定了孔的加工精度,所以设计程序时把精度要求作为一个输入参数,在自动编程系统的步冲精度设置中设定,步距的大小由式(2):计算确定。式中:p为步距;d为模具直径;s为齿花高度。矩形模具的步冲步距只取决于步冲的长度与模具的尺寸。用步冲起点和终点的距离除以步冲方向的模具尺寸得出的数值取整加一,得出最小步冲步数;然后,再用步冲起点和终点的距离除以步冲步数得出的数值即可作为步冲步距。当然,在大多数数控系统中,矩形模具的步冲步距可以是小于步冲方向的模具尺寸的任何值,为了保证加工的效率和加工效果,可以人工估算一个合理步矩值,然后通过自动编程系统的步冲精度设置中设定。如果步冲起点和终点的距离除以此步距得出的步冲步数不为整数时,数控系统会自动调整步矩以适合加工。3加工过程的仿真在数控加工过程中,零件加工后的质量是否符合要求,在加工过程中是否会发生零件与刀具、刀具与夹具、刀具与机床工作台之闯的干涉与碰撞,刀具是否对零件进行了过切或少切,刀具的走刀路线、走刀方式是否合理等一系列实际加工中可能会发生的问题都决定于自动编程系统所输出的数控加工指令集是否正确。根据NC代码文件提供的信息,将加工轨迹模拟出来.显示在显示屏上,以方便程序校验和冲压过程检验。3.1仿真系统总体结构仿真系统应该能够完成数控程序的错误检查,动态地模拟数控机床驱动刀具的运动及加工过程。因此加工过程的仿真一般由文件处理、错误检查和模拟仿真三部分组成。其总体结构如图4所示。3.2 NC代码的翻译与仿真的实现获得了程序段的数据,就可以利用其提供的数值进行仿真。实现了在屏幕上作图不等于实现了加工过程的仿真,如果不仅想看到全部的图形显示在屏幕上,而且想动态的观测加工的先后顺序,就需要加一些程序。实现动态的仿真可以由两种方法实现:一是调用AuroCAD的内部命令“delay”。这种方法的优点是简单快捷,可以随意设定两个图形间的生成时间,即可以随意调节仿真的速度。第二种方法是编写动态函数z_timer;动态函数ztimer的作用是通过输入的冲床T轴移动速度,再根据图形中计算出的两个相邻加工点的距离,即可得出其移动所需要的时间,然后再由Delay函数实现延时。这种方法的优点是:全部时间与实际时间相符,可以加入换刀的时间,实现真正实时的仿真,并且可以通过对话框指定时间缩放比例,即也可以接比例控制仿真的速度。4程序运行实例4.1 NC代码的自动生成选用实际加工的电控板图纸如图5所示。首先,将图5按1:1的比例在AutoCAD中绘制出来,然后检查要加工的矩形孔是否是整体,如果矩形孔是用多条直线段绘制的,就需要转化为一条多段线。点击菜单“数控加工”一“加工刀具预捡验”,以检查所需加工的孔在刀库中是否存在合适的加工刀具,检查完毕后,系会提示矩形孔60×20没有直接可以使用的模具。因此,可以指定步冲模具为1316号刀具,即13 x13方模其,但是为了让动态仿真更为清晰,选用T321号步冲模具,即10 xl0方模具。图5电气控制板点菜单“数控加工”-“NC代码生成”,在弹出的对话框中根据提示选择要加工的图形,并设定好相关参数,点击确定即可生成相应的NC代码,如图6所示。4.2 NC代码的动态仿真的实例首先对NC代码文件进行错误检查,确认没有词法和语法错误后,点击“数控加工”一“数控仿真”,激活数控仿真对话框,通过对话框选定要进行仿真的NC文件,设定好冲压仿真速度,点击确定按钮,对话框自动关闭,并且在当前屏幕上开始对所指定的NC代码文件进行动态仿真。仿真效果如图7所经过多年的研究,数字控制技术已经非常成熟。根据有源功率因数校正开关变流器的工作特性,将数字微处理器应用于功率开关变换器控制技术中,提出了采用改进的数字控制算法控制的功率因数校正变换器方案,详细阐述了基于数字化技术的功率因数校正交流器工作原理和控制方法,给出了电路分析、实验设计分析结果。
- 评论(0)
发表评论 TrackBack
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。