基于pmac的微铣床数控系统中g代码编译研究_第1页
基于pmac的微铣床数控系统中g代码编译研究_第2页
基于pmac的微铣床数控系统中g代码编译研究_第3页
基于pmac的微铣床数控系统中g代码编译研究_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

文章编号10012265201203010404的微铣床数控系统中代码编译研究基于PMACG旭,卢晓红,王鑫鑫,贾振元贾大连理工大学精密与特种加工教育部重点实验室,辽宁大连116024摘要概括了基于PMAC的微铣床数控系统G代码编译流程,利用编译原理、软件工程的思想及VC60软件,设计实现了G代码编译模块程序。该G代码编译程序包括代码校验和代码转换两部分功能,可以将PRO/E数控加工模块PRO/NC自动生成的待加工零件的G代码编译为PMAC卡能够识别的指令。该G代码编译模块界面友好、操作简单,加工实例证明该方法能够实现具有复杂几何特征的微小零件的自动加工。关键词开放式数控系统微铣削可编程多轴运动控制器G代码编译中图分类号TH122文献标识码ADESIGNANDREALIZATIONOFGCODECOMPILINGFORMICROMILLINGMACHINENCSYSTEMBASEDONPMACJIAXV,LUXIAOHONG,WANGXINXIN,JIAZHENYUANKEYLABORATORYFORPRECISIONANDNONTRADITIONALMACHININGTECHNOLOGYOFMINISTRYOFEDUCATION,DALIANUNIVERSITYOFTECHNOLOGY,DALIANLIAONING116024,CHINAABSTRACTTHEGCODECOMPILINGPROCESSOFTHEMICROMILLINGMACHINENCSYSTEMBASEDONPMACISSUMMARIZEDANDAGCODECOMPILERMODULEISDESIGNEDUTILIZINGCOMPILERTHEORY,SOFTWAREENGINEERINGCONCEPTANDVC60SOFTWAREPROGRAMMINGTOOLTHEGCODECOMPILERINCLUDESCODEINSPECTIONFUNCTIONANDCODECONVERSIONFUNCTION,WHICHCANCOMPILEGCODESGENERATEDBYPRO/NCMODULEOFPRO/EINTOTHEINSTRUCTIONSRECOGNIZEDBYPMACTHEGCODECOMPILERMODULEHASAFRIENDLYINTERFACE,ANDTHEOPERATIONISSIMPLETHEMACHININGEXAMPLESHOWEDTHATTHEDESIGNEDGCODECOMPILERCANREALIZETHEAUTOMATICPROCESSINGOFTHESMALLCOMPONENTSWITHCOMPLEXGEOMETRICFEATURESKEYWORDSOPENNCSYSTEMMICROMILLINGPMACGCODECOMPILING主要信息流,对数控代码进行译码的方式最主要有两种解释和编译。解释即直接解释执行代码,或者将代码翻译成某种中间表示形式后再加以执行,速度较慢,且译码效果十分有限编译则是将NC代码转换成数据流,并在计算机上运行该数据流,最终由控制系统直接读取并执行,速度快,译码效果理想2。在“PC运动控制器”型开放式数控系统中,G代码需要被翻译成可供PMAC卡直接执行的目标程序格式,即完成数控代码功能的识别,并将提取的关键字转换为运动控制器中对应的运动函数中的参数,也就是将所有的命令转化为圆弧和直线插补。本文基于编译原理技术及软件工程思想,实现了基于PMAC的微型数控铣床控制系统中G代码接口编译功能,并通过具有复杂几何特征的微小零件加工对所实现的G代码编译功能进行了验证。0引言目前,随着PC硬件水平和数控软件设计水平的提高,PC在数控领域的应用不断增多,出现了多种基于PC机的开放式数控系统体系,其中PCNC型数控系统以其灵活的扩展方式、良好的兼容性和开放的开发环境应用最为广泛1。所研发的微铣床在硬件结构上采用“PC运动控制器”型开放式数控系统,即利用工控机作为主体,选用VISUALC作为上位机系统软件平台,将PMAC运动控制卡作为下位机插在PCI总线插槽上,通过专用电缆与各伺服单元和I/O单元连接,X、Y、Z轴方向采用伺服电机加滚珠丝杠的方式进行驱动,实现对三轴的精确控制。数控加工系统以代码为依据进行数控加工,数控代码是数控系统中的收稿日期20110805修回日期20110825基金项目辽宁省科技计划2008220011辽宁省博士启动基金20101013作者简介贾旭1986,辽宁铁岭人,大连理工大学机械工程学院硕士研究生,主要研究方向为介观尺度微型铣床性能实验及微铣削工艺优化等,EMAILJIAXU1986126COM。贾旭,等基于PMAC的微铣床数控系统中G代码编译研究2012年3月1054定义NC序列通过定义NC序列的类型、切削参数和制造参数,由系统自动生成刀具轨迹。5校验及生成NC代码文件通过仿真操作刀具轨迹,如果符合要求,则可以通过后置处理,生成G代码文件。1零件加工G代码的生成数控编程作为数控加工准备阶段的主要内容之一,是指从零件图纸到获得数控加工程序的全过程,其主要任务是通过计算加工过程中的刀位点,来确定刀具运动的运动轨迹。目前数控编程主要包括手工编程和自动编程两种方法3。手动编程主要用于几何形状比较简单如平面、方形槽的零件加工,而对于具有空间自由曲面、复杂型腔的零件,刀具轨迹数据计算相当繁琐,工作量大而且容易出错。自动编程,编程人员只需根据零件图样的要求,使用数控语言,由计算机自动地进行数值计算及后置处理,编写出零件加工程序单,加工程序通过直接通信的方式送入数控机床,指挥机床工作。自动编程使得一些计算繁琐、手工编程困难或无法编出的程序能够顺利地完成。实现自动编程2G代码编译的实现为了完成微铣削加工,要求PMAC卡必须能够识别PRO/E生成的G代码,因此,需要对G代码进行编译。本文利用VC60开发的数控系统控制软件包含代码处理模块,如图2所示。编译时首先载入PRO/E生成的G代码文件并对其进行语法、语义检查,然后将其转换成符合PMAC要求的加工文件PMC文件,只有检查无误的代码才能进行转换,因此所设计的G代码编译程序包括两部分功能,即输入代码的校验功能和代码转换功能。UG,PRO/E,MASTERCAM的CAM软件常用的有等4,可以实现多轴联动的自动编程并进行仿真模拟。对于微铣削加工,由于所加工的零件几何尺寸较小,形状较复杂,宜采用自动编程。本文加工的零件首先在PRO/E平台上,根据其实际结构、尺寸建立三维模型,然后通过数控加工模块PRO/NC自动生成刀具轨迹和刀位数据文件。但所搭建的微铣床的数控系统并不能识别PRO/E生成的刀具轨迹和刀位数据文件,因此,还需要利用PRO/NC模块中的G_POST后置处理器将刀位数据文件转化为数控系统能识别的G代码程序,进而完成零件数控加工程序的编制。使用PRO/NC模块设计加工程序的流程如图1所示,具体流程说明如下51建立制造模型一般由设计模型和工件装配组成。2设置制造数据库包括机床设置、刀具设置、夹具设置等项目。3定义操作一般包括定义机床、定义CL输出坐标系、操作注释、定义起始点和返回点等。图2控制软件代码处理模块21代码校验功能的实现211G代码的分类存储待处理的G代码一般都是以文件格式存储的,这种形式不便于在程序中的处理使用。因此,本文采用结构体链表技术,利用命令结构体对读入的G代码进行分类存储,有效地节省了内存。根据微铣床的设计需求和数控加工程序的特点,将所用到的G代码分为四组G00G04加工类指令G17G19半径补偿平面选择类指令G54G59,G92坐标系选择指令G90,G91坐标方式设定指令。M代码仅用到M03,M04主轴方向指令和M00M02程序停止及结束指令。最终设计的结构体如下TYPEDEFSTRUCT_COMMAND/当行命令结构体/速度参数/图1PRO/NC模块加工流程图第3期106组合机床与自动化加工技术CHARTOOLCHOOSELONGSANALOGYFLOATVECTORSPEED/刀具选择T/主轴旋转速度S/矢量进给速度对G0203指令要求半径R不可为零且圆心应在起点与终点的垂直平分线上。在上述校验规则的基础上,校验的流程图如图3所示。/G、M代码存储/INTNCOUNTCHARNGCOUNTCHARNMCOUNT/序号N/G代码个数/M代码个数22代码转换功能的实现PMAC卡允许执行机床类型的RS274G代码程序,为了使PMAC能够运行标准G代码来控制机床运行,须根据加工需要编写特定的解释程序PROG1000,并将其下载到PMAC内存中。在此过程中,PMAC卡将G代码作为子例程来调用,指令GNN是指调用PROG1000的NN000行程序。GNN随后的数值作为NN000行指令的参数对待,然后返回,执行该行G代码的余下部分6。根据所搭建的微铣床系统需要满足的加工能力,编写了几种常见的G代码G00,G01,G02,G03,G90,G91编译程序其他G代码的编译程序,还有待进一步开发。编写的PROG1000程序如下OPENPROG1000CLEARRAPIDRETURNN1000LINEARRETURNN2000CIRCLE1RETURNN3000CIRCLE2RETURNENDIFRETURNN17000NORMALK1RETURNN18000NORMALJ1RETURNN19000NORMALI1RETURNN90000ABSRETURNN91000INCRETURNCLOSE为了让PMAC卡能够识别校验后的G代码,编写的上位机软件还应具备如下功能1在经过校验的G代码开头添加坐标系、坐标轴定义并为该段G代码在PMAC卡内存中开辟缓冲区7。程序开头添加清空缓冲区CLEAR指令,末尾添加关闭缓冲区CLOSE指令,转换后的G代码如图4所示。CHARGGROUPMAX_G_GODE/分组存储G代码CHARMGROUPMAX_M_GODE/分组存储M代码FLOATXTHEORYFLOATYTHEORYFLOATZTHEORYFLOATX_CENTERFLOATY_CENTERFLOATRADIUS/X编程值,直线的终点,圆弧的终点/Y编程值/Z编程值/圆心X坐标/圆心Y坐标/圆弧半径RBOOLOPECODE_FLAG/记录是否为指令是否为运动函数_COMMANDPPRECOMMAND/指向上个缓冲区的指针COMMAND212G代码的校验规则G代码的校验主要满足两项功能对出错的类型及修改方式进行精确定位给出错误提示,方便用户修改。代码的校验主要从语法、语义两方面进行检查。首先去除其中的无效字符,如注释信息、空格、N指令等然后再按设定的规则对代码进行处理。为了满足微铣床加工的要求,最终遵循的校验规则如下1语法方面要求每一命令行必须有指令且不能出现NGXYZIJ/RHDFSTM以外的未知指令,同时要求指令应大写。2语义方面指令需按如下顺序排列NGXYZIJ/RHDFSTM对指令的赋值应满足约定的数值类型且数值不可超量程同组G指令不可重复对N指令应逐行递增图3代码校验流程图贾旭,等基于PMAC的微铣床数控系统中G代码编译研究2012年3月1072将转换后的G代码程序存储到PMAC加工文件PMC中。3调用PAMCDOWNLOADA函数下载上述加工文件到PMAC卡中。图5加工阿基米德螺旋线实例图片结束语本文针对“PC运动控制器”型开放式数控系4统,利用编译原理、软件工程的思想及VC60软件,设计实现了G代码编译模块程序。将G代码的编译过程分成代码的校验功能和代码转换功能。所设计实现的G代码编译模块程序为用户提供柔性化和集成化的现代控制同时具有良好的通用性和较高的开放性。加工实例证明该方法能够实现具有复杂几何特征的微小零件的自动加工。参考文献1周凯PC数控原理、系统与应用M北京机械工业出版社,20062张学飞,李健开放式数控系统G代码的编译模块设计图4转换后的G代码3加工实例验证为对所设计的G代码编译程序进行验证,在搭建的微型数控铣床上开展微小零件的微铣削试验。首先在PRO/E中建立包含直线、圆弧等加工轨迹的三维零件模型并生成数控G代码,经过代码校验、转换等编译环节后,将其下载到PMAC卡内存中,完成微小零件的自动加工。采用直径为02MM的铣刀在黄铜件上加工阿基米德螺旋线的超景深显微镜观察图片如图5所示。螺旋线中心起始圆半径05MM,每圈增量3MM,切削深度为100M,螺旋线圆弧轮廓清晰,成型质量较高。加工实例证明了所设计的G代码校验程序及其与PMAC的接口实现方法达到了预期要求。J机械设计与制造,20101087883桂艳,周建来,田桂祥基于PC机的数控系统G代码的编译设计J淮海工学院学报,2009,18414174张庆,姚锡凡一种开放式数控系统NC代码解释器设计与实现J组合机床与自动化加工技术,2010259615白晶,胡仁喜,陶春生精通PRO/ENGINEER野火版30数控加工M北京电子工业出版社,20076PMACUSERMANUALDELTATAUDATASYSTEMSINC19987罗先全,黄学良,王伟,等基于PMAC卡数控的G代码自动生成J现代制造工程,200771416编辑赵蓉上接第99页参考文献1徐银铜燃料电池与汽车氢能技术J实用汽车技术,20086452李冰,林瑞,杨代军质子交换膜燃料电池膜电极组件的制备J机械工程学报,2009,45275793于泽浩无轴系统同步控制的研究D沈阳东北大学,20084万鹏飞,王莉基于模糊PID的凹印机套准同步控制研究J包装与食品机械,2008,26612145衣宝廉燃料电池原理技术应用M北京化学工

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论