ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

小型PLC脉冲输出与运动控制实战:选型、接线、编程与避坑指南

小型PLC脉冲输出与运动控制实战:选型、接线、编程与避坑指南

1. 为什么小型PLC的脉冲输出值得单独拎出来聊

很多人第一次接触运动控制,都是从一台小型PLC加上一个步进驱动器开始的。项目标题叫“小型PLC的脉冲输出及运动控制”,听起来像是手册里的一个章节,但真正做过设备的人都知道,这里面藏着不少门道。小型PLC通常指本体点数在几十点以内、体积紧凑、价格亲民的那一类控制器,它们大多自带高速脉冲输出口,能直接驱动步进电机或伺服驱动器,完成定位、调速、回零这些基础动作。对于做包装机、点胶机、小型数控滑台、送料机构的工程师来说,这套组合几乎是入门标配。

我之所以想把这个话题单独拿出来写,是因为在实际项目里,脉冲输出这块出问题的地方特别集中:有人搞不清脉冲加方向与双脉冲的区别,有人被最高频率卡住导致电机高速丢步,有人回零方式选错导致每次开机位置漂移,还有人把脉冲线跟动力线捆在一起,结果干扰到怀疑人生。这些问题在手册里往往只有一句话,但在现场就是半天甚至一天的停机。这篇文章会从方案选型、参数计算、接线要点、程序结构、回零逻辑、常见故障排查几个角度,把小型PLC做运动控制这件事讲透,适合刚上手运动控制的电气工程师、设备调试员,也适合想从继电器逻辑转向脉冲控制的PLC程序员。

2. 小型PLC脉冲输出的底层逻辑与方案选型

2.1 脉冲输出到底在输出什么

脉冲输出本质上就是PLC通过晶体管输出口,按照设定的频率和数量,快速切换通断状态。每一次完整的通断周期就是一个脉冲,驱动器收到这些脉冲后,按内部设定的细分和电流驱动电机走固定角度。脉冲数量决定走多远,脉冲频率决定走多快,方向信号决定往哪走。这三件事构成了最基础的位置控制模型。

小型PLC的脉冲口通常挂在Y0、Y1、Y2这类支持高速输出的端子上,普通继电器输出点响应速度只有几十赫兹,根本没法做脉冲,所以选型第一件事就是确认输出类型必须是晶体管漏型或源型。很多新手买回一台继电器输出的PLC,发现脉冲指令发不出去,其实就是硬件层面不支持。

2.2 脉冲加方向、双脉冲、正交脉冲怎么选

市面上常见的脉冲输出模式有三种:脉冲加方向、双脉冲、正交脉冲。脉冲加方向是最常用的,一个口发脉冲,另一个口发高低电平表示方向,接线简单,驱动器兼容性最好。双脉冲也叫正反脉冲,正转发一个口,反转发另一个口,适合某些老式驱动器。正交脉冲则是两路相位差90度的脉冲,多用于编码器反馈或需要倍频的场合。

对于小型PLC控制步进或伺服,我一般优先选脉冲加方向。原因很直接:占用输出点少,程序里方向位单独控制,调试时用示波器一看就明白。双脉冲虽然也能用,但两个口都要支持高速输出,对PLC资源要求更高,而且一旦接线反了,电机行为会很奇怪。正交模式在纯定位场景里基本用不上,除非你要做位置闭环或者需要四倍频提高分辨率。

2.3 最高脉冲频率决定了你的速度上限

小型PLC的脉冲频率上限通常在100kHz到200kHz之间,个别型号能到500kHz。这个参数直接决定电机最高转速。举个例子,驱动器细分设为1600脉冲每转,PLC最高输出100kHz,那么电机最高转速就是100000除以1600,等于62.5转每秒,也就是3750转每分钟。看起来够用,但如果你选的步进电机在高速段扭矩衰减严重,实际能稳定运行的转速可能只有一半。

这里有个经验公式:所需最高脉冲频率等于电机目标转速乘以每转脉冲数再除以60。选型时要把这个值留出至少30%余量,因为PLC在同时处理其他逻辑时,脉冲输出可能会受扫描周期影响。我见过有人把频率用到极限,结果一开其他输出点,脉冲就抖得厉害,电机发出异响。

2.4 晶体管输出与差分输出的区别

普通晶体管输出是单端信号,抗干扰能力一般,适合脉冲频率不高、线缆不长的场合。差分输出用两根线传输互补信号,抗共模干扰能力强,适合高频、长距离。小型PLC大多只提供单端输出,如果现场干扰大或者线缆超过两米,建议加一块差分转单端或光耦隔离板。

注意:单端输出接线时,务必确认PLC输出公共端与驱动器脉冲输入公共端的电平匹配。漏型输出接共阳驱动器,源型输出接共阴驱动器,接反了要么没脉冲,要么直接烧口。

3. 核心参数计算与接线实操要点

3.1 细分、脉冲当量与电子齿轮比

细分是驱动器把电机一个整步再切分成多少份。比如步进电机整步1.8度,200步一圈,驱动器设4细分,就是800脉冲一圈。脉冲当量就是每个脉冲对应的机械位移。以丝杠导程5毫米为例,电机转一圈走5毫米,800脉冲一圈,脉冲当量就是5除以800,等于0.00625毫米每脉冲。

伺服这边多了一个电子齿轮比,用来匹配PLC发出的脉冲数与电机编码器分辨率。公式是电子齿轮比等于编码器分辨率除以电机一圈所需脉冲数。比如编码器17位,131072脉冲一圈,你希望上位机发10000脉冲电机转一圈,齿轮比就设131072比10000,约分后填进驱动器参数。

计算时一定要把机械减速比算进去。如果电机通过同步带减速,减速比2比1,那实际脉冲当量还要再除以2。我习惯在Excel里拉一个表,把导程、减速比、细分、齿轮比全列进去,改一个参数自动出结果,省得每次重新算。

3.2 接线图与抗干扰处理

脉冲控制接线不复杂,但细节决定成败。以脉冲加方向为例,PLC的Y0接驱动器PU,Y1接DR,PLC输出公共端接驱动器公共端,驱动器使能信号可以接PLC的普通输出点或者直接短接。关键点在于:

  • 脉冲线和方向线必须使用双绞线或屏蔽线,屏蔽层单端接地,通常接驱动器侧。
  • 脉冲线绝对不能与电机动力线、变频器输出线走同一个线槽,平行走线距离至少保持20厘米以上。
  • 如果线缆较长,在驱动器输入端并联一个几百欧姆的电阻,可以加快脉冲边沿,减少丢脉冲。
  • 24V电源给PLC和驱动器供电时,建议分开走线,或者加磁环抑制高频噪声。

我遇到过一台设备,脉冲线跟伺服动力线捆在一起走了三米,结果电机低速还行,一上高速就乱走。后来把脉冲线单独穿管,问题立刻消失。这种坑,手册不会写,但现场一抓一个准。

3.3 回零方式的选择与参数设置

回零是运动控制里最容易出问题的环节。常见回零方式有:原点开关加编码器Z相、原点开关加找边沿、仅靠限位开关、绝对位置记忆。小型PLC通常支持前几种。

原点开关加Z相是最稳的,先高速找原点开关,再低速找Z相信号,重复精度能到一个脉冲以内。但要求驱动器能输出Z相,并且PLC有高速计数口。如果驱动器没有Z相输出,就只能用原点开关加找边沿,精度取决于开关重复性和找边沿速度。

回零速度分两段:第一段高速接近,第二段低速精找。低速段速度一般设为一到两转每秒,太快会冲过原点,太慢浪费时间。加减速时间也要设,通常100到300毫秒,太短会丢步,太长影响节拍。

提示:回零前一定要确认原点开关信号正常,并且机械上能安全触发。我见过原点开关坏了,设备一直往一个方向冲,最后撞限位才停,非常危险。

4. 程序结构与运动控制指令实战

4.1 脉冲输出指令的调用方式

不同品牌小型PLC的脉冲指令名字不一样,但逻辑相通。以常见的几类为例,有的用PLSY发连续脉冲,用PLSR发带加减速的定位脉冲,用DRVI做相对定位,用DRVA做绝对定位。调用时通常要指定脉冲口、脉冲数、频率、方向位。

程序结构上,我习惯把运动控制做成状态机:空闲、回零中、定位中、暂停、报警。每个状态只做一件事,状态切换靠条件跳转。这样调试时一眼能看出卡在哪一步,也方便加急停和限位保护。

一个典型的定位流程是:先判断伺服就绪和原点完成,然后触发定位指令,等待定位完成标志,再执行下一个动作。定位完成标志有的PLC是指令自带的,有的需要靠脉冲输出完成中断或者高速计数比较。如果PLC没有完成标志,可以用一个定时器估算时间,但精度差,不推荐。

4.2 多轴联动与插补的边界

小型PLC大多只支持两轴或三轴独立脉冲输出,真正带直线插补、圆弧插补的型号价格会高不少。如果你的应用只是XY平台走点位,不需要走斜线,那独立轴完全够用。如果需要走斜线,要么选带插补功能的PLC,要么用上位机算好每个轴的脉冲数和频率,分别发给两个轴。

这里有个实用技巧:走斜线时,两个轴的脉冲数不同,但要求同时到达。可以按最长轴算基准频率,另一个轴按比例降频。比如X轴走10000脉冲,Y轴走5000脉冲,X轴频率设10kHz,Y轴就设5kHz,这样两轴同时启动同时停止,轨迹就是直线。这个方法在点胶、切割里很常用,不需要插补也能凑合。

4.3 加减速曲线的设置

步进电机最怕突然启停,容易丢步或过冲。所以脉冲指令一定要带加减速。梯形加减速最简单,S形加减速更平滑但参数多。小型PLC一般提供梯形加减速,需要设起始频率、运行频率、加速时间、减速时间。

起始频率不能太低,太低电机在低速段会共振;也不能太高,太高启动会丢步。一般步进电机起始频率设在1kHz到2kHz,伺服可以更高。加速时间根据负载惯量调,负载越重,加速时间越长。我通常先设一个保守值,比如300毫秒,然后逐步缩短,直到电机刚好不丢步为止。

注意:加减速时间不是越短越好。有些设备为了提节拍把加速时间压到50毫秒,结果电机发热严重,长期运行后丢步越来越频繁。宁可慢一点,也要稳。

5. 常见故障排查与避坑经验实录

5.1 电机不转或方向反了

电机不转先查三件事:驱动器使能是否打开、脉冲模式是否匹配、PLC输出口是否真的在发脉冲。用万用表测脉冲口对公共端电压,发脉冲时应该有跳变,如果一直是高电平或低电平,说明程序没执行到或者口坏了。方向反了最简单,把方向位取反,或者调换电机任意一相接线。

5.2 高速丢步与低速共振

高速丢步通常是脉冲频率超过电机扭矩曲线,或者加减速太猛。解决办法是降最高频率、延长加速时间、提高驱动器电流。低速共振发生在某个特定转速区间,电机发出嗡嗡声,解决办法是加细分、调整驱动器电流、或者避开那个转速区间。

5.3 回零不准与位置漂移

回零不准先看原点开关重复性,用百分表打一下,开关每次触发位置是否一致。再看找边沿速度,太快会冲过。位置漂移如果是逐渐累积,可能是丢步;如果是每次开机不一样,可能是回零方式问题。绝对位置系统要检查电池是否没电。

5.4 干扰导致的随机乱走

干扰问题最头疼,表现是电机偶尔走错位置、脉冲计数不对、驱动器报警。排查步骤:先断开电机动力线,只发脉冲看是否正常;再逐步接上动力线,看什么时候出问题。解决办法包括加屏蔽、分开走线、加磁环、驱动器电源加滤波器。我一般会在脉冲线上套一个铁氧体磁环,成本几块钱,效果立竿见影。

故障现象可能原因排查方法解决措施
电机不转使能未开、模式错、口坏测脉冲口电压、查驱动器状态开使能、改模式、换口
高速丢步频率过高、加速太短降频测试、延长加速降最高频率、加时间
低速共振细分低、电流不匹配改变转速观察加细分、调电流
回零不准开关重复性差、速度太快打表测重复性换开关、降速
随机乱走干扰、接地不良分段断开排查屏蔽、分开走线、加磁环

5.5 程序层面的隐形坑

程序上最容易忽略的是脉冲指令的触发条件。如果用一个上升沿触发定位,但条件一直为真,指令可能重复触发或者不触发。正确做法是用一个一次性标志位,触发后复位,等定位完成再允许下一次。另外,急停处理要直接切断使能或者停止脉冲输出,不能只靠程序逻辑停,否则电机可能继续走。

还有一点,很多小型PLC的脉冲输出会占用高速计数口或者中断资源,用了脉冲输出后,某些高速计数功能就不能同时用。选型时要看清楚资源分配表,别到写程序才发现冲突。

6. 从单轴到多轴:扩展思路与选型建议

单轴玩明白之后,很多人会想上多轴。小型PLC做多轴,首先要看本体支持几个脉冲口,一般两到三个。如果不够,可以加脉冲扩展模块,但要注意扩展模块的脉冲频率上限可能比本体低。另一个思路是用通讯控制伺服,比如走总线或者串口,把脉冲发生交给驱动器或远程IO,PLC只发指令。这种方式省脉冲口,但实时性和同步性要看通讯周期。

选型时我一般按这几个维度打分:脉冲频率上限、支持轴数、是否有插补、回零方式丰富度、编程软件易用性、价格。对于简单点位控制,国产小型PLC完全够用,性价比高。对于需要插补或高同步的场合,建议直接上专用运动控制器或者带运动控制功能的中型PLC,别硬撑。

最后分享一个我自己的习惯:每次做完一个脉冲控制项目,我都会把最终的细分、齿轮比、回零速度、加减速时间、脉冲当量记在一个表格里,下次遇到类似机构直接套用,能省很多调试时间。运动控制这东西,经验比理论值钱,踩过的坑越多,后面就越顺。

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进