“S“型曲线加减速在42步进电机的位置控制和速度控制中的交叉应用

本文详细介绍了如何利用S型曲线实现42步进电机的平滑加减速控制,包括S型加速理论解析、程序实现和控制逻辑制定。作者通过STM32F103C8T6单片机,采用TB6600驱动器控制步进电机,实现了从速度到位置的交叉控制,并提供了源码。上位机交互界面展示了加速和减速过程,证实了S型曲线加减速的平滑效果。

"S"型曲线加减速在42步进电机位置和速度交叉控制应用

兴趣使然,兴趣使然…哈哈,花了一个多星期研究了一下S型曲线在步进电机的加速减速中应用,以及简单的结合了一下位置控制和速度控制交叉着对电机进行控制,同时也花了两天时间把上位机也捣腾出来。有需要源码的请在评论区留下邮箱。

  1. 硬件介绍
    (1)驱动器型号:使用了“普菲德”公司的TB6600驱动器,价格便宜拿来玩玩还是可以的(不是打广告,哈哈);
    (2)使用了普通的“42”步进电机;
    (3)单片机用的是STM32F103C8T6。
    唔,感觉还是放下一图片吧,哈哈
    在这里插入图片描述
  2. “S”型加速理论解析
    (1)一个物体从起点运动到终点,要经历加速,匀速,减速的过程,把整个过程中速度随时间变化关系画出来,就是速度曲线.
    S型加减速就是指速度曲线中加减速阶段的曲线呈现一个英文字母’S’型.
    S型加减速相对于梯形加减速更加平稳,对电机和传动系统的冲击更小.
    S型加减速的曲线并没有限定是什么曲线,所以可以是指数曲线,可以是正弦曲线.这里分析的S型加减速是基于加速度匀速变化的曲线.
    S型加减速的优点就是启动和停止都很平滑,不会有很大的冲击,但缺点就是启动和停止的时间比较长
    在这里插入图片描述
    上图就是S型加速曲线和对应的加速度曲线示意图在加速过程中,前半部分由于加速度是匀速递增的,这段曲线我们称为加加速段曲线(后面称它为IncAccel),后半部分是加速度匀速递减的,称为减加速段(DeAccel).
    加加速段是加速度关于时间的斜率为正的直线,减加速则是加速度关于时间的斜率为负的直线.加速度从0开始变化,到了最大值开始减小,最后为0,由于加速度的斜率是相同的,所以加加速度和减加速度所用的时间是一样.这两段曲线是关于加速度最大值的对应的速度中心对称的.在这里插入图片描述
    我们的目标就是根据定的条件:Vt,V0,t计算出控制步进电机的每一步的速度。
    (2)IncAccel:
    加速度从零变化到最大值。有 a=Jt;(J是加加速度,即速度的变化率,加速度a对时间的导数,为常数),而dv = adt;对加速度积分就可以得到速度
    在这里插入图片描述
    所以有:
    在这里插入图片描述
    只要知道加加速度即可得到IncAccel的速度变化,当a变化到最大值的时候有V=Vm,可得:
    在这里插入图片描述
    这样就得到了速度关于时间的变化公式(V-t)而这一段的步数可以对速度求积分得到;
    在这里插入图片描述
    最终的速度公式:
    在这里插入图片描述
    只要t变化的足够小,那么速度的变化就越平滑,得到的速度曲线就会越接近目标曲线。
    在这里插入图片描述
    根据以上的分析,只要给定一个合适的t值以及合适的加速次数,那就可以得到一个平滑的曲线。
  3. 程序实现
    在步进电机的控制中,改变频率即是对步进电机速度的改变。所以V0 =Frde(最小频率),我们从0速度开始,即Frde(最小频率) = 0;由于我定时器分频1000,所以定时器驱动频率为72KHz.设定我们要到达的目标速度Vt对应的频率为Fred(最大) = 12000;在这里我的加速点设置为1600。
    (1)综合上面的分析,加速曲
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

修才生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值