[其他ST产品]

stm32控制步进电机

[复制链接]
438|20
手机看帖
扫描二维码
随时随地手机跟帖
elephant00|  楼主 | 2022-11-7 14:38 | 显示全部楼层 |阅读模式
一、PWM操作驱动器使步进电机一直转
1.使能定时器时钟,并配置基本参数。下图以TIM3为例。
2.配置输出比较PWM1模式。下图ARR+1=100,故CCR值除以100即占空比。占空比与转速有关。
3.使能时钟   TIM_Cmd(TIM3, ENABLE);
注:
计数器每溢出一次,发出一次脉冲,产生一次TRGO(触发输出信号)。
PWM频率不宜过快,否则可能使步进电机不转,并伴有鸣叫。
CCR可随时更改,用以调速。
开启PWM时,必须同时开启AFIO时钟!!必须配置对应引脚为复用输出!!

222611anwq00w8nqnxa8ow.png

二、转一定角度
使用定时器主从模式,从定时器用于计算脉冲数(脉冲即指PWM波)。脉冲数与旋转角度直接相关,查看驱动器拨码开关设置可知脉冲与角度关系。
1.使能从定时器时钟,并配置基本参数。Period(即ARR)+1为期望脉冲数,达到期望数后触发中断。本例从定时器为TIM4.
2.使能中断并中断优先级分组。
3.设置主定时器并使能,使用更新事件作为触发输出。
4.设置从定时器,参数TIM_SlaveMode_External1。
5.设置输入触发源,参数TIM_TS_ITR2需要查表。(可以查看本专栏中“stm32定时器”篇“主从模式”)
6.设置从定时器触发为外部时钟模式。
7.使能从定时器时钟。
8.写中断服务函数,关闭定时器以停转步进电机。

222646hachzhbeksrrvsmv.png

222651lgrx13ni8yqfk35g.png

使用特权

评论回复
chenjun89| | 2022-11-7 18:42 | 显示全部楼层
抹红那部分代码是什么意思?

使用特权

评论回复
Jacquetry| | 2022-11-7 20:04 | 显示全部楼层
涂掉的那块代码是什么啊?

使用特权

评论回复
软核硬核| | 2022-11-7 21:00 | 显示全部楼层
PWM控制直流电机是最好的选择。

使用特权

评论回复
一只眠羊| | 2022-11-20 17:02 | 显示全部楼层
PWM控制电机,最好再配合使用MOS,很OK

使用特权

评论回复
我吃小朋友| | 2022-11-20 17:34 | 显示全部楼层
其实最好用专用的电机控制芯片,这样能稳当很多

使用特权

评论回复
将爱藏于深海| | 2022-11-20 19:06 | 显示全部楼层
我觉得电机有鸣叫可能是因为频率没对上,比如电机需要10K的频率,你要给小了给大了效果都不好

使用特权

评论回复
温室雏菊| | 2022-11-20 19:38 | 显示全部楼层
转角一般不都是用霍尔传感器吗?

使用特权

评论回复
原来转角还能用定时器获取到,有点意思

使用特权

评论回复
失物招領| | 2022-11-20 20:42 | 显示全部楼层
步进电机一般不都是PWM控制么,但是得有驱动芯片的

使用特权

评论回复
白马过平川| | 2022-11-20 21:14 | 显示全部楼层
我觉得用定时器输出的波形也能驱动步进电机了,也还简单点

使用特权

评论回复
西洲| | 2022-11-20 21:46 | 显示全部楼层
步进电机的角度可以用步进数来获得吧

使用特权

评论回复
捧一束彼岸花| | 2022-11-20 22:18 | 显示全部楼层
你可以加个传感器,或者行程开关,也能粗略的得到步进电机的位置和角度的

使用特权

评论回复
风凉| | 2022-11-20 22:50 | 显示全部楼层
感觉步进电机这么做应该是最好的了,可以知道角度也可以控制速度

使用特权

评论回复
tpgf| | 2022-12-9 09:41 | 显示全部楼层
在什么情况下电机会发生抖动的现象呢

使用特权

评论回复
木木guainv| | 2022-12-9 10:47 | 显示全部楼层
电机发出鸣叫的原因是什么 ?是报错还是过载?

使用特权

评论回复
xiaoqizi| | 2022-12-9 11:00 | 显示全部楼层
现在有米有具体的说法就是转动的步距角和功率的关系呢

使用特权

评论回复
wowu| | 2022-12-9 11:10 | 显示全部楼层
pwm频率和电机的参数的配合是如何计算得到的呢

使用特权

评论回复
wakayi| | 2022-12-9 11:23 | 显示全部楼层
如何保证每个pwm的周期中让步进电机动作一步呢

使用特权

评论回复
renzheshengui| | 2022-12-9 11:39 | 显示全部楼层
除了使用溢出的方式进行触发,还有其他的方式吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则