1机床CNC基础知识北京发那科机电有限公司王玉琪20062此文是本人对GM(中国厂)培训时的讲义。目的是对初学者对CNC有基本的综合概念。以便于更深入地学习诸如:加工编程,PMC和系统维修等课程。3机床CNC基础知识一.CNC机床与CNC系统CNC的含义是计算机数值控制。1.CNC机床⑴.金属切削用孔加工、攻丝、镗削、铣削、车削、切螺纹、切平面、轮廓加工、平面磨削、外圆磨削、内圆磨削等。⑵.线电极切割机。⑶.冲床、步冲、冲压、金属成型、弯管等机床。⑷.产业机器人。⑸.注塑机。⑹.检测、测量机。⑺.木工机械。⑻.特殊材料加工机械:如加工石材、玻璃、发射性矿料等。⑼.特种加工机械激光加工机、气体切割机、焊接机、制图机、印刷机等。随着电子技术和计算机技术以及IT技术的发展,目前,这些机床与加工设备都可用数值计算机用数值数据进行控制,称为CNC控制。下图是一台金属加工机床------立式加工中心的一般结构。42.CNC系统CNC系统的含义是计算机数值控制系统。下图是一台CNC系统的基本配置图。FANUCLTDFS0i-6系统配置FSSBβis伺服电机αis伺服电机I/OLinkβi伺服放大器7.2“LCD/MDI(单色)8.4“LCD/MDI(彩色)αi伺服放大器Series0i-C以太网10baseT/100baseTXPCInternetαi主轴电机FANUCI/OLinkDI/DO1024/1024操作面板I/O模块I/O单元系统在LCD后面CNC系统的基本配置机床的CNC控制是集成多学科的综合控制技术。上图是一台典型的CNC控制系统。从图中可见,一台CNC系统包括:⑴.CNC控制单元(数值控制器部分)。⑵.伺服驱动单元和进给伺服电动机。⑶.主轴驱动单元和主轴电动机。⑷.PMC(PLC)控制器。⑸.机床强电柜(包括刀库)控制信号的输入/输出(I/O)单元。⑹.机床的位置测量与反馈单元(通常包括在伺服驱动单元中)。⑺.外部轴(机械)控制单元。如:刀库、交换工作台、上下料机械手等的驱动轴。⑻.信息的输入/输出设备。如电脑、磁盘机、存储卡、键盘、专用信息设备等。⑼.网络。如以太网、HSSB(高速数据传输口)、RS-232C口等和加工现场的局域网。上图右下方的I/OLinkβi伺服放大器与电动机用于外部机械的驱动与控制。上方画出了以太网。CNC单元(控制器部分)的硬件实际上就是一台专用的微型计算机。是CNC设备制造厂自己设计生产的专门用于机床的控制的核心。下面的几张图表示出其基本硬件模块;基本的控制功能模块和一台实际的控制器硬件。5CNC单元的基本模块CNC单元内的基本模块6CNC功能框图7下面是一台控制器部件装在LCD显示器画面的CNC单元硬件图。二.机床的运动坐标及进给轴一台机床有几个运动轴执行加工时的切削进给,因此称其为进给轴。机床开机后以机床零点为基准建立了机床的机械坐标系(直角坐标系)。每个轴对应于其中的一个相应的坐标。轴有直线运动的,有回转运动的。国际标准ISO对坐标轴的方向与名称是有规定的。如下图。根据规定,按直角坐标系右手法则定义各坐标轴,Z轴正方向一般为机床主轴的方向。X、Y、Z定义为直线运动轴;U、V、W为分别平行于X、Y、Z的直线运动轴;A、B、C为回转运动轴,分别围绕X、Y、Z运动,其正方向符合右手螺旋规则。CNC控制时用程序命令X、Y、Z、U、V、W、A、B、C等指令被控的坐标轴,用数值指令其运动的距离,正负号指令移动方向,F指令运动速度。例如:G01X120Y-300F1000;意义是G01:X轴与Y轴协调运动,加工一条直线;X120,Y-300:X轴走120mm;Y轴走-300mm;F:进给速度为1000mm/分。powersupplySERVOCARDCPUCARDLCDUNITLATつCHめScrewsLCD一体型CNC单元8实际的机床上各进給轴的定义如下图所示。图4机床的进给轴9进给轴的坐标方向三.CNC插补与位置控制指令的输出CNC对机床的坐标运动进行控制。在控制原理上这是位置量控制系统。需要控制的是:几个轴的联动,运动轨迹(加工轮廓)的计算:最重要的是保证运动精度和定位精度(动态的轮廓几何精度和静态的位置几何精度);各轴的移动量(mm);移动速度(mm/分);移动方向;起/制动过程(加速/降速);移动的分辨率。现代的CNC系统是纯电气的控制系统。进给轴的移动是由伺服电动机执行的。通常,一个进给轴由一个伺服电动机驱动。电动机由伺服放大器供给动力。伺服放大器的工作由CNC的插补器的分配输出信号控制。101.轨迹运动的插补计算--插补器CNC的插补运算CNC对机床进给轴的控制,是执行事先编制好的加工程序指令。程序指令是按零件的轮廓编制的加工刀具运动轨迹(如上图)。程序是根据零件轮廓分段编制的。一个程序段加工一段形状的轮廓。轮廓形状不同,使用不同的程序指令(零件轮廓形状元素)。例如:G01---直线运动指令;G02---顺时针圆弧运动指令;G03---逆时针运动圆弧指令;G32(G33)---螺纹加工……但是,在一段加工指令中,只是编写此段的走刀终点。如:下面一个程序段要加工X-Y平面上一段圆弧,程序中只指令了终点的坐标值X100;Y-200:G90G17G02X100.Y-200.R50.F500;此段的起点已在前一段编写,就是前段的终点。因此,加工此段时,如上图所示,CNC控制器即计算机处理器只知道该段的起点和终点坐标值。段中的刀具运行轨迹上其它各个点的坐标值必须由处理器计算出来。处理器是依据该段轮廓指令(G02)和起点和终点的坐标值计算的,即必须算出希望加工的工件轮廓,算出在执行该段指令过程中刀具沿X轴和Y轴同时移动的中间各点的位置。X轴和Y轴的合成运动即形成了刀具加工的工件轮廓轨迹。除此之外,在程序中必须指令运动速度(加工速度),如:F500(mm/min)。在位置计算时,要根据轮廓位置算出对应点的刀具运动方向速度。此例中是分别算出沿X轴各点的对应速度和沿Y轴各点的对应速度。实现上述运算的机构称之为插补器。插补器每运算一次称为一个插补周期,一般为8ms;计算复杂型面的插补器使用高速CPU,插补周期可缩短,目前可达2ms。一个程序段分多个插补周期,取决于轮廓形状和轮廓尺寸。执行上例程序段的指令是进行顺时针圆弧的插补。是执行以圆弧计算公式为基础的插补子程序。计算时的判断条件是:不断地执行刀具沿X轴向和Y轴向的进给,每进给一个脉冲当量即判断是否到达终点,是否超差,计算方向是顺时针,进给当量是1μm/脉冲,速度是500mm/min。CNC的系统控制软件中包括了多个插补子程序,工件形状的每一种几何元素均对应着刀具的一种几何运动,因此就要求CNC有相应的插补子程序。这就是CNC系统控制软件中控制坐标轴运新的铣削指令螺锥螺旋3维圆弧刀具中心点控制Circularinterpolationin3-Dbyspecifyingintermediateandendpointsofarc3维圆弧插步器XYZIntermediatepointEndpointStart(X2,Y2,Z2)pointG02.4XX1YY1ZZ1;(Intermediate)XX2YY2ZZ2;(End)11动的G代码。如:G01,G02,G03,G32,G33,G05,G08……。还有一些子程序是考虑加工工艺的要求控制刀具运动的。G代码越多,CNC的功能也就越强。用这些G代码编制零件的加工程序。CNC的系统控制软件是用汇编语言编制的。不同类型的机床使用不同的CNC系统。当然,这些系统的控制软件是完全不同的。插补器的硬件是CNC的主CPU。当然,还有用纯硬件的插补器。2.插补脉冲的分配输出经过插补运算,算出了加工所要求的工件形状在同一时间周期(插补周期)内各个坐标轴移动的距离(移动量),它是以脉冲数表示的,如:在本插补周期内X轴进給25个脉冲;Y轴进給50个脉冲,分别送给对应的坐标轴,作为相应轴的位置移动指令。脉冲序列有正负号,指令对应轴的运动方向;脉冲序列按一定的频率输出,指令该轴的运动速度。这一装置叫做脉冲分配器,如下图所示。为了防止产生加工运动的冲击、提高加工精度和光洁度,在脉冲分配给各进给轴之前,对进给速度都进行加/减速。如下图所示,CNC可实现两种加/减速控制:插补前加/减速和插补后加/减速。插补后通常用直线型或指数型加减速方法:指数型加/减速的速度变化比较平滑,因而冲击小,但是速度指令的滞后较大。相反,直线型加减速的速度变化迅速,时间常数设得较小时会造成冲击,引起机床的震动。但是,加工出的零件轮廓可能与裎编的轮廓接近。插补前用直线型加减速方法,这样可以减小加工的形状误差。除此之外,为了提高加工精度和加工速度,还开发了预读/预处理多个程序段、精细加减速等CNC软件。CNC插补器脉冲分配器XYZVA进给脉冲输出123.加工刀具的偏置及补偿上述插补的位置脉冲,是按工件轮廓编制的程序计算出来的,即刀具中心点的运行轨迹是工件的轮廓。考虑到刀具有半径和不同的长度,实际加工时刀具中心不能按此轨迹行进,必须根据实际使用的刀具,计入其实际半径和长度,由CNC计算出实际刀具的中心轨迹,按此轨迹控制刀具的移动。此功能叫做“刀具的偏置及补偿”。⑴.刀具半径偏置,补偿如下图所示,实际的刀具中心轨迹与按照零件轮廓尺寸编制的CNC加工程序轨迹偏移了一个刀具半径的尺寸。在编程时,用G指令(G41,G42)告诉CNC的插补器执行刀具半径的偏置计算,插补器即按照实际的刀具半径计算出刀具的中心轨迹,以此控制刀具的行进。就是说,上述脉冲分配器输出的给各个进给轴的脉冲数,是插补的零件轮廓偏移了一个刀具半径后的刀心轨迹的进给脉冲数。每个轴的补偿脉冲分别送给相应的进給轴。实际刀具的半径值在加工前必须输入至刀具补偿存储器。刀具补偿存储器可同时存储多把刀具的几何尺寸(半径值)。加工中用哪一把刀具,由程序用刀具号指定,如:T102。根据程序中指令的刀号,CNC插补器找到实际的刀具半径值执行计算。G41为左刀补:沿着刀具行进的方向看,在工件的左侧加补偿;G42:沿着刀具行进的方向,在工件的右侧加补偿。下图所示为G41。K1/+-XCNC伺服轴加减速时间常数(T1)加减速时间常数(T2)Y插补前加/减速K1/+-Ft时间常数(T2)时间常数(T1)程序指令插补插补后加/减速插补后加/减速加减速控制13刀具半径补偿⑵.刀具长度补偿铣削刀具的长度补偿加工前,用一把刀具的长度作为基准,将实际加工中使用的各把刀具先测量好其与基准刀具刀长的正、负差值,将这一差值与上述的刀具半径值一样按刀号输入刀具补偿存储器。编制加工程序时,编入刀具号。加工的开始,用基准刀具的刀尖对刀。CNC执行加工程序时,根据程序中指令的刀号找出刀长的差值,按刀长差值的符号伸长或缩短,进行补偿。上图是铣床刀具长度的补偿,只有Z向补偿。对于车床,有X和Z两个方向。如下图所示。在铣床类的CNC系统中,用G43和G44指令刀具的长度补偿,G43为正刀补,即将刀具补偿值加到程序指令的终点坐标值上。G44为负刀补,即由程序指令的终点坐标值减去刀具的补偿值。14车削刀具长度补偿⑶.三维刀具补偿加工复杂形状的零件(如模具)需要用多个坐标轴同时移动的多坐标插补器。当然也必须用多坐标(多维)的刀具补偿。下图所示是三维的刀具半径补偿和刀具前角的补偿。刀具的半径偏置和前角偏置ToolaxisOffsetpathProgrammedpathOffsetvectorOffsetplaneLeadingedgeoffsetToolaxisOffsetplaneOffsetpathOffsetvectorProgrammedpathToolsideoffset15四.运动误差的补偿1.运动轴反向时的间隙补偿(失动量补偿)在机床工作台的运动中从某一方向变为相反方向的反向时刻,会由于滚珠丝杠和螺母的间隙或丝杠的变形而丢失脉冲,就是所说的失动量。在机床上打表实测各轴的