hefq 发表于 2009-5-1 10:14:07

讨论将步进电机一周任意等分

讨论将步进电机一周任意等分 (我720分以下就够用了) 并不产生累计误差的方法 请大家多提建议
我现在电机驱动器细分是调到12000脉冲每圈

h2feo4 发表于 2009-5-1 10:22:22

举例:
假设你的电脑屏幕宽12000像素,高720像素
用画图工具(例如mspaint)从左下角到右上角画一条直线,OK
看到这条线哪在那里换行,哪里就发脉冲
简单的说,就是图形学上的画线算法

给一个我的演示程序,把256格分成任意段,可以8轴联动(无累计误差)
点击此处下载 ourdev_441251.rar(文件大小:5K) (原文件名:输出算法1.0.rar)
它会生成一张图片,8行分别代表8个轴的输出波形

hefq 发表于 2009-5-1 10:26:09

我已经在PLC上用比较笨的方法实现了
想讨论一下有没有更好的方法

h2feo4 发表于 2009-5-1 10:30:12

用我的算法,只要你能做整数加减法和比较大小就行了

hefq 发表于 2009-5-1 10:42:22

我是用的乘法与除法做的
用的绝对方式来发脉冲

d11++

d11*12000/d12

d11==d12 就把d11清零

albertjin 发表于 2010-6-4 23:32:31

貌似hefq完全没有理解 Digital Differential Analyzer(DDA) 的奥秘 :)

amazing030 发表于 2010-6-6 22:45:02

must be marked

win100 发表于 2010-8-1 01:34:30

virtualbit 发表于 2010-8-1 01:58:35

good

jrcsh 发表于 2010-8-1 17:49:14

硬驱 IC ~~~ 收工~~~


12000阶

12000阶/360度 每度 33.333333333333333333333阶~~~~~~~~~

也就是说 1.5度的步进电机 也就在 50细分   

驱动IC 动不动都有 64分 128份~~~~

jrcsh 发表于 2010-8-1 17:49:58

33.333333333333333333333* 1.5度 约 50细分

TRINAMIC 发表于 2010-8-1 22:54:53

建议使用TMC332芯片可以保证细分后的每步比较准确
http://cache.amobbs.com/bbs_upload782111/files_32/ourdev_572337.jpg
(原文件名:截图06.jpg)

http://cache.amobbs.com/bbs_upload782111/files_32/ourdev_572338.jpg
(原文件名:截图07.jpg)

http://cache.amobbs.com/bbs_upload782111/files_32/ourdev_572339.jpg
(原文件名:截图08.jpg)

点击此处下载 ourdev_572340.pdf(文件大小:614K) (原文件名:tmc332_datasheet.pdf)

wwxx001 发表于 2010-8-2 14:13:05

这个问题实际上是一个频率生成的问题,假设12000脉冲每圈,问题要求任意等分,实际问题可以转换为:时钟频率为12000,要求输出12000/n(n=1,2,3...)任意频率的脉冲,并且没有积累误差,可以考虑用DDS频率合成的方法来解决

ddg_int 发表于 2010-8-2 14:16:17

学习……
页: [1]
查看完整版本: 讨论将步进电机一周任意等分