请教tinyg的加减速实现原理

2020-01-04 18:59发布

之前论坛有人详细分析了grbl的代码,但是grbl使用的是T型加减速,而tinyg和tinyg2则使用S加速和更高阶的平滑曲线,但是没有弄懂代码,它有一个DDA timer,但是固定频率的,怎么输出平滑的脉冲?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
liurangzhou
1楼-- · 2020-01-05 20:20
落叶知秋 发表于 2019-7-3 09:31
TinyG也是DDA的方法,固定时基只不过是固定了最大的脉冲输出频率

如果那个轴的脉冲需要变更输出频率,重 ...

严格来讲,如果50K时基,要么输出25K,意思是类似:
   时基:010101010101010101010101010101010101 ,如果按照这样输出就50K
              001001001001001001001001001001001001,这样就是输出50K*2/3
   但是高速的末端最好是25K->30k->40k->45K->47k->48.5k->49k->49.3k->...
liurangzhou
2楼-- · 2020-01-05 23:40
 精彩回答 2  元偷偷看……
落叶知秋
3楼-- · 2020-01-06 01:53
liurangzhou 发表于 2019-7-3 11:03
严格来讲,如果50K时基,要么输出25K,意思是类似:
   时基:010101010101010101010101010101010101 ,如 ...

TinyG的脉冲发生部分管脚的高低电平设置都是用的同一个定时器,不过用了两个中断,溢出中断和匹配中断
时基就是算的最大脉冲的频率

另外,你确定20us的时间对于步进驱动器来说有很大影响?何况是1个脉冲?位置环电流环都没有这个高的周期吧?
liurangzhou
4楼-- · 2020-01-06 05:38
落叶知秋 发表于 2019-7-3 12:03
TinyG的脉冲发生部分管脚的高低电平设置都是用的同一个定时器,不过用了两个中断,溢出中断和匹配中断
时 ...

意思是相当于掉了一个脉冲,就有是跳变了
落叶知秋
5楼-- · 2020-01-06 07:06
liurangzhou 发表于 2019-7-3 14:54
意思是相当于掉了一个脉冲,就有是跳变了

想要脉冲非常“平滑”,没有“跳变”的话,建议用CPLD或FPGA吧,别折腾单片机了,低端的总会有不均匀的
liurangzhou
6楼-- · 2020-01-06 09:12
落叶知秋 发表于 2019-7-3 14:58
想要脉冲非常“平滑”,没有“跳变”的话,建议用CPLD或FPGA吧,别折腾单片机了,低端的总会有不均匀的 ...

变时基是可以均匀的

一周热门 更多>