搜索
bottom↓
回复: 18

步进电机梯形加减速笔记AVR446的一点疑问

[复制链接]

出5入4汤圆

发表于 2015-7-1 22:08:38 | 显示全部楼层 |阅读模式
本帖最后由 tim4146 于 2015-7-1 22:10 编辑

最近在研究步进电机加减速问题,认真看了AVR446这个文件,相信做过步进电机调速的朋友都应该看过的吧

文件中下图红框框处始终不能理解

作者用理论分析办法得到了每个脉冲的周期信息
C0是个恒定值,因为
等式右边的参数都是系统设置好的

然后C1  C2 C3....通过公式递推出来


然后作者考虑到单片机实时结算两个根号会让CPU计算很久,所用用了泰勒级数近似计算,结论就是C1 C2 C3.不用开根号啦,从而简化了计算过程
公式是这个


公式的推导是在附录中的,如下图

这样就代替了上面开根号的那个公式。
然后作者说使用这个办法会在n=1的时候引入0.44的误差,办法就是用0.676乘以C0来补偿

好了问题来了,这个0.44根本不知道哪儿来的,我是这样算的
根据公式,C0是定值(因为公式中tt a w分别是系统时钟周期 步距角 加速度值 都是定了的 )
那么我先按照理论的公式来算,也就是下面的公式

C0=C0
C1=C0(1.414-1)=0.414C0
C2=C0(1.732-1.414)=0.3178C0
....
下面按照简化的公式算,也就是下面的公式

C0=C0
C1=0.6C0
C2=0.778C0
...

好了,我真心不知道0.44的误差是怎么来的...请教各位看过这个笔记的前辈们

本帖子中包含更多资源

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

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2015-7-1 22:56:55 | 显示全部楼层
数学不好,帮顶一下,论坛图片显示正常啦!

出5入4汤圆

 楼主| 发表于 2015-7-2 09:03:16 | 显示全部楼层
PCBBOY1991 发表于 2015-7-1 22:56
数学不好,帮顶一下,论坛图片显示正常啦!

发帖的时候发现 同一个图片插入两次是不行的...无奈只好把同一个公式再截图保存为另一个文件

出5入4汤圆

 楼主| 发表于 2015-7-2 10:47:09 | 显示全部楼层
虽然不知道0.44哪儿来的,但是我已经知道答案了,下图一是补偿的时候,图二是补偿0.676之后的。本帖已结


本帖子中包含更多资源

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

x

出0入0汤圆

发表于 2015-7-13 22:44:31 | 显示全部楼层
tim4146 发表于 2015-7-2 10:47
虽然不知道0.44哪儿来的,但是我已经知道答案了,下图一是补偿的时候,图二是补偿0.676之后的。本帖已结

你好,请问这4条曲线使用的公式是什么?我也在想这个参数的推导,没有头绪。

出5入4汤圆

 楼主| 发表于 2015-7-16 12:58:42 | 显示全部楼层
end2000 发表于 2015-7-13 22:44
你好,请问这4条曲线使用的公式是什么?我也在想这个参数的推导,没有头绪。 ...

公式就是446文档里面的,你读一遍就知道了,后面关于程序的细节可以不看,前面理论部分要看

出0入0汤圆

发表于 2015-7-16 13:30:06 | 显示全部楼层
这个是不是只能走固定步数的时候用?
如果每次走的步数不确定的,也能实时计算吗。

出5入4汤圆

 楼主| 发表于 2015-7-17 18:59:15 | 显示全部楼层
374184600 发表于 2015-7-16 13:30
这个是不是只能走固定步数的时候用?
如果每次走的步数不确定的,也能实时计算吗。 ...

当然可以实时算的,但是要等上一次任务走完,中途改变的情况我暂时没有考虑

出5入4汤圆

 楼主| 发表于 2015-7-17 19:34:20 | 显示全部楼层
374184600 发表于 2015-7-16 13:30
这个是不是只能走固定步数的时候用?
如果每次走的步数不确定的,也能实时计算吗。 ...

当然可以实时算的,但是要等上一次任务走完,中途改变的情况我暂时没有考虑

出0入0汤圆

发表于 2015-8-9 02:52:01 | 显示全部楼层
之前我也用这文档做了个步进加减速程序,效率还不错,但客户不喜欢rad/s的调速 ,懒得折腾,后来自己做了一个算法,动态查表,比这文档算法效率高,stm32F103一个定时器,出4组脉冲,为了安全就只把最大频率定为20K..我还是喜欢加速用时间MS...比如:加速100ms 减速100ms   急停20ms 使用 习惯没办法,    哪天整理一下,也给大伙用用...

出100入85汤圆

发表于 2015-8-9 09:24:02 来自手机 | 显示全部楼层
期待楼上的

出5入4汤圆

 楼主| 发表于 2015-8-9 16:48:21 | 显示全部楼层
mcuyongchao 发表于 2015-8-9 02:52
之前我也用这文档做了个步进加减速程序,效率还不错,但客户不喜欢rad/s的调速 ,懒得折腾,后来自己做了一个算 ...

速度单位就是rad/s 啊这个还能变啊?
如果能查表的话倒是不错,但是我想不出这个东西怎么查表,因为一旦加速度变了,ARR需要的一连串更新值就要重新算一组的
还有一个问题,你说一个定时器输出4组脉冲是没错,但是四个脉冲的ARR是同一个啊,也就说频率是没法变的,只有占空比可以做到不一样

出0入0汤圆

发表于 2015-8-15 19:41:47 | 显示全部楼层
tim4146 发表于 2015-8-9 16:48
速度单位就是rad/s 啊这个还能变啊?
如果能查表的话倒是不错,但是我想不出这个东西怎么查表,因为一旦 ...

速度单位倒是可以变,需要该动一下程序,主要是用在我上面效率还低了点,我一个定时器4个脉冲,20x4x2 =160K的中断,有点呛,我还不止4组,有8-12组输出,用掉3个定时器...

出5入4汤圆

 楼主| 发表于 2015-8-16 12:41:19 | 显示全部楼层
mcuyongchao 发表于 2015-8-15 19:41
速度单位倒是可以变,需要该动一下程序,主要是用在我上面效率还低了点,我一个定时器4个脉冲,20x4x2 =160K ...

效率的问题我用DMA解决的,我是驱动串联机械臂的,6个步进电机,不用DMA没法做到高效

出0入4汤圆

发表于 2015-9-18 09:46:32 | 显示全部楼层
MARK!!!!!!!!!!!!!!!

出0入0汤圆

发表于 2015-10-8 17:01:06 | 显示全部楼层
本帖最后由 lazybonesyang 于 2015-10-8 23:07 编辑

C0=1*C0
C1=0.414213562*C0
C2=0.317837245*C0
C3=0.267949192*C0
C4=0.236067977*C0
C5=0.213421765*C0
C6=0.196261568*C0
C7=0.182675814*C0
C8=0.171572875*C0
C9=0.16227766*C0
按公式推出来前十步是这样,C0和C1比只有0.414的比例,假设C0=100MS,C1=41.4MS左右,换算成速度就是提高了一倍不止。是不是有点大了?这个加速度受得了?

本帖子中包含更多资源

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

x

出5入4汤圆

 楼主| 发表于 2015-10-9 16:56:37 | 显示全部楼层
lazybonesyang 发表于 2015-10-8 17:01
C0=1*C0
C1=0.414213562*C0
C2=0.317837245*C0

不去试试怎么知道呢?

出0入0汤圆

发表于 2020-7-6 12:20:39 | 显示全部楼层
正在学习步进电机  多交流

出50入135汤圆

发表于 2023-10-21 16:00:45 来自手机 | 显示全部楼层
rad/s转换下就好,1转/ s=2✘pi rad/s.我也想知道怎么个查表达,加速度,速度,减速度,距离都不一样的时候,查表能适用?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-7-16 19:11

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

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