零位标定一步一步:机械基准、两点法与控制器参数怎么设
零位标定的本质,是把传感器输出的"电气位置"与设备的"机械位置"建立一一对应关系。磁致伸缩位移传感器输出的是绝对位置,断电不丢位(见 绝对 vs 增量),因此零位只需在装机时正确设定一次,之后无需每次开机回零。本文给出模拟量与总线两类接口的标定顺序、控制器侧参数怎么写,以及现场最常见的三个标定错误。安装前置条件见 安装调试实战,出厂线性化与死区补偿的原理见 出厂标定与线性化。
标定前必须先确认的三件事
顺序错了,标定做完也是白做。
- 机械已终态:油缸装配完成、限位块固定、支架紧固到位。机械行程后续若变动,标定值全部作废;
- 磁环安装已验证:同轴度、间隙、防松均已确认,手动全程走一遍无跳变,见 磁环安装 5 个坑;
- 接线与接地已固定:屏蔽层接地方式确定后不再改动,见 屏蔽线单端接地 vs 双端。模拟量回路若在标定后改动接地,零点会跟着变。
第一步:确定机械基准点
选择一个可重复到达、且长期不变的物理位置作为零点。优先级从高到低:机械硬限位(活塞完全缩回或顶到止动面)> 工艺基准面 > 任意中间位置。不要选"目测差不多"的中间位置作零点,因为它无法在换件后复现。
需要注意有效量程两端的盲区:测杆两端各有一段区域无法测量,零点不应压在盲区边缘,应向量程内让出余量,否则活塞到位时读数会失锁。盲区成因见 测量盲区。
第二步:读取原始位置值
把设备停在机械零点,读取传感器的未经缩放的原始值:模拟量接口读 PLC 的 AI 通道原始整数(或用万用表量 4-20 mA 的实际电流 / 0-10 V 的实际电压);总线接口读对象字典中的位置过程数据(CANopen 型号如 194 CANopen 系列 读 PDO 映射的位置值)。记录该数值,这是零点偏置量。
随后把设备移动到行程另一端(同样避开盲区),记录第二个原始值。两点之间的机械距离用卷尺、量块或设备自身的机械刻度实测,不要直接用图纸标称行程——图纸行程与实际装配行程常有出入。
第三步:在控制器里写入零点与量程系数
标准两点法的换算关系为:实际位置 = (原始值 − 零点原始值) × 标定行程 / (满程原始值 − 零点原始值)。绝大多数 PLC 的模拟量缩放指令(SCALE / NORM_X + SCALE_X)就是在做这件事,只需把上下限填成实测值而非理论值。
总线型号通常在设备侧就提供零点偏置与计数方向对象,可直接写入传感器,让传感器输出已对齐的位置值;这种方式的好处是 PLC 程序保持通用,换机型时改设备参数即可。
模拟量与总线标定方式对照
| 环节 | 模拟量接口(4-20 mA / 0-10 V) | 总线接口(CANopen / EtherCAT / Profinet 等) |
|---|---|---|
| 零点写在哪 | PLC 缩放指令的下限参数 | 传感器对象字典的零点偏置,或 PLC 侧换算 |
| 方向反转 | 调换缩放上下限,或选反向输出型号(如 20-4 mA) | 写计数方向 / 极性参数 |
| 断电保持 | 参数存于 PLC,随程序保持 | 需执行参数保存指令,否则掉电恢复默认 |
| 换传感器后 | 重新测两点、改缩放参数 | 重新写入并保存零点偏置 |
| 可验证性 | 可用万用表直接量电流/电压交叉验证 | 依赖主站诊断,需在线监视位置对象 |
第四步:三点验证,不合格就回退
标定完成后,在量程 10%、50%、90% 三点分别正反向到达并记录读数,与实测机械位置比对。判据有两条:一是各点偏差应在传感器非线性度(典型 <0.02%FS)折算到本量程的范围之内;二是同一点正反向到达的读数差应在重复精度量级(±0.002 mm 附近)。若中间点偏差明显大于两端,说明不是零位问题而是量程系数或机械行程测量有误,应重测两端点,而不是"再微调一下零点"。完整验收方法见 验收测试,偏差定位见 读数偏差逐一核。
现场最常见的三个标定错误
- 用图纸行程当标定行程:装配公差、限位块厚度都会改变实际行程,必须实测;
- 只标零点不标量程:单点标定只能保证零点附近准确,全程会出现随位置增大的比例误差;
- 总线型改完参数忘记保存:在线写入的零点偏置若未执行存储指令,下次上电即恢复出厂值,表现为"昨天调好了今天又不对"。
不同安装形式的零点选取差异也需注意:内置式如 16 系列液压缸内置式、17 系列液压缸集成式 的零点通常以活塞全缩位为基准;外置式如 18 系列外置式 则以滑座碰到机械止挡为基准,且需额外确认支架未随行程发生弹性变形。
工程师实操小贴士
- 模拟量输出在出厂时标定得比名义行程略宽,装机后必须重新校准(原文:all analog position transducers output signal were calibrated slightly wider than the stroke, after installation the machine needs to go through calibration)。
- 两点法:Slope = 实际位移 ÷ (行程端读数 − 零位读数);Datum = Slope × 零位读数;机器位置 = (Slope × 当前读数) − Datum(原文公式)。
- 实例:零位读数 0.2V,移动 98mm 后读数 9.5V → Slope = 98÷(9.5−0.2) = 10.537,Datum = 10.537×0.2 = 2.106(PDF 原文示例)。
常见问题
Q:磁致伸缩位移传感器每次开机需要回零吗?
不需要。它输出的是绝对位置,位置由磁环在波导丝上的物理位置决定,掉电期间磁环停在哪里,上电后读到的就是那个位置,无需参考点开关和回零动作。零位只在装机时设定一次。
Q:标定后读数在中间位置偏差最大,是零位没调好吗?
不是。零位错误表现为全程恒定偏差,中间偏差最大通常说明量程系数或两端标定点测量有误,也可能是机械行程与图纸不符。正确做法是重测两端点的原始值与实际机械距离并重算系数,而不是继续微调零点。
Q:冷机标定后运行发热,零位跑了怎么办?
属于温漂的正常表现。波导丝声速与机械结构长度都随温度变化,液压系统尤为明显。建议在系统油温达到稳定工作状态后重新标定;精度要求高的场合可在控制器侧加入温度补偿,或选用适配高温工况的型号。
Q:总线型传感器的零点写进去了,为什么第二天又不对?
多数是参数未执行保存指令。在线写入的零点偏置只存在于易失存储中,掉电即恢复出厂默认值。写完参数后必须执行设备的参数存储命令,并立即做一次断电重启验证,确认上电即读到正确位置。






