数控技术谢明红研究员第一部分绪论数控技术涉及学科机械、控制、计算机、电子涉及课程:数控技术、微机原理及接口技术、控制工程、汇编语言、数据结构、C语言、数字电路、模拟电路、机床、工艺数控系统概况1)国外数控系统FUNUCSIMENS三菱NUMHAASFAGOR2)国内数控系统凯恩帝华兴广州数控华中数控蓝天数控航天数控FANUC0iMODELC系列最大控制轴数/最大同时控制轴数:4轴FANUCSeries160i/180i/210i/160is/180is步进电机和驱动器42、57、86、90、110、130相数2、3、52相,步距角1.8度,3相,1.2度5相,步距角0.72度交流伺服电机和驱动器三菱J3S安川YSKAWA三洋伺服、富士伺服东源伺服、华中伺服数控机床组成输入输出设备数控装置伺服系统机床本体测量反馈装置数控机床组成图1.2数控机床分类按机械加工的运动轨迹分类(1)点位控制数控机床(2)轮廓控制数控机床按伺服系统的控制原理分类(1)开环控制数控机床(2)半闭环控制数控机床(3)闭环控制数控机床工作台减速器开环控制系统框图步进电机控制电路数控装置输入数控装置控制电路伺服电机工作台速度检测元件转角检测元件半闭环控制系统框图速度反馈位置反馈输入工作台数控装置控制电路伺服电机闭环控制系统框图速度检测元件位置检测元件位置反馈速度反馈输入按功能水平分(1)高档型(2)普及型(3)经济型按工艺用途分(1)金属切削机床(2)金属成型机床(3)特种加工机床(4)其它类型机床1.3数控加工的原理、特点及应用1.3.1数控加工原理加工程序译码刀补计算插补计算伺服控制和PLC控制1.3.2数控加工特点及应用范围适应不同零件生产效率和加工精度高功能复合程序高,一机多用1.4.1数控的指标与功能1.数控机床的指标1)行程范围2)工作台面尺寸3)承载能力4)主轴功率和进给轴扭矩5)控制轴数和联动轴数2.数控机床的精度指标1)几何精度2)位置精度3.数控机床的性能指标1)最高主轴转速和最大加速度2)最高快移速度和最高进给速度3)分辨率和脉冲当量1.4数控指标和功能1.4.2数控系统的指标与功能1.数控系统指标1)插补精度2)位置指令范围3)通道数(控制轴数)4)最大联动轴数5)可靠性指标6)其它2.数控系统功能1)控制功能2)准备功能3)插补功能4)进给功能5)主轴功能6)辅助功能数控车床数控铣床加工中心五轴加工中心机器人控制数控激光加工机数控水切割机CNCCADCAMCAD/CAM软件FMSCIMSCAPPCAE第二部分数控编程1.手工编程和自动编程2.对刀点原则设计基准或工艺基准,如孔中心对刀方便位置,便于观察和检测便于坐标计算安全换刀位置3.加工路径减少空行程切向切入和切出,引刀线走刀路线(水平,垂直,环形等)4.编程误差(径向允差)(一)工艺分析1.平面孔系加工2.旋转体类零件加工3.平面轮廓零件加工4.立体轮廓表面加工二轴半加工三轴联动四轴联动五轴联动(二)加工方法机床坐标系机床原点工件坐标系工件零点绝对编程相对编程重复精度定位精度脉冲当量轴名的确定Z坐标轴X坐标轴Y坐标轴(二)数控机床坐标系G代码G00空行程G01直线G02顺园G03逆园G90绝对编程G91相对编程G04G41左刀补G42右刀补G40取消刀补G17(XY)G18(XZ)G19(YZ)G54G55G56定坐标系G73,G80~G83,G88,G89其它指令M00程序停止M01计划停止M02程序结束M03主轴顺时针M04主轴逆时针M05主轴停止M07,M082号,1号冷却液开M09冷却液关T,S,F,N,%()R,UVW起刀点刀补建立刀补进行刀补撤销编程轨迹刀具中心轨迹刀具半径补偿直线与直线园弧与直线直线与园弧园弧与园弧缩短型:矢量夹角α≥180°刀具中心轨迹短于编程轨迹的过渡方式。伸长型:矢量夹角90°≤α<180°刀具中心轨迹长于编程轨迹的过渡方式。插入型:矢量夹角α<90°在两段刀具中心轨迹之间插入一段直线的过渡方式。绝对编程G00X0Y0G42G01X10Y10G01X30G03X40Y20J10G02X30Y30J10G01X10Y20G01Y10G40G00X0Y0相对编程G00X0Y0G42G91G01X10Y10G01X20G03X10Y10J10G02X-10Y10J10G01X-20Y-10G01Y-10G40G90G00X0Y0N01G00X-20Y-20N02G00X0Y0N03G01X0Y39.57N04G02X10Y49.57I10J0N05G01X31.09N06G03X64.92Y46.95I-18.83J-23.36N07G02X89.06Y43.77I10J-17.32N08G01X103.2Y29.63N09G01Y10N10G02X93.2Y0I-10J0N11G01X74.92N12G03X24.92I-25J-54.54N13G01X10N14G02X0Y0I0J10N15G00G40X0Y0%O0000(PROGRAMNAME-3轴连动环扫)(DATE=DD-MM-YY-22-09-08TIME=HH:MM-15:26)N100G21N102G0G17G40G49G80G90(TOOL-0DIA.OFF.-0LEN.-0DIA.-3.)N104T0M6N106G0G90G54X36.019Y-36.79A0.S0M5N108G43H0Z63.531N110Z4.531N112G1Z3.531F0.N114X36.102Y-36.707Z4.032F.3N116X36.366Y-36.443Z4.566N118X36.477Y-36.332Z4.7……N9676G0Z4.531N9678Z63.531N9680M5N9682G91G28Z0.N9684G28X0.Y0.A0.N9686M30%%,MX--,G00G53Z-3S15000M03M09G17G90G71;Thispostisforcimatron;(D=0.6,R=0.3)G54G43D1G04K500G51E0.01G00X0.Y0.G01Z0.1F300X51.857Y17.57Z0.098X51.9Y17.499Z0.091X51.97Y17.453Z0.083X52.054Y17.442Z0.076X52.133Y17.469Z0.069……..G03X42.334Y19.446I0.154J1.279G02X42.616Y19.43I0.133J-0.15G53Z-5M05M09G53X-5Y-5M30%,MX--,CAM第四部分插补原理逐点比较法数字积分法时间分割法目标跟踪法逐点比较法直线ememmYXXYFememmYXXYFeemmYXYXⅠⅡ偏差判别进给新偏差计算终点判别0F80E0F330eYFF71E62E53E44E35E26E17E08E03F02F01F04F01F02F03FXYXXXXYY132eYFF134eYFF231eYFF352eXFF033eYFF451eXFF253eXFFXYOoutportb(sInputData.wOutPort,bOutputValue);for(i=0;iiMotorTime;i++);outportb(sInputData.wOutPort,0);0F0FYX0F0F0F0F0FXYYXX0FYXO圆弧222mmmmRYXFvXvYvRYXOYX0iF1X若若0iF1Y1212122221iiiiiiiiXFRYXXRYXF)(1212122221iiiiiiiiYFRYYXRYXF)(时间分割法(数据采样法)XA(Xe,Ye)△Y△XβαYOlll粗插补:采用时间分割思想,根据进给速度F和插补周期T,将廓型曲线分割成一段段的轮廓步长L,L=FT(一个插补采样周期的轮廓步长),然后计算出每个插补周期的坐标增量。精插补:根据位置反馈采样周期的大小,由伺服系统完成。eiXLlXeeiiXYXYi1iiXXXi1iiYYYPA(Xi,Yi)B(Xi+1,Yi+1)EXYFHMαδΦiΦi+1CDO2MODiOMCDOCi2cosRYYRYYiiii12121cos)21(1iiYYRlX22)(iiiiXXRYY目标跟踪法初始化B_AXIE,A_AXIE;R_OUT+=A_AXIE;长轴输出if((B_AXIE-2*R_OUT)0){R_OUT-=B_AXIE;短轴输出}用于多轴插补,螺纹插补各种插补速度问题逐点比较法Fx+Fy=F1.直线Fx=x/(x+y)*F2.圆弧F1*sin(alfa)+F1*cos(alfa)=Fatan(alfa)=J/I目标跟踪法1.直线F2=F1*长轴/length;F=sqrt(F1*F1+F2*F2)2.圆弧IJFx=Fy*J/R;IJFy=Fx*I/R;第二部分电气接线步进电机接线输入信号接口交流伺服驱动器接线图编码器晶体管,继电器工业控制卡PCL730(I/O卡)强电接线弱电接线PCL726卡(D/A)711B卡(A/D)_711b_init://_711b_AD_Set_Mode(7,0);Outportb(0x220,0x70);//_711b_AD_Set_Gain(0);Outportb(0x220+0x09,0);//711b_AD_Aquire://_711b_AD_Set_Channel(0);Outportb(0x220+0x0a,0)for(i=0;i500;i++){Value=Inportb(0x220+0x05);if((value&0x0010)==0)break;}port_data=Inportb(0x220+0x04);第三部分软件结构1.软件总体结构和功能structNC_Code_Table/*结构类型名*/{unsignedcharCode_Type;/*加工代码类型,分别代表N、G、M、S等功能*/unsignedintvalue;/*加工代码值,如G01,则value=1*/unionCode_Ptr/*各种加工方法指针联合类型名*/{structG01Type*G01_Ptr;/*直线插补数据结构指针*/structG02Type*G02_G03_Ptr;/*园弧插补数据结构指针*/……/*其它插补数据结构指针*/}table;unsignedlongLine_Number;/*加工代码行号*/structNC_Code_Table*previous,*next;/*分别为结构前后指针*/}*NC_Code_Ptr;/*加工代码结构指针变量名*/structG01Type/*G00,G01直线类指针*/{floatx,y,z;unsignedintspeed;/*雕刻速度*/}*G00_G01_Ptr;structG02Type/*G02,G03圆弧类指针*/{unsignedintplane;/*园弧插补平面标志*/floatx,y,z,I,j,k;/*i、j、k为园弧园心相对起点坐标*/unsignedintspeed;/*雕刻速度*/}*G02_G03_Ptr;2.软件数据结构gcodexyz….1gcodexyz….3gcodexyz….4gcodexyz….n3.NC代码编译词法分析、语法分析、译码㈠词法分析1.读取一个非数字(数字包括小