碧波液压网 欢迎你,游客。 登录 注册

平面度误差可视化评定系统研究

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

   

    0 引言

    平面是构成机械零件的重要几何要素,它常常被作为检测的基准面,因此对平面度误差进行有效和准确的评定具有重要的实际意义[1]。平面度误差的评定方法较多,常用的有最小二乘法、对角线平面法、三远点平面法和最小包容区域法。目前对于平面度误差评定主要有两大类方法,最小二乘法和最小区域法。前者具有数学理论成熟、方法简单、计算迅速、结果稳定、对误差具有平均作用、测量准确度也较高等特点,本文基于虚拟仪器技术,应用 LabVIEW8.5 及 C 语言,针对平面度误差中最小二乘法进行实例编程验证,实现从数据采集到误差分析的一整套功能。

    1 最小二乘法误差评定原理

    最小二乘法是以最小二乘平面作为评定基准的方法,如图 1 所示,设被测平面上任一点的坐标值为 Pij(Xi, Yj, Zij),理想平面的方程为: =aX+bY+c,按最小二乘法的基本思想,由测量点拟合的该理想平面应使测量点到该平面的坐标值的平方和最小:

    对 a、b、c 求偏微商,再使偏微商等于零,得到 a、b、c 应满足式(1)。

    式(1)化简得:

    式(2)用矩阵表示如下:

    式(3)通过线性代数即可求出 a、b、c,即确定了理想平面的位置,再将各测点相应的坐标Pij(Xi, Yj, Zij) 代入平面方程,即可得对应的方向坐标值,所以平面度误差为:

    其最大值与最小值之差即为直线度误差 f。通过 LabVIEW 中求最大最小值函数可实现。

    最小二乘平面的 a、b、c 可利用 LabVIEW 中公式节点,采用 C 语言编程实现,设 a1代表 ΣXi2b1为 ΣYi2,c1为 ΣXi,d 为 ΣYi,e 为 ΣXiYi,f 为ΣXiZi,g 为 ΣYiZi,h 为 ΣZi程序如下:

    int i;

    float a1=0.0,b1=0.0,c1=0.0,d=0.0,e=0.0;

    float f=0.0,g=0.0,h=0.0;

    for(i=0;i<n;i++)

    {a1=a1+x[i]*x[i];

    b1=b1+y[i]*y[i];

    c1=c1+x[i];

    d=d+y[i];

    e=e+x[i]*y[i];

    f=f+x[i]*z[i];

    g=g+y[i]*z[i];

    h=h+z[i];}

    如图 2 所示,通过创建数组函数、重排数组函数得到式(3)中的前两个矩阵,对其中 3×3 矩阵进行逆矩阵转化,可求出 a、b、c,即得到最小二乘平面方程 , 再通过平面上任一点的坐标值与对应的最小二乘平面的 Z 值相减 Zij- (aXi+bYj+c),得到一数组,将该数组中的最大值与最小值相减,得出平面度误差。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签: LabVIEW
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论