3. 原点回归调优

各位搞PLC的同行,今天咱们聊聊原点回归。说实话,我见过太多设备因为原点没搞好,一开机就撞限位,或者定位精度差得离谱。原点回归调优,说白了就是让设备知道“我在哪”。

QD75模块提供了好几种回归方式,但最常用的就两种:近点狗式和数据设定式。怎么选?我个人的习惯是:有传感器就用近点狗,没传感器或者想省成本就用数据设定。但这里面的门道,远不止这么简单。

3.1 原点回归方式选择

3.1.1 近点狗式(Near-Point Dog)

这种方式需要外部安装一个近点传感器(通常叫“狗”或“DOG”)。工作原理很简单:轴先以高速往原点方向跑,碰到“狗”的上升沿后减速,然后以爬行速度继续跑,直到“狗”的下降沿停止,那个位置就是原点。

我在项目里遇到过一个问题:有些设备的“狗”信号有抖动,导致原点位置每次都不一样。后来我加了软件滤波,才把重复精度稳定在±1个脉冲以内。

关键参数:
  • 原点回归方向:正方向还是负方向,取决于机械结构
  • 近点信号逻辑:常开还是常闭,得跟实际接线匹配
  • 减速点触发方式:上升沿触发还是下降沿触发

3.1.2 数据设定式(Data Set)

这种方式不需要外部传感器。你直接在参数里设定一个坐标值,告诉QD75“这里就是原点”。说白了就是软原点。

什么时候用?我举个例子:你有一台贴片机,每次开机后先回一个机械硬限位,然后把这个位置设为原点。这样既省了传感器,又保证了重复性。但要注意,这种方式依赖编码器的绝对位置,一旦电池没电或者编码器故障,原点就丢了。

对比项 近点狗式 数据设定式
硬件需求 需要近点传感器 不需要
重复精度 高(取决于传感器精度) 中(依赖编码器)
断电保持 每次开机需重新回归 可保持(需电池)
适用场景 高精度、频繁启停 低成本、少维护

3.2 原点回归速度与爬行速度

这两个速度是调优的核心。我见过有人把回归速度设得跟快进一样快,结果每次回归都“哐”一声撞停。嗯,这样搞,机械寿命能长才怪。

3.2.1 原点回归速度

这是轴在碰到“狗”之前的运行速度。设得太快,惯性大,容易过冲;设得太慢,回归时间太长,影响节拍。

我的经验是:回归速度 = 正常快进速度的 60%~80%。比如你的快进速度是 100mm/s,那回归速度设在 60~80mm/s 比较合适。

小技巧: 如果机械结构刚性差(比如长悬臂),回归速度要更低一些,否则过冲会导致原点偏移。

3.2.2 爬行速度

这是碰到“狗”之后、找原点之前的低速段。爬行速度决定了原点停止的精度。速度越低,停止位置越准,但时间也越长。

我一般这样设:

  • 普通精度要求(±0.1mm):爬行速度 = 回归速度的 5%~10%
  • 高精度要求(±0.01mm):爬行速度 = 回归速度的 1%~3%

举个例子:回归速度 80mm/s,普通精度下爬行速度设 4~8mm/s,高精度下设 0.8~2.4mm/s。

注意: 爬行速度不能低于伺服驱动器的“最低稳定速度”。我曾经在一个项目里把爬行速度设到 0.1mm/s,结果电机一顿一顿的,根本停不准。后来查手册,发现该伺服的最低稳定速度是 0.5mm/s。

3.3 原点移位量设定

这个参数很多人忽略,但它其实很实用。原点移位量,就是在找到机械原点后,再额外移动一段距离,把最终的原点位置“挪”到更合适的地方。

为什么要移位?我遇到过这样一个案例:一台切割机,近点传感器装在导轨中间,但切割起点在导轨最左端。如果直接把传感器位置当原点,每次切割前都要先往左跑一段,浪费时间。后来我设了一个负方向的原点移位量,让原点直接落在切割起点上,省掉了那一步。

设定方法:

  1. 先完成一次正常的原点回归,记录当前机械位置
  2. 手动把轴移到你想要的“真正原点”位置
  3. 计算两个位置的差值(带方向),填入“原点移位量”参数

举个例子:

近点狗位置:100.00 mm
目标原点位置:50.00 mm
原点移位量 = 50.00 - 100.00 = -50.00 mm

注意:移位量的方向跟回归方向有关。如果回归方向是正方向,移位量正数表示往正方向移,负数表示往负方向移。

3.4 调优流程总结

下面这张图是我自己总结的调优流程,你照着走一遍,基本不会出大问题。

原点回归调优流程图 原点回归调优流程图 选择回归方式 设定回归速度 设定爬行速度 设定原点移位量 验证重复精度 关键参数参考 回归速度:快进速度×60%~80% 爬行速度:回归速度×1%~10% 移位量:目标位置-当前位置 避坑提醒 • 爬行速度不能低于 伺服最低稳定速度 • 移位量注意方向符号

3.5 实战案例:一台三轴平台的回归调优

去年我调过一台三轴点胶平台,X轴行程800mm,Y轴600mm,Z轴200mm。客户要求重复精度±0.02mm。

我的做法:

  1. X轴:用近点狗式,回归速度80mm/s,爬行速度2mm/s,移位量0(因为传感器位置就是原点)
  2. Y轴:同样近点狗式,但Y轴负载重,回归速度降到60mm/s,爬行速度1.5mm/s
  3. Z轴:用数据设定式,因为Z轴有硬限位,每次开机先撞硬限位,然后设当前位置为原点

调完后测了10次回归,X轴最大偏差0.015mm,Y轴0.018mm,Z轴0.01mm。嗯,客户很满意。

我的习惯: 每次调完原点回归,我都会做“10次回归测试”,记录每次的原点位置,算一下最大值和最小值的差。如果这个差值超过你精度要求的1/3,就得重新调参数了。

3.6 常见问题与避坑

  • 问题:原点回归每次都停在不同位置
    可能原因:近点传感器信号抖动、爬行速度太快、机械间隙大。
    我曾经遇到过一台设备,每次回归偏差0.5mm,查了半天发现是近点传感器的安装支架松了。拧紧螺丝后,偏差降到0.02mm。
  • 问题:回归时撞到硬限位
    可能原因:回归方向设反了、近点传感器没信号、移位量太大。
    我的建议:第一次调试时,把回归速度设慢一点,手放在急停按钮上,随时准备按。
  • 问题:数据设定式原点丢失
    可能原因:编码器电池没电、伺服驱动器断电后位置丢失。
    解决办法:定期更换电池,或者在程序中加一个“原点校验”逻辑,每次开机先检查原点是否有效。