4、PLCopen Part 2 扩展元素:多轴协调、凸轮表、电子齿轮、虚拟轴与逻辑轴
在工业机器人、包装机械、印刷设备及金属成形等高端装备中,单轴运动控制已无法满足工艺对轨迹、同步与节拍的要求。PLCopen Part 2 在基础运动控制指令之上,定义了多轴协调、凸轮表、电子齿轮、虚拟轴与逻辑轴等扩展元素。这些元素并非简单的功能堆叠,而是构建分布式智能运动控制系统的核心架构组件。本章将深入剖析这些扩展元素的原理、配置方法、工程案例及常见误区,帮助学员建立从“单轴驱动”到“多轴协同”的完整认知。
上图展示了 PLCopen Part 2 中轴模型的核心关系:虚拟轴作为主参考源,通过电子齿轮或凸轮表驱动逻辑轴,逻辑轴再映射到物理轴。这种分层架构使得运动控制程序与具体硬件解耦,极大提升了代码的可移植性与柔性制造能力。下面我们将逐一拆解这些元素的工程实现要点。
4.1 多轴协调:从主从跟随到相位同步
核心原理
多轴协调的本质是建立轴与轴之间的运动学约束关系。PLCopen Part 2 定义了三种基本协调模式:主从跟随(Gear)、相位同步(Phasing)和插补协调(Interpolation)。主从跟随通过电子齿轮实现比例同步;相位同步允许在保持速度比例的同时调整相位偏移;插补协调则用于笛卡尔空间轨迹规划,如直线、圆弧插补。在工程中,多轴协调的难点不在于指令调用,而在于对机械传动间隙、弹性形变及伺服响应延迟的补偿。
判断方法或操作流程
选择协调模式时,应遵循以下判断流程:
- 工艺需求分析:若仅需速度比例同步(如传送带与切割刀),选用电子齿轮;若需周期性非比例运动(如飞剪、凸轮机构),选用凸轮表;若需空间轨迹(如码垛机器人),选用插补协调。
- 动态响应评估:电子齿轮对总线周期敏感,建议在 1ms 以内;凸轮表适合低速高精度场景;插补协调需启用前瞻控制(Look-Ahead)。
- 轴属性确认:确认主轴是虚拟轴还是物理轴,从动轴是否支持位置/速度切换。
案例拆解:双轴电子齿轮的同步印刷
某印刷机需要将印版滚筒(轴A)与压印滚筒(轴B)保持 1:1 同步,且允许在运行中微调相位。初始方案采用机械齿轮,但更换版辊时需手动调整,耗时 20 分钟。改用 PLCopen 电子齿轮后,轴A设为主轴,轴B设为从轴,使用 MC_GearIn 指令建立 1:1 关系。关键参数设置如下:
MC_GearIn( Master := AxisA, Slave := AxisB, RatioNumerator := 1, RatioDenominator := 1, Acceleration := 500, Deceleration := 500, Jerk := 1000 );
运行中通过 MC_Phasing 指令动态调整相位偏移,补偿印版厚度差异。结果:换版时间缩短至 3 分钟,套印精度从 ±0.15mm 提升至 ±0.05mm。风险点在于:若总线抖动导致主轴位置跳变,从轴会瞬间加速,因此需在程序中增加主轴位置变化率监控。
MC_GroupEnable 和 MC_GroupReset,并检查所有轴的 StatusWord 中的 StandStill 位。否则,在轴运动过程中直接激活协调指令,可能引发跟踪误差过大报警。
常见误区与复盘
- 误区一:认为电子齿轮比必须为整数。实际上,PLCopen 支持 32 位分子/分母,可实现非整数比,但需注意分母过大会导致速度分辨率下降。
- 误区二:忽略加减速限制。从动轴的加速度应小于其物理极限,否则会触发跟随误差报警。建议在
MC_GearIn中设置合理的Acceleration参数。 - 复盘:某包装线因未设置 Jerk 限制,导致从轴在启动瞬间产生机械冲击,损坏凸轮从动件。后续增加 Jerk 参数并启用 S 曲线滤波,问题解决。
4.2 凸轮表:非线性的艺术与数据工程
核心原理
凸轮表(Cam Table)用于定义主轴位置与从轴位置之间的非线性映射关系。PLCopen 使用 MC_CamTableSelect 选择凸轮表,MC_CamIn 激活凸轮耦合。凸轮表数据存储于控制器内存,支持线性插值或三次样条插值。工程中,凸轮表的设计直接决定设备振动、噪声与产品精度。一个典型的凸轮表包含 100~1000 个数据点,数据点越多,曲线越平滑,但占用内存与扫描周期也越长。
判断方法或操作流程
凸轮表设计流程如下:
- 运动曲线规划:根据工艺要求(如推程、回程、停留角)计算从动件位移-时间曲线。
- 数据点生成:使用工具(如 Excel 或专用软件)离散化曲线,生成
MasterPosition与SlavePosition数组。 - 数据导入与校验:通过
MC_CamTableSelect加载数据,并检查单调性(主轴位置必须单调递增)。 - 平滑性验证:计算二阶导数,确保无突变点。
案例拆解:飞剪凸轮表的优化
某飞剪设备原凸轮表在高速运行时(300 次/分钟)产生明显振动。分析发现,凸轮表在剪切点附近数据点过稀,导致插值误差大。优化措施:
- 将剪切区(主轴角度 170°~190°)的数据点密度从 1°/点加密至 0.1°/点。
- 采用三次样条插值替代线性插值。
- 在 PLC 中启用
MC_CamIn的CamTableID切换功能,实现两套凸轮表(高速/低速)自动切换。
结果:振动加速度从 2.5g 降至 0.8g,剪切精度提升至 ±0.2mm。代价是内存占用增加 30%,但控制器 CPU 负载仅上升 5%。
MC_CamIn 的 MasterScaling 参数,并设置软限位。
常见误区与总结
- 误区一:凸轮表数据点越多越好。实际上,过密的数据点会增加扫描周期,且对插值算法要求更高。建议根据主轴速度动态调整数据点密度。
- 误区二:忽略凸轮表的周期性。对于连续旋转的飞剪,凸轮表应设置为周期模式(
Periodic := TRUE),否则在主轴旋转一圈后从轴位置会跳变。 - 总结:凸轮表是“数据驱动的运动控制”,其核心在于数据质量与插值算法的匹配。建议在调试阶段使用示波器监控从轴实际位置与理论位置的偏差。
4.3 电子齿轮:柔性传动比与动态切换
核心原理
电子齿轮(Electronic Gear)通过软件定义主从轴的速度比例,替代机械齿轮箱。PLCopen 的 MC_GearIn 指令支持动态修改传动比(RatioNumerator/RatioDenominator),且可在运行中切换。其核心优势在于:无机械磨损、传动比可编程、支持多级齿轮链。但电子齿轮对控制器的实时性要求极高,从轴的位置环周期必须与主轴同步。
操作流程与参数配置
配置电子齿轮的关键步骤:
- 确定主从轴:主轴可以是物理轴、虚拟轴或逻辑轴。
- 设置传动比:注意分子分母的符号,负值可实现反向旋转。
- 设定加减速:从轴的加速度应小于其物理极限,否则会触发跟随误差报警。
- 启用跟随窗口:设置
FollowingWindow参数,当从轴位置偏差超过窗口值时触发报警。
实战场景:虚拟主轴驱动的多工位转盘
某转盘设备有 8 个工位,每个工位需要独立的速度调整。传统方案使用机械主轴,无法实现工位间速度微调。采用虚拟轴作为主轴,每个工位使用独立的电子齿轮连接至虚拟轴。通过修改各工位的传动比,实现工位间速度差异(如干燥工位减速 10%,冷却工位加速 5%)。关键代码:
// 虚拟主轴启动
MC_Power( Axis := VirtualAxis, Enable := TRUE );
MC_MoveVelocity( Axis := VirtualAxis, Velocity := 1000 );
// 工位1电子齿轮
MC_GearIn( Master := VirtualAxis, Slave := Station1Axis, RatioNumerator := 90, RatioDenominator := 100 );
// 工位2电子齿轮
MC_GearIn( Master := VirtualAxis, Slave := Station2Axis, RatioNumerator := 105, RatioDenominator := 100 );
结果:产品合格率从 92% 提升至 98%,且换产时只需修改传动比参数,无需机械调整。
MC_GearOut 后重新 MC_GearIn)存在短暂的速度中断。若工艺不允许中断,可使用 MC_GearInPos 指令,在指定位置完成啮合,实现无冲击切换。
常见误区与复盘
- 误区一:电子齿轮比设置过大(如 100:1),导致从轴速度分辨率不足。建议传动比不超过 1000:1。
- 误区二:忽略主轴速度变化率。若主轴急停,从轴会因跟随误差过大而报警。应在程序中联动执行
MC_GroupStop。 - 复盘:某印刷设备因电子齿轮的
Acceleration参数设置过小,导致从轴在加速阶段滞后,产生套印误差。将加速度从 1000 提升至 5000 后,误差消除。
4.4 虚拟轴与逻辑轴:架构解耦与柔性映射
核心原理
虚拟轴(Virtual Axis)不关联物理电机,仅存在于控制器内部,用于生成运动参考。逻辑轴(Logical Axis)则是物理轴的抽象映射,一个逻辑轴可在不同时间映射到不同物理轴(如换刀机构)。这种架构的核心价值在于:程序与硬件解耦。当设备更换执行器时,只需修改逻辑轴到物理轴的映射表,无需重写运动程序。
判断方法或操作流程
设计轴架构时,应遵循以下原则:
- 虚拟轴使用场景:需要多轴同步的公共参考源(如传送带主轴)、模拟测试环境、或作为插补坐标系的原点。
- 逻辑轴使用场景:设备具有可互换的执行器(如机器人换枪)、或需要冗余切换(如双电机驱动同一负载)。
- 映射配置:在 PLCopen 中,通过
MC_ReadAxisInfo获取逻辑轴当前映射的物理轴,使用MC_WriteAxisInfo修改映射。
案例拆解:柔性装配线的逻辑轴切换
某装配线有 3 个工位,每个工位配备不同的夹爪(气动/伺服)。传统方案为每个夹爪配置独立轴,导致程序冗余。采用逻辑轴方案:定义逻辑轴 GripperAxis,通过程序切换其映射到物理轴 Gripper1、Gripper2 或 Gripper3。切换流程:
- 使用
MC_GroupDisable禁用逻辑轴。 - 调用
MC_WriteAxisInfo修改映射。 - 重新启用逻辑轴并执行回零。
结果:程序代码量减少 40%,换型时间从 15 分钟缩短至 2 分钟。风险在于:切换过程中逻辑轴位置丢失,需重新执行 MC_Home。
常见误区与总结
- 误区一:将虚拟轴当作普通轴使用,直接执行
MC_MoveAbsolute。虚拟轴通常只作为主参考,不应执行定位指令,否则会破坏同步关系。 - 误区二:逻辑轴映射切换时未检查物理轴状态。若物理轴正在运动中,切换会导致位置跳变。务必在切换前执行
MC_GroupStop。 - 总结:虚拟轴与逻辑轴是 PLCopen 架构的“软实力”,合理使用可大幅提升系统的可维护性与扩展性。建议在项目初期就定义好轴架构,避免后期重构。
| 扩展元素 | 核心指令 | 典型应用 | 关键参数 | 常见风险 |
|---|---|---|---|---|
| 电子齿轮 | MC_GearIn/Out | 传送带同步、印刷套准 | RatioNumerator/Denominator | 跟随误差过大 |
| 凸轮表 | MC_CamIn/Out | 飞剪、冲压、包装成型 | CamTableID, MasterScaling | 数据点稀疏导致振动 |
| 虚拟轴 | MC_MoveVelocity | 多轴公共参考源 | Velocity, Acceleration | 资源占用过高 |
| 逻辑轴 | MC_WriteAxisInfo | 换刀、执行器切换 | AxisMapping | 切换时位置丢失 |
| 相位同步 | MC_Phasing | 动态相位补偿 | PhaseShift | 相位跳变 |
在实际工程中,上述扩展元素往往组合使用。例如,一台电子凸轮印刷机可能同时使用虚拟轴作为主轴、电子齿轮驱动送料辊、凸轮表驱动压印滚筒、逻辑轴实现版辊快速更换。掌握这些元素的协同设计,是成为高级运动控制工程师的关键一步。建议学员在仿真环境中(如 TwinCAT、Codesys)搭建虚拟轴与逻辑轴模型,通过示波器观察各轴的位置/速度曲线,深入理解数据流与控制流的交互。