步进电机每输入一个脉冲信号,转子就转动一个角度或前进一步,其输出的角度输入的脉冲数成正比,转速与脉冲频率成正比。它的驱动方式也比普通的有刷直流电机复杂。
如下图所示,左边是单极性电机;右边是双极性电机。单极性电机线圈内的电流只有一个方向,双极性电机线圈内的电流是双向的:
而相数,则是内部线圈的组数;一般的步进电机都可以看作是两相电机变化而来的。
本文我们使用最简单的五线),驱动方法也都是以它来讲的,其他种类的大同小异。就是如下图这种步进电机,以及驱动板:
它内部的接线关系如下图所示,正极是公共的,其他四个端口各对应一组线圈的负极:
驱动板的原理图如下,就是一个nln2003的达林顿管驱动器(忽略右下角的灯,基本毫无用处⊙﹏⊙b汗),IN1~IN4处输入高电平,对应的OUT1~OUT4会输出低电平:
后续依次给B、C、D相通电,则转子会转到B、C、D处,如步骤2、3、4;
最后再给A相通电,其他相断电,转子又回到A处;周而复始,使得转子不断旋转。
驱动过程如下图所示,也是4个步骤一个周期,不同的是每个时刻都有相邻的两相通电:
先给A相、B相通电,其他相断电,则转子的对应极被吸引到A、B相中间处,如步骤1;
最后再给A、B相通电,其他相断电,转子又回到AB相之间;周而复始,使得转子不断旋转。
8拍法驱动时,转子的位置比4拍法多两个中间态,所以转动时的位置控制更加精确一些,但是由于它有时是一相通电,有时是两相通电,所以在不同位置的力矩是不同的。
先看连接方式,使用PA0、PA1、PA2、PA3驱动A、B、C、D四相。PA0~3连接到驱动板的IN1~IN4;驱动板使用5V供电。
定义两个常量数组,F_Rotation存正向旋转的各相导通值,B_Rotation存反向旋转的值;
主循环中,每隔一个周期,去改变接通的相,4个拍一循环,就能实现电机转动了。
对于确定的驱动方式,步进电机每拍转过的角度是相同的,所以,如果想要改变转速,只要改变每拍的延时就可以了,也就是改变周期。
但是要注意,不能超过电机参数要求,如我们使用的这个电机(28BYJ-48)的参数:
也就是说空载转动时,最快的驱动拍频率最好不要超过900Hz;空载启动时,最快的驱动拍频率最好不要超过500Hz,因为启动时初始转速从零开始,驱动拍太快的话会失步,可能无法转动起来。所以程序里也设计成了500Hz(2ms延时)一拍。
好了,本节就讲到这里了,有关步进电机的知识这里只是很基础的一部分,后续有时间再一起深入学习。
电话:86 1317 3122242
传真:1317 3122242
邮编:276826
地址:中国 山东 诸城市 开发区工业园