搜索
bottom↓
回复: 520

基于STM32的4轴步进电机加减速控制全套工程源码

  [复制链接]

出0入0汤圆

发表于 2013-4-18 11:56:58 | 显示全部楼层 |阅读模式
基于STM32的4轴步进电机加减速控制全套工程源码,共有两套;
一套是STM32F103的,另外一套是STM32F405的;
可以同时控制4轴步进电机进行加减速;
速率可以达到100K以上;

源码算法是基于《AVR446: Linear speed control of stepper motor》;
详细见附件压缩包中的文档,已经在实际工程中得到应用;

欢迎大家讨论并提出改进意见。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2013-4-18 12:01:43 | 显示全部楼层
好东西要订

出0入0汤圆

发表于 2013-4-18 12:02:26 来自手机 | 显示全部楼层
mark                  

出0入137汤圆

发表于 2013-4-18 12:04:18 | 显示全部楼层
好东西要mark

出0入0汤圆

发表于 2013-4-18 12:10:47 | 显示全部楼层
好东西,加速算法是线性的,有非线性的吗?

出0入0汤圆

发表于 2013-4-18 12:11:28 | 显示全部楼层
mark一下

出0入0汤圆

发表于 2013-4-18 12:13:15 | 显示全部楼层
好东西要mark

出0入0汤圆

发表于 2013-4-18 12:16:11 来自手机 | 显示全部楼层
mark,学习了

出0入0汤圆

发表于 2013-4-18 12:18:54 | 显示全部楼层
必须得顶。配上电路图更好。

出0入0汤圆

发表于 2013-4-18 12:20:06 | 显示全部楼层
谢谢分享。。。

出0入0汤圆

发表于 2013-4-18 12:20:26 | 显示全部楼层
mark

出0入0汤圆

发表于 2013-4-18 12:23:03 | 显示全部楼层
好资料一定要顶

出0入0汤圆

发表于 2013-4-18 12:23:31 来自手机 | 显示全部楼层
楼主好人

出0入0汤圆

发表于 2013-4-18 12:25:21 | 显示全部楼层
谢谢分享,正到处找这方面资料……

出0入0汤圆

发表于 2013-4-18 12:36:16 | 显示全部楼层
好东西。我们下面准备用STM32F207系列做电机驱动。但是我没做过电机相关的驱动。我们的设备上有5个直流电机,需要同时驱动。不知道这个移植到直流电机上行不行?

出0入0汤圆

发表于 2013-4-18 12:43:29 | 显示全部楼层
好资料,必须顶!!!!

出0入0汤圆

发表于 2013-4-18 12:43:57 | 显示全部楼层
谢谢分享

出0入0汤圆

发表于 2013-4-18 12:49:59 | 显示全部楼层

出0入0汤圆

发表于 2013-4-18 12:59:25 | 显示全部楼层
谢谢共享!!!!!!!
头像被屏蔽

出0入0汤圆

发表于 2013-4-18 13:05:50 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2013-4-18 13:12:57 | 显示全部楼层
记得之前做医疗仪器时候也是用的这个算法来控制步进电机的,真心不错!

出0入0汤圆

发表于 2013-4-18 13:33:58 | 显示全部楼层
好东西要顶~

出0入0汤圆

发表于 2013-4-18 13:37:18 | 显示全部楼层
4轴应用是什么设备啊?

出0入0汤圆

发表于 2013-4-18 13:48:13 来自手机 | 显示全部楼层
Mark,顶…
来自:amoBBS 阿莫电子论坛 Windows Phone 7 客户端

出0入0汤圆

发表于 2013-4-18 13:53:43 | 显示全部楼层
谢谢分享

出0入0汤圆

发表于 2013-4-18 14:44:10 | 显示全部楼层
good~~~
正准备做,参考一下~~~

出0入0汤圆

发表于 2013-4-18 14:58:03 | 显示全部楼层
如果能把   数据处理  不放中断里 速度 能 更快的 ..

出0入0汤圆

发表于 2013-4-18 14:59:25 | 显示全部楼层
火速先顶,在下,,,,

出0入0汤圆

发表于 2013-4-18 14:59:59 | 显示全部楼层
MARK
以后慢慢学习

出0入0汤圆

发表于 2013-4-18 16:29:52 | 显示全部楼层
里面有编码器的读取吗?

出0入0汤圆

发表于 2013-4-18 16:43:33 | 显示全部楼层
谢谢你的发表!

出0入0汤圆

发表于 2013-4-18 16:49:13 | 显示全部楼层
配上电路图更好。

出0入0汤圆

发表于 2013-4-18 17:41:30 | 显示全部楼层
配上电路图更好。

+1

出0入0汤圆

发表于 2013-4-18 17:53:41 | 显示全部楼层
太强大了,,

出0入0汤圆

发表于 2013-4-18 17:57:50 | 显示全部楼层
好东西,顶下

出0入0汤圆

发表于 2013-4-18 18:04:30 | 显示全部楼层
学习一下

出0入0汤圆

发表于 2013-4-18 18:55:20 | 显示全部楼层
坚决 顶起来啊

出0入0汤圆

发表于 2013-4-18 19:09:48 | 显示全部楼层
那文档我看过!但未能成功移植!希望可以参考你的...

出0入0汤圆

发表于 2013-4-18 19:20:35 | 显示全部楼层
还有这个貌似是给定固定的步数,然后算出一条加减速曲线的。过程是加速》减速...
我想问能不能上次给的位置还没到达的时候,给出新的位置然后平滑过渡到新的位置?

出0入0汤圆

发表于 2013-4-18 19:26:20 | 显示全部楼层
不懂,但是感谢楼主的分享。。

出0入0汤圆

发表于 2013-4-18 19:26:43 | 显示全部楼层
我觉得应该将单片机的配置和步进电机的驱动程序分开写(各一个C文件) 这样更容易移植。
可读性更强

出0入0汤圆

发表于 2013-4-18 20:40:50 | 显示全部楼层
学习了,谢谢楼主

出0入0汤圆

发表于 2013-4-18 21:49:22 来自手机 | 显示全部楼层
学习学习

出0入0汤圆

发表于 2013-4-18 22:40:47 | 显示全部楼层
不是太懂 但是应该不错

出0入0汤圆

发表于 2013-4-18 23:14:36 | 显示全部楼层
Thank

出0入0汤圆

发表于 2013-4-19 01:03:45 来自手机 | 显示全部楼层
谢谢分享

出0入0汤圆

发表于 2013-4-19 07:37:42 | 显示全部楼层
太好了,非常感谢楼主的奉献,很有价值。

出0入17汤圆

发表于 2013-4-19 08:41:07 | 显示全部楼层
mark 步进电机!

出0入0汤圆

发表于 2013-4-19 08:57:05 | 显示全部楼层
这个必须顶,真是及时雨呀,多谢楼主.

出0入0汤圆

发表于 2013-4-19 09:18:56 | 显示全部楼层
谢谢分享!!

出0入0汤圆

发表于 2013-4-19 12:07:57 | 显示全部楼层
谢谢楼主分享

出0入0汤圆

发表于 2013-4-19 12:16:16 | 显示全部楼层
不顶一下,太对不起楼主了

出0入0汤圆

发表于 2013-4-19 14:54:27 | 显示全部楼层
本帖最后由 myqiang1990 于 2013-4-19 14:58 编辑

楼主如果能做到更具目标位置动态加减速就更好了,而不是设定多少步然后就加减速直到走完这些为止,然后才能响应新的位置。跟39楼描述那要,
这份文档我研究过,而且还有AVR的源码。感觉不适合做更具目标位置进行动态加减速。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2013-4-19 16:33:44 | 显示全部楼层
谢谢分享。。。

出0入0汤圆

发表于 2013-4-19 18:36:00 | 显示全部楼层
谢谢分享,下来参考。

出0入0汤圆

发表于 2013-4-19 18:58:50 | 显示全部楼层
很强大啊!支持

出0入0汤圆

发表于 2013-4-19 19:34:35 来自手机 | 显示全部楼层
同学,这个在中断里处理的,就4个轴同时到100k的速度?400k的中断速度,加上通讯中断,加上系统中断,加上外部中断,全是中断啊!cpu还能做什么?楼主发代码前请三思!

出0入0汤圆

发表于 2013-4-20 09:52:59 | 显示全部楼层
谢谢楼主分享,学习中

出0入0汤圆

发表于 2013-4-20 15:33:14 | 显示全部楼层
精彩,好东西.

出0入0汤圆

发表于 2013-4-21 11:47:51 | 显示全部楼层
好东西,谢楼主分享。

出0入0汤圆

发表于 2013-4-21 12:03:16 | 显示全部楼层
好东西学习了,谢谢!

出0入0汤圆

发表于 2013-4-21 13:22:57 | 显示全部楼层
步进电机控制的好,不太容易啊。

出0入0汤圆

发表于 2013-4-21 13:57:21 | 显示全部楼层
谢谢楼主分享~

出0入0汤圆

发表于 2013-4-21 14:25:01 | 显示全部楼层
难得的好东西呀,

出0入0汤圆

发表于 2013-4-22 00:04:58 | 显示全部楼层
记号,收藏

出0入0汤圆

发表于 2013-4-22 09:32:45 | 显示全部楼层
好资料,必须顶!!!!

出0入0汤圆

发表于 2013-4-22 14:10:50 | 显示全部楼层
学习,谢谢!!!

出0入0汤圆

发表于 2013-4-22 14:41:21 | 显示全部楼层
好东西,果断mark。

出0入0汤圆

发表于 2013-4-24 17:06:36 | 显示全部楼层
下来看看,应该不错

出0入0汤圆

发表于 2013-4-24 17:10:10 | 显示全部楼层
下载备用。。后期可能要用到的

出0入0汤圆

发表于 2013-5-7 16:31:20 | 显示全部楼层
myqiang1990 发表于 2013-4-19 14:54
楼主如果能做到更具目标位置动态加减速就更好了,而不是设定多少步然后就加减速直到走完这些为止,然后才能 ...


同学,看过你之前的几个帖子,可以清楚地看到你在步进电机控制这方面的进展,

请问怎么才能够在楼主的基础上实现动态地调速呢?即:从一个速度-->加速/减速-->另一个速度呢?

我尝试着改了一下,发现加速还好改一点,但是减速过程比较麻烦,不知道你有没有这方面的经验呢?谢谢

出0入0汤圆

发表于 2013-5-7 16:34:36 | 显示全部楼层
当在加减速最高速时,其他任务会不会比较难执行

出0入0汤圆

发表于 2013-5-7 18:37:09 | 显示全部楼层
gallop020142 发表于 2013-5-7 16:31
同学,看过你之前的几个帖子,可以清楚地看到你在步进电机控制这方面的进展,

请问怎么才能够在楼主的 ...

这份代码我没有用,不过看过一下,我也没有改过,我觉得如果做成自动跟踪目标来调速很麻烦~~~暂时没时间研究~~~你研究出来说一下思路呀!!!

出0入0汤圆

发表于 2013-5-7 18:39:51 | 显示全部楼层
lanyuye 发表于 2013-5-7 16:34
当在加减速最高速时,其他任务会不会比较难执行

楼主大的代码应该是固定8细分的,8细分做高速,对其他任务影响不是很大~~如果高细分就会~~~所以最好做成变细分~~高速低细分,低速高细分,但是我觉得如果用变细分,要在这份代码上修改, 我觉得很困难哦~~有哪位大大改出来了~~

出0入0汤圆

发表于 2013-5-7 19:21:47 来自手机 | 显示全部楼层
ap0705307 发表于 2013-4-18 19:20 还有这个貌似是给定固定的步数,然后算出一条加减速曲线的。过程是加速》减速... 我想问能不能上次给的位置 ...

速度时时调整已经做好了,位置与速度时时调整正在进行中。

出0入0汤圆

发表于 2013-5-7 19:28:06 来自手机 | 显示全部楼层
myqiang1990 发表于 2013-4-19 14:54 楼主如果能做到更具目标位置动态加减速就更好了,而不是设定多少步然后就加减速直到走完这些为止,然后才能 ...

根据目标位置?不知道是不是这样理解的:给定一个位置,加速时间,中间通过加速,匀速,减速到达位置后。然后再给类似的目标位置

出0入0汤圆

发表于 2013-5-7 19:31:11 来自手机 | 显示全部楼层
gallop020142 发表于 2013-5-7 16:31 同学,看过你之前的几个帖子,可以清楚地看到你在步进电机控制这方面的进展, 请问怎么才能够在楼主的 ...

只要动态改变速度?

出0入0汤圆

发表于 2013-5-7 19:53:37 | 显示全部楼层
xxoo14 发表于 2013-5-7 19:28
根据目标位置?不知道是不是这样理解的:给定一个位置,加速时间,中间通过加速,匀速,减速到达位置后。 ...

不是,而是不到目标位置,电机还在运动的时候目标位置已经改变,但是电机必须实时响应最新位置。。看这个链接的视频。。。电机要能这样反应。。。

http://www.amobbs.com/forum.php? ... =%E4%BA%91%E5%8F%B0

出10入95汤圆

发表于 2013-5-7 20:16:18 | 显示全部楼层
顶,                     

出0入0汤圆

发表于 2013-5-7 21:40:28 | 显示全部楼层
xxoo14 发表于 2013-5-7 19:31
只要动态改变速度?


对,我现在只想速度实时平稳地改变就行,

现在不知道怎么在楼主的基础上实现动态速度调整,我之前弄了一下,加速好像还好实现一点,但是减速的话就比较麻烦呢

出0入0汤圆

发表于 2013-5-7 21:48:14 | 显示全部楼层
ms好东西

出0入0汤圆

发表于 2013-5-7 22:41:27 | 显示全部楼层
gallop020142 发表于 2013-5-7 21:40
对,我现在只想速度实时平稳地改变就行,

现在不知道怎么在楼主的基础上实现动态速度调整,我之前弄了 ...

我的加减速都是需要时才计算好,计算的是加速过程的数据,然后就在pwm或者定时器中断里面查表改变频率,加速顺序查,加速就逆向。时时改变只是需要判断当前速度与你下一步需求的目标速度的大小关系了。

出0入0汤圆

发表于 2013-5-7 22:45:02 | 显示全部楼层

出110入0汤圆

发表于 2013-5-7 22:49:21 | 显示全部楼层
TIM-DMA才是王道

出0入0汤圆

发表于 2013-5-7 22:59:43 | 显示全部楼层
myqiang1990 发表于 2013-5-7 19:53
不是,而是不到目标位置,电机还在运动的时候目标位置已经改变,但是电机必须实时响应最新位置。。看这个 ...

时时响应应该不可能,如果要反向的话就是先最短时间减速然后最短时间加速到目标位置,时间很短,也算是个时时吧。

出0入0汤圆

发表于 2013-5-7 23:03:56 | 显示全部楼层
xxoo14 发表于 2013-5-7 22:41
我的加减速都是需要时才计算好,计算的是加速过程的数据,然后就在pwm或者定时器中断里面查表改变频率, ...

我有点明白你的意思了,但是这样计算来得及吗?特别是减速的时候,得提前算好多的数,而加速时是递推的,就这还担心算不过来呢

出0入0汤圆

发表于 2013-5-7 23:13:49 | 显示全部楼层
gallop020142 发表于 2013-5-7 23:03
我有点明白你的意思了,但是这样计算来得及吗?特别是减速的时候,得提前算好多的数,而加速时是递推的, ...

可以的,我用的是m0 22m的速度,如果用m3 72m的速度话估计位置也可以处理了

出0入0汤圆

发表于 2013-5-8 17:20:13 | 显示全部楼层
正在学习,遇到众多问题啊 ,AVR里面好多固定数值不理解是什么含义,移植到STM32里不知道需不需要变,我看了楼主的STM32版的,变了好多,而且不知道为什么变成这个数值。

出0入0汤圆

发表于 2013-5-9 19:34:44 | 显示全部楼层
有没有原理图

出0入0汤圆

发表于 2013-5-9 21:20:16 | 显示全部楼层
顶起来!!!

出0入0汤圆

发表于 2013-5-10 14:52:05 | 显示全部楼层
这个速度比较快,之前我最高速只有20K

出0入0汤圆

发表于 2013-5-10 15:17:27 | 显示全部楼层
好东西,顶起!

出0入0汤圆

发表于 2013-5-10 17:27:43 | 显示全部楼层
好资料一定要顶起来

出0入0汤圆

发表于 2013-5-11 10:58:45 | 显示全部楼层
谢谢!     

出0入0汤圆

发表于 2013-5-11 15:14:46 | 显示全部楼层
mark  一下

出0入17汤圆

发表于 2013-5-11 15:29:52 | 显示全部楼层
mark

出0入17汤圆

发表于 2013-5-11 15:30:08 | 显示全部楼层
mark

出0入0汤圆

发表于 2013-5-19 12:36:38 | 显示全部楼层
LZ的代码不能点动(就是一个按钮,按下去,某轴转动,松开轴停下来)?

出0入0汤圆

发表于 2013-5-19 12:41:07 | 显示全部楼层
谢谢分享

出0入0汤圆

发表于 2013-5-19 14:38:30 | 显示全部楼层
有人做过点动的步进电机驱动吗?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-29 22:26

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表