基于stm32的步进电机S曲线驱动方式(1)

最近在做关于一个关于步进电机驱动的项目
由于之前没有接触过步进电机,从网上找了一些资料零零碎碎的
实际项目的应用并不太合适。
故写个文章整理一下,以作以后回看,并供给有需要的朋友学习查阅
文中又不正指出,欢迎指正。

步进电机是什么?

步进电机是一种将电脉冲信号转换成相应角位移或线位移的电动机。每输入一个脉冲信号,转子就转动一个角度或前进一步,其输出的角位移或线位移与输入的脉冲数成正比,转速与脉冲频率成正比。因此,步进电动机又称脉冲电动机。
即每一个脉冲,电机转动一定的角度
一般情况下,一个普通的步进电机,没有细分,200个脉冲电机转动一圈。

什么是细分?

步进电机最常见的分为两相步进电机(1.8°),或者三相步进电机(1.2°),将“电机固有步距角”细分成若干小步的驱动方法,称为细分驱动,在不细分步距角的情况下(1细分),驱动接收一个脉冲信号电机就走1.8度。那么走完360度,就需要接收360/1.8°=200个脉冲。
比如
1细分 脉冲数=1X360/1.8°=200
2细分 脉冲数=2X360/1.8°=400
4细分 脉冲数=4X360/1.8°=800
6细分 脉冲数=6X360/1.8°=1200
8细分 脉冲数=8X360/1.8°=1600
16细分 脉冲数=16X360/1.8°=3200
32细分 脉冲数=32X360/1.8°=6400

那么步进电机的控制应该如何去做呢?

1、单脉冲法,需要一个脉冲中断一次,中断次数多,影响效率

2、一个定时器输出PWM,另一定时器进行中断计数,与方法1一样,同样需要频繁的中断

3、用主从定时器门控方式,比较繁琐

4、用一个定时器(从)作为另一个定时器(主)的外部时钟触发源

5、高级定时器T1、T8的重复计数方式,RCR计数中断,看手册好像这种方式最简单,能满足一部分人要求,缺点是寄存器只有8位,最多实现255个脉冲计数输出。

这五种方法是从网上找的,都经过了测试。
由于也在上班,抽个时间整理,暂时先写这些,后续内容,我会继续把所有的可能涉及到的关于步进电机的内容统统整理全面。
有兴趣的朋友,更多内容。扫描下方二维码,关注下公众号或者加微信,共同学习吧。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值