基于LabVIEW的圆度误差算法实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于LabVIEW的圆度误差算法实现
冉子龙
【摘要】文中对圆度误差评定算法进行了研究,为最小区域圆法、最大内切圆法设计了一种基于LabVIEW的迭代求优法,该算法以最小二乘圆圆心作为初始圆心,将
中心最佳移动法与交叉弦法及三角形法则相结合,以得到最佳的理想圆心,并把这种
算法用LabVIEW实现,提高了测试的精度和速度.
【期刊名称】《电子科技》
【年(卷),期】2013(026)007
【总页数】3页(P11-13)
【关键词】圆度误差;LabVIEW;最小区域圆法;最大内切圆法
【作者】冉子龙
【作者单位】合肥工业大学仪器科学与光电工程学院,安徽合肥230009
【正文语种】中文
【中图分类】TP301.6
圆度仪是用于测量圆度误差,而圆度误差的评定算法有多种,每种算法又可由不同的方法实现,不同的算法和方法均有不同的精度和速度。

本文采用一种迭代求优法,并由LabVIEW实现,该算法以最小二乘圆的圆心作为初始圆心,将交叉弦法和中心最佳移动法相融合,通过计算得到最小移动步长和最佳移动方向,不断移动圆心以达到更精确、快速地逼近理想圆心的目的。

1 最小区域圆法圆度误差判断准则
根据国家标准GB1183-75,圆度误差是包容同一横截面轮廓并且半径之差为最小的两个同心圆间的距离[1]。

最小区域圆法定义:得出两个同心圆,要完全包容工件轮廓,并且这两个同心圆具有最小的半径差。

交叉弦法原理:以被测轮廓上两交
叉弦的各自垂直平分线的交点为圆心,并通过各自弦的端点做两个同心圆,然后用轮廓上的另一条弦替换二弦之一,使同心圆圆心随之变动,直至同心圆包容整个轮廓。

根据圆度误差和最小区域圆法的定义以及交叉弦法原理可得最小区域圆法判断准则:两个同心的最大、最小包容圆与显示轮廓相接处至少有相间4点。

并且最大包容
圆上两接触点的连线与最小包容圆上两接触点的连线相交叉,又称交叉准则。

而圆度误差为这两同心圆半径之差[2]。

2 最小区域圆法算法
假设实际ΔRmaxi=(Rmax-Ri)/(1-cosαi)轮廓如图1 所示,(i=1,2,3,…,
n;i≠max,)有 n个点测量点,Pi(i=1,2,3,4,…,n),初始圆心为 O(a,b),先计算出实际轮廓上各点到O点的距离Ri,得出Rmax和Rmin,并以O为圆心,Rmax和Rmin为半径作两同心圆。

根据最小区域要求,只有当两同心圆与轮廓至少有内外相间的4点接触,即两最小值与两最大值点相间分布,连线交叉,且Rmax-Rmin为最小时,圆度误差为最小。

根据上述理论,可建立目标函数
图1 实际轮廓
其中,O0(a0,b0)为移动后的圆心;圆度误差=F(a0,b0)min=F(a',b'),因此,
确定理想圆心 O'(a',b')是得到圆度误差的关键。

2.1 计算最小二乘圆的圆心
通过最小二乘圆法计算得出最小二乘圆的圆心作为本算法的初始圆心。

用最小二乘
圆的圆心作为初始圆心,是因为它比测量圆心更接近理想圆心[3]。

2.2 圆心移动方向的确定
由于最小区域圆法要求Rmax值尽可能小,Rmin尽可能大,很显然,使圆心O 向最大距离点矢量方向即OP1方向移动可以减小Rmax值,而向最小距离点矢量方向即OP2反方向移动可以增大Rmin值。

所以圆心最佳移动方向为 OP1和OP'2,这里设定先 OP1,后OP'2[4-5]。

2.3 移动步长的确定
步骤1 让圆心先向OP1方向移动ΔRmax,设移动了,各点到新圆心的距离变化了
式中,cosαi为圆心到各点的矢量与OP1的夹角余弦值,其值可由式(3)计算
要让移动后的Ri值等于Rmax值,需要移动值,此值可由式(4)计算
在计算出的值中选出最小值作为最佳移动步长ΔM,并得出新的圆心
式中,αmax为OP1与X轴的夹角;a、b为初始圆心的横坐标与纵坐标;a0、b0为新圆心的横坐标与纵坐标。

步骤2 再让圆心往OP2反方向移动。

注意此时的OP2为移动圆心后重新计算出来的Rmin的矢量方向。

相似的,移动量可以写成
式中,cosαi为Ri与OP2的夹角余弦值,其值由式(7)得到
由于 Rmin-Ri<0,所以ΔRmini<0,用其中的最大值(即绝对值最小)作为最佳移
动步长ΔM,并用式(4)得出新的圆心坐标。

2.4 判断并算出圆度误差
用最后的圆心算出两最大值与最小值,并判断两最大值的连线和两最小值的连线是否相交于线段内。

若不在,则重复2.3节中的步骤。

若在,则计算出两线段的垂直平分线的交点是否为理想圆心,是的话得出圆度误差,F=Rmax-Rmin;若不是,
用所得的交点作为圆心重复2.3节中的步骤并进入2.4中判断。

最小区域圆法程序流程如图2所示,最小区域圆法的程序流程比较复杂,不仅要
求4个点,且还有两个判断、两个循环。

相比最小区域圆法,最大内切圆法程序
流程,则较为简单,只需求3个最小值点,且只有一个循环,如图3 所示[6]。

图2 最小区域圆法
图3 最大内切圆法
3 最小区域圆法LabVIEW实现
用LabVIEW实现上述流程的优点有:LabVIEW前面板的虚拟仪器控件直观、易操作,可以方便地控制数据采集及圆度误差评定等过程。

图4为用LabVIEW主程序进行测试时的LabVIEW前面板,为使实际轮廓清晰,降低了采样点数,图中曲线3为工件的实际轮廓,曲线1为最大包容圆,曲线2为最小包容圆[7-8]。

图4 最小区域圆法运行结果
4 最大内切圆法圆度误差判断准则
最大内切圆法判别准则有两个:其一为3点法,即内切圆至少与被测圆有3点接触,且这3点构成锐角或直角三角形;其二为两点法,即内切圆与被测圆仅有二点接触,且圆心在这两点形成的直线上,然后找出此内切圆外部的另一同心圆,使得两同心圆恰好能够包容轮廓,此时两同心圆半径差即为圆度误差[2]。

此准则来源于圆度的定义、最大内切圆法定义以及锐(直)角三角形准则。

5 最大内切圆法算法
最大内切圆法与最小区域圆法基本一致,不同的是最大内切圆法只需要求3个最小值即可。

经步骤2.1后进入步骤2.3中第二步,得出两最小值。

判断两最小值的连线是否为理想圆的直径,如果是,则评定圆度误差。

若不是,则寻找第3个最小值点,此时可以肯定圆心在这两个最小值点连线的垂直平分线上。

因此,圆心沿这条垂直平分线、远离两极值点的方向移动,经验证,初始步长设定为step=(Rm-
∑Ri/n)×0.618,以后为step0=step×0.6182。

每移动一次,算出极小值点,判断此点和已得到的两个最小值点所组成的三角形是否为锐角三角形,若不是,则继续移动;若是,则此点为第3个最小值点,即对圆度误差进行评定。

6 结束语
算法经LabVIEW开发平台测试,得到了预期的结果。

在对同一工件进行测量所得两种方法的圆度误差结果中,发现最小区域圆法的圆度误差数值低于最大内切圆法的圆度误差数值,与理论相符,并且整个测验过程精确、快速,效果良好。

参考文献
[1]强锡富.电动量仪[M].北京:机械工业出版社,1982.
[2]曹麟详,王甲丙.圆度检测技术[M].北京:国防工业出版社,1998.
[3]文晓希.圆度仪维修改造时的几点做法[M].计量技术,2002(7):57-59. [4]宋文华.我国仪器仪表水平亟待提高[N].中国机电日报,2002-02-12(3). [5]唐宇慧.圆度误差检测的现状与展望[J].机床与液压,2004(11):6-8. [6]上海上量精密量仪有限公司,YD200A圆度仪使用说明[M].上海:上海上量精密量仪有限公司,1996.
[7]雷振山.LabVIEW7 Express实用技术教程[M].北京:中国铁道出版社,2004.
[8]吴明华.基于虚拟仪器的自动测试控制系统设计与研究[D].南京:南京理工
大学,2004.。

相关文档
最新文档