4. 电子齿轮与电子凸轮:电子齿轮比原理、电子凸轮曲线设计、在PLCopen中的实现

各位工程师朋友,今天我们来聊聊运动控制里两个非常核心的概念——电子齿轮和电子凸轮。说实话,这两个东西在自动化设备里太常见了。我刚开始做项目那会儿,总觉得它们就是软件里配几个参数的事。后来踩过坑才明白,里面的门道可不少。

4.1 电子齿轮比原理

电子齿轮,说白了就是让两个轴按照固定的比例同步旋转。比如主轴转一圈,从轴转两圈。这个比例就是电子齿轮比。

为什么要用电子齿轮?你想想看,机械齿轮有磨损、有间隙,换起来还麻烦。电子齿轮完全靠软件实现,精度高、响应快、还能随时调整。我在做印刷机项目时,就靠它解决了套色不准的老大难问题。

4.1.1 基本原理

电子齿轮的核心公式其实很简单:

从轴位置 = 主轴位置 × 电子齿轮比

但实际实现时,我们通常用两个参数来表示:

电子齿轮比 = 分子 / 分母

举个例子,如果主轴转3圈,从轴要转2圈,那齿轮比就是 2/3。嗯,这里要注意,分子分母都是整数,不能是小数。为什么?因为PLC内部做的是整数运算,用小数容易丢精度。

4.1.2 实际应用中的坑

我曾经犯过的错:有一次做包装机,我直接把齿轮比设成了 1.3333。结果跑起来后,从轴位置越偏越多。后来改成 4/3,问题就解决了。记住,能用分数就别用小数。

另外,电子齿轮比不是越大越好。比值太大,从轴电机容易过载。我一般建议控制在 10:1 以内。如果确实需要大比例,可以考虑用多级电子齿轮。

4.1.3 在PLCopen中的实现

PLCopen标准里,电子齿轮功能块叫 MC_GearIn。它的主要参数有:

参数名 说明 我的建议
Master 主轴参考 用编码器或虚拟轴
Slave 从轴 注意加减速设置
RatioNumerator 分子 用整数,别偷懒
RatioDenominator 分母 同上
Acceleration 加速度 设太小会丢步

代码示例:

// 电子齿轮啮合
MC_GearIn(
    Master := Axis_Main,
    Slave := Axis_Slave,
    RatioNumerator := 2,
    RatioDenominator := 3,
    Acceleration := 1000,
    Execute := TRUE
);

小技巧:我习惯在啮合前先让从轴追上主轴的位置,用 MC_GearInPos 功能块。这样啮合瞬间不会产生冲击。

4.2 电子凸轮曲线设计

电子凸轮比电子齿轮更灵活。它不是固定比例,而是让从轴按照一条自定义曲线跟随主轴运动。说白了,就是主轴走到某个位置,从轴必须走到对应的位置。

我在做飞剪项目时,电子凸轮帮了大忙。切刀要跟着材料跑,切完快速返回,这种动作用电子齿轮根本做不了。

4.2.1 凸轮曲线的类型

常用的凸轮曲线有几种:

  • 多项式曲线:平滑性好,适合高速场合
  • 修正正弦曲线:加速度连续,冲击小
  • 梯形曲线:简单粗暴,但加减速有突变
  • 自定义曲线:用点表定义,最灵活

我个人最喜欢用修正正弦曲线。为什么?因为它兼顾了速度和精度。有一次做贴标机,用梯形曲线时标签总是贴歪,换成修正正弦后问题就解决了。

4.2.2 曲线设计要点

设计凸轮曲线时,有几个关键点要注意:

  1. 主轴周期:一个完整的运动循环对应的主轴行程
  2. 从轴行程:从轴在这个周期内的总位移
  3. 速度限制:从轴的最大速度不能超过电机额定值
  4. 加速度限制:加速度太大会导致机械振动

避坑指南:我曾经设计过一条曲线,从轴速度变化太剧烈。结果机器一跑起来,整个机架都在抖。后来我把加速度限制在 5000 mm/s² 以内,才稳定下来。所以,曲线设计时一定要算好加速度。

4.2.3 在PLCopen中的实现

PLCopen里,电子凸轮用 MC_CamIn 功能块。你需要先定义一张凸轮表:

// 定义凸轮表
CamTable := [
    (MasterPos := 0, SlavePos := 0),
    (MasterPos := 90, SlavePos := 50),
    (MasterPos := 180, SlavePos := 100),
    (MasterPos := 270, SlavePos := 50),
    (MasterPos := 360, SlavePos := 0)
];

// 啮合电子凸轮
MC_CamIn(
    Master := Axis_Main,
    Slave := Axis_Slave,
    CamTable := CamTable,
    MasterStartDistance := 0,
    MasterSyncPosition := 0,
    SlaveSyncPosition := 0,
    Execute := TRUE
);

这里要注意,凸轮表的点数不是越多越好。点太多,PLC计算负担重;点太少,曲线不够平滑。我一般用 100-200 个点,效果不错。

4.3 知识体系总览

为了让大家更直观地理解本章的知识结构,我画了一张图:

电子齿轮与电子凸轮 电子齿轮(固定比例) 电子凸轮(自定义曲线) 原理:从轴 = 主轴 × 分子/分母 PLCopen:MC_GearIn / MC_GearInPos 曲线类型:多项式/修正正弦/梯形 PLCopen:MC_CamIn + 凸轮表 关键:比例要准、曲线要平滑、加速度要可控

这张图把电子齿轮和电子凸轮的核心要点都串起来了。左边是固定比例的齿轮,右边是灵活多变的凸轮。两者各有各的用武之地,选哪个要看你的工艺需求。

4.4 总结

电子齿轮和电子凸轮,说白了就是让多个轴协同工作的两种方式。齿轮简单可靠,适合固定比例的场景;凸轮灵活多变,适合复杂轨迹的场合。

在实际项目中,我建议你先想清楚工艺要求。如果只是简单的同步,用电子齿轮就够了。如果要做飞剪、贴标、包装这类复杂动作,那就得上电子凸轮。

嗯,最后提醒一句:不管用哪种方式,调试时一定要先低速跑一遍,确认曲线没问题再提速。我曾经因为偷懒跳过这一步,结果把一台价值十几万的设备搞坏了。教训深刻啊。


专注资料整理