数控机床的插补软件设计.docx
《数控机床的插补软件设计.docx》由会员分享,可在线阅读,更多相关《数控机床的插补软件设计.docx(26页珍藏版)》请在冰豆网上搜索。
数控机床的插补软件设计
数控机床的插补软件设计
中北大学分校毕业设计(论文)
数控机床插补软件设计
摘要:
插补是整个数控系统软件中一个极其重要的功能模块之一,其算法的选择将
直接影响到系统的精度、速度及加工能力等。
数控机床大多只能进行直线插补和圆弧
插补,无抛物线插补功能。
现有文献对直线、圆弧的逐点比较插补法、积分插补方法
均有介绍,而其用于抛物线插补尚不多见。
本文首先介绍了抛物线的两种插补算法,
然后基于vb语言设计了一个抛物线的插补软件,可用于教学仿真实验。
关键词:
插补,抛物线,逐点比较法,数字积分法,仿真,插补软件
TheDesigingofCNCInterpolationSoftware
Abstract:
InterpolationoftheCNCsoftwareisanextremelyimportantfunctioninonemodule,Thealgorithmofchoicewilldirectlyaffectthesystemaccuracy,speedandprocessingcapability.EconomicalCNCmachiningofsmallandmediumenterprisesinheavyuse,butmostoftheeconomictypeCNCmachinetoolscanonlylinearinterpolationandcircularinterpolation,parabolicinterpolationfunctionwithout.Existingliteratureonthestraightline,arc-by-pointcomparisonofinterpolation,integralinterpolationmethodareintroduced,anditsstillrareforparabolicinterpolation.Thispaperintroducestwoparabolicinterpolationalgorithm,andthenvblanguagedesignbasedonaparabolicinterpolationsoftwarecanbeusedinteachingsimulation.
Keywords:
interpolation,parabolic,pointbypointcomparison,digitalintegration,simulation,interpolationsoftware
1
中北大学分校毕业设计(论文)
1绪论................................................................................................................................4
1.1引言......................................................................................................................4
1.2插补技术..............................................................................................................4
1.3国内外技术现状...................................................................................................5
1.3.1国外技术现状............................................................................................6
1.3.2国内技术现状............................................................................................6
1.4课题意义..............................................................................................................6
1.3本章小结..............................................................................................................72数控系统插补方法及其分析..........................................................................................7
2.1插补概述..............................................................................................................7
2.2基准脉冲插补法...................................................................................................8
2.2.1逐点比较法插补的基本原理.....................................................................8
2.2.2数字积分法插补的基本原理.....................................................................9
3抛物线插补..................................................................................................................11
3.1逐点比较插补法抛物线插补.............................................................................11
3.1.1逐点比较插补法抛物线插补原理..........................................................11
3.1.2逐点比较插补法抛物线插补运算过程...................................................12
3.1.3逐点比较插补法抛物线插补实例...........................................................13
4用VisualBasic实现抛物线逐点比较法插补...............................................................15
4.1插补流程图........................................................................................................15
4.2编程变量定义....................................................................................................15
4.3部分vb程序......................................................................................................16
4.4插补软件界面及仿真.........................................................................................175数字积分抛物线插补....................................................................................................18
5.1抛物线DDA插补算法原理..............................................................................18
5.2抛物线DDA插补实例.....................................................................................206用VisualBasic实现抛物线积分法插补......................................................................22
6.1插补流程图........................................................................................................22
2
中北大学分校毕业设计(论文)
6.2编程变量定义....................................................................................................22
6.3部分vb程序......................................................................................................23
6.4插补软件界面及仿真.........................................................................................247软件说明.................................................................................................................25
7.1运行环境............................................................................................................25
7.2软件要求............................................................................................................25
7.3用户要求...........................................................................................................268总结..............................................................................................................................26
参考文献..........................................................................................................................27
3
中北大学分校毕业设计(论文)
1绪论
1.1引言
随着知识经济时代的到来,科学技术突飞猛进,机械制造技术发生了深刻的变化。
传统化机械制造技术已无法满足当今市场对产品多样化的需求,难以适应激烈的市场竞争所要求的高质量、高效率。
为此,现代制造技术应运而生,它以微电子技术为基础,将传统的机械制造技术与现代控制技术、传感检测技术、信息处理技术以及网络通信技术等有机的结合在一起,构成高度信息化、高度柔性、高度自动化的制造系统。
它根本上改变了过去的手工绘画、晒图,凭图纸组织整个生产过程的技术管理方式。
现代制造技术可以大幅度降低产品设计、制造周期,提高产品设计、制造质量,以适应当前空前激烈的市场竞争。
数控(NumericalColltr01数字控制,简称NC)技术是近代发展起来的一种用数字量及字符发出指令并实现自动控制的技术。
是现代制造技术中最关键的环节之一。
它最能体现现代制造技术的高效益和软硬件发展的综合水平,它的发展可以保证产品得到极高的加工精度和稳定的加工质量,提高加工的自动化程度和生产效率,缩短加工时间和生产周期,使产品具有精确协调性和互换性,增强了对复杂曲面的加工能力等,从而为现代制造技术的完善和发展提供了保证。
插补是整个数控系统控制软件的核心,它所对应的算法即为插补算法,插补技术的好坏直接影响着数控加工技术的优劣,是目前数控急需提高和完善的环节之一。
1.2插补技术
插补是整个数控系统软件中一个极其重要的功能模块之一,其算法的选择将直接影响到系统的精度、速度及加工能力等。
所谓插补,就是根据零件轮廓尺寸,结合精度和工艺等方面的要求,在已知刀具中心轨线转接点之间插入若干个中间点的过程。
换句话说,就是“数据点的密化过程”,其对应的算法称为插补算法。
在早期的硬件数控系统中,插补过程是由专门的数字逻辑电路完成的。
而在计算机数控系统中,即
4
中北大学分校毕业设计(论文)
可全部由软件实现,也可由软、硬件结合完成。
随着相关学科特别是计算机领域的迅速发展,插补技术在不断的提高,特别是插补算法也在不断的完善和更新。
由于插补的速度直接影响到数控系统的速度,而插补的精度又直接影响整个数控系统的精度,因此,人们一直在努力探求一种计算速度快并且精度又高的插补方法。
但不幸的是,插补速度与插补精度之间是互相制约、互相矛盾的,这是必须进行折衷的选择。
目前为止,己涌现出了大量的插补算法。
1.3国内外技术现状
插补运算所采用的原理和方法很多,一般可归纳为基准脉冲插补和数据采样插补两大类。
在这两大类的基础之上,目前国内外对于插补算法的研究主要在以下五个方面:
l)二次及高次曲线插补算法
这种算法的提出依据是:
用灵活性高、实用性强曲线来逼近零件的轮廓,通过减少基本曲线的段数来减少累积误差,同时也减少了NC代码的长度,提高了微机处理的效率。
2)最小偏差插补算法
该算法的基本思想是寻找一个点集,使这个点集中的点都紧密地靠近原始曲线,或者说这些点于原始曲线的偏差最小。
简单地说,最小偏差法就是以计算机的强大计算功能为依托,根据加工之前所获得的初始变量,从曲线的数学表达式中得到真实的加工点坐标值,然后通过在最小偏差正方形中的位置判断,得到一个最佳的进给方式,发出脉冲进给命令。
3)具有自适应特征的插补算法
该算法的基本原理:
步长是依逼近误差而定的,逼近误差是实际曲线与取代这段曲线直线段之间的最大法向距离,该算法就是根据逼近误差确定是否插入新点。
该算法当列表曲线曲率大时,使步长变小,反之使步长变大,同时逼近误差满足要求。
4)多轴联动系统的插补算法
多轴联动数控系统以成为数控技术发展的潮流,多轴控制可达到使同一台系统对成套机群进行控制的目的。
这一算法在即便是虚拟轴机床控制最少也要6个进给轴。
近年来,对此提出了大量的插补算法。
这些系统多采用线性实时性插补。
5
中北大学分校毕业设计(论文)
5)基于神经网络的插补算法
采用数学曲面上的一系列点进行网络训练,网络经过训练后,计算一系列的点,这些点可以用来同己知曲面数学方程产生的点进行比较,比较的差异能够表明该方法的使用程度。
训练网络生成的点同样能够产生加工表面的刀具轨迹。
1.3.1国外技术现状
日本、美国、加拿大、瑞士和德国相继展开了数控插补算法的研究,由于曲面直接插补方法克服了现行曲面加工模式的不足,能够满足高速高精度加工的需要,因此,主要是针对曲面插补的研究和探讨。
日本丰桥科技大学与北海道大学等于1987年研制了具有曲面实时加工功能的三坐标曲面加工系统;瑞士苏黎世大学与F记es、Aiek和几gid公司联合研制了Ozelot系统。
三菱电机的加藤清敬等研究了采用大规模并行处理,来解决实时刀具干涉修正的可能性;Bedi于1993年研制了一个具有样条曲面插补功能的CNC实验系统;YD.Chen2003年提出了曲面加工轨迹实时生成算法。
1.3.2国内技术现状
国内数控插补算法的发展也很快,呈现多元化,例如济南大学的马桦、中北大学的王峰、王爱玲和南京航空航天大学的游有鹏分别提出了高性能曲线及空间曲面的插补算法、B样条曲线的插补算法和最小偏差改进算法。
另外,哈尔滨工业大学的史旭明、赵万生等提出了二次曲线的通用插补算法;合肥工业大学的谢明江、肖本贤给出了非圆二次曲线的通用插补算法;华中科技大学的高三德、周云飞等首次提出了曲面直接插补算法(SDI),并且在以工控机为硬件平台的CPUCNC系统上实现;清华大学和南京四开数控设备厂合作,提出了一种基于网络信息的自由曲面直接插补控制方法等等。
1.4课题意义
插补运算是CNC系统中生成加工轨迹的基本子程序。
插补运算的优劣可以从算法的简便程度、插补精度的高低、执行时间的长短来评价。
插补运算的指标影响着工件的轮廓精度和表面粗糙度,并且影响机床的最大进给速度和生产效率。
近年来,随着
6
中北大学分校毕业设计(论文)
数控技术的发展,插补算法也不断的成熟与改进。
尤其由于数控编程更加图形化和自动化,无论是脱机编程,还是联机编程,其编程系统的功能更加强大,这样就是实现了测量、采样、编程、加工一体化,使数控加工更具有实时性、柔性与智能化。
这必然要求插补算法不仅具有高速度、高精度,更要具有自适应性。
综上所述,根据实际的纯软件数控系统的要求,曲线曲面直接插补自身具有很大的优点:
(l)简化了加工程序;
(2)便于干预加工过程;
(3)可以实现刀具轨迹实时跟踪显示;
(4)冗余环节少,效率高,可靠性好。
1.3本章小结
本章节简述了插补技术的概念及其应用领域,分析了国内外插补技术的发展,特别是插补算法研究的国内外技术现状,分析了插补技术的现状、特点与发展趋势。
2数控系统插补方法及其分析
2.1插补概述
插补是数控系统最重要的功能之一,插补工作可以用硬件或软件来完成。
早期的硬件数控插补工作可以用硬件或软件来完成。
早期的硬件数控系统(NC)中,都采用硬件的数字逻辑电路来完成插补工作。
硬件插补的基本特征是每次只能输出一个电压脉冲,使刀具相对工作台产生一个脉冲当量的长度单位。
脉冲当量的大小和脉冲频率决定了机床的加工精度和进给速度。
在CNC系统中,插补工作一般采用软件来完成。
插补方法分为基准脉冲插补和数据采样插补两类。
基准脉冲插补法模拟硬件插补的原理,把每次插补运算产生的脉冲输出到伺服系统,驱动工作台的运动。
每发一个脉冲,工作台移动一个脉冲当量。
输出脉冲的最大速度取决于执行一次插补运算所需要的时间。
最常见是逐点比较法和数字积分法(DDA)。
7
中北大学分校毕业设计(论文)
软件插补的第二类方法是数据采样插补法。
使用这种插补法的数控系统,其位置伺服通过计算机及其测量装置构成闭环,插补输出的结果不是脉冲,而是数据。
计算机定时地对反馈回路采样,得到采样数据与插补程序所产生的指令数据相比较后,用误差信号输出去驱动伺服电机。
这种方法所产生的最大速度不受计算机最大运算速度的限制,但插补程序较为复杂。
2.2基准脉冲插补法
基准脉冲插补又称脉冲增量插补或行程标量插补,其主要特点是在顺序循环计算运动轨迹中间点的过程中,每次插补循环的输入是下一中间点的坐标位移增量,并以指令脉冲形式输入以驱动个坐标轴的进给,同时控制每次插补输出的坐标位移增量不大于系统的脉冲当量,即每次插补输出的指令脉冲或者是一个,或者没有。
因此,在运动轨迹的起点和终点之间,中间点个数是已知的,插补循环次数也是已知的,通过控制每次脉冲循环的时间,就可控制总插补时间,从而控制运动速度。
基准脉冲插补主要用于步进电动机驱动的开环系统,也用于数据采样插补中的精插补。
基准脉冲插补的方法很多,有脉冲乘法器法、逐点比较法、数字积分法、最小偏差法、单步追踪法等等,其中应用较多的逐点比较法和数字积分法。
2.2.1逐点比较法插补的基本原理
逐点比较法式我国数控机床中广泛采用的一种插补方法,它能实现直线、圆弧和非圆二次曲线的插补,插补精度较高。
逐点比较法,顾名思义,就是每走一步都将加工的瞬时坐标同规定的图形轨迹相比较,判断其偏差,然后决定下一步的走向,如果加工点走到图形外面去了,那么下一步就要向图形里面走,以缩小偏差。
这样就能得出一个非常接近规定图形的轨迹,最大偏差不超过一个脉冲当量。
其工作流程是:
1)首先判断刀具当前位置与要求的运动轨迹的偏离情况。
具体方法是根据要求的运动轨迹设计一个偏差函数,概偏差函数是刀具坐标的函数,其函数值反映出偏差情况。
2)根据偏差判别的结果,发出一个进给指令脉冲,控制刀具沿相应坐标轴产生一个
8
中北大学分校毕业设计(论文)
脉冲当量的位移。
3)用新的刀具位置坐标重新计算偏差函数的值,并判断刀具是否到达轨迹的终点。
逐点比较法插补循环一般由偏差判别、坐标进给、偏差函数计算和终点判别四个工作节拍组成。
2.2.2数字积分法插补的基本原理
数字积分法插补是用数字积分的方法计算刀具沿各坐标轴的移动量,从而使刀具沿着设定的曲线运动。
实现数字积分插补计算的装置称为数字积分器,或数字微分器(DigitalDifferentialAnalyzer,DDA),数字积分器可以用软件来实现。
数字积分器具有运算速度快,脉冲分配均匀,可以实现一次、二次曲线的插补和各种函数运算,而且易于实现多坐标联动,但传统的DDA插补法也有速度调节不方便,插补精度需要采取一定措施才能满足要求的缺点,不过目前CNC数控系统中多采用软件实现DDA插补时,可以很容易克服以上缺点,所以DDA插补是目前使用范围很广的一种插补方法。
它的基本原理可以用图1所示的函数积分表示,从微分几何概念来看,从时刻0到时刻t求函数y=f(t)曲线所包围的面积时,可用积分公式:
tS,f(t)dt,0
如果将0~t的时间划分成时间间隔为Δt的有限区间,当Δt足够小时,可得近似公式:
ntS,f(t)d,y,t,ti,1