一种基于MATLAB的圆度评定方法

合集下载

matlab 连通域 圆形度

matlab 连通域 圆形度

MATLAB中的连通域分析和圆形度计算连通域分析和圆形度计算是图像处理中常用的方法,用于分析图像中的对象形状和结构。

在MATLAB中,我们可以利用一些内置的函数和工具进行连通域分析和圆形度计算。

本文将介绍如何使用MATLAB进行连通域分析和圆形度计算,并探讨其在图像处理中的应用。

一、连通域分析1.1 什么是连通域?连通域是指图像中具有相同像素值且彼此相连的像素集合。

在图像处理中,连通域分析可以用于识别和分割出图像中的不同对象或区域。

1.2 MATLAB中的连通域分析在MATLAB中,我们可以使用bwlabel函数来进行连通域分析。

该函数可以将输入的二值图像中的连通域进行标记,并返回标记后的图像和连通域的数量。

1.3 连通域分析的应用连通域分析常被应用于目标检测、图像分割和形状分析等领域。

通过连通域分析,我们可以识别和提取图像中的不同对象,进而对其进行进一步的分析和处理。

二、圆形度计算2.1 什么是圆形度?圆形度是指一个对象或区域与圆的相似程度,通常用于描述对象的整体形状。

圆形度的计算可以帮助我们评估和比较不同对象的形状特征。

2.2 MATLAB中的圆形度计算在MATLAB中,我们可以使用regionprops函数来计算图像中对象的圆形度。

该函数可以提取对象的各种形状特征,包括面积、周长、轮廓等,并通过这些特征来计算对象的圆形度。

2.3 圆形度计算的应用圆形度计算常被应用于医学影像分析、工程结构分析和生物形态学研究等领域。

通过计算对象的圆形度,我们可以量化其形状特征,并据此进行对象的分类、识别和比较。

三、MATLAB实例分析为了更直观地了解MATLAB中连通域分析和圆形度计算的应用,我们将结合一个实际的图像示例进行分析。

3.1 实验目的本实验旨在利用MATLAB对图像中的不同对象进行连通域分析和圆形度计算,并探讨其在图像处理中的应用。

3.2 实验步骤(1)读取图像并进行预处理;(2)利用bwlabel函数进行连通域分析,并显示标记后的图像;(3)利用regionprops函数计算对象的圆形度,并显示计算结果;(4)分析实验结果并进行讨论。

一种新的同轴度测量方法和误差分析

一种新的同轴度测量方法和误差分析
(4)根据被测部位各横截面圆心坐标值分别向 xoy平面做投影,然后求其在xoy平面的圆度误差, 其求解方法网③;褥出其圆心坐标;
(5)在xoy平面内求出题凰心的距离极为同轴 度误差值;
设(搿“,Y¨zd)为三坐标机所采集的点,其中i 表示所测的截面数,.f秀农一个截匿所溅的点数。 分别在基准部位弱被测部位圆柱上各取25个截溪, 每个截露均匀取50个点。建立数学模型。设o’为
根据GB/T1182—1996中同轴度误差的定义,同
牧藕13麓:20凹每9月
轴度足指被溅圆柱磷轴线对基准线不共辚秘程度。 根据定义最小包容区的概念,用与基准轴线同轴的圆 柱面来包容被测圆楗丽(孔)的实际轴线,弦被测长度 游,最小包容圆柱面的直径厂就是同轴度浚差。其公 差带为与蕊准线同轴的直径等于厂的圆柱体。目前 同轴度误蒺检测的方法有回转轴线法、凇直线法、坐 标法、顶尖法、矿型架法、模拟法、量规梭验法等。
for brings and gives the advanced methods.

Keywords:Roundness error,CMM,MATLAB,Least-squares procedure
l 引言
机械零件的轴线直线度和同轴度误差对机械产 晶的质量有穰大影响。餐是,传统的测量方法只麓 得到轴线直线度和同轴魔误差的近似值,均不能令 人满意。为了得到轴线豢线度和网轴度误差的准确 值,必须建立符合这两项误差定义的数学模裂并开 发相应的计算机数据处瑷软件。网此本文建立的数 学模型对保涯与提高机械产品的赝量具有重要意 义。
胁:是目标函数;
zO:初始解; options:设置优化选项参数;
万方数据
工具技’术
foal:返回目标函数在最优解z点的函数值; exitflag:返回算法终止标志; output:返霞优纯算法僚怠的一个数据结搀; grad:解x处丘n晒数的梯度值返回到grad中。 3.2同轴度误差评定 同轴度公差是用以控制被测轴线与基准轴线的 丽轴要求。同轴度误差值爨泼与基准轴线同轴的理 想轴线为轴线作包客被测实际轴线冀直径为最小的 圆柱灏的直径。目前工业同轴度误差评定是把同轴 度测量在三坐标机上转化为点到直线的距离测量。 建立起同轴度测量理论,即测两个圆柱的同轴度时, 基准圆柱的轴线力公共轴线,把勇一个图柱分解戏 多截覆的圆。求圆心到基准蚋的距离其中最大距离 的2倍即为所求圆柱的同轴度。因为基准轴的确定 本身存在误差,所以这种方法评定的同轴度误差较 大。 率文把同轴度的误差评定转化势圆度误差的评 定,拳J磊MATLAB强太豹计算熊力建立数学模型详 定同轴度误差。 对三坐标机采集的数据的处理步骤如下: (1)首先把被测零件平放在三坐标机的测量平 面上,使其轴线与:平行,利用坐标梳对基准部位耩 被测部位各截取樱丽数量的平蘧囡; (2)根据对基准部位和被测郄位测得的坐标值, 利用MATLAB最优函数求出各横截面圆的最小二乘 圆圆心坐标13’; (3)檄据基准部位各横截面圆心坐标值分剐晦 xoy平面傲投影,然后求其在xoy平嚣的圆度误差, 其求解方法与求鳃任意圆度误差的最小区域值的方. 法相同;得出其圆心坐标;

VB和Matlab混合编程在圆度误差评定中的应用研究

VB和Matlab混合编程在圆度误差评定中的应用研究

VB和Matlab混合编程在圆度误差评定中的应用研究曾浩然;张琳娜;赵凤霞【摘要】基于VB和Matlab混合编程研究了圆度误差的评定,分析了同时使用COM组件和matrixVB进行混合编程对圆度误差进行评定,并与单独使用一种软件的评定效率与结果进行了对比分析.结果表明,使用VB和Matlab混合编程大大提升了圆度误差评定的效率,评定结果更加可靠.该方法在科研工作和工程实际中有着广泛的应用前景和巨大的商业价值.%This paper studies the assessment of roundness error based on VB and Matlab mixed programming, analyzes using both COM compoents and matrixVB mixed programming error on the assessment of roundness, and then compares with the assessment result using a software alone. The results show that mixed programming using VB and Matlab greatly enhances the efficiency of roundness, while the assessment results are more reliable, and it also has a wide application prospect and great commercial value in scientific research and engineering.【期刊名称】《制造技术与机床》【年(卷),期】2011(000)008【总页数】4页(P160-163)【关键词】Matlab;VB;COM组件;混合编程;圆度误差【作者】曾浩然;张琳娜;赵凤霞【作者单位】郑州大学机械工程学院,河南郑州450001;郑州大学机械工程学院,河南郑州450001;郑州大学机械工程学院,河南郑州450001【正文语种】中文【中图分类】TG801;TH1241 概述圆度误差是控制回转体零件精度的一个重要指标,运用各种测量仪器对圆度误差进行测量时,不仅要运算大量的数据,而且需要将图形实时地显示出来,单纯采用一种编程语言很难满足要求。

matlab圆半径测量代码 概述及解释说明

matlab圆半径测量代码 概述及解释说明

matlab圆半径测量代码概述及解释说明1. 引言1.1 概述在科学研究和工程应用中,圆的半径测量是一个重要且常见的问题。

精确地测量圆的半径可以为我们提供关于形状、面积和体积等参数的信息,对于实现精确的计算和设计具有重要作用。

然而,由于传统手动测量方法存在一定的误差和不便之处,因此开发出自动化的圆半径测量代码成为许多研究者关注的课题。

本文旨在介绍以Matlab为工具开发的圆半径测量代码,包括其原理、实现方法、实验设计和结果分析等。

通过深入探讨与解释这些方面内容,读者将能够全面了解该代码的基本功能及其应用潜力。

1.2 文章结构本文共分为五个主要部分,每部分围绕特定主题展开。

首先是引言部分,在这一部分中将对文章进行简要介绍,并阐明撰写本文所追求的目标。

随后,在"2. Matlab圆半径测量代码原理"部分将详细介绍圆的数学定义与特性,并解释Matlab中基于算法实现圆半径测量的基本原理。

在"3. Matlab圆半径测量代码实现方法"部分,将详细讨论数据采集与预处理、图像处理与边缘检测算法选择以及半径计算与结果输出等实现过程中的关键步骤。

接下来,在"4. 实验设计与结果分析"部分将介绍我们设计的实验,并展示和讨论实验结果。

最后,在"5. 结论与展望"部分将对整篇文章进行总结,并展望未来可能的改进方向和应用场景。

1.3 目的本文的主要目的是向读者介绍Matlab圆半径测量代码的重要性和应用价值,并详细解释其背后所涉及到的原理和方法。

通过阅读本文,读者将能够深入了解如何使用该代码进行自动化圆半径测量,从而提高相关领域的工作效率和准确性。

同时,本文还将通过实验设计和结果分析部分验证该代码在不同情况下的可靠性,并为读者提供相关改进方向和扩展思路。

通过对Matlab圆半径测量代码进行全面解析,我希望本文能够为科研人员、工程师以及对此感兴趣的读者提供有价值的参考和指导,促进相关领域的研究和应用进展。

基于MATLAB图像处理的苹果大小、颜色、圆形度及缺陷度特征融合分级研究★

基于MATLAB图像处理的苹果大小、颜色、圆形度及缺陷度特征融合分级研究★

0 引言
利用了多特征组合下利用K-最近邻、BP神经网络和支持
以往苹果分级多采用人工分级和机械分级, 效率低、 精度低。本文利用M A T L A B 图像处理技术设计了一个程 序, 能够高精度地识别苹果表面图像的大小、颜色、形状 和缺陷程度数据, 成功地实现了苹果的自动分级。
B h a t t 等[ 1] 建立基于机器视觉和人工神经网络的苹果 分级系统,其具有较好的性能。Sofu M等[2]依据苹果, 在对1 8 3 个样本进行了测试之后, 得到分
1.3 算法介绍 利用M A T L A B 进行图像处理工作, 得到苹果表面四 种特征数据, 综合以上特征数据进行了苹果样本分级, 并 且设计了特别设计了用户交互界面方便操作, 最终分级 准确率在7 5 % 左右。
2 苹果图像预处理
2.1 灰度化处理 对于采集到的苹果图像, 一个合适的颜色模型会使得 图像的目标与背景更易分离,在R GB模型下分别提取各 个分量下的苹果图像, 结果如图2 所示。 在R GB模型下的各分量图中,R 分量图效果较好,更 适合进行图像分割。 苹果图像在H S I 模型下的各分量图如图3 所示。 在I 分量下的图像, 苹果目标与背景区分明显, 易于图 像分割处理。综上所述, R 分量图和I 分量图均能很好的进 行图像分割。 2.2 图像分割 图像分割就是对采集到的图像进行目标和背景的分 割, 最终得到像素值为1 的目标区域和像素值为0 的背景 区域。对于苹果图像, 目标区域是苹果样本, 其余区域是 背景区域。图像分割需要从整个图像中提取完整的苹果 样本。 Q T S U 法分割效果较好, 被广泛应用, 因此最终使用 Q T S U 法来进行苹果图像分割处理。 苹果R分量图和I分量图更适宜进行图像分割,在两种 分量图和灰度图三种形式下使用Q TS U 法进行苹果目标 与背景的分割, 对比其分割效果, 这里用三个苹果样本分 别进行图像分割, 结果如图4 所示。

matlab椭圆特征提取 -回复

matlab椭圆特征提取 -回复

matlab椭圆特征提取-回复如何使用Matlab进行椭圆特征提取?椭圆是一个常见的几何形状,在图像处理中经常需要对椭圆进行特征提取,以便进行形状分析、目标识别等任务。

在本文中,将介绍如何使用Matlab 进行椭圆特征提取。

主要包括以下几个步骤:1. 椭圆检测2. 椭圆参数计算3. 椭圆特征提取接下来,将详细介绍每个步骤的操作方法。

一、椭圆检测椭圆检测是指在图像中自动检测出椭圆的位置和形状。

在Matlab中,可以使用椭圆拟合算法来实现椭圆检测。

具体操作如下:1. 读取图像首先,在Matlab中使用imread函数读取待处理的图像。

例如,可以使用以下代码读取名为"ellipse.jpg"的图像:Matlabimg = imread('ellipse.jpg');2. 灰度化处理然后,将图像转换为灰度图像,以便后续处理。

可以使用rgb2gray函数来实现灰度化。

代码如下:Matlabgray_img = rgb2gray(img);3. 边缘检测接下来,使用边缘检测算法来检测图像中的椭圆边缘。

常用的边缘检测算法包括Canny边缘检测和Sobel边缘检测。

以下是用Canny算法进行边缘检测的示例代码:Matlabedge_img = edge(gray_img, 'canny');4. 椭圆拟合最后一步是使用椭圆拟合算法进行椭圆检测。

Matlab中提供了fit_ellipse 函数来实现椭圆拟合。

以下是使用fit_ellipse函数对边缘图像进行椭圆拟合的示例代码:Matlab[x, y, a, b, phi] = fit_ellipse(edge_img);以上代码中,x和y分别表示椭圆中心的坐标,a和b分别表示椭圆长轴和短轴的长度,phi表示椭圆的旋转角度。

二、椭圆参数计算在完成椭圆检测后,需要根据椭圆的参数计算一些相关的椭圆特征。

常见的椭圆特征包括离心率、面积等。

基于MATLAB的圆度误差分析_葛磊


( 3)
当在圆为非标准圆时,此时假定误差是来源于叠
加在标准圆上的正弦波形,则此时圆上各点的极坐标
为: ri = R + asin ( ωt + φ) ,代入式 ( 3) 即可得到有 圆度误差且传感器安装不对心时的数据。且可知在圆
为标准圆时测头不对心对测量没有影响。
2. 4 工件不水平
假设 被 测 工 件 没
当一个物体的形状呈现为圆形时,它和理想圆之 间总是存在着差异,也就是实际圆对于理想圆总有变 动量。而通常对于一个回转体零件,直接评定其形状
误差十分困难,所以人们采用轮廓剖面法。所以圆度 误差可以理解为,包容同一横剖面的实际轮廓且半径 之差为最小的同心圆之间的距离。 1. 2 评定方法
由于实际轮廓测量出来的数据,并没有确定的几 何圆心,所以寻找符合条件的圆心就成为评定圆度误 差的关键。目前确定圆度误差测量中心的方法有 4 种[5]: 最小区域法 ( MZC) ,最小二乘圆法 ( LSC) , 最小外接圆法 ( MCC) ,最大内切圆法 ( MIC) 。而最 小区域法其圆度误差是最小的,理论上是唯一的。根 据国家标准,有争议时按照最小区域法仲裁。 2 误差建模 2. 1 最小二乘圆法模型
图 8 不同角度的影响
图中 x 轴为误差模型中夹角 α 的度数,单位为 ( °) 。
纵坐标为误差,A = 1 μm 为所加正弦波幅值为 1 μm,
即圆度误差为 2 μm 时的情况,A = 0. 5 μm 为所加正
弦幅值为 0. 5 μm,圆度误差为 1 μm 的情况。 根据图 8 可知: 随着测头不对心角度值的增加,
时设定圆半径为 r =
30 mm。 单 轴 偏 心 为
只在 x 或 y 轴单坐标 轴上 有 偏 心,双 轴 偏 心为在 x 和 y 轴上有

对数字图像快速有效的圆检测方法

对数字图像快速有效的圆检测方法摘要:本文提出了两种新的和有效的源于灰度图像的圆检测方法。

作为一种工具,我们已经使用了在一个方案中的蚁群算法。

在其它计划中,我们使用蚁群再生和重组系统(ARRS),自主研发的一种全新的方法。

在这里提出的方案,有三个常见的步骤。

首先,MATLAB边缘检测算子将灰度图像转换成一个二进制的1;然后我们应用此二进制图像检测闭合回路;最后,这些闭合回路用来测试圆。

方案的主要特点之一是,他们可以检测相交和不想交的圆圈组成的不同形状的图像。

第一个方案是传统的蚁群算法修改之后的应用程序,在计算结果方面有很准确的结果。

因此,我们构建一个新的蚁群系统(ARRS),可以在令人难以置信的时间和内存效率检测出圆,使其适用于实时应用。

关键词:循环检测,圆检测,蚂蚁系统算法,蚁群再生和重组系统。

1.引言从拍摄的图像的检测规则几何形状的各种方法已经被研究。

其中Hough变换(HT)是最流行的一种,已被用于提取分析功能,如直线,圆,椭圆,因为它抗噪声好。

这种技术的一个严重的缺点是它巨大的时间和空间复杂度,时间复杂度与用于表征该形状的参数的数目呈指数增长。

本文中,我们提出了全新的方案来有效地进行圆检测,从现实生活中的图像,同时使用蚁群算法和蚂蚁再生和重组系统(ARRS),这是一种全新的算法。

据我们所知,我们无法从有效的灰度图像准确、快速地提取有关相交或者是非相交的圆的任何工作,这一点是我们论文所主要研究的。

本文已被细分为8个部分。

第二节将介绍我们的第一个基于蚁群算法的圆检测方案,我们将其叫做方案I。

在第三节,我们介绍了我们的方案II蚂蚁再生和重组系统。

在第四节提出了一种基于探索方案II图形基础上改进的闭环检测方法。

第五节中提供了基本算法,用于从闭环中检测圆。

第六节为方案I和方案II提供了仿真结果,文章最后的结论和今后的工作范围在第七部分。

由于空间的稀缺性,我们无法提供预览的蚁群算法。

详细讨论这算法可在[3],[4]。

圆度误差评定与测量不确定度计算

圆度误差评定与测量不确定度计算潘俊;温秀兰【摘要】为了更准确地评定圆度误差及测量不确定度,根据圆度特点,提出实数编码改进遗传算法求圆度误差最小区域解,基于蒙特卡洛法评定测量不确定度。

通过对零件实测计算,结果表明采用实数编码的改进遗传算法不仅省去了重复的编码解码,而且算法简单、优化效率高,蒙特卡洛法计算不确定度与传统GUM方法相比不受直接测量量相关性的限制,而且受问题条件限制的影响小,使不确定度评定简单化。

采用改进遗传算法和蒙特卡洛法能够更加准确高效地评定圆度误差和测量不确定度。

%For a more accurate evaluation of circularity errors and measurement uncertainty,this paper suggests an improved real-code genetic algorithm using Monte Carlo method.The results of calculation of actual parts indicate that the modified algorithm is simple to apply and saves the efforts for repeated encoding and decoding,with high efficiency in pared with traditional GUM method,Monte Carlo method is not restricted by direct measurement quantity correlation,and less likely to be conditioned by problem constraint,thus simplifying uncertainty evaluation. Consequently,the improved genetic algorithm and Monte Carlo method can be applied to accurately evaluate circularity error and measurement uncertainty with high efficiency.【期刊名称】《南京工程学院学报(自然科学版)》【年(卷),期】2015(000)001【总页数】5页(P1-5)【关键词】圆度误差;改进遗传算法;测量不确定度;蒙特卡洛法【作者】潘俊;温秀兰【作者单位】南京工程学院自动化学院,江苏南京211167;南京工程学院自动化学院,江苏南京211167【正文语种】中文【中图分类】TH161圆度误差是机械零件常见的形状误差之一,反映的是实际圆轮廓对其理想圆的变动量,其值的大小是从一特定圆心算起,以包容实际轮廓的两个同心圆的半径差来衡量.国标规定的评定圆度误差方法有最小二乘法、最小区域法、最大内切圆法和最小外接圆法[1].最小二乘法有具体的公式算法,最为简单、评定结果稳定,但是在要求精度较高的零件加工时评定结果可能存在争议.最小区域法是按圆度误差的国标定义和ISO定义来评定圆度误差值,评定出的结果可作为仲裁的依据.因此,用最小区域法评定圆度误差才是严格的正确的评定方法,也是唯一的仲裁方法,应尽可能采用这种方法,以使评定的结果更准确和更具客观性[2].圆度误差按最小区域法进行计算的本质是一个复杂的非线性最优化问题,本文用改进遗传算法来进行计算.遗传算法(genetic algorithm,GA)由美国J.Holand教授于1975年首次提出,是一类通过模拟生物界自然选择和自然遗传机制的随机化搜索算法.遗传算法特别适用于处理传统搜索算法难以理解的复杂和非线性问题,可广泛用于组合优化、机器学习、自适应控制、规划设计和人工生命等领域,它已逐渐成为21世纪计算智能的关键技术之一[3].在实际的测量过程中,测量仪器、测量方法以及测量结果都存在着一定的误差,在使用这些数据进行误差计算时是不准确的.因此,国际上早在 20世纪60年代就提出了用“不确定度”来定量表示测量结果可信程度的建议.根据现代测量误差理论,在测量零件的实际尺寸时,不仅要得到尺寸的测量结果,而且也要包含结果的不确定度[4].所以,在进行圆度误差评定时,也应当给出评定结果的不确定度.新一代GPS(geometrical product specification)测量不确定度的核心就是不确定度的评定.测量不确定度表述指南(GUM)和ISO标准给出了测量不确定度的评定方法.本文用最小区域法建立的圆度误差评定的数学模型,由于其目标函数是非线性、不可微等原因,使得根据不确定度传递模型用解析法求解变得复杂而又困难,甚至不能用解析法得到不确定度的传递函数,因此采用蒙特卡洛法来计算[5].蒙特卡罗(Monte Carlo)方法,也称为计算机随机模拟(random simulation)方法,是一种以概率统计理论为指导的数值计算方法.目前人们对圆度误差评定数学模型与算法的研究仍然在不断深入和加强,各种新模型与算法不断出现,然而准确、高效、可靠的算法仍然是寻求的目标之一[6-7].因而对回转体零件形状误差的评定方法、评定理论、解算方法等问题的研究,依然是精密计量测试领域研究的热点.国内外有很多专家学者在圆度误差评定上有很多不同的算法,而本文主要着重于改进遗传算法,该算法采用实数编码,不仅省去了编码和解码繁琐过程,而且运用交叉算法时省去了传统遗传算法的交叉和变异概率参数设置,大大提高了传统遗传算法优化效率.由于之前学者在评定圆度误差时很少计算不确定度,而本文通过蒙特卡洛法计算不确定度,有效避免了传统GUM方法的复杂,而且使得圆度误差的不确定度计算更加简便高效.遗传算法搜索最优解的方法是模仿生物的进化过程,即通过选择染色体之间的交叉和变异操作来完成的.遗传算法主要使用选择算子、交叉算子与变异算子来模拟生物进化,从而产生一代又一代的种群.1.1 标准遗传算法在标准遗传算法中,一个染色体由一串二进制字符串表示,字符串的一位叫做基因,每个基因有着不同的值.一群单独的染色体叫做种群,基本遗传算子包括选择、交叉和变异算子.标准遗传算法步骤为:1) 定义一个表征解决方法优劣的适应度目标函数;2) 选择合适的编码和相应的遗传算子;3) 随机产生N个个体的初始种群;4) 计算每个个体的适应度;5) 分配给每个染色体的繁殖概率;6) 根据分配的繁殖概率生成一个新的种群并从中选择个体,通过设定的交叉和变异概率使被选择个体产生后代;7) 如果达到终止条件,则停止,否则跳到步骤4).1.2 改进遗传算法改进遗传算法采用实数编码和优化变量的浮点数表示.和标准遗传算法相比,改进遗传算法的时间更短,因为它不需要编码和解码的过程.考虑到圆度误差优化,改进遗传算法采用混合交叉[BLX-α][9],通过结合父代信息产生子代并且具有良好的搜索能力.而且,它不需要计算种群中的每个个体的适应度,也不需要设置交叉和变异概率.混合交叉产生子代的方法为:1) 从种群中随机选择两个父代v1,v2.2) 子代向量vc的每个元素的值在均匀分布的区间]内随机产生本算法采用最小代沟Minimal Generation Gap(MGG)模型,在实数编码的遗传算法中它是保证种群多样性的有效方法.在最小代沟模型里,将一代种群随机选择一对父代使用交叉算子产生子代,在父代和子代中选择最优和次优的个体代替原来的父代.当迭代次数达到设置的次数时则停止.1.3 圆度误差目标函数建立按最小区域法评定圆度误差实际上是寻找包容被测实际圆的两个同心圆且相距最短.设实际圆上的测量点为pi(xi,yi)(i=1,2,3,…,n),其中n为测量点个数,设根据最小区域确定的圆方程为(x-xz)2+(y-yz)2=R2,其中(xz,yz)为圆心坐标.由圆度误差定义知,其计算公式为求解圆度误差就变为寻找(xz,yz)的值,使目标函数f为最小.蒙特卡洛法的基本思想是:为了解决数学、工程技术等方面的问题,首先将要求解的具有随机性的问题转化成人为的概率过程,使所求问题的解正好是所建模型的数学期望或其他有关特征量;然后通过计算机实现从已知概率分布抽样;通过建立的概率模型,计算求解出各估计量;对模拟实验的结果进行考察,对所求参数进行验证.[5,9] 本文采用三坐标测量仪进行圆度测量,对三坐标测量机进行不确定度来源分析,从而得到圆度误差测量过程中所产生的测量不确定度[10].圆度误差评定过程中测量不确定度的计算步骤:1) 分析圆度误差测量不确定度的来源,判断其分布类型及分布区间,通常不确定度来源主要有坐标点测量不确定度、示值误差引起的不确定度、环境因素等引起的不确定度.2) 确定圆度误差不确定度计算模型及其公式.设圆上的任一测量点为pi(xi,yi)(i=1,2,3,…,n),其中n为测量点个数,圆方程为(x-xz)2+(y-yz)2=R2,圆度的数学模型包括变量xz、yz和目标函数:3) 计算或估计模型中各输入量的期望值与方差,确定变量xz、yz、 x1、y1、x2、y2的期望值和方差值.4) 根据模型中各输入量的分布用蒙特卡罗方法产生各输入量的随机数序列.以xz、yz、x1、y1、x2、y2的期望和方差值生成6维的随机数组来模拟圆度误差测量值,样本的容量为M,通常采用大样本来进行圆度误差测量不确定度评定.5) 根据各输入量的随机数计算测量结果,把以上随机序列代入圆度误差模型,求得M 个圆度误差f的值.根据这组f的值,构造一个概率分布,判断其分布类型,求出期望和方差,期望值即为圆度误差的值,方差的值即为所要求的圆度误差测量的标准不确定度.用NC454三坐标测量仪(CMM)测量圆柱体零件,如图1所示.取任一横截面测得圆上点的坐标,见表1.3.1 圆度误差评定实例改进遗传算法优化结果主要受种群大小和子代大小影响,因为实际生产零件的圆度误差非常小,生成初始种群是接近(甚至包括)中心,当种群模数和子代模数设置为20和20,遗传算法可以找到最小区域法的最优解,因此分别将种群模数和子代模数设为20和20,得到改进遗传算法的误差进化过程如图2所示.改进遗传算法得到的圆度误差为0.009 1mm,三坐标测量仪测得数据用最小二乘法计算得出的圆度误差为0.009 8 mm.3.2 测量不确定度实例验证对三坐标测量仪不确定度来源的分析[10]:1) 重复性误差引入的不确定度分量u1.在圆度测量范围内取1个点进行重复性误差实验,这个点测量10组半径变化量,利用贝塞尔公式, u1=1.1μm.2) 示值误差引入的不确定度分量u2.根据三坐标测量仪的相关资料知,示值误差小于3.0μm,分布状态服从正态分布,不确定度分量为=1.732μm.3) 测力变形引入的不确定度分量.由于在实际测量中,各部件都具有较高的刚性,所以测力变形引入的误差近似为0,即u3=0.4) 温度变化引起的不确定度分量.本次实验在恒温(20 ℃)的条件下完成,所以温度对其影响很小,可以忽略,u4=0.圆度误差在测量过程中所产生的不确定度计算公式为根据式(3)、式(4)以及GUM规定,可以得到圆度测量不确定度公式[10]为根据前述的蒙特卡洛法的步骤,运用Matlab软件进行模拟计算,采用样本容量M为10 000,将产生的样本带入f=,即可得到测量误差和误差分布图.GUM方法的圆度误差不确定度为0.003 0 mm,蒙特卡洛法的圆度误差的不确定度为0.002 9 mm.得到圆度误差概率分布如图3所示.综合上面计算的结果,改进遗传算法收敛速度快且精度明显高于CMM给定的最小二乘法.对于测量不确定度的评定采用了GUM方法和蒙特卡洛方法得出的结果相差不大,所以蒙特卡洛方法计算出的不确定度完全可以满足精度要求.本文采用改进遗传算法,通过实例和最小二乘法对比证明,该算法简单、鲁棒性强、收敛速度快、优于三坐标测量仪通过最小二乘法给出的结果,非常适用于三坐标测量仪的圆度误差的测量数据处理.运用蒙特卡洛法计算得出的不确定度结果和依据测量不确定度评定指南(GUM)给定的评定方法计算出的圆度误差不确定度结果接近.但是蒙特卡洛法计算方便且不用考虑测量分量之间的相关性,迭代过程简单易行.。

基于虚拟仪器的圆度误差测量系统设计

设 被 测 零 件 截 面 轮 廓上 第 f 测 量 点 的 极坐 个
参 考 文献 :
4 结 语
本 文 以L b E a VI W作 为设计 开 发平 台 ,设计 了
基 于虚 拟 仪器 的圆度 误差 测 量系 统 ,实现 了数 据 采 集 ,数 据分 析 与处 理 ,实现 了圆度 误差 最 小二 乘 圆评 定 法算 法 。所 设计 的硬件 系统 能满 足测 量 精 度要 求 ,具 有较 高 的测 量 效率 。采 用 的最 小二 乘 圆评 定法 算法 实 用可靠 ,便 于实 现L b E aVIW编
小二乘 圆半径 。 经 过进 一 步 的推 导可得 :

( 4 )
其 中( ’ ) 最 小二乘 圆的 圆心 坐标 ,R a b为 为最
△ — R— cs/ bi ̄ A a o 0一 s n

() 5

2 一1

() 1
其 中
取测 量 电压 满量 程 为 5 V,则 :
据 处理 能力 , 极大 的简化 了测量 系统 的硬 件设 计 , 真 正实 现 了仪器 功 能 的软件 化 ,提 高 了测 量 的速 度和 误 差评 定 的 自动化 水平 。本 文采用 L b E aVIw 平 台设 计 了基于 虚拟 仪 器 的 圆度 误 差测 量系 统 , 可 实现 圆度 误 差最 小二 乘 圆评 定法 算法 ,提 高 了 圆度仪 测量 的速 度和误 差 评定 的 自动化水 平 。
1 . ,即传 感器 最 小输 出信 号 。 43 mv 设 n 为A D转 换 的位数 , 为满量 程测 量 电 / 压值 ,则分 辨率 为 :
标为 ( , , 则该点至最小二乘圆的径 向偏 )
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

y3) ( y3-
y1)
y 0=
y
2 1
(
x
2
-
x3)+
y 22( x3- x1) + y32( x1- x2) - ( x1- x2) ( x22[ x1( y2- y3) + x 2( y 3- y 1) + x3( y1- y2) ]
x3) ( x3-
x1)
R0= ( x1- x0) 2+ ( y1- y0) 2 ( 9)
F( x c, y c) = [ Ri] max- [ Ri] min= min
( 4)
式中 [ R i] max、[ R i] min ) ) ) 各点距评定圆圆心距离 的最Leabharlann 值和最小值212 最小二乘圆法
最小二乘圆的标准方程参见式( 2) 。 测得圆轮廓 线上 n ( n > 3) 个点, 各 点坐标 为
2003 年第 37 卷 l 4
39
一种基于 MATLAB 的圆度评定方法
陈永鹏 岳晓斌 曾孝云
中国工程物理研究院机械制造工艺研究所
摘 要: 圆度的评定和计算, 实质上是根据圆度的定义构造函数模型、再进行函数 优化求解的 过程。提出一 种 基于 MATLAB 的圆度评定 方法, 利用 MATLAB 优 化工具箱, 为采用 最小区域 圆法、最 小二乘圆 法、最 小外接圆法 和 最大内接圆法实现圆度的评定提供了新的选择。
足迭代求解精度和该函数式的解
xc*
、y c *

x
* c

y
* c
、Rc *
,
该解即为评定基圆的圆心坐标或圆心坐
标和半径( 注: 采用最小二乘法评定圆度时, 需圆心
坐标和半径值 x 0、y 0、R 0 作为初值, 而其余三种评定 方法只需圆心坐标 x 0、y 0 作为初值) 。在进行迭代 求解时, 采用优化算法 Nelder- Mead Simplex Method,
( 1) 计算数据与圆度评定结果 计算数据与程序圆度评定结果见表 1。
表 1 计算数据 与圆度评定结果
序号 X
最小区 最小二 最小外 最大内
Y
域圆法 乘圆法 接圆法 接圆法
1 4919996 010000 - 01 0015 - 01 0000 - 01 0005 010014
2 4715512 151 4503 - 01 0027 - 01 0014 - 01 0018 010000
15 - 1514508 - 471 5527 - 01 0022 - 01 0005 - 01 0019 010008
16 010000 - 501 0001 - 01 0018 - 01 0001 - 01 0013 010013
17 1514512 - 471 5538 - 01 0008 01 0010 - 01 0000 010025
、y
* c
即为最大
内接圆圆心坐标值:
F( x c, y c) = [ Ri] min = max
( 8)
式中 [ Ri ] min ) ) ) 各点距评定圆圆心距离的最小值
3 基于 MATLAB 的圆度评定
311 MATLAB 求解步骤
( 1) 将所测 n( n > 3) 点( 各点坐标为 x i、y i ( i =
该算法未利用函数导数信息, 而只是进行函数值的 计算。虽然其计算效率、收敛速度不及 Quas-i Newton
Method 和 BFGS Method, 但却非常适合求解非线性和 不连续问题[ 6] 。
( 3) 按式( 3) 求解测得各点距评定基圆圆心的距 离 Ri ( i = 1, ,, n) 。
( 4) 将求得的 Ri ( i = 1, ,, n ) 代入下式即可求 得圆度误差值 $Z
$Z= ( Ri) max- ( Ri) min
( 10)
312 程序的实现
( 1) 程序流程 应用 MATLAB 实现圆度评定的程序流程如图 2
所示。
图 2 程序流程图
( 2) 程序界面 该程序将流程中各个步骤集成到一个 GUI 中, 通过该 GUI 可实现数据文件载入、数据编辑、圆度 迭代求解、计算结果保 存、数据可视 化等多种功 能。
3 4014510 291 3893 - 01 0008 01 0005 - 01 0001 010017
4 2913894 401 4511 - 01 0007 01 0005 - 01 0002 010017 5 1514505 471 5517 - 01 0023 - 01 0010 - 01 0020 010000
( MCC) 和最大内接圆( MIC) 作为评定基圆则可分别 求得圆度误差 $Zq、$Zc 和 $Z i。
2 圆度评定数学模型
211 最小区域圆法
根据圆的标准方程, 用最小区域圆法推导出计 算公式。假设圆在 XOY 平面或在平行于XOY 的平
面上, 则最小区域圆的一般方程为
( x-
x c) 2+
( y-
4 实际算例
为验证该程序求解结果的正确性, 对表 1 中数 据分别按最小区域圆法、最小二乘圆法、最小外接圆
2003 年第 37 卷 l 4
41
( 2) 数据可视化 最小区域圆法等四种方法计算结果的数据可视 化见图 4~ 图 6。
图 3 程 序主界面
法和最大内接圆法评定圆度, 并将评定结果与三坐 标测量机的计算结果进行对比。
x i、y i( i = 1, ,, n) , 各点到最小二乘圆的距离为
Ri= ( x i- x c) 2 + ( y i- y c) 2 - Rc
( 5)
按最小二乘法构造以下目标函数, 该函数的实
质是求解关于圆心坐标 x c、y c 和圆半径 Rc 的最优
化问题, 该函数求解结果
x
* c
、y
* c
Keywords: roundness, optimization, MZC, LSC, MCC, MIC, MATLAB
1 引言
目前在生产实践中, 圆度的测量仪器主要有圆 度仪、三坐标测量机等, 而圆度的评定和计算则是通 过圆度仪、三坐标测量机等精密仪器自带的计算程 序来完成。由于设计者对程序严格保密且这些程序 大都价格不菲, 因此, 使用者希望开发更多、更方便 的圆度评定方法。实际上, 圆度评定和计算的过程 就是一个按照圆度评定标准构造函数原型进行优化 求解的过程。随着 MATLAB 软件功能的日益完善, 目前 MATLAB 已拥有 600 多个工程中可用的数学运 算函数, 这些函数中所使用的算法作为科研和工程 计算的最新研究成果, 都经过各种优化及容错处理, 使用起来具有很高的鲁棒性和可靠性。在进行优化 计算时, 只需按要求构造正确的函数模型, 然后调用 MATLAB 的优化函数即可得到满意的计算结果; 同 时, 通过调用 MATLAB 的插值函数和可视化函数还 可方便地实 现求解结果的 可视化。因此, 将 MATLAB 软件引入圆度评定, 将会为圆度评定的实现提 供新的选择。
18 2913893 - 401 4509 - 01 0015 01 0001 - 01 0006 010017
1, ,, n) ) 中的 三点 P1 ( x1, y 1) 、P 2 ( x 2, y 2 ) 和 P3
( x 3, y 3) 代入以下方程组, 解得圆心坐标初值 x 0、y0
及半径初值 R0:
x 0=
x
2 1
(
y
2
-
y3)+
x 22( y3- y1) + x32( y1- y2) - ( y1- y2) ( y22[ x1( y2- y3) + x 2( y 3- y 1) + x3( y1- y2) ]
在 GB7234- 875圆度测量术语、定义及参数6中, 圆度误差的评定方法有: 最小区域圆法、最小二乘圆 法、最小外接圆法和最大内接圆法。
最小区域圆法是以最小区域圆 MZC 作为评定基 准圆的方法( 见图 1) , 按此方法求得圆度误差值 $ZZ
收稿日期: 2002 年 9 月
图 1 以最小区域圆圆心 评定圆度误差 $ZZ
、R
* c
即为最小二
乘圆圆心坐标值和半径:
n
F ( x c, y c, Rc) = 2 Ri2= min
( 6)
i= 1
213 最小外接圆法
同理, 按最小外接圆法构造以下函 数, Ri 参见
式( 3) 。该函数实质上是 求解关于圆心坐 标 x c、y c
的最优化问题,
其求解结果
x
* c
、y
* c
即为最小外接
关键词: 圆度, 优化, 最小区域圆, 最小二乘圆, 最小外 接圆, 最大内接圆, MATLAB
A Method of Roundness Assessment Based on MATLAB
Chen Yongpeng Yue Xiaobin Zhen Xiaoyun
Abstract: The assessment and calculation for roundness essentially is the process in which the functional model is constructed and optimally solved according to the definition of roundness. A new method of roundness assessment based on MATLAB is presented. By using MATLAB optimization toolbox , the method has supplied a new selection to assess roundness with taking MZC, LSC, MCC and MIC as its reference circle.
相关文档
最新文档