基于 MATLAB 的圆柱度误差评定方法

Posted studyer_domi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于 MATLAB 的圆柱度误差评定方法相关的知识,希望对你有一定的参考价值。

1、内容简介


388-可以交流、咨询、答疑

2、内容说明

摘要 :针对圆柱度误差评定的特点,提出了一种基于MATLAB的圆柱度误差评定方法,同时建立了符合最小 条件的目标函数数学模型 通过实际测量数据计算,该方法能收敛到最优解,而且计算稳定 。该方法可以推 广应用到其他形状误差的评定中 关键词 MATLAB;圆柱度误差评定;最小区域法;最小二乘法 本文针对圆柱度误差评定的特点建立了符合最小 条件的目标函数,并利用 MATLAB 优化工具箱评定圆 柱度误差,同其他评定方法相比较,所建立的数学模 型对测量点的位置无特殊要求,并且当轴线出现偏差 时同样可以正确评定 。实验结果表明:此方法简单易 操作,所需时间少,且计算结果稳定 。该方法可以推 广到其他形位误差的评定中


3、仿真分析

A = [11.943 0.4522 65.2328
5.094 10.845 65.0763
-6.9063 10.8439 65.0089
-12.9065 0.4498 65.054
5.094 -9.9418 65.2216
10.9546 0.522 75.2316
4.9544 40.9148 75.0752
-7.0459 10.9137 75.077
-13.0461 0.5196 74.896
-7.0459 -9.8731 75.0258
4.95447 -9.872 75.2204
10.815 0.5918 85.2307
4.8148 10.9846 85.074
-7.1855 10.9835 85.0641
-13.1858 0.5894 84.8952
-7.1855 -9.8033 85.0516
4.8149 -9.8022 85.0516
10.6574 0.6616 95.2291
4.6752 11.0544 95.094
-7.3253 11.0533 94.9077
-13.3254 0.6592 95.094
-7.3252 -9.7335 95.054
4.6752 -9.7323 95.2197
-6.9063 -9.9429 65.054];
x0 = [0,0,0,0]; % 初始值
% x0 = [0.1637,-0.1344,0,0];

figure
scatter3(A(:,1),A(:,2),A(:,3))
options=optimset('LargeScale','off'); %控制优化结果
[x, fval, exitflag, output]=fminunc(@(x)fun(x,A),x0,options) %调用函数
x
fval
function f= fun(x,A)
% x是需要优化的数值
% A是点的三维坐标
[N,~]=size(A); % A的坐标点数量
D = zeros(N,1);

for i=1:N
    c = A(i,:);
    D(i)=sqrt((c(1)-x(1)*c(3)-x(2))^2+(c(2)-x(3)*c(3)-x(4))^2); % 求距离d
end

Dmax = max(D);% 最大距离
Dmin = min(D); % 最小距离
f = Dmax-Dmin;% 距离误差 要求f最小
end
% x是优化的参数 
% c是坐标


4、参考论文

以上是关于基于 MATLAB 的圆柱度误差评定方法的主要内容,如果未能解决你的问题,请参考以下文章

求一篇关于 平面度误差的测量和评定 相关的外文翻译,字数在两千字左右,若符合要求,给五十分。

NETDMIS5.0对称度评价案例1

测量不确定度与测量误差的区别与联系?

机械仿真基于matlab GUI直齿圆柱齿轮应力计算含Matlab源码 2077期

机械仿真基于matlab GUI直齿圆柱齿轮应力计算含Matlab源码 2077期

将图像从圆柱体内部投影到二维平面 [Matlab]