数控加工中非圆曲线的最小二乘圆弧逼近
- 格式:pdf
- 大小:287.08 KB
- 文档页数:5
数控编程圆弧计算方法(一)数控编程圆弧计算方法在数控机床上,圆弧是常见的加工形式之一。
然而,要正确地编写圆弧的数控程序,需要掌握圆弧的计算方法,包括圆弧的起点、终点、半径等参数的计算。
下面将详细介绍数控编程中的圆弧计算方法。
圆弧的定义圆弧是一个弧线形状,由圆锥曲线或球面曲线的一部分组成。
圆弧有起点、终点、圆心和半径等参数。
圆弧的表示方法在数控编程时,圆弧可以用多种方式来表示。
其中一种常用的方式是用圆心坐标及起点、终点的位置坐标来表示。
假设圆弧的起点为P1,终点为P2,圆心为C,半径为R,则圆心坐标可以用以下公式计算:C=(P1+P2)/2+(P1−P2)⊥∗R/(2∗|P1−P2|)其中“+”表示向量加法,“⊥”表示向量垂直,“|.|”表示向量的模。
通过圆心坐标及起点、终点的位置坐标,可以计算出圆弧的圆心角度数、圆弧的弧长等参数。
圆弧的程序调用格式在数控编程中,圆弧通常使用G02或G03指令来表示。
以G02指令为例,其格式为:G02 X_ Y_ I_ J_ R_其中X、Y表示终点坐标,I、J表示圆心坐标与起点的相对距离,R表示圆弧半径。
需要注意的是,只有当起点与当前点之间没有直线段时才能使用I、J参数。
圆弧的误差分析在数控加工中,为了保证加工精度,需要对圆弧误差进行分析。
圆弧误差包括位置误差和形状误差。
位置误差是由起点到圆心、圆心到终点的直线段引起的误差,可以通过适当调整I、J参数来补偿。
形状误差是由数控机床控制系统、加工刀具等因素引起的误差,可以通过加工补偿、精度提高等措施来减小。
总结圆弧计算方法是数控编程中的核心内容之一,正确地编写圆弧程序可以提高加工效率、保证加工精度。
需要掌握圆弧的定义、表示方法、程序调用格式以及误差分析等方面的知识,才能编写出高质量的数控程序。
圆弧计算方法示例以下是一组示例,展示如何通过已知起点、终点和圆弧半径来计算圆心坐标和其他相关参数。
假设起点坐标为(0, 0),终点坐标为(2, 2),圆弧半径为1,则可按如下方法计算圆心坐标:C=(P1+P2)/2+(P1−P2)⊥∗R/(2∗|P1−P2|)=(0+2)/2+(0−2,0−2)⊥∗1/(2∗√2)=(1,1)由此可得圆心坐标为(1, 1)。
第一章数控加工的编程基础课后习题答案一、填空题1、为了准确地判断数控机床的运动方向,特规定永远假设刀具相对于(静止的工件)坐标而运动。
2、目前,数控编程所采用的格式为(字-地址)程序段格式。
3、用于编写程序段的字为(N)4、尺寸字U、V、W表示增量(相对)坐标,A、B、C表示(旋转)坐标。
5、数控系统通常分为车削和铣削两种,用于车削的数控系统在系列号后加字母(T)用于铣削的数控系统在系列号后加字母(M)二、选择题1、下列叙述中,(确定机床坐标系),不属于数控编程的基本步骤。
A)分析图样、确定加工工艺过程B)数值计算C)编写零件加工程序单D)确定机床坐标系2、程序校验与首件试切的作用是(检验程序是否正确及零件的加工精度是否满足图纸要求)。
(A)检查机床是否正常(B)提高加工质量(C)检验参数是否正确(D)检验程序是否正确及零件的加工精度是否满足图纸要求3、数控编程时,应首先设定(工件坐标系)。
(A)机床原点(B)工件坐标系(C)机床坐标系(D)固定参考点三、判断题1、数控加工的主程序号都是由O××××构成,而子程序由P××××构成。
(×)2、M功能不能编程变化量(如尺寸、进给速度、主轴转速等),只能控制开关量(如冷却液开、关,主轴正、反转,程序结束等)。
(√)3、国际标准化组织ISO规定,任何数控机床的指令代码必须严格遵守统一格式。
(×)4、大部分代码都是非续效(模态)代码。
(×)四、简答题1、编制数控加工程序的主要步骤?答:①对零件图加工工艺分析②数值计算(数学处理)③编写零件加工程序单④制备控制介质⑤程序校对与首件试切2、数控编程有哪些种类?分别适合什么场合?答:数控编程一般分为手工编程和自动编程两种。
①手工编程。
对于加工形状简单、计算量小、程序不多的零件,采用手工编程较容易,而且经济、及时。
数控车加工非圆曲线编程研究摘要从数控技术的角度出发,对采用数控技术的数控机床进行介绍,针对数控加工和编程的方式进行深入探究,并重点研究非圆曲线的数控和编程方式,为数控车加工技术提供借鉴。
关键词数控技术;非圆曲线加工;编程数字化时代已经来临,各行各业都在积极向着数字化的方向转型,制造业也不例外。
数控技术的出现,打破了传统制造业的发展瓶颈,为制造业创造了新的发展机遇。
数控技术是数字化控制技术的简称,是工作人员编辑好的程序对机械设备进行控制的技术,在编写的程序中加入对机械设备的运动方式和操作循序等方面的功能,从而更加方便制造。
随着计算机技术的发展,现代的数控技术在原有的技术上加入了更多的存储、处理、运算和逻辑等功能,能够更加智能化地进行工业制造。
数控车又叫数控机床,是执行数控编译程序的主体。
随着人们艺术欣赏水平的上升,加上对物质和精神双方面的需求,现代的制造业要求更加精细,制造的过程也越加复杂。
在制造业设计中,非圆曲线的应用十分广泛,不仅具有很高的美观性,同时也更加复杂多变[1-2]。
因此,研究数控机床加工非圆曲线编程具有很高的意义和价值,能够推动现代数控加工技术的发展。
1宏程序编译在日常生活中,人们通过仔细观察就能发现,不少物品的外形和设计都具有非圆曲线的工艺,常见的非圆曲线有椭圆、双曲线、抛物线等。
非圆曲线产品具有较高的复杂性,在产品设计中非圆曲线能够采取较为复杂的组合,从而实现产品的工艺特性。
非圆曲线在工业制造中作为直线和圆插补的一个补充,需要采取精细的程序编辑才能够实现。
随着计算机技术的发展,现代数控技术的程序设计有两种方式,一种为传统的宏程序编译,一种为自动程序编译。
宏程序编译是采用传统的指令方式,采取复杂的数学、逻辑等运算方式,从而实现一系列的运算指令,让数控车在读取程度的时候,能够按照编译的方式来进行操作。
由于不同的产品对工艺的要求有所不同,尺寸、大小、非圆曲线的形状都会产生差异,因此每一种产品如果要采用宏程序编译的方式进行生产,都需要对产品进行特定的编译。
数控车床上非圆曲线加工方法探讨张杰瑜;权秀敏;黄红兵【摘要】通过研究非圆曲线的编程与加工过程,介绍了数控车床上非圆曲线的加工方法;利用FANUC Oi Mate-TC数控系统提供的宏程序功能和利用软件自动生成功能进行编程加工等.在生产中依据实际情况,可以选择不同的方法编制数控加工程序,以提高非圆曲线编程的准确性.【期刊名称】《蚌埠学院学报》【年(卷),期】2013(002)001【总页数】4页(P6-9)【关键词】数控车削;宏程序;非圆曲线【作者】张杰瑜;权秀敏;黄红兵【作者单位】六安职业技术学院机电工程系,安徽六安237158【正文语种】中文【中图分类】TG518目前,数控机床使用越来越普及[1]。
在数控车床上加工规则曲线的方法相对比较统一。
但是,对于椭圆、双曲线等非规则曲线的编程方法,各不相同,甚至有些机床数控系统本身不存在直接加工非圆曲线的G指令。
数控加工过程中,非曲线类零件加工不仅尺寸解算麻烦,而且在要求精度高、品种多且批量少的情况下就更加困难。
因此,数控车床上非圆曲线加工方法值得研究。
根据实际生产的经验,数控车床上非圆曲线加工的一般方法为:首先,可采用宏程序编程达到加工要求。
应用宏程序编程加工,可以用函数公式来描述工件的轮廓或曲面,这是现代数控系统一个重要的新功能和新方法。
灵活使用宏程序编程,将大大提高编程人员的工作效率。
其次,数控自动编程软件的出现与运用,降低了在加工非曲线类零件的难度。
目前在数控自动编程方面的软件有很多种,如CAXA、Pro/e、UG、CIMATRON、Master CAM 等,尤其以CAXA数控车较为方便。
下面以两例探讨数控车床上非圆曲线加工。
1 零件的模型及加工要求对于如图1所示的曲线轮廓零件,在配置FANUC Oi Mate-TC数控系统的数控车床上车削椭圆,毛坯尺寸为Ф110 mm×115 mm,材料45#钢,椭圆长半轴为40 mm,短半轴为30 mm。
数控编程圆弧计算方法在数控加工中,圆弧是一种常见的加工形式。
为实现圆弧加工,在数控编程中需要计算出圆弧的各种参数。
下面介绍数控编程中圆弧计算的方法。
首先需要明确的是,圆弧主要由起点、终点和圆心三个参数来确定。
在数控编程中,通常采用以下两种方法计算圆弧参数:1. 利用坐标计算圆弧参数在此方法中,圆弧的起点和终点坐标已知,需要通过计算圆心坐标来确定圆弧的参数。
具体操作步骤如下:1) 计算圆心坐标圆心坐标可以通过起点和终点坐标以及圆弧半径来计算。
假设起点坐标为(x1,y1),终点坐标为(x2,y2),圆弧半径为R,则圆心坐标可表示为:xc = (x1+x2)/2 + (y2-y1)/(2R)yc = (y1+y2)/2 + (x1-x2)/(2R)2) 计算圆弧角度圆弧角度可以通过起点、终点和圆心坐标来计算。
假设圆心坐标为(xc,yc),起点坐标为(x1,y1),终点坐标为(x2,y2),则圆弧角度可表示为:θ = atan2(y2-yc,x2-xc) - atan2(y1-yc,x1-xc)其中,atan2函数是求反正切的函数,它可以将坐标点(x,y)转化为极坐标系下的角度。
3) 计算圆弧方向根据圆弧的起点和终点坐标,可以判断出圆弧的方向是顺时针还是逆时针。
2. 利用半径计算圆弧参数在此方法中,圆弧的起点和终点坐标已知,需要通过计算圆弧半径来确定圆弧的参数。
具体操作步骤如下:1) 计算圆弧中心坐标圆弧中心坐标可以通过起点、终点和圆弧半径来计算。
假设起点坐标为(x1,y1),终点坐标为(x2,y2),圆弧半径为R,则圆心坐标可表示为:xc = (x1+x2)/2 + sqrt(R^2 - ((x2-x1)/2)^2)yc = (y1+y2)/2 + sqrt(R^2 - ((y2-y1)/2)^2)2) 计算圆弧角度和方向圆弧角度和方向可以根据起点、终点和圆心坐标来计算,计算方法与上述方法相同。
总之,在数控编程中,圆弧计算是一项非常重要的工作,正确的计算方法可以确保圆弧加工的准确性和效率。
非线性曲线拟合的最小二乘法及其应用非线性曲线拟合的最小二乘法是一种特殊的最小二乘拟合,源于非
线性回归,通常用来拟合复杂的曲线数据。
该方法包括数据解算和参
数拟合两个部分,在参数拟合部分,使用最小二乘法拟合获得最优的
参数,从而完成非线性曲线的拟合。
非线性曲线拟合的最小二乘法被广泛用于数学计算、信号处理、机器
学习以及物理、化学等多个领域的理论计算和实验研究。
1. 数学计算:可用非线性曲线拟合的最小二乘法进行二次函数拟合、
多项式拟合以及高次函数拟合,用于求解常见数学、物理问题中的数
值解及物理参数估算,并进行复杂程序的拟合和分析。
2. 信号处理:可用非线性最小二乘拟合方法对由采样信号产生的数据
进行拟合,从而获得目标函数的近似曲线,从而改善原信号的质量。
3. 机器学习:也可以用非线性曲线拟合的最小二乘法进行模型的训练,常用于拟合复杂的经验曲线或归纳出经验模型参数,从而用于分析、
定制解决复杂问题。
4. 物理、化学:可用该方法拟合物理、化学实验观测数据,获得各种
物理、化学实验内容的量化数据,绘制出准确的实验曲线,或分析出
物质间的关系及变化规律。
数字图像处理算法及原理(七):最小二乘法拟合圆最小二乘法拟合圆最小二乘法(least squares analysis)是一种数学优化技术,它通过最小化误差的平方和找到一组数据的最佳函数匹配。
最小二乘法是用最简的方法求得一些绝对不可知的真值,而令误差平方之和为最小。
最小二乘法通常用于曲线拟合(least squares fitting)。
这里有拟合圆曲线的公式推导过程和 matlab实现。
下面是matlab代码:比如用其他算法(如霍夫、链码、形态学等)得到了某个圆或者近似圆的轮廓,想要将其标准化。
%%此程序用于对二值图像获得的圆形边缘进行圆拟合,计算出圆心坐标及半径%最小二乘法进行曲线拟合function [xc,yc,R] = cirfit(x,y)%x、y为坐标点,都是一组向量。
如x=[x1,x2,x3,...,xn]n=length(x);xx=x.*x;yy=y.*y;xy=x.*y;A=[sum(x) sum(y) n;sum(xy) sum(yy)...sum(y);sum(xx) sum(xy) sum(x)];B=[-sum(xx+yy) ; -sum(xx.*y+yy.*y) ; -sum(xx.*x+xy.*y)];a=A\B;xc = -0.5*a(1);yc = -0.5*a(2);R = sqrt((a(1)^2+a(2)^2)/4-a(3));end%结束后返回的值便是圆心坐标及半径总黄酮生物总黄酮是指黄酮类化合物,是一大类天然产物,广泛存在于植物界,是许多中草药的有效成分。
在自然界中最常见的是黄酮和黄酮醇,其它包括双氢黄(醇)、异黄酮、双黄酮、黄烷醇、查尔酮、橙酮、花色苷及新黄酮类等。
简介近年来,由于自由基生命科学的进展,使具有很强的抗氧化和消除自由基作用的类黄酮受到空前的重视。
类黄酮参与了磷酸与花生四烯酸的代谢、蛋白质的磷酸化、钙离子的转移、自由基的清除、抗氧化活力的增强、氧化还原作用、螯合作用和基因的表达。
数控车床加工非圆曲线宏程序编程技巧机械加工中常有由复杂曲线所构成的非圆曲线(如椭圆曲线、抛物线、双曲线和渐开线等)零件,随着工业产品性能要求的不断提高,非圆曲线零件的作用就日益重要,其加工质量往往成为生产制造的关键。
数控机床的数控系统一般只具有直线插补和圆弧插补功能,非圆曲线形状的工件在数控车削中属于较复杂的零件类别,一般运用拟合法来进行加工。
而此类方法的特点是根据零件图纸的形状误差要求,把曲线用许多小段的直线来代替,根据零件图纸的形状误差,如果要求高,直线的段数就多,虽然可以凭借CAD软件来计算节点的坐标,但是节点太多也导致了加工中的不方便,如果能灵活运用宏程序,则可以方便简捷地进行编程,从而提高加工效率。
一、非圆曲线宏程序的使用步骤(1)选定自变量。
非圆曲线中的X和Z坐标均可以被定义成为自变量,一般情况下会选择变化范围大的一个作为自变量,并且要考虑函数表达式在宏程序中书写的简便,为方便起见,我们事先把与Z 坐标相关的变量设为#100、#101,将X坐标相关的变量设为#200、#201等。
(2)确定自变量起止点的坐标值。
必须要明确该坐标值的坐标系是相对于非圆曲线自身的坐标系,其起点坐标为自变量的初始值,终点坐标为自变量的终止值。
(3)进行函数变换,确定因变量相对于自变量的宏表达式。
(4)确定公式曲线自身坐标系的原点相对于工件原点的代数偏移量(△X和△Z)。
(5)计算工件坐标系下的非圆曲线上各点的X坐标值(#201)时,判别宏变量#200的正负号。
以编程轮廓中的公式曲线自身坐标原点为原点,绘制对应的曲线坐标系的X ′和Z ′坐标轴,以其Z ′坐标为分界线,将轮廓分为正负两种轮廓,编程轮廓在X ′正方向称为正轮廓,编程轮廓在X ′负方向为负轮廓。
如果编程中使用的公式曲线是正轮廓,则在计算工件坐标系下的X坐标值(#201)时,宏变量#200的前面应冠以正号;如公式曲线是负轮廓,则宏变量#200的前面应冠以负号,即#201=±#200+△X 。
非圆曲线的等误差拟合数控节点算法研究作者:陈锐鸿谭兆湛张平来源:《数字技术与应用》2010年第07期[摘要]非圆曲线是数控编程中经常用到的一类复杂轮廓曲线。
对非圆曲线进行数控编程的关键之一在于如何提高数控程序的质量,以避免数控加工程序段过多,对非圆曲线的数学处理,其运算量之大和计算之复杂,是手工编程所不可能胜任。
本论文针对工程实际的需求,通过创新开发一套自主版权的软件来满足这一实际的需求。
[关键词]非圆曲线等误差拟合数值分析[中图分类号]TG659 [文献标识码]A [文章编号]1007-9416(2010)07-0103-02对于给定的任意非圆曲线及允许加工误差,如何用最少的直线段来逼进给定的非圆曲线,以使得数控加工程序段数最少。
用计算机设计出的软件能动态显示等误差法求解节点的过程,生成保存并能够拿到数控机床加工的ISO数码代码。
本论文根据给定的非圆曲线参数方程,用数值分析的方法来实现任意点的切线,用二分法或牛顿迭代法来求得圆与非圆曲线的公切线和直线与非圆曲线的交点,用程序来实现非圆曲线结点的求解。
1 非圆曲线直线逼近方法1.1 等误差直线逼近的节点计算等误差即使所有逼近线段的误差相等,计算步骤如下:1.1.1 确定所有逼近线段的误差的圆方程,即以起点圆心,为半径作圆:将方程写成1.1.2 求与曲线的公切线的斜率:为求,需求解联立方程:1.1.3 求弦长AB的方程。
使AB弦的斜率为,即使平行,则AB方程为:1.1.4 联立曲线方程和弦方程求得B点坐标:1.2 圆弧逼近的节点计算曲线用圆弧逼近有曲率圆法、三点圆法和相切圆法等方法。
三点圆法是通过已知四个节点分别作两个相切的圆,编出两个圆程序段。
这两种方法都应先用直线逼近方法求出各节点,再求出各圆,计算较繁琐。
1.3 等误差法的关键点和难点从等误差法的介绍中我们可以了解到,手工编程将是非常复杂的一个过程,它需要不断重复步骤(2)~(5),其难点就是如何求得“圆与任意的非圆曲线”的公切线PT、以及“直线与任意的非圆曲线”的交点(这就用到数值分析的知识。
非圆曲线数控插补的直接刀具半径补偿算法非圆曲线数控插补的直接刀具半径补偿算法是一种用于数控加工中的
算法,旨在实现对不规则工件的加工。
该算法基于直线和圆弧的插补算法,可以很好地解决圆外轮廓的加工问题。
具体算法步骤如下:
1.首先确定刀具半径,即加工路径到工件表面的距离。
2.根据所给的工件轮廓,将其划分为一系列小段,每段可以是直线或
弧线。
3.对于每一小段,都需要进行直线或弧线插补,并结合切削转向进行
刀具半径补偿。
4.对于直线段,可以根据切线方向计算刀具半径补偿的偏移量,并实
现直线插补。
5.对于弧线段,需要计算插补的圆心,确定圆弧的起始点和终止点,
并计算圆弧半径。
然后,再根据刀具半径和圆弧半径计算刀具半径补偿的
偏移量,并实现弧线插补。
6.最后,将每个小段的插补结果连续起来,就可以得到整个工件的加
工路径。
7.需要注意的是,实现刀具半径补偿时,需要特别考虑转弯处的补偿
问题,以避免出现角度过大或路劲交错的问题。
总之,通过直接刀具半径补偿算法,我们可以实现对非圆曲线工件的
精确加工,提高加工质量和效率。
提高非圆曲线数控铣削加工效率的新方法摘要通过应用变步长直线逼近法,提出一种非圆曲线数控铣削加工变参数优化的方法,加工非圆曲线轮廓铣削时,在满足加工误差δ要求的前提下,删除不必要的离散点,优化刀具的路径和轨迹,提高数控铣削加工效率。
关键词铣削加工;变步长直线逼近法;加工效率1变步长直线逼近法原理变步长直线逼近法是在用直线段逼近非圆曲线时,其逼近误差始终等于加工允许的偏差δ允如图1,而节点间的线段长度λ随曲线曲率半径而变化,因此,变步长直线逼近法是节点数最少的一种计算方法,这对于一些大型和形状复杂的非圆曲线零件的轮廓铣削加工有较大意义。
图1变步长直线逼近法2变步长直线逼近法的实现方法变步长直线逼近法的常见方法有参数筛选法和步长估计法。
下面主要介绍参数筛选法。
该方法的基本思想是先以小参数步长对原曲线进行密集离散,然后再校核各离散段内的实际逼近误差,并将不必要的离散点删除,从而使所剩下的各离散段内的逼近误差近视相等。
设r0,…,rk,rk+1,rk+2,…,rm,rm+1,rn为曲线r=r(t)上经等参数密集所等到的一系列离散点,ε为给定的允许逼近误差,则筛选过程可按如下方法进行。
对于任一初始点rk,从rk+2开始依次选取一离散点(不妨设为rm点)进行下述判别处理:对于rk到rm之间的任一点ri(i=k+1,…,m-1),求取它到直线段rkrm的距离di。
若diε。
此时,连接rk与rm-1两点的线段即为满足允许逼近精度要求的最大线段,因而rm-1点应予以保留,而rk到rm-1之间的所有点均可舍去。
显然,对于整条曲线,只需rm-1将点作为新的起始点并重复上诉过程即可。
设所以3节点的求取方法变步长直线逼近法是以被逼近线段的起点开始求取节点的,在误差允许范围内,改变逼近步长,用C语言编写求取非圆曲线的节点,并对求取的节点进行参数筛选,去除不必要的离散点。
1)求取非圆曲线的节点的部分程序如下:{x1=0.5*(xa+xf);x2=x1-fx1/dfx1;d=fabs(x2-x1);while(d>e&k=xa&&x2=n)printf(″wrong\n″);}2)节点参数筛选的部分程序如下:for(i=0;i<N;i++)printf(″a[%d]=″i);scanf(″%f″,&x[i]);printf(″\n″);sort(x,10);printf(″\n the sorted array:\n″);for(i=0;i<10;i++){printf(″x[%d]=″,i);printf(″%f\n″,x[i])}printf(″\n″);printf(″Input the array\n″);for(i=0;i<N;i++)y[i]=a*x[i]*x[i]+b*x[i]+c;printf(″Please input the(x,y)\n″);for(i=0;i<N;i++)printf(″%f,%f″,x[i],y[i]);printf(″\n″);}4结论在数控机床上加工非圆曲线轮廓,数值计算至关重要,它关系到非圆曲线轮廓是否能进行数控加工。
数控编程圆弧计算方法数控编程圆弧计算方法是数控加工过程中必不可少的一部分,因为圆弧是大多数零部件的核心部分。
数控编程圆弧计算方法可以帮助加工人员快速准确地编写程序,使得机床能够按照预期的路径切削出理想的圆弧形状。
在数控编程中,圆弧通常使用G02和G03指令进行编程。
这两个指令都包含了与圆弧相关的参数,包括圆心坐标(I,J或者R)、终点坐标和起点坐标。
下面我们来详细介绍一下数控编程圆弧计算方法。
1. 圆心坐标的计算在G02和G03指令中,圆心坐标可以使用I,J或者R参数进行描述。
其中,I和J表示圆心相对于起点坐标的偏移量,R表示圆弧半径。
对于I和J参数,计算方法如下:圆心X坐标=起点X坐标+I圆心Y坐标=起点Y坐标+J对于R参数,计算方法为:圆心X坐标=起点X坐标+R*cos(圆弧角度)圆心Y坐标=起点Y坐标+R*sin(圆弧角度)其中,圆弧角度是指圆弧的起点和终点之间的角度差。
2. 圆弧角度的计算圆弧角度是指圆弧的起点和终点之间的角度差。
在数控编程中,圆弧角度通常使用以下公式进行计算:圆弧角度=arctan((终点Y坐标-圆心Y坐标)/(终点X坐标-圆心X坐标))如果终点坐标在圆心左侧,则需要加上180度;如果终点坐标在圆心右侧,则需要加上360度。
3. 终点坐标的计算终点坐标的计算方法与直线的计算方法类似,都是根据起点坐标、圆心坐标和圆弧角度来计算。
具体计算方法如下:终点X坐标=圆心X坐标+圆弧半径*cos(圆弧角度)终点Y坐标=圆心Y坐标+圆弧半径*sin(圆弧角度)通过以上三个步骤,就可以计算出数控编程圆弧所需要的各个参数,从而编写出正确的圆弧切削程序。
在实际应用过程中,需要注意参数计算的准确性和程序的合理性,以保证加工质量和效率。
第33卷第6期2006年11月华北电力大学学报
JournalofNorthChinaElectricPowerUniversi够
Vol_33.No.6NOv一2006
数控加工中非圆曲线的最小二乘圆弧逼近乐英,韩庆瑶,王璋奇(华北电力大学机械工程学院,河北保定071003)摘要:提出了一种利用最小二乘圆弧逼近非圆曲线的方法。首先建立数学模型,逼近圆弧不一定通过曲线上每个给定点,但曲线拟合误差的平方和可达到最小。通过误差比较,删除大量型值点,在满足精度的前提下,可使拟合圆弧段数最少,从而减少CAD系统与cNC系统的数据传送。
关键词:数控加工;非圆曲线;最小二乘圆;逼近中图分类号:TK3l文献标识码:A文章编号:l007.269l(2006)06.0102.03
Leastsquaresapproximationfbrnon-circularcurVeinNCmachining
YUEYing,HANQing-yao,WANGZhang-ql
(Sch001ofMechanicalEngineem岛NonhChinaElectricPower
UniVers吼Baod堍071003,Cllina)
Abstract:Themethodofleastsquaresappro)【imationfornon-circularcurveissuggested.The
mathemalicmodel
isesta_blished.Manydatapointsdeletedthroughe玎orcomparison.Whenprecisionissati8蠡edwi也le弱tsegments,thedata咖nsfen_ed矗DmCADsystemtoeNCsystemisreduced.
Keywords:NCmac量lining;nIon-cj_rcularc_llrve;leastsquares;印pmxiI玎.a_tion
引言目前大多数数控机床只具备直线和圆弧插补功能”。】,无法直接加工出这些非圆曲线,只能在满足允许的编程误差的条件下用若干直线段或圆弧段去逼近。采用直线段逼近非圆曲线,虽然数学处理比较简单,但逼近精度低,加工后表面粗糙度大,零件表面易出现硬点或刀痕。采用圆弧逼近,要确定的参数比较多,计算复杂,但逼近精度高。目前常用的圆弧逼近方法有:曲率圆法、三点圆法和相切圆法口。1。三点圆法和相切圆法的各段圆弧虽通过给定点,但在未给定点处误差较大;在小于容差的条件下,所需圆弧段数较多。利用最小二乘圆弧对非圆曲线进行分段逼近,逼近圆弧不一定通过曲线上每个给定点,但拟合误差的平方和达到最小。通过误差比较,删除大量型值点,在满足精度的前提下,可使拟合圆弧段数最少,从而减少CAD系统与CNC系统的数据传送,有效地提高逼近效率。1最小二乘圆逼近原理
1.1最小二乘圆公式的推导最小二乘法原理图如图1所示。设对曲线进行圆弧逼近的圆的方程为聋一24x十矿一2缈一c=0。(1)
该方程为二次非线性方程,其圆心坐标为(A,B),圆弧半径为R=√42+召2+c。由于二次非线性方程不易作最小二乘拟合,令z《杪,可将方程转
化为一次函数形式,则曲线上第f点对圆弧的误差为J,=DⅣ一D尸=DⅣ一尺=乃一2么x,一2B”一C。(2)
收稿日期:2005-12-12.基金项目:华北电力大学重大预研基金资助项目(93403301);华北电力大学青年教师基金资助项目(93204401)作者简介:乐英(1971一),女,华北电力大学机械学院讲师,博士研究生.
万方数据第6期乐英等:数控加工中非圆曲线的最小二乘圆弧逼近103
y
图l最小二乘法原理图Fig.1Principleofleastsquaresapproximation只要使逼近圆弧对曲线上各点距离的平方和为最小,就能保证该圆弧最逼近曲线。由于
Q=∑簖=∑(Z{一2爿x,一2砂;一c)2,(3)
f=1f-l
由求极值的法则可知,若使Q最小则必有署=器=器_0,(4)前2前2前刈,
L4,
故有鬻=耋2(纠么置一2砂,棚(咄垆。
等:至2(五一2如一2觋一c)(一锄)-00(5)器=耋2匕喇矿2巩棚(-1)=。整理成正规方程:彳∑2薪+B∑2工∞+c∑2置=∑淞f=1f=lf=1f=1
彳∑2x∥,+B∑砺+c∑砂l_∑烨,。(6)
f=lf=lf=1f=1
彳∑2蜀+B∑砂,+c甩=∑磊f=1f=lf=1
在曲线的理论轮廓上取连续的3点,即行=3,通过上述方程组,利用Gauss.Jordan消去法可以求出爿,曰,C这3个常数,由此可以求出圆弧参数R及圆心坐标。但是,用上述方法得到的最小二乘圆的圆弧之间既不连接也不光滑,因而仅用最小二乘圆无法替代曲线,必须将最小二乘圆的圆弧转化成连续的新
圆弧,而且这些新圆弧仍不超出逼近误差范围,经证明这样的圆弧的确存在。1.2分段圆弧之间的连接设爿,曰为最小二乘圆计算时曲线上的起点与
终点,以这两点作为新圆弧的起点与终点,新圆弧的圆心D。在过二乘圆圆心仅且平行珈的直线上,
则么,曰点所在的位置经旋转后可用图2表示。新圆弧的圆心D。,半径足,偏心量P=(物一%)/2。由于偏心存在,可知:n>卢,仅。>∥。。显然,当圆弧彳B从曰点逆时针旋转时,因6c。>局,半径尼的彳召是逐渐离开以D2为中心,以R。=R一巧为半径的圆弧的,因此么B不可能跑到小圆里面。当彳曰从彳点顺时针旋转时,彳B逐渐向内远离大圆弧(半径R+6),不可能跑到大圆弧外面。这就证明了当彳B在半圆范围内时,存在彳B,可连接环形逼近误差带内任意两点,且该圆弧仍在容差带范围内。这样就以该圆弧作为逼近曲线的新圆弧。
//。—、\磨
.衬
r卜、拭嬲、。nl奠dQ。D2R
图2旋转后新圆弧的位置图Fig.2Locationofnewarcafterrotation
最小二乘圆圆弧均以理论曲线上的点作为起点和终点,这样就保证了各圆弧之间的连续性。设新圆弧圆心坐标为D。@,y),最小二乘圆圆心坐标为D2(x。,y。),贝0有
;i再=√(托一%)2+咄一肋)2。最小二乘圆圆心离线段的距离赤帮。
Vl“(7)
肛√[孕卜。(8)
{二三蓑。∽
万方数据华北电力大学学报2006’年为了减少圆弧段的数目,可以在保证逼近精度的前提下,用4个、5个或更多节点来确定圆弧参数。一般先在曲线上取3个点,用这3个点求出圆弧的逼近误差,如果不超过规定的允差,则继续取点计算,如取第4个点,用4点求出新的二乘圆,并求其最大逼近误差,如果还是不超过规定的允差,则继续计算直到误差达到允差为止,取刚刚超
过允差的上一点的圆作为最后得到的二乘圆。然后以上一段圆弧的终点作为下一段圆弧的起点求下一段曲线的二乘圆,直到将曲线逼近完毕。
2非圆曲线的逼近计算步骤首先确定编程允许的误差,一般取零件公差的l/5~l/lo【8叫。然后把非圆曲线),=.厂(x)按某一规律如等弧长△S或按等步长△x选取”+1个点‰枷),(x,∥。),…,阮加);把这,z+1个点分为若干组,并以朋个点的坐标为一组,可按以下步骤利用最小二乘圆对其进行拟合。
图3计算流程图Fig.3Flowchartofprogram
3实例分析
某阿基米德螺旋线方程为p=40十10曰,兀,曲线插补的允许误差为e=0.005mm,以下述5点为例进行计算。极角臼分别取{0。,1。,2。,3。,4。),则p={40.0000,40.0556,40.111l,40.1667,40.2222},利用上述方法可求得最小二乘圆方程为
矿+.矿一0.4188z一6.334吵一l
583.248020。
将点只,尸。,尸:,尸,,P。的坐标值代入上式,即可得出实轮廓曲线与理论曲线的误差分别为:函=O.000O,
反=O.0024,磊=一0.000077,舀=一0.0024,坑=0.0000,得玩=√拼+援+援+援=o.0034≤o.005(mm),与e比
较接近。若取6点作最小二乘圆弧逼近则有可能超差,因此可以认为第一段圆弧结束,该段圆弧的圆心坐标为:x=o.209,y=3.167。半径:R=√P秒+c=
√o.2092+3.1672+l583.248=39.916。用类似的方法接下去可进行第二段圆弧逼近运算,直至逼近曲线的终点为止。
4结论(1)用上述最小二乘圆拟合法,近似圆弧不一定通过每个给定点,但与每个给定点之间绝对误差的平方和为最小。(2)提出的方法对非圆曲线有较高的逼近精度,计算步距越小,所得圆弧对曲线越吻合,计算结果越可靠,各段圆弧间的连接也越光滑。(3)应用该方法,通过误差比较,删除了大量型值点,因而逼近圆弧段数少,使编程工作量明显减少,从而减少CAD系统与CNC系统的数据传送。
参考文献:[1】施法中.计算机辅助几何设计与非均匀有理B样条[M】.北京:北京航空航天大学出版社,1994.[2】陈蔚芳,王宏涛.机床数控技术及应用D川.北京:科学出版社,2005.50.60.[3】何玉安.数控技术及其应用【M】.北京:机械工业出版社,2004.48-54.【4】岳秋琴,蒋幸幸.数控编程中圆弧逼近非圆曲线的数据处理[J】.机械研究与应用,2003,16(3):56-57.[5】王可,付玉升,陈欣,等.一种新型数控逼近曲线的理论与应用研究[J】.中国机械工程,2003,14(14):1230-1231.
[6】范云霄,马静敏,沈友徽.非圆曲线的等误差圆弧逼近法及刀具轨迹仿真[J].煤矿机械,2004(12):77-78.[7】韩庆瑶,贾桂红,黄燕梅.三次M瓜BS曲线轮廓的数控加工编程处理[J】.煤矿机械,2005,(4):99·101.[8】RennerG,WeiBVExact孤dapproximtecomputationofB-splinecuⅣesonsurfaces[J】.Computer_AidedDesign,2004,(36):351—362.
【9】田坤.数控机床与编程【M】.武汉:华中科技大学出版社,2000.79-87.(责任编辑:马坤英)
万方数据