怎么着手学习数控机床?

怎么着手学习数控机床?

数控机床作为一种机械学、电气自动化控制、光学、电力电子学、计算机科学、测量学和材料学高度融合的高科技产品,可以学习的东西确实非常多,大致可以分为两个大方向:

简单来说,就是如何将已有的机械、电气和控制系统等组件整合起来好好工作,可分为两个方面。

即如何设计开发出一台全新的数控机床,当中也可以分为两个方面:

对知识分类,A类知识是必须掌握的,B类知识则是最好有涉猎的(nice to have)。

因篇幅所限,本文先谈前1.机床的操作和加工程序的编写这个方面。

一台已经出厂的数控机床,其使用者的工作是要通过使用数控机床完成某种特定零件的加工,完成“用机器制造机器”的任务,即需要正确的操作机床和完成加工程序的编写。其中需要的知识,用思维导图整理内容,大概如下:

为的是可以正确操作数控机床,最终目的是保证坐标轴可以按照你期望的位置和速度进行移动。机床可以正确移动,其实是基于笛卡尔坐标系。如果工件上的每个点都和它所在坐标系上的每个点都对应,那数控机床的执行机构(刀具)就会严格经过这些点,理论上工件也就加工出来了。(原理其实是中学阶段学习的数轴和坐标系的概念),初学编加工程序的人,很多时间都是花在找零件的图纸对应在坐标系中的点位坐标上的。

任何的位移都要有基准,而基准,在坐标系中就是原点(也叫零点)。确定零点在数控编程中非常重要,直接关系到程序编写是否简洁和方便。

操作机床中有个重要的过程叫“对刀”,其实就是在给刀具找一个基于零件毛坯的零点的过程。这可能是操作一些简单的数控机床(车床、铣床)中最重要的一个操作了,因为后面刀具的任何移动,都会以这个零点为基准,完成程序中编写的位移动作。

当然正确操作数控机床还有其他的操作需要掌握,例如创建刀具、修改刀具补偿值、创建加工程序、拷贝/粘贴/修改程序段和测试加工程序等等,不过这些通过阅读配套的说明书或在网上找相关的视频都可以学到(例如:http://www.ad.siemens.com.cn/CNC4YOU/Home/VideoSerialDetail/326 ),而且大部分都有中文,很容易学会。

这张图纸,已经描述清楚了零件的所有尺寸,理论上是可以编写出零件的加工程序的(不考虑公差)

要灵活掌握还是要花些功夫的,但并不难。相对而言,车削加工的零件图好读些(因为是对称的回转体),铣削类的零件图纸复杂些,读图需要花些功夫。

进入21世纪了,大部分的企业或学校都提供CAD软件(计算机辅助设计),可以直接创建零件的3D模型,省去了读图时的很多麻烦,通过CAD软件的功能,也可以通过软件中的快速标注功能获取自己希望知道的尺寸。但识别机械图纸依然是数控编程中的基本功(有时在机床侧需要现场编程,手边只有一张图纸),还是需要掌握识读机械图纸的基本功。

另一个重要方面是结合机床(主轴转速、进给速度)的特性,零件的技术指标(材质、表面光洁度和公差),生产能效(每个零件规划要加工多少时间)校验选定刀片的技术参数能否达到你的上述要求?这一般是由刀片的材质(高速钢、硬质合金是常见的材质,更高端的刀具还有陶瓷材质、人造金刚石材质等等)决定的。

一般在刀片上会标注一些字母,帮助用户判断这种刀具是加工何种材料的?它们单位面积可承受的切削载荷是多少?例如DIN/ISO 513标准中对于代加工材料为钢的刀具就有下列描述。

关于刀具上的代码,其适合加工的工件材质和能承受的载荷达到一定的熟练程度后,其实对于一些常用的材料的加工特性是可以记住的,然后在工作中就可以选择合适的刀具进行加工了(花些功夫就可记住,其实并不难)。

由于数控编程的方法很多,这里也按照A类和B类加以区分。我们识别图纸的目的是为了编写加工程序,而程序是由基本指令构成的。 目前国际上数控编程中通用(例如DIN66025)的编程方式是G代码编程(A类)。简而言之,编写程序都是以G开头的命令为引导的,例如G00代表刀具快进命令,G01是刀具按照直线插补进给,G02是机床按照顺时针圆弧进给,G03是机床按照逆时针圆弧进给…这部分的基础知识随便的哪册讲解数控的书籍中都会提及,因为G代码指令集已经成为国际性的数控编程的标准指令集。这里不再详细讲述了(如图5,6所示)。

除此之外,各个数控系统的生产厂家都有开发出一些独到的编程方式,这里试着举出几例:

一 循环编程法(A类)

目前市面上的大部分数控系统内都会自带一些有系统厂家提供的,方便用户编辑程序的工艺循环,其好处在于可以大大降低用户编写程序的工作量。这部分因系统厂家而各异,几乎没有统一的国际标准,因此在学习这部分的时候需要借助数控系统厂家的说明书,教学资料或者数控教学录像。

众所周知,加工一个零件有时很难一刀就加工到位,需要分多次进刀才可以,不过每次进刀的过程中,刀具移动的路径又非常的相似(快进-工进-退刀-快退)这样一系列的动作。而加工循环的开发,就是系统厂商将加工中常遇到的工艺进行总结和提炼,配合人机对话的方式,供编程人员使用的。

当然,还有很多其他的数控功能也可以借助循环的方式加以实现,比如对于3+2轴的加工中心会遇到的坐标系转换功能,在西门子的数控系统中就是利用Cycle 800循环实现的,而从严格意义上而言,Cycle800并不算是实际参与切削加工的工艺循环。

这方面西门子SINUMERIK系列的产品从最早期的802S/C bl开始提供给客户循环编程的功能,在阅读SINUMERIK系列的数控程序的时候,遇到Cycle(后面跟2-3位的数字)的语句行,则代表是使用循环编程法(也叫ProgramGUIDE方式)编写的程序。比较著名的几个循环,比如车床上使用的Cycle 99-螺纹加工循环;Cycle 952-轮廓加工循环(不区分凸凹轮廓),铣削加工中常用的Cycle 84-钻孔循环,Cycle 832-高速高精循环(主要用来处理模具类应用的),都属于此类。

二 WOP编程法(B类)

WOP(德文:Werkstatt Orientierte Programmierung , 面向车间的编程方式)编程法,起源来于德国斯图加特大学在上世纪70年代末启动的一个项目,其目的是开发一种统一的编程接口用于手动编写加工程序,且让程序代码和CNC系统厂家设计的编程指令无关。是一种相似的加工工艺都应该使用一个大致相同的编程输入过程的方法。这种编程法的优点在于:

目前主要的数控系统供应商都在自己的产品中开发了自己特有的WOP编程法,若采用这种编程法,对于拥有多种数控机床的厂家而言需要投入。额外的学习精力。因此比较适合于小批量,需要经常在机床侧编程的,生产的零件又比较复杂的用户。目前市面上比较成熟的WOP编程法有西门子SINUMERIK数控机系统中提供的针对铣削加工的shopmill和针对车削加工的shopturn。

在图8的表达中,我们可以看到,对于相对复杂些的车削类零件(比如车铣复合类零件),采用WOP编程法随着编程难度的提高,所需花费的人力,物力,财力相对会有所节省,这也是WOP编程法带给客户在经济效益上的优势,而传统的G代码手工编程比较适合处理简单工艺过程简单的零件。但对于带有自由曲面的零件,则必须使用CAD/CAM系统(Computer aided Design/Computer aided Manufacturing)

三 CAD/CAM编程法:(B类,对于致力于模具行业的技术人员则是A类)当然现在对于一些很复杂的零件,比如带有自由曲面的零件(例如模具类零件)。或者曲面虽然可以使用解析几何的方程式表达出,但涉及高次方程的(例如涡轮机叶片),再使用手工编写程序实现难度太大,则会借助CAD/CAM结合的方式生成零件程序。然后再结合数控系统里的一些功能指令使得生成的程序可以在系统中顺畅运行。如图9,总结一下,可称为CAD-CAM-CNC工艺链。该工艺链大概分为下面的四个步骤:

当然,在调试新工件的阶段,肯定还需要根据加工效果不断调整工艺或者机电一体化匹配的工作需要处理,有可能是调整程序的点位分布,有可能是调整控制系统的参数(增益、积分时间、加速度和加速度等),有可能是调整刀具、冷却液和工装夹具。

采用CAD-CAM-CNC工艺链同样需要工程师和机床操作人员具备比较扎实的机床操作,切削工艺和控制器的机电一体优化的能力。在工业领域的数字化程度越来越普及的今天,掌握CAD/CAM建立模型并生成程序的方法变得越来越重要。

下面就列举一个使用参数方程的原理编写椭圆轮廓的例子,我们可以看到,参数方程(在N110程序段调用)可以让我们的程序可以变得非常简化。这段程序引用自https://wenku.baidu.com/view/8dbb8ba3f524ccbff12184ac.html?sxts=1565679593281, 略作改动。

编写带有简单逻辑的程序(B类):加工程序既然也属于程序,则同样也涉及除顺序执行程序外的其他情况,比如都需要编程前先写出流程图,都支持条件判断语句(相当于C语言中的IF),都支持循环语句(相当于C语言中的For ),掌握这些编程的技法可以节省程序的行数,提高程序的执行效率(程序量较少,占用系统内存也小)。例如依然针对刚才加工椭圆的案例,不过需要考虑图纸要求和毛坯情况,不能只走一道轮廓就了事,而需要考虑刀具的承受能力,选择逐层切削的工况。由于逻辑层次比较复杂,因而绘制流程图,最后再编写出对应的程序(如图12)

另外,在程序中增加合理的注释,(如图13中的灰色部分)也便于其他人阅读自己编写的程序。这方面的训练,还是要掌握一种编程语言比较好。主要是借助计算机语言,掌握程序编写的一些规则(定义变量名,区分主程序和子程序,设计主程序的判断,循环语句的流程图)。这样有利于编写比较逻辑跳转关系比较复杂的零件程序。

关于这第一部分的介绍就到这里。

本文由西门子工程师撰文回答,希望对题主和关注这个话题的知友们提供帮助

特别鸣谢本文作者

西门子(中国)有限公司 数字化工业集团

运动控制部 数控机床控制系统部 客户关系经理

胡大为 @Andreas

本账号为西门子中国的官方知乎账号。西门子是全球领先的技术企业,创立于1847年,业务遍及全球200多个国家,专注于电气化、自动化和数字化领域。我们希望与你一同分享这些领域的知识与新科技,欢迎你的提问。此外,我们并不卖家电:)

西门子中国的每一位专家都是我们的智囊,你在这个账号可以阅读到来自西门子各个不同方向专家们的见解。请大家不要吝惜手里的“邀请”,让我们在分享中共同进步。

也欢迎大家关注我们的微博(ID:西门子)和微信 (ID:西门子中国) ,更多的了解我们。

看到这里就给点个赞吧!