0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于步进电机三种加速曲线分析

西西 来源:博客园 作者:小唐的博客 2020-10-05 17:40 次阅读

STM32F103ZET6微控制器

步进电机的转速由由输出给驱动器的PWM频率而定,使用MCU的一个定时器TIM2_CH1)输出占空比 D=50% 的脉冲。

定时器的时钟频率为72MHz,分频后8Mhz,于是输出PWM的最低频率大约为120Hz。

假定需要在时间 t 内运行 θ 角度,根据驱动器的细分数,齿轮传动比等可以算出所需要的脉冲数 pls_cnt。

1.双曲线加速

刚开始的想法是,前半程加速,后半程减速,加减速时间间隔为 delta_t,由另一定时器的中断周期而定,在定时器ISR里面对频率进行调整,便能让电机平滑地起停。

但是我并不能直接改变输出PWM的频率 freq,能直接改变的只是定时器的自动重载值 period,freq 和 period 之间显然是双曲线的关系:

关于步进电机三种加速曲线分析

其中 tim_freq = 8MHz,

关于步进电机三种加速曲线分析

让 period 线性化,结果导致 freq 呈双曲线变化,加速过程很慢,减速很快,实验现象也是如此,而且这个过程的时间也不好控制。

2.线性加速曲线

要让 freq 线性化,首先确定 freq 的范围,freq_min 我设定为300Hz,freq_max 因该就是这段行程平均速度的2倍了:

关于步进电机三种加速曲线分析

在 [freq_min, freq_max] 内将 freq 线性化:

freq = linspace(freq_min, freq_max, t/delta_t);

然后算出 period:

period = tim_freq 。/ freq;

减速过程的可以将数组其反过来:

1period = [period, fliplr(period)];

可以得到如下的频率曲线:

关于步进电机三种加速曲线分析

实验中电机的加减速还算比较平滑,精度也还可以。

3.S形加速曲线

既然可以用线性加速曲线,那应该可以用更为平滑的加速曲线,在印象中S形曲线是非常平滑的,会得到速度连续,加速度也连续的调速过程。于是用S形曲线再试试。

Sigmoid函数的原型我想是这样子的:

关于步进电机三种加速曲线分析

绘出其在[-5, 5]上的图形:

关于步进电机三种加速曲线分析

这里选择[-5, 5]这段曲线比较合适,加速过程可能有点长,如有要求可以选择[-4, 4]。

然后将其变成我想要的样子:

起始点增益,也就是最低频率:freq_min;

最大增益,也就是最高频率:freq_max;

横轴范围:0~t;

对横坐标做平移变换,然后伸缩变换,再对纵坐标做伸缩变换便得到下式:

关于步进电机三种加速曲线分析

由于在0~t时间段内,指数项不可能为∞,所以起始频率要略高于 freq_min,指数项也不可能为0,所以最高频率要略低于 freq_max。

变换后得到的图像可能是这样:

关于步进电机三种加速曲线分析

其中 t:0~4s,freq_min = 300Hz, freq_max = 1kHz。

上式中 freq_min 可以自己先给定,这样还有一个参数 freq_max,需要确定。

在 0~t 时间段内运动 θ 角度,那么:

这样S形曲线便确定了,然后再算出 period 数组即可。减速过程同样的可以将数组反过来,例如:

实验中S形曲线自然是最为平滑的,精度不算太好,如有可能的话,可用编码器进行修正。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    6808

    浏览量

    147612
  • 步进电机
    +关注

    关注

    149

    文章

    2929

    浏览量

    146045
  • 定时器
    +关注

    关注

    23

    文章

    3146

    浏览量

    112033
收藏 人收藏

    评论

    相关推荐

    步进电机相电流怎么测

    步进电机相电流的测量是一项涉及电子和机械技术的重要工作,主要用于确保电机正常运转、故障诊断和优化电机性能。下面将为您提供一篇详尽、详实、细致的关于
    的头像 发表于 12-13 15:47 1420次阅读

    步进电机驱动器故障分析

    。初始分析是对的,即保险一再熔断,驱动器肯定存在某一不正常的大电流,并检查出一功率管损坏。但对该管的作用没有弄清楚。实际上该管为步进电机电源驱动管,步进
    发表于 11-09 07:50

    S曲线的基本变换计算

    本节介绍S曲线的基本变换,将基本形式的S曲线变换成为任意过两点的S曲线,为后续步进电机S曲线运动
    的头像 发表于 10-26 15:40 453次阅读
    S<b class='flag-5'>曲线</b>的基本变换计算

    步进电机S曲线生成器的计算以及使用

    根据上一节内容,已经计算了一条任意S曲线的函数。在步进电机S曲线加减速的控制中,需要的S曲线如图1所示,横轴为时间,纵轴为角速度,其中w0为
    的头像 发表于 10-26 15:02 955次阅读
    <b class='flag-5'>步进</b><b class='flag-5'>电机</b>S<b class='flag-5'>曲线</b>生成器的计算以及使用

    步进电机S曲线运动的代码实现

    实现步进电机转动总角度720°,其中加减速各90°
    的头像 发表于 10-26 14:55 547次阅读
    <b class='flag-5'>步进</b><b class='flag-5'>电机</b>S<b class='flag-5'>曲线</b>运动的代码实现

    步进电机的控制,加速和减速是如何实现的?

    控制步进电机加速和减速是如何实现的
    发表于 10-15 07:00

    步进电机的工作原理

    图中每个箭头间隔是步进电机的一个步进角,每输入一个脉冲,电机就会转动一个步进角,不同的电机转动的
    发表于 10-09 11:49 618次阅读
    <b class='flag-5'>步进</b><b class='flag-5'>电机</b>的工作原理

    怎么确定一个步进电机控制的初始加速度?

    怎么确定一个步进电机控制的初始加速
    发表于 10-09 07:28

    为什么用T型加速步进电机进行控制会出现顿卡的情况?

    为什么用T型加速步进电机进行控制会出现顿卡的情况
    发表于 10-09 07:28

    步进电机选型要求 步进电机型号大全

    步进电动机的结构形式和分类方法较多,一般按励磁方式分为磁阻式、永磁式和混磁式三种;按相数可分为单相、两相、三相和多相等形式。在我国所采用的步进电机中以反应式
    的头像 发表于 09-14 08:09 1580次阅读
    <b class='flag-5'>步进</b><b class='flag-5'>电机</b>选型要求 <b class='flag-5'>步进</b><b class='flag-5'>电机</b>型号大全

    选用步进伺服电机替换步进电机,有什么优势?

    每种型号步进电机的规格里均有最大静止转矩及电机惯量等参数,各项参数与负载转矩及负载惯量间必定有相关联系存在,选用步进电机时应考虑负载机构的运
    的头像 发表于 09-08 08:08 424次阅读
    选用<b class='flag-5'>步进</b>伺服<b class='flag-5'>电机</b>替换<b class='flag-5'>步进</b><b class='flag-5'>电机</b>,有什么优势?

    步进电机与伺服电机对比分析

    步进电机和伺服电机的性能差异源自他们不同的电机设计方案。步进电机的极数比伺服
    发表于 07-13 10:53 787次阅读
    <b class='flag-5'>步进</b><b class='flag-5'>电机</b>与伺服<b class='flag-5'>电机</b>对比<b class='flag-5'>分析</b>

    三种改变步进电机转速的方法#硬声创作季

    步进电机
    或许
    发布于 :2023年06月28日 07:52:58

    步进电机该如何处理散热问题?

    上安装风扇,通过风扇将电机周围的空气循环起来,加速热量的散发,以达到散热的目的。 (2)散热片散热法:在步进电机表面安装散热片,通过散热片将电机
    的头像 发表于 06-10 08:05 635次阅读

    CH32V103基础教程88-步进电机驱动

    本章主要使用CH32V103进行步进电机的驱动,需要用到ULN2003步进电机驱动板和5V步进电机
    发表于 05-10 16:18