步进电机因其无需反馈就能对位置和速度进行控制而在工业自动化设备中的应用极为广泛,对于速度变化较大的,尤其是加减速频繁的设备,常常发生力矩不足或者失步的现象,而实际上许多案例中步进电机的选型并没有问题,其问题在于负载位置对控制电路没有反馈,步进电机就必须正确响应每次励磁变化,如果励磁频率选择不当,电机不能够移到新的位置,那么实际的负载位置相对控制器所期待的位置出现****误差,即发生失步现象或过冲现象。因此在速度变化较大的步进电机控制系统中,防止失步和过冲是开环控制系统能否正常运行的关键。 失步和过冲现象分别出现在步进电机启动和停止的时候。一般情况下,系统的极限启动频率比较低,而要求的运行速度往往比较高。如果系统以要求的运行速度直接启动,因为该速度已超过极限启动频率而不能正常启动,轻则可能发生丢步,重则根本不能启动,产生堵转。系统运行起来以后,如果达到终点时立即停止发送脉冲串,令其立即停止,则由于系统惯性作用,电机转子会转过平衡位置,如果负载的惯性很大,会使步进电机转子转到接近终点平衡位置的下一个平衡位置,并在该位置停下。 为了克服失步和过冲现象,应在步进电机启停时进行如图1所示的加减速控制。 从上图可以看出,L2段为恒速运行,L1 段为升频,L3段为降频,按照“失步”的定义, 如果在 L1 及 L3 段上升及下降的控制频率变化大于步进电机的响应频率变化,步进电机就会失步,失步会导致步进电机停转,经常会影响系统的正常工作,因此,在步进电机变速运行中,必须进行正确的加减速控制。 以下按不同的控制单元,介绍几种常用的步进电机加减速控制方法。 1、运动控制卡作上位控制单元--以MPC01系列运动卡为例MPC01系列运动控制卡可以作为PC机运动控制系统的核心控制单元。卡上的专用运动控制芯片可自动进行升降速计算。其运动控制函数库中也有专门进行梯形升降速运动参数设置的函数--set_profile(int ch, double ls, double hs, double accel)。其参数定义如下: ch: 设定的轴号。 ls: 设定低速(起始速度)的值。 单位为pps(脉冲/秒)hs: 设定高速(恒速段)的值。单位为pps(脉冲/秒)accel:设定加速度大小。单位为ppss(脉冲/秒/秒)用户在调用运动指令函数时,只需指定总的脉冲数, 运动控制卡上的专用运动控制芯片便按照setprofile函数设置的运动参数自动进行升降速计算,而不会占用PC机的CPU资源。 2、用具有运动控制功能的PLC做上位控制单元--以松下FP0系列PLC为例 松下FP0系列PLC具有专用的运动控制指令,其CPU单元可自动进行图1所示的升降速计算。和MPC01系列运动控制卡相似,用户只需设置梯形速度的初速度ls、恒速hs、加速时间t和所需发的脉冲数P。运行此程序段,当PLC检测到输入端X2的一个上跳变时,便自动执行如图1所示的升降速脉冲输出功能。 3、用单片机做上位控制单元采用微机对步进电机进行加减速控制,实际上就是改变输出脉冲的时间间隔,升速时使脉冲串逐渐加密,减速时使脉冲串逐渐稀疏。采用定时器中断方式控制电机变速时,实际上是不断改变定时器装载值的大小。 单片机在控制电机加减速的过程中,一般用离散方法逼近理想的升降速曲线。加减速的斜率在直线加速过程中,速度不是连续变化,而是按分档阶段变化,为与要求的升速斜率相逼近,必须确定每个台阶上的运行时间,见图3。时间Δt越小,升速越快,反之越慢。Δt的大小可由理论或实验确定,以升速最快而又不失步为原则。每个台阶的运行步数为为Ns=fsΔt=sΔN,反映了每个速度台阶运行步数与当前速度s之间的关系,程序执行过程中,每次速度升一档,都要计算这个台阶应走的步数,然后以递减方式检查,当减至零时,该档速度运行完毕,升入又一档速度。 电机在升速过程中,对升速总步数进行递减操作,当减至零时升速过程结束,转入匀速运转过程。减速过程的规律与升速过程相同,只是按相反的顺序进行。在步进电机的启停过程中,根据控制系统的具体特点,采用上述三种升降速控制方式之一,都可以避免电机失步或过冲,达到比较精确的控制。而在速度变化过大的应用中,S线的加减速效果优于斜线的加减速方式。
联系人:王工 18501531992 |