如何控制步进电机?

如何控制步进电机

如何控制步进电机

在控制电机时如果需要对电机转动角度进行定位,步进电机是非常合适的选择。下面是对单极和双极步进电机以及如何从微控制器控制它们做详细的介绍。阅读下面的这些内容,可以先了解电机是如何工作的、微控制器是如何工作的、如何使用晶体管来控制大电流负载以及直流电动机是如何工作的。
      正如您在电机简介中所了解到的,步进电机是由一系列电磁线圈控制的电机。中间轴上安装有一系列磁铁,轴周围的线圈交替地被电流给定与否,产生磁场,排斥或吸引轴上的磁铁,导致电机旋转。

单极步进电机

单极步进发动机有五根或六根导线。五线制版本有四个线圈,它们都连接在一个电极上。六线电机实际上是双极的,两个线圈被每个线圈的中心连接分开。线圈的中心连接如图1所示绑在一起,用作电源连接。他们被称为单极踏步机,因为电力总是在这一极。


图1.单极步进电机的接线,两个线圈的中心线在单极步进器中绑在一起

双极步进电机

双极步进电机通常有四根电线从里面出来。与单极步进器不同,双极步进器没有公共连接。它们有两组独立的线圈,如图2所示。通过测量导线之间的电阻,可以将它们与单极步进电机区分开来你应该找到两对电阻相等的电线如果你把电表的引线连接到两条没有连接的电线上(即没有连接到同一个线圈上),你会看到无穷大的电阻,或者没有连续性。一些双极步进电机在每个线圈上都有一个中心连接。这些中心连接可以连接起来,将6线双极步进电机变成单极步进电机。



图2.双极步进电机接线

和其他电机一样,步进电机需要的功率比微控制器所能提供的要多,因此需要单独的电源。理想情况下,可以从制造商处了解电压,但如果不知道,请使用可变直流电源,施加最小电压(希望是3V左右),在线圈的两根导线(例如1到2或3到4)上施加电压,然后缓慢升高电压,直到电机难以转动。这样可能会损坏发动机,所以不能测试太高的电压。步进电机的典型电压可能是5伏、9伏、12伏、24伏,高于24伏对小步进电机来说不太常见,坦白地说,高于这个水平最好不要测试。如何控制步进电机

步进电机的h桥控制

要控制步进电机,按特定顺序向每个线圈施加电压两种类型的步进电机都可以用H桥控制。顺序如下:

Step

Wire 1

Wire 2

Wire 3

Wire 4

1

high

low

high

low

2

low

high

high

low

3

low

high

low

high

4

high

low

low

high

从h桥控制单极步进器或双极步进器的电路非常相似。在这两种情况下,线圈的四个末端都连接到H桥的四个输出端。不同的是,对于单极,也有一个共同的中心线。该电线可以连接到为H桥供电的同一个电机电压源上,也可以保持断开状态。如果做后者,对待单极电机就像它有两个独立的线圈,换句话说,就像它是一个双极步进电机。

图3和图4显示了单极步进电机到H桥的接线:


图3连接到H桥和Arduino的单极步进电机示意图  图4.单极电机与H桥和Arduino相连的横向视图

请注意,中心极连接到12V电源和H桥,也可以运行单极步进电机,而无需以这种方式连接中心极。如果这样做,基本上是作为一个双极步进操作。

要控制双极步进电机,使用与单极步进电机相同的步进来提供线圈电流,但是,不要使用四个线圈,而是使用两个线圈的两极,并反转线圈间电流的极性图5和图6显示了这方面的电路。单极电机和双极电机的电路相同,但单极电机的中心线除外:


图5连接到H桥和Arduino的双极步进电机的示意图 图6.连接到H桥和Arduino的双极步进电机的实验板

一旦有一个方向的步进电机,做另一个方向的步进是很简单的事情,按相反的顺序做就行。
      知道位置就是知道每一步有多少度,然后计算出每一步的度数,再乘以这个度数。举个例子,如果你有一个1.8度的步进电机,它转动200步,也就是转动1.8x 200度,也就是360度,也就是一整圈。
双线控制

在序列的每一步中,两条导线总是设置为相反的极性。因此,用一个稍微复杂一点的电路,只用两根导线而不是四根导线就可以控制步进电机通过在每对导线上使用npn晶体管,可以在一对导线通电的同时关闭另一对导线。晶体管的底座通过一个1千欧姆的电阻连接到第一个管脚和微控制器的输出管脚。第二个引脚通过一个10千欧姆的上拉电阻连接到+5V,晶体管的集电极也连接到该引脚上。晶体管的发射极接地。当晶体管导通时,它为通过上拉电阻器的电流提供一条对地电阻最小的路径,同时使第二个H桥引脚接地。因此,拉动微控制器的输出引脚会使第一个H桥引脚同时升高和第二个引脚同时降低。为第三和第四个管脚O复制此电路

二线制步进电路如图7和图8所示。单极电机和双极电机的电路相同,但单极电机的中心线除外:


 图7.单极步进电机的示意图,连接到H桥和Arduino,采用双线配置  图8.连接到Arduino的L293D H桥的实验板视图,用于驱动步进电机,2线

双极步进二线制电路如图9和图10所示:

图9.双极步进电机连接到H桥和Arduino双线版本的示意图   图10.双极步进电机与H桥和Arduino 2线结构连接的实验板图

步进顺序与上述两条中间导线的步进顺序相同:

Step wire 1 wire 2
1 low high
2 high high
3 high low
4 low low
     单片机编程控制步进电机

由于单极步进电机和双极步进电机都由相同的步进顺序控制,因此可以对任一配置使用类似的代码在Arduino步进电机控制器中,只需更改初始管脚配置。有关编程步进电机控制的更多信息,请参阅:单片机控制步进电机

如何控制步进电机:最简单的方式就是采用市面上成熟的步进电机控制器

CAN总线步进电机驱动控制器:


五轴步进电机控制器:

PLC控制步进电机:PLC控制99台步进电机