基于接触式轮廓仪测量数据的工件形状自动标注方法
摘 要
接触式轮廓仪在测量工件或产品的轮廓时,由于存在探针沾污、扫描位置不准等问题,会对工件形状的准确标注带来影响,本文基于接触式轮廓仪的测量数据,研究工件形状的自动标志方法。
针对问题一,本文首先采用一种基于一阶二阶导数的模式识别方法,以此作为理论基础区分水平线、斜线和圆。针对测试数据中的噪声问题,采用一种基于滑动平均的去噪方法。并比较了有重叠滑动窗口和无重叠滑动窗口的去噪效果。通过以上方法可以确定不同曲线段的形状,然后采用一种基于直线和圆的方程的拟合方法,对不同曲线段数据进行拟合,求得各个分段函数方程。最后计算得出直线夹角、半径等参数。与原始数据图形对比,基本吻合。
针对问题二,本文采用一种基于直线旋转量的图形校正方法。水平平移不改变直线的斜率,工件的倾斜旋转的角度就是直线夹角的旋转量。首先采用问题一的方法识别出直线的图形区域,再计算倾斜后的直线旋转量,并基于此进行图形校正。校正后的数据与问题一原始数据对比误差较小。
针对问题三,本文采用一种基于多组测量数据复原完整轮廓的方法。首先采用问题一方法识别出每组数据不同曲线段的形状。然后基于问题二水平直线的旋转量对各组数据进行校正,最后综合各组数据的公共部分和左右两侧的最大冗余数据进行拼接,复原完整轮廓。
针对问题四,本文采用一种基于多组局部数据修正全局图像的方法。首先采用问题一方法识别出每组局部数据不同曲线段的形状。然后通过拟合计算不同曲线段形状的方程和参数,最后等效替代全局图形中对应部分的方程和参数,实现基于局部数据对全局图形的修正。
模型的评价。以上工件自动标注方法,可以较好的替代人工计算,很大程度的解决了接触式轮廓仪工作中存在的问题,标注误差较小。
关键词:数据处理 拟合分析 去噪 线性回归 最小二乘法
1 问题重述
1.1 问题背景:
接触式轮廓仪的工作原理是,探针接触到被测工件表面并匀速滑行,传感器感受到被测表面的几何变化,在X和Z方向分别采样,并转换成电信号。
在理想状况下,轮廓曲线是光滑的,但由于接触式轮廓仪存在探针玷污、探针缺陷、扫描位置不准等问题,检测到的轮廓曲线呈现出粗糙不平的情况。
1.2具体问题:
假设被测工件的轮廓线是由直线和圆弧构成的平面曲线,建立数学模型,根据附件所提供的轮廓仪测量数据,研究下列问题:
1.2.1 问题一:
根据工件1在水平状态下的测量数据,标注出轮廓线的槽口宽度 (如x₁,x₃等)、圆弧半径(如R₁,R₂等) 、圆心之间的距离(如c₁,c₂等) 、圆弧的长度、水平线段的长度(如x₂,x₄等)、斜线线段的长度、斜线与水平线之间的夹角(如∠1,∠2等) 和人字形线的高度 (z₁) 。
1.2.2问题二:
计算工件1在测量时的倾斜角度,并作水平校正,比较理想下的水平测量与倾斜测量状态数据之间的差异。
1.2.2问题三:
根据工件2的10次测量数据完成:(1) 每次测量工件2的倾斜角度;(2) 标注出工件2轮廓线的各项参数值; (3) 画出工件2的完整轮廓线。
1.2.2问题四:
利用工件2关于圆和角的9次局部测量数据,修正问题3的结论,并对工件的完整轮廓线作进一步修正。
2 问题分析
针对问题一,根据水平放置的工件1的测量数据,计算工件自身轮廓线的参数,已知轮廓线是由直线和圆构成,那么问题的关键是我们用什么指标和区分圆和直线,注意到直线的二阶导数为零,而圆的二阶导数不为零,用二阶导数区分
圆和直线,而斜线和水平线可以用一阶导数来区分。利用区分好的数据进行圆和直线的拟合从而得到圆和直线的函数表示,再得到整个轮廓线的分段函数表达,进而可以得到各种参数。
针对问题二,已知倾斜放置工件1的测量数据和水平放置工件1的测量数据,计算倾斜角度和水平平移量。首先利用前面第一问的方法区分出来直线和圆,把水平测量和倾斜测量的多个圆的位置做对比,得到多个圆的平移量,取平均得到整体轮廓线的平移量; 注意到工件1的水平测量数据中有很多的水平线,倾斜之后变成斜线,计算多条斜线的倾斜角取平均得到工件1的倾斜角度; 最后利用倾斜角度和平移量通过矩阵相乘把倾斜放置的工件2的测量数据计算得到水平放置的测量数据,然后利用问题1的计算参数方法计算得到工件1水平校正后轮廓线的参数,最后和工件1真实水平测量的标注参数进行对比。
针对问题三,题目中给出对工件2的10次不同的测量数据,首先计算每次测量工件2的倾斜角度,我们假设工件2中本身有很多的水平线,仍然使用问题一的方法区分出直线和圆,那么斜率差不多相等的直线段比较多,然后倾斜角的平均,就为此次测量的倾斜角度; 其次,因为多次测量位置不同,每次测量的整个工件2的部分,所以我们把每次的测量数据乘以旋转矩阵水平校正后,通过对比,得到整体工件2水平校正后的数据,然后利用问题1 的方法标注参数; 最后,通过水平校正后的数据画出工件2的完整的轮廓线。
针对问题四,附件中给出了9次角和圆的9次局部测量数据,修正工件2的参数,并给出修正后的完整轮廓线。
3 模型假设
1) 假设被测工件的轮廓线是由直线和圆弧构成的平面曲线;
2) 假设接触式轮廓仪检测准确没有误差;
3) 假设工件检测的轮廓线无外界干扰。
4 符号说明
符号 |
说明 |
xi |
第 i 个测量点在x轴上的坐标 |
zi |
第 i 个测量点距离水平线的高度 |
ki |
第i条直线的斜率 |
ki' |
旋转后的第i条直线的斜率 |
b |
直线在 z轴上的截距 |
R |
圆弧的半径 |
f₁(x) |
工件1轮廓线函数 |
f₂(x) |
工件2轮廓线函数 |
5 模型建立与求解
5.1问题一模型建立和求解
根据问题限定条件,工件只包含水平直线、斜线、圆三种图形。我们要识别这三种模式,需要讨论三种图形数学上的本质区别是什么,为此本文首先提出以下模型:
5.1.1基于一阶二阶导数的模式识别方法:
建立x,z直角坐标系,设x轴的方向为水平方向,z轴的方向为垂直方向。设测量水平样本数据为( xizi,i=1⋯n,n为数据个数,设工件1轮廓线的函数为f₁(x), 其中. f₁xᵢ=zᵢ;
若轮廓线为水平直线,则满足下列条件:
f₁'xᵢ=0 (1-1)
若轮廓线为斜线:则满足以下条件:
f₁'xᵢ=C (1-2)
若轮廓线为圆,则满足以下条件
f₁''xᵢ≠0 (1-3)
其中, f1'xi=zi+1-zixi+1-xi,f1''xi=f'xi+1-f1xixi+1-xi
综合以上分析,本文提出可以基于一阶导数和二阶导数是否为0来综合判断该曲线的图形模式。如下图所示,为问题一数据的一阶导数和二阶导数图形:
从以上图形可以看出,原图形直线部分对应的一阶导数并不为0,这是因为测量数据中包含了很多噪声。实际应用上理论方法还需要解决去噪问题。为此本文提出以下模型:
5.1.2基于滑动平均的去噪方法
针对离散数据的一阶导数为
f1'xi=zi+1-zixi+1-xi (1-4)
离散数据的噪声会导致以上公式的一阶导数剧烈波动,为消除噪声影响,本文提出基于滑动窗口内求平均的去噪方法,根据滑动窗口之间是否重叠,本文对比研究了有重叠区域的滑动窗口法和无重叠区域的滑动窗口法。
(1) 有重叠区域的滑动窗口法
选择滑动窗口长度为N,起始横坐标x₁,终止横坐标为. Xi+N。
有重叠区域的滑动窗口法,第一个窗口覆盖x₁到xN,第二个窗口覆盖x₂到 xN+1,