共享一些步进电机驱动的理论知识
步进电机 要求高精度,高速度, 怎么办呢?
定位分分辨率要求 256细分 ,普通的的二相混合式步进电机 ,就是200步一圈 ,那么一圈 就需要200*256=51200细分步。
怎么能达到高速度呢? 0-300-3000RPM
如果有普通的做法 一步需要256细分, 那么 我们来换算一下最慢和最快时一个细分步要多少时间?
0-5-50r/s ==> 0-1000-10000 step/s 那么 完成一个步 需要多少时间呢
1ms/step 100us/step
那么 再细分呢 再除以256
结果:
300RPM 256细分时 0.00390625ms/microstep=>3.9us/microstep换算出来要求步进电机响应频率 256KHZ
显然很多步进电机无法达到, 一般的步进电机能在6000PPS就不错了, 也就是6000个脉冲/秒,如果一圈是200步,也就是30r/s==1800RPM。
3000RPM 256细分时 0.000390625ms/microstep=>0.39us/microstep换算出来要求步进电机响应频率 2.56MHZ
这么快一微步, 什么单片机能能控制这个微细分步呢? 显然大多单片机都不行,都无法达到 5us以下的定时中断请求。
而且还需要控制多个步进电机,还有一些菜单之类的 怎么办呢?
那么只有一种办法,就是在高速的时候低细分,低速的时候高细分,从而又能达到 这个分辨率 又能快速响应。
(前面就有下个朋友说,采用步进电机响应太慢,其实步进电机响应是很快的,只是最大的缺点就是高速的时候力矩会变小,步进电机响应太慢原因就是市场上面主流的步
进电机驱动器,都是固定细分,从1-256细分 只能选择一种细分固定下来,还有的说在运行的时候不能去选择细分步,不然会烧毁驱动将不负责任,那么固定下来8分细,速
度是上去了可是精度,就低了,精度高了响应又慢了)
大多步进电机驱动需要占用 10-15us的时间 按15us计算,如果在100us 定时中断控制里, 响应5个步进电机同时驱动 就不是问题了。这样还可以高响应,高速度。
好了,那么如何来实现高速低细分,低速高细分呢?
通常实现速度控制有三种办法:
1.定时器一定,细分在变化。也就是说一定时间内改变他的行程。 细分在变化,那么他的位置,就很难去控制了。需要用不同的方法来实现。
2.定时器变化,细分不变。同样的行程 改变他的运动时间。 这种细分不变,改变定时器的时间,相对就简单一些,只需要控制定时器就行了。
3.定时器变化,细分也变化。这种方法实现起来相对复杂一些。
小弟在此抛砖引玉了 如果有说错的地方 还请指正,一起讨论一下。 要求高精度高速度就用伺服好了。。。。 步进电机高转速时力矩会下降多少呢?最近准备玩玩步进电机。 细分不是应该是为了较小振动.噪声么?还可以用来提高精度? lans0625 发表于 2014-4-6 18:07
要求高精度高速度就用伺服好了。。。。
伺服电机要贵几倍 步进电机还是应用在便宜的方案中。 huangmeilifan 发表于 2014-4-6 20:21
步进电机高转速时力矩会下降多少呢?最近准备玩玩步进电机。
看吧 当速度 上升 力矩就会下降 下降多少是如果供电一定 由电机和速度 决定的 lvyi913 发表于 2014-4-6 20:24
细分不是应该是为了较小振动.噪声么?还可以用来提高精度?
是的 如果精度提高不细分 怎么可能呢 是吧 wind2100 发表于 2014-4-7 14:39
看吧 当速度 上升 力矩就会下降 下降多少是如果供电一定 由电机和速度 决定的 ...
谢谢!一般步进的驱动会不会做到提速时提升有效电压(或电流)来保持扭力不降呢?
因为一般直流电机通过PMM方式经驱动后速度越快(占空比越高时),扭力越大的。 排队学习!顶楼主{:lol:} 目前市面上的步进电机驱动 多数是脉冲控制,这种驱动
优点就是控制简单
缺点 也是显而易见的 就是 精度够了 速度不够,速度够了 精度不够,当然要求不高的场合是可以了。定细分。 路过,快来围观{:lol:} 顶一个,有空学习一下,之前搞过一下步进电机,效果不理想,有空还要学习学习 最近在捣鼓42步进电机细分的时候遇到一个问题难以理解,请大侠帮忙答疑解惑。
步进电机在取细分表的时候,是应该取π/2的弧度还是π的弧度?在网上看到大家都是取π弧度的,对此十分的疑惑。比如8细分的正余弦细分表如下:
u16sin_8_X_buf[]= //8 PWM正弦细分表
{
0,1534,2896,3770,
4096,3797,2896,1600,
};
u16cos_8_X_buf[]= //8 PWM余弦细分表
{
4096,3797,2896,1600,
0,1534,2896,3770,
};
从图片中可以看出,每相的电流变化都是按正相增大,正相减小,反向增大,反向减小的方式去变化。
如果按π弧度取细分表的话,那不是每走π/2弧度就得换相么?在下一相的时候再重新读取细分表,这样就相当于4细分。8细分是如何得到的呢?
你怎么理解 是每走π/2弧度?
实在你不知道了 你让电机转一圈,看你给了多少步 发现一个问题,大家讨论理论的时候 大家都希望人家贡献出来,自己不去研究,
所有的代码 拿来主义 ,开源的代码共享了很久了,也没人 进一步优化 或是说从思路上突破。
或许大多 都自己优化了 不愿意再开源了,毕竟 估计是花了很多精力去做的。 wind2100 发表于 2016-5-27 19:39
发现一个问题,大家讨论理论的时候 大家都希望人家贡献出来,自己不去研究,
所有的代码 拿来主义 ,开源的 ...
你说的是有道理的,但说实在话,这个步进比较难理解,还涉及到SPWM,如果没有对电机磁场以及电路有深刻的理解,是玩不好中8841,6205这类芯片的;
更别提转动了,中间还涉及,速度,电流,细分,甚至到和伺服一样,同时做到速度环和位移环控制,更是难得啊;
我觉得和发出脉冲和方向,完全是两种思维模式了; kinsno 发表于 2016-5-27 19:45
你说的是有道理的,但说实在话,这个步进比较难理解,还涉及到SPWM,如果没有对电机磁场以及电路有深刻的 ...
是的,发肪冲和方向的 只要控制好加速度和最大速度就好了,位置只用记下发了多少个脉冲便知道。
驱动的性能交给驱动器了,
在上面我也讨论过 普通发脉冲驱动器的缺点,就是高细分 高速的时候 需要更高的脉冲频率 达到MHZ的级别,
所以控制器要做得特别快。 楼主,看到你的头像,虽然只是一点点,我就知道你是高手了。 舞台灯光就是有这些要求。。{:sweat:} 你在高速吧细分改变了还能保证精度???那控制器应该发多少脉冲???步进电机不是跟异步电机似的转圈的,另外楼主说步进电机的一般也就6K,貌似在淘宝上买的最便宜的套件保证在10K也没有问题的,另外现在的商用的一般最高频率也都至少是250K吧,稍微好点的都是500K了 weichao4808335 发表于 2016-8-5 14:29
你在高速吧细分改变了还能保证精度???那控制器应该发多少脉冲???步进电机不是跟异步电机似的转圈的, ...
驱动器是定细分 ,所以他们只能靠提高频率来解决 高转速的问题。
我这块板 是用的定时器 翻转IO 所以 最高在50khz左右 weichao4808335 发表于 2016-8-5 14:29
你在高速吧细分改变了还能保证精度???那控制器应该发多少脉冲???步进电机不是跟异步电机似的转圈的, ...
步进电机响应频率你了解一下,控制器 人家是可以做到2MHZ那是控制器。 wind2100 发表于 2016-8-8 08:29
步进电机响应频率你了解一下,控制器 人家是可以做到2MHZ那是控制器。 ...
我们有款步进集成芯片.脉冲频率可以跑几百K,有兴趣了解吗?
加995971182 脉冲频率可以跑几百K mdjfish 发表于 2016-8-19 18:18
脉冲频率可以跑几百K
那问你,跑了多少个脉冲? 你怎么办? 厉害。高手。顶起来。 正准备研究步进电机驱动,向楼主学习 czjdxs 发表于 2016-10-15 17:06
正准备研究步进电机驱动,向楼主学习
是要做什么项目啊,用多大的步进电机 chipspower 发表于 2016-11-10 15:41
是要做什么项目啊,用多大的步进电机
驱动桌子的升降 1069182055 发表于 2016-8-5 14:12
舞台灯光就是有这些要求。。
曾经同行.你在哪块做 学习谢谢!!! jorry 发表于 2016-12-20 16:28
学习谢谢!!!
大家相互学习
排队学习!顶楼主 看看大神洋洋,谢谢洋洋的分享
页:
[1]