直线度误差 matlab,基于MATLAB的直线度误差数据处理

41528d3028836879cd698677c3999917.gif基于MATLAB的直线度误差数据处理

基于MATLAB的直线度误差数据处理 《机电技术)2oo5年第2期 基于MATLAB的直线度误差数据处理 林志熙周景亮 ({岳建工程学院机电及自动化工程系福州350014) 摘要:本文采用最:b---乘法来建立数学模型评定直线度误差,利用数学软件MATLAB给出了这种方法的自动求法. 节省大量的数据处理时间,且数据更加准确,并给出仿真测试. 关键词:直线度误差;最:b--.乘法;MATLAB;数据处理 中图分类号:TP312文献标识码:A文章编号:1672—4801(2005)02—045—03 在几何量测量中,经常对机床导轨,轴类零件进行直线度误差的测量.用于直线度误差测量的方法很多. 常用的有:光隙法,打表法和节距法.对于较长的零件(如:机床导轨)通常采用节距法测量.节距法测量 常用的仪器有水平仪和自准直仪.它们都属于高精度的测量装置.以往,多采用手工作图法对测量数据进行 处理,所需时间较长,精度不高,较为繁琐.因此,本文介绍基于MATLAB的数据处理程序,程序简单可靠, 处理时间短,计算精度大大提高.并给出仿真测试. 1数据处理原理 直线度误差是指实际被测直线对其理想直线的变动量,理想直线的位置应符合最小条件.最小条件是指 实际被测要素对其理想直线的最大变动量为最小.在数学上,最小二乘法最容易实现最小条件.本方法的数 据处理原理即采用最小二乘法. 设最小二乘中线为:Y=Ax+B 点(,yk)到线上的点(,+B)的距离=IAx.+B一I.需要对距离的平方和 NN E=∑f+一=∑最小化.而E取最小值的必要条件是:k=lk=l EA=0EB=0 因此,可得求解A,B的正规方程: ∑k=l ∑xkykk=l ∑k=l 最小二乘中线方程确定后,即可找出相对最小二乘中线的最高点△.和最低点△厶f △max{Y—A+);△min{】,一A+) 它们的差即为直线度误差△厶 △△厶£{一△厶 2计算机数据处理程序框图 计算机数据处理程序框图见图1所示. 3MATLAB程序设计 MATLAB是一种高度集成化的科学计算语言,是集数值计算和图形处理等功能于厶体的工程计算应用软 件.它不仅可以处理代数问题和数值分析问题,而且还具有强大的图形处理及仿真模拟等功能.MA’I’I.AB~ 成为公认的优秀的应用软件之一. 45 = 1●●__]A —L]●●●●●●●●●j ∑ 《机电技术》2005年第2期 因此,利用MATI_AB语言进行直线度误差运算和作图都很方便,尤其是MATLAB具有最小二乘法直线拟 合功能,可以非常简便地求出最小二乘中线,编写程序很简单.只需将原始测量数据输入计算机,就可直接 求出直线度误差,绘出误差评定图形,节省大量的数据处理时间,且数据更加准确. 求直线度误差△£的函数zxd: functionL=zxd(x,ys,yO n=length(x); %ysx,yfx,ym一顺测相对值,返测相对值,顺,返测的平均值 f0rk=l:n一1 ysx(k)=ys(k)-ys(1); y£K(k)~f(k)-yf(1); ymk)=(ysx(1c)+y(k))/2; end %求累积值 y(1)=0; fork=1:n-1 y(1c+1)=ym(1c)+y(1c); end p=pol~,Y,1); %求最小二乘中线系数 ~---pO);b=p(2); %绘出最小二乘中线及采样点 pl0t(x,y,O);holdon;plot(x,y);xlabel(‘测点序号x’);ylabel(‘累积值y’); Y=ax+b;pbt~, %求相对最小二乘中线的最高点和最低点 f0rk=l:n l(1c)=y(1c)一(a(1()+b) end ll=max(1);12=rain(1); %求直线度误差 L=ll——12; %绘出相对最小二乘中线的最高点和最低点 Y=ax+b+~;pbt(x,Y,’r’); Y=ax+b+ll;plot(x,Y,’r’) 4直线度误差测量实验 读入顺测值,读入返测值 1上r 求相对值 求顺,返测平均值 求累计值 求A,B 计算,x1△ 绘出仿真图形 显示结果 图1计算机数据处理程序框图 设用分度值为0.01mndm的合象水平仪测量长度为1400mm的导轨的直线度误差.所采用的桥板跨距为 200mm,将导轨分成七段进行测量.测量数据见表1. 在命令窗口输入: %,r-测点序号 x--[o1234567]; 《机电技术2005年第2期 %ys,yf-一顺测值,返测值 ys=[26.524.528.530282725]; yf--[26.525.528.329.627.626825]; L=zxd(x,ys,y0; %C一当量系数 C=rO.01/1000)’200; %d一直线度误差 d=L*C 输出结果: d=0.00749285714286 直线度误差为0.00749mm,误差评定图见图2所示. 表1直线度误差测量数据 测点序号及测量间隔桥板位 置 O~11~22~33~44~55~66~7 示值顺测值26.524.528.530282725 (格)返测值26.525.528.329.627.626.825 值得一提的是,用水平仪测量直线度时, 原始采样数据的单位用水平仪的格数;而用自 准直仪时,以角度值为单位.因此为解决单位 换算引入当量系数C.当量系数C与所用水平 仪或自准直仪的刻度值和跨距有关.例如,本 题中用刻度值为0.01mm/m的合象水平仪,桥 板跨距为200mill时,当量系数C=(O.01/1000) ×200---0.002mnl;若用刻度值为1”的自准直仪, 桥板跨距为100nlnl时,当量系数C= (0.005/1000)×100=0.0005mm. 5结束语 / r / /// — _, / / //… . 一 ,,//一一 ,一,,,’, j //一一 , — // 01234567 测点序号x 图2直线度误差评定图 本文采用最小二乘法来建立数学模型评定直线度误差,利用数学软件MATLAB给出这种方法的自动 求法.在教学和生产的实际使用证明,这种方法简单方便,非常实用. 参考文献 【l】【美]JohnHMa~ews,KurtisDFink.数值方法(MATLAB版)【M】.北京:电子工业出版社,2002. 【2]郝红伟.MATLAB6实例教程【.北京:中国电力出版社,2001. 【3】甘永立.几何公差与检测实验指导书【M】.上海:上海科学技术出版社,2002. 作者简介:林志熙(1971年),女,福建工程学院机电与机械自动化系讲师,主要从事技术测量,机械加工技术的教学 和科研工作. 47

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值