三坐标测量机球头测针补偿技术
1 引言
在使用手动三坐标测量机对工件进行多点位测量时,由于被测物体形状各异,工作量很大。因此,提高硬件测量速度、改进操作流程、增强软件容错性及软件智能性等是提高测量效率的主要手段。
2 测头跟踪机制
测头跟踪机制是一种增强软件智能性的技术。其工作原理如下:
每次测量一个点位,无论是重测还是新测,测针都需要运动一段距离,因此可在软件中设置跟踪机制,白动追踪测针的运动轨迹,根据采集到的测针碰触被测点位之前一段距离的坐标值集COOR-SET={node 1,node2...node n} (node n为跟踪的最后一个坐标值)。可分析测针从何方位碰触被测点位,再在使用球头测针时自动补偿,而不必在测量之前手动指定测量方位,增强了测量的智能化程度,提高了工作效率。
因为必须保存坐标值集COOR-SET并且需在测针运动时不断更新数据、加入最新的坐标值、去除最老的坐标值,因此,坐标值集COOR-SET构成一个先进先出的队列。可采用两种方式实现,即链队列和循环队列。
q.rear->next=P;q.rear=P;
M插入队尾;构成新的队尾结点。
q.front->next=q.front->next->next;
free(q.front->next);
M修改队头指针指向原队列第二个结点,同时释放原第一个结点;
注1:xyz data及结点的数据域分别为结构型XYZ DATA和DATA,描述为:
struct ZYZ DATA{double x; double y; dou-ble z;}
struct DATA{double x; double y; double z;}
为简单从事,以上语句p->data=xyzdata;表示将三维坐标值同时赋值;实际编程时C语言不支持结构型变量的整体赋值。
若采用循环队列的方式,队列可用长度为maxsize的数组LIST(maxsize)来表示。由问题需求出发,需维护一个最新的结点集合,队空时直接加入新值,队满时,由于循环队列头尾相接,可直接覆盖队头结点。因此无须考虑队空、队满,仅需标记出最新结点的位置即可。
更新时需进行如下操作:
q.front=(q.front+1)MOD maxsize;M指向插入位置;
LIST(q.front)=xyz data;M插入新结点,若队列已满,覆盖队头结点值。
注2:xyz data及LIST的元素分别为结构型,其操作类似于注1。
比较以上两种实现方式,无疑采用循环队列,操作简单,效率较高。
3 补偿原理及实现
实际测量时,被测点位情况各异,但其最基本的情形不多,以下分几种不同的情况讨论:
假定:
①球头测针的半径为R;
②测量在笛卡尔坐标系中进行,且机器坐标系经过变换已与工件坐标系一致。
相关文章
- 2024-01-25秒表检定测量不确定度的评定
- 2024-01-19电子束吸收剂量标准液体化学剂量测量系统的研究
- 2022-08-18现场总线技术解析与其发展趋势
- 2023-02-22三级建模微型机电系统多学科优化设计法
- 2021-12-25基于模糊神经网络的移动机器人沿墙导航控制设计
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。