讨论将步进电机一周任意等分
讨论将步进电机一周任意等分 (我720分以下就够用了) 并不产生累计误差的方法 请大家多提建议我现在电机驱动器细分是调到12000脉冲每圈 举例:
假设你的电脑屏幕宽12000像素,高720像素
用画图工具(例如mspaint)从左下角到右上角画一条直线,OK
看到这条线哪在那里换行,哪里就发脉冲
简单的说,就是图形学上的画线算法
给一个我的演示程序,把256格分成任意段,可以8轴联动(无累计误差)
点击此处下载 ourdev_441251.rar(文件大小:5K) (原文件名:输出算法1.0.rar)
它会生成一张图片,8行分别代表8个轴的输出波形 我已经在PLC上用比较笨的方法实现了
想讨论一下有没有更好的方法 用我的算法,只要你能做整数加减法和比较大小就行了 我是用的乘法与除法做的
用的绝对方式来发脉冲
d11++
d11*12000/d12
d11==d12 就把d11清零 貌似hefq完全没有理解 Digital Differential Analyzer(DDA) 的奥秘 :) must be marked 顶 good 硬驱 IC ~~~ 收工~~~
12000阶
12000阶/360度 每度 33.333333333333333333333阶~~~~~~~~~
也就是说 1.5度的步进电机 也就在 50细分
驱动IC 动不动都有 64分 128份~~~~ 33.333333333333333333333* 1.5度 约 50细分 建议使用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) 这个问题实际上是一个频率生成的问题,假设12000脉冲每圈,问题要求任意等分,实际问题可以转换为:时钟频率为12000,要求输出12000/n(n=1,2,3...)任意频率的脉冲,并且没有积累误差,可以考虑用DDS频率合成的方法来解决 学习……
页:
[1]