2. 实时运动控制系统的信号与变量体系
在实时运动控制系统中,数据采集的第一步不是接传感器,而是把“信号”变成“有明确语义的变量”。同一个物理量,在不同环节可能以不同形式存在:编码器输出的是脉冲或串行帧,驱动器内部是增量计数,控制器里是位置指令与反馈,上位机看到的是毫米或角度。如果这些表示之间的边界和语义没有定义清楚,后续的监控、诊断和报警都会失去可靠基础。
一、从物理量到变量:四层语义链
建议把每个采集量沿“物理层—信号层—变量层—语义层”四层来定义。物理层是真实被测量,如电机转子角位移、母线电流、轴承座温度;信号层是传感器或驱动器的原始输出,如A/B相脉冲、±10 V模拟电压、PWM占空比、SSI帧;变量层是控制器内部可读写的数值,如Axis1.ActPos、Axis1.ActVel;语义层则规定单位、参考点、正方向、采样时刻和有效范围。只有四层都明确,变量才具备工程可解释性。
二、位置与速度:参考系和差分语义
位置变量必须绑定参考系。常见约定有:以机械原点为零点的绝对位置、以当前点为起点的相对位置、以编码器Z相为基准的电气零位。三者混用是现场最常见的语义错误。例如某直线模组丝杠导程10 mm,编码器每转2^23个增量,则1个增量对应约1.19×10⁻⁶ mm;若把增量计数直接当作毫米显示,数值会相差六个数量级。
速度通常由位置差分得到,语义上要区分“指令速度”“反馈速度”和“滤波速度”。反馈速度v[k]=(p[k]−p[k−1])/Ts对量化噪声敏感,当Ts=1 ms、位置分辨率1 μm时,单计数跳变就会产生1 mm/s的速度尖峰。因此工程上常加一阶低通或滑动平均,但滤波会引入相位滞后,必须在语义中标注“滤波后速度,截止频率约200 Hz”,否则位置环诊断会误判。
三、加速度、电流与力矩:间接量与换算边界
加速度一般不由传感器直接测量,而是对速度再差分,噪声被进一步放大,通常只用于趋势判断和冲击检测,不直接进入闭环。电流与力矩则通过驱动器内部采样获得:电流环以PWM周期同步采样相电流,经Clarke/Park变换得到Iq,再乘以转矩常数Kt得到估算力矩Trq = Kt × Iq。这里的语义边界是:Iq是转矩分量电流,不是母线电流;Kt随温度和磁饱和变化,估算力矩不等于轴端真实力矩。
四、温度与振动:慢变量与高频变量的采集边界
温度属于慢变量,采样周期常取100 ms~1 s即可,但要注意传感器时间常数。例如PT100在电机绕组中的响应时间可达数秒,若用1 s采样去判断“瞬时过温”,得到的只是滞后值。振动则相反,属于高频变量,关注的是带宽、采样率和抗混叠。若只关心轴承故障特征频率(示例:内圈故障频率约120 Hz),采样率至少取1 kHz以上;若要分析齿轮啮合冲击,可能需要20 kHz以上。振动变量常用RMS、峰值、包络谱等派生量,语义上必须注明“RMS,10 Hz–1 kHz带通,1 s窗口”。
五、采集边界与语义定义清单
为避免变量含义漂移,建议为每个采集量建立一份最小语义定义。下表给出一个可直接参考的字段结构,数值为示例假设,不是实测结果。
| 变量名 | 物理量 | 单位 | 参考/正方向 | 采样周期 | 有效范围 | 语义备注 |
|---|---|---|---|---|---|---|
| ActPos | 位置 | mm | 机械原点,远离电机为正 | 1 ms | 0~500 | 已含丝杠导程换算与原点偏移 |
| ActVel | 速度 | mm/s | 与ActPos同向 | 1 ms | −800~800 | 差分后经200 Hz低通 |
| ActAcc | 加速度 | mm/s² | 与ActVel同向 | 1 ms | −20000~20000 | 仅趋势用,未参与闭环 |
| Iq | 转矩电流 | A | 正转矩方向 | 125 μs | −12~12 | 电流环同步采样,含饱和标志 |
| TrqEst | 估算力矩 | N·m | 与Iq同向 | 1 ms | −6~6 | Kt=0.5 N·m/A,未补偿温漂 |
| TempW | 绕组温度 | ℃ | — | 500 ms | −20~150 | PT100,时间常数约5 s |
| VibRMS | 振动有效值 | mm/s | 径向 | 1 ms | 0~20 | 10 Hz–1 kHz带通,1 s窗口 |
六、时间戳与质量码:让变量可追溯
实时采集的变量如果只有数值没有时间信息,就无法做因果分析。建议每个变量附带采样时间戳和“质量码”,例如:0=有效,1=超量程,2=传感器断线,3=通信超时,4=未标定。这样在诊断时可以先按质量码过滤,再分析数值趋势。对于跨控制器同步采集的场景,还应统一时基,例如全部以控制器1 ms任务周期计数作为时间戳,避免各设备本地时钟漂移导致相位错乱。
Position,导致监控曲线看似跟随良好,实际是同一路信号。建议命名中明确Cmd与Act前缀,并在语义定义中写明来源。综上,信号与变量体系的核心不是“采到数”,而是让每个数都携带明确的物理含义、参考系、时间属性和质量状态。只有采集边界清晰、语义定义一致,后续的监控看板、报警阈值和故障诊断才有可靠依据。