圆瓶旋转走摆怎样分解:两高度圆心轨迹与轴线倾斜辨识
壹星YIXING技术笔记东莞市壹星自动化设备有限公司圆瓶旋转时某个高度的外形看起来左右摆动不能仅凭一条跳动曲线确定瓶底倾角。瓶心偏置、轴线倾斜、截面非圆和测量基准变化都可能进入读数。本文用两种高度的圆心轨迹演示如何在明确的刚体旋转假设下分离固定偏心与轴线倾斜。壹星《机械画册》第十八页描述全自动定位式圆瓶贴标机的立姿输送与旋转贴标流程。该流程没有说明瓶体一定按本文的理想约束旋转因此以下是独立教学示例不是该设备的瓶底公差或验收模型。先限定旋转约束设设备旋转基准为竖直轴瓶体作为刚体随同一旋转载体运动。高度z是相对于该轴方向的截面高度瓶轴倾斜方向随载体一起旋转没有额外滚动、重新就位或夹持滑动。瓶轴在参考相位的水平位置写成ezk其中e为零高度偏心向量k为轴线水平斜率向量。旋转相位φ变化时截面圆心满足c(z,φ)R(φ)(ezk)R为二维旋转矩阵。倾角θ满足tanθ|k|。如果实际瓶体由侧向机构重新定位底面未保持同一约束这个模型就需要重建不能从瓶底外观直接带入。这里的圆心应来自已核对的截面形状测量或几何拟合。单个探头测到的是表面位置包含截面形状与运动不自动等于圆心位移。倾斜圆柱的水平截面也不必是圆拟合方法与轴线定义要一致。两个高度为什么比一个更有信息只取水平投影有x(z,φ)A(z)cosφB(z)sinφ其中AeₓzkₓB−eᵧ−zkᵧ。对共享相位的两个高度z₁、z₂差分给出kₓ[A₂−A₁]/(z₂−z₁)kᵧ−[B₂−B₁]/(z₂−z₁)。再将其代回即可求e。单个高度只能得到ezk的组合较大的摆幅可能来自偏心也可能来自倾斜。两个高度可以在模型内分开这两项但仍不能把倾斜来源唯一归为瓶底。更多高度可用于检查A、B是否确实随z线性变化。两个高度过于接近时系数差中的测量误差会被较小的高度差放大。增加高度间隔也需确认观测的是同一刚体轴线而不是瓶身不同形状区域或局部变形。不同高度的相位原点必须共用不能分别寻找各自最大值后再拼接。四个相差九十度的相位下A等于零度与一百八十度读数差的一半B等于九十度与二百七十度读数差的一半。有噪声时可增加相位并按线性参数拟合NIST线性最小二乘说明给出此类拟合目标的基本定义。拟合成功并不证明机械归因成立。离线恢复偏心与倾角合成输入设零高度偏心为横向零点二、另一水平向零点一毫米倾角零点五度倾斜朝第一水平方向。分别生成二十和一百毫米高度的四相位中心投影再从这些读数恢复参数。from math import sin, cos, tan, atan, radians, degrees, hypot heights [20.0, 100.0] phases [radians(x) for x in (0, 90, 180, 270)] kx, ky tan(radians(0.5)), 0.0 ex, ey 0.2, 0.1 coefficients [] for z in heights: samples [(ex z*kx)*cos(phi) - (ey z*ky)*sin(phi) for phi in phases] a (samples[0] - samples[2]) / 2 b (samples[1] - samples[3]) / 2 coefficients.append((a, b)) print(fz{z:.0f} mm A{a:.6f} mm B{b:.6f} mm orbit_radius{hypot(a,b):.6f} mm) dz heights[1] - heights[0] fitted_kx (coefficients[1][0] - coefficients[0][0]) / dz fitted_ky -(coefficients[1][1] - coefficients[0][1]) / dz fitted_ex coefficients[0][0] - heights[0]*fitted_kx fitted_ey -coefficients[0][1] - heights[0]*fitted_ky theta degrees(atan(hypot(fitted_kx, fitted_ky))) print(ftilt{theta:.6f} deg eccentricity({fitted_ex:.6f},{fitted_ey:.6f}) mm)输出为z20 mm A0.374537 mm B-0.100000 mm orbit_radius0.387657 mm z100 mm A1.072687 mm B-0.100000 mm orbit_radius1.077338 mm tilt0.500000 deg eccentricity(0.200000,0.100000) mm较高截面的轨迹半径更大程序仍把固定偏心与倾角分开。轨迹半径、某方向的峰谷差和表面全跳动是不同量不能互相不加说明地替换本例水平投影峰谷差是相应轨迹半径的两倍。这个峰谷差属于连续模型四个离散相位未必恰好采到最高和最低位置。复核时应保留相位间隔与采样覆盖而不是把四个读数中的极差直接当成完整旋转极差。走摆一周闭合不代表标签高差累积旋转矩阵在一周后回到原值因此该刚体模型中c(z,2π)c(z,0)。周期性位置变化本身不产生一个每圈不断增加的轴向位移。要推导标签接缝高差还需描述标签接触、相对进给和材料路径不能直接把瓶径乘倾角正切当成全周接缝极限。瓶底的局部不平、底面与轴线不垂直、测量参考面倾斜也应分开。仅有底面最大最小读数时未必能识别一个平面倾角不能据此自动判定来料责任或允许托盘跳动量。实际复核应保留各高度的原始相位数据、拟合残差与重新装夹后的结果。两高度相位不能对齐、圆心估计不足或轴线系数不随高度线性变化时先报告模型不适用。本文交付可识别性与几何参数检查不输出现场校正动作。