Bootstrap

51单片机16(步进电机实验)

一、步进电机简介:

1、步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。

2、

3、

4、我们这个电机的旋转停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载的变化的影响,也就是说给我们的这个步进电机一个脉冲信号,那么电机就会旋转一个角度,那么这个角度我们通常称为步进电机的步距角。那么一个脉冲,一个步距角,我们就可以很精确的控制这个电机的一个位置以及速度。这个是直流电机所不能完成的一个功能。那么我们步进电机就弥补这一块。

5、那么要实现步进电机的控制,它不像这个普通电机那种直流电机一样,它能在常规下使用,步进电机,它需要一定这种功率的驱动电路,还有一些脉冲信号的一些输出,给这个步进电机才能控制对应的这个步进电机能够实现相应的功能,所以步进电机的控制,它的一个内容,还是相对来说比较复杂的,所以为什么在电机控制领域当中,它的一个工程师薪资待遇都是非常高的,电机控制这一块主要的核心是相应的一些控制算法,那我们先暂时学习我们基本的这些电机的控制这一块。

二、步进电机的工作原理

1、步进电机是将脉冲信号转变为角位移或者线位移的开环控制元件

2、我们看一下步进电机的一个结构

(1)

(2)步进电机,它分为绕组,定子和转子,主要是这三大部件,通常呢步进电机的转子,它是一个泳池体,当电流流过这个定子,绕组的时候,定子和绕组它会产生一个矢量的磁场,那么磁场会带动这个转子旋转一定的角度,那么使得转子对这个磁场的方向和定子的磁场方向保持一致,当这个定子的矢量磁场旋转一定的角度的时候,转子也会跟着这个磁场旋转这个一定的角度,那么这个角度,我们称之为这个步距角,每输入一个电脉冲信号,它会让这个步进电机转动一个角度,也就是前进一步,每输入一个脉冲,它这个转子会旋转一个步距角,那么,它输出的这个角位移和输入的脉冲,它是成正比的,旋转的速度跟它的脉冲的频率也是成正比,也就是说你这个脉冲数,就是说你输入了几个脉冲,这个脉冲就是一个上升沿到下降沿的一个过程,这一个脉冲会控制这个步进电机旋转一个步距角,假设一个步距角是0.6度,那你一个脉冲过来,它这个步进电机会旋转0.6度这个方向,如果说你给两个脉冲,那它就是0.6*2,以此类推,这是控制它的一个位移,也就是转子转动的一个角度,也就是位置。

(3)然后它的一个电机,它是可以调速的,怎么来调速,就是控制这个脉冲的一个频率,从这张图当中,假设我这个脉冲高电平,低电平所发挥的时间是一个毫秒,那现在我要让这个电机旋转的速度加快,那我这个高电平和低电平的时间,假设用到了0.5个毫秒,那这样的话,它的频率相当于周期减少,周期减少,频率就增大,频率增大,那我们的这个电机的一个速度,它就会加快,这就是它的一个脉冲速跟脉冲的频率控制这个步进电机的旋转位置以及速度是这样的。

(4)电机它还可以进行正反转,那么怎么来调节这个电机的一个正反转,那么就是改变这个绕组的一个通电的一个顺序。那么电机它就会改变它的一个运行方向,假设我们绕组,其实就是线圈,如果它的电流方向是这样,假设现在电机是正转,那如果我改变它的电流方向,那现在,就是一个反转的过程,这是我们的电机的几个要素。

3、步进电机极性区分

(1)

(2)步进电机又分为单极性,还有双极性。从上面的左图可以看到是一个单极性的一个步进电机,右图是双极性的一个步进电机。那么单极性和双极性怎么来区分,其实就是看他的一个电流方向,单双级性是指一个步进电机里面有几种电流的流向。

4、双极性步进电机驱动原理

(1)

(2)上图是我们这个双极性步进电机的一个整部的一个工作的一个顺序图。

(3)在我们的第一步图当中,这里使用的是A项通电,也就是说A正和A负是处于线圈,是处于工作,通电的一个状态,这是运行在我们的这个位置。

(4)第二步是当我们的这个A项的这个线圈断电,而B项的线圈得电,这样一来,我们的这个线圈,它的一个直线,这里是S级,那么N级会和S级产生一个作用力,所以,它会让这个转子旋转到我们的这个位置。所以第二步就相当于让我们的这个转子处于旋转90度的一个状态。

(5)相对于第一步,第三步是又相当于回到了我们的第一步的一种状态,B这个线圈是出于关闭的,A线圈是处于导通的,那这样一来,我们的A负和A正这时候的电流方向是相反的,此时这里是S极,这个N级一开始是在B端这个位置,然后呢,因为A线圈,它产生一个作用力,它会让这个转子旋转到这个位置,所以也就旋转了90度,这是我们第三步的一个工作状态。

(6)类似于我们什么状态,假设我们这个A正输出高电平,A负输出低电平。那么B正B负就是一个默认的高或者默认的低,就是不让它得电,这样一来我们是处于第一步的一个旋转状态。第二步相当于我们B正输出一个高,B负输出一个低电平,那处于B线圈得电,A线圈是让它成为低电平,就处于不工作的一个状态,这样我们的电机,它就会旋转90度,然后第三步是相当于又继续让我们的A线圈得电,此时是A负输出高电平,A正输出低电平,相当于这个线圈的电流方向是相反的,那么B正B负也是不工作的,也就是为低电平,这样一来,我们的这个电机,他又会旋转到90度,到达A负的这个位置。

(7)同理,第四步,就是相当于B线圈是工作的,就是B负等于高电平,B正等于低电平,那么相对于上面这张图,它的电线圈的方向,电流方向也是跟这个相反的。

(8)刚才我们介绍的是一个单向激励步进的一种工作状态,也可以理解为每次通电产生磁性的项也就是只有一个,要么就是A项,要么就是B项,但是更常用的是这种双向的一个激励,但是在转换的时候,一次只能转换向一次,那么右边这张图我们可以体现出来。右图我们使用的是双向的一种激励的一种方法。

(9)那么从这张图我们可以看到,其实它这个就相比于我们前面这张图,相当于又变换缩小了一个步距角45度,那么与单向激励不同的是,这个单向通电后被固定了,与这个定子正向这个绕组极性,但是双向,它是固定在这两个极性中间的一个位置,比如我们A正得电输出高电平,A负等于低电平,那么是处与这个工作状态的,B正和B负是低电平,也就是不工作,只是出于这个状态。如果是要处于现在的这一张图的一个工作状态,那我们还需要让B线圈B正高电平,B负等于低电平,那么这样的有一个电流,它相当于根据力的一个平分45度,它就旋转在这个位置,那么此时呢,这个电机转载就工作在这个A项和B项的中间位置,那么相当于AB项同时供电。

(10)刚才我们已经分析了,那以此类推,到第二张图也是一样的,相当于B正和A负,它是处于同时工作的,第三张图是A负和B负是统一工作的,第四张图是B负和A正处于同时工作,这样就能让这个电机控制在它的一个中间的一个位置旋转,相比于如果是把这两张图结合在一起控制,那它的一个控制角度就更加细腻,首先,在起始位置这个位置那么电机通过刚开始是A线圈得电,B线圈不得电,处于这个位置,现在让A线圈和B线圈同时得电,也就工作在45度的一个角度,然后再让B线圈得电,A线圈不得电,就处于工作45度,以此类推,也就是说这种把我们的单向激励和双向激励结合在一起,就可以让我们的步进电机,它的一个整个的步距角就一分为二,本来90度的一个旋转,那么现在我们让这个电机每旋转一步就是45度,也就是类似于我们本来是一步90度,现在相当于一步分了两步,这样会让我们的这个电机运行更加一个流畅,所以通常如果说要控制这个步进电机的一个旋转,我们采用的是双向激励的这种方法,它的控制的一个流畅度更好,甚至我们现在市场上很多的那种驱动器细分更加的一个小,所以让这个步进电机的旋转更加的一个精确,现在每旋转一个角是45度,那还可以让这个步进电机根据它的一个细分,对A正B正或者是A负B负的一个电流的大小,如果它的电流大小不同,就是说A正和B正的电流角大小不同,那它对应的这个偏转的角度也是不一样的,所以有很多的驱动器就针对这一块,做出了很多的细分,比如说本来是一步是90度,那它可以分成N多步,转每一圈,它的一个角度就很小,这样的一个运行的一个定位就更加的精确,那么它的一个原理就是通过控制它的一个电流的一个大小,这就是我们的一个实现双极性步进电机的一个控制原理。

5、单极性步进电机驱动原理

(1)前面我们介绍了双极性,那么对于单极性来说,那更加的一个简单,那我们来看一下单极性和双极性步进电机的一个驱动类型都可以分为整步和半步的这种驱动方式,不同的是,双极性的一个步进电机,可以通过改变电流的方向来改变每项的一个磁场方向。但是,单极性就不可以,因为它的电流方向是固定的,它有一个公共端,就直接决定了电流的方向,那么双极性呢,它是可以通过改变它两端的一个电流的一个方向,所以,它也叫双极性的一个步进电机。

(2)

(3)那么我们来看一下,我们这张图就是把这个双极性的一个步进电机的一个旋转示意图给大家展示了,那我们来分析一下它的一个旋转的过程是怎样的,首先我们看一下左边的这张图,这是单极性步进电机,它的一个整步的一个旋转过程图,其中我们看一下单极性步进电机,我们可以看到它是有五根线的,一个是公共端也就是VCC,然后有ABCD四根象限,所以是五根线,那么公共端是需要一直通电的,剩下的ABCD项只要有一个项通电,那就可以形成回路而产生磁场,从而控制电极转子的一个方向。

(4)那么我们这张图的通电顺序可以看到,首先得A得电,它处于工作在A这个方向上面A正这个方向,然后再是B通电工作在B这个方向,根据这个N级和S级,然后3这个呢是通过C这个项圈得电,使它工作于C这个方向,那么第四张图是让这个D进行得电,使它工作于D这个方向,完成了这么一个顺时针得一个旋转,那么它的旋转角度是90度,那么这个就是单向通电产生的一个整部得一个旋转。

(5)那么两相通电也是可以产生这么一个旋转的,刚才我们说了是单向也就是第一步是A相通电,第二步是B项通电,第三步是C相通电,第四步是D相通电,形成了一个旋转。

(6)那我们来看一下右图,右图是使两项进行得电,那么跟我们的双极性是类似的,当我们的A相跟B相同时得电的时候,那么,根据这个磁场得一个产生得一个作用力,它的一个方向应该是处于在A相跟B相得一个中间位置工作在这个位置,同理,第二张图是B相和C相得电,处于这个旋转位置,那么3这张图是C相和D相得电,四这张图是D相和A相得电,处于这个位置,这样呢,这张图就是相当于每旋转一个位置是要让这两个相得电,两个相得电,它才能工作在中间的这个位置。

(7)如果我让这个A和C得电,那它是不是能工作在这个位置,这个是不能这样去操作的,因为它这样要去旋转,它这个如果是A相和C相,这样一个工作,它的利益是抵消的,所以它不会这样去旋转,那一般的话,是让我们这个可以去看一下这张图,这是将那个单项和双向得电的一个整合,那么通常我们也把它称之为双向和单向的一个激励组合在一起,跟我们前面介绍的双极性是类似的。首先我们会让A相得电,A相得电就处于这个位置,然后又让AB相得电又处于这个位置,接下来就是B相得电,其他不得电,第四章就是B相和BC相同时得电。

(8)所以只要我们控制它的一个管脚,要让它得电其实这一段已经是对于我们的单极性的一个步进电机,比如说我们的五线四相步进电机,它的一端是连接在VCC,要让这个线圈得电,那是不是要让A输出低电平,电流才会导通,才会过来,因此我们让A输出低电平,此时其他的才会输出高电平,那么这个线圈会得电,因此让这个转子旋转在这个位置.

(9)现在又让AB相得电,也就是A输出低电平,B也输出低电平,其他的输出高电平,这样就可以旋转45度,以此类推,所以我们讲解的这种方法其实也是五项四线步进电机的一个控制的一个方法,那么使用这种双向激励与单向激励混合在一起的好处是让我们的这个电机的一个旋转更加的一个顺滑,一开始,如果说使用单向的一个激励,那它每旋转一次就是90度,这样如果我们旋转的慢,我们可以明显看得到它的一个旋转的一个切换的一个动作,比如一下跳到这里,跳到那里,会有一个切换的状态,我们看的到,如果说是45度,我们旋转就会比较顺滑,所以你分得越细,它的一个工作的一个旋转的一个流畅度就越好,这也就会产生一个细分的一个驱动,那么细分的驱动原理就是我们刚刚介绍到这种方法,只要你控制它的电流大小不同,那么它的一个运行的一个角度也就不同,比如说A相电流比B相电流大,那么它的一个方向就相当于偏向A相,如果说你A相比B相小,那么它的运行方向就偏向B相,以此类推,那么这个虚度细分驱动怎么区分,会有一种专门的驱动器,所以在电机控制领域当中,这种驱动器是必不可少的,它可以让我们的这个电机进行一个细分,那么我们板载没有这种细分的驱动器,我们是用驱动这个电机为目的。

三、步进电机的技术指标

1、静态技术指标:相数,拍数,步距角,定位转矩,静转矩

(1)相数:产生不同对集NS的一个线圈对数,我们也可以理解为步进电机中的线圈的一个组数,我们通常称为相数,有几组就有几项,比如我们前面的这种双向步行电机也有两项,我们前面也看到了两个线圈,所以这两个线圈就是两项,然后五线四相顾名思义就是有四相。

(2)拍数:拍数是完成一个磁场周期变化所需要的一个脉冲数,或者导电状态用N来表示,也就是指这个电机转过一个齿距角所需要的脉冲数,那么我们以四相为例,那么有四相试拍运行方式,我们前面已经分析过了,AB,BC,CD,DA以此循环,那么这种方式还有四相八拍,A,AB,B,BC,C,CD,D,DA八拍,所以它根据它的一个旋转细分的一个这种方面来分它的一个拍数,常用的是八拍,当然,我们也可以使用四拍。

(3)步距角:步距角就是一个脉冲信号对电机旋转的一个角度,可以理解为一个脉冲驱动对这个电机转动的角度,那么点击数一般都会有写一般,比如四二的步进电机,那么它的步距角是1.8度,这个在你购买这个电机的时候一般都会有,如果说你是用的是常规的一个电机,那一般都是会有步距角这种说明的。

(4)定位转矩:电机在不通电的状态下,电机转子自身的一个锁定的一个力矩,这是定位的一个转矩。

(5)静转矩:它是电机在额定静态电压工作下,电机不做旋转运动,电机转轴的一个锁定力矩,这是衡量电机体积的一个标准与驱动器电压和电源的一个是无关的,这是常见的一个静态的一个技术指标。

2、动态技术指标:步距角精度,失步,失调角,最大空载起动频率,最大空载的运行频率,运行转矩特性,电机正反转控制。

(1)步距角精度:步距电机转动一个步距角的理论值与实际值,它会有一定的误差,那么就是步距角的一个精度,那么用百分比来表示,比如说误差除以这个步距角再乘以100%,这是步距角的一个精度。

(2)失步:就是电机旋转的步数,不等于理论上的步数,也叫做丢步,一般呢都是因为负载太大或者是频率过快,导致这个失步也就丢掉步数,比如说我发送了三个脉冲,本来是要旋转三个步距角,但它只旋转了两个。

(3)失调角:它是定子齿轴线的一个角度,那么电机运转的时候,必存在这个失调角,那么由于失调角产生的误差,采用细分驱动是不能解决的,他会存在一定的失调角。

(4)最大空载启动频率:在不增加负载的情况下,能够直接启动的一个最大的频率,这是电机的一个非常重要的一个参数。

(5)最大空载的运行频率:电机不带负载的时候,最高的一个转速,最高的一个转速频率。

(6)运行转矩特性:电机动态力矩取决于电机运行时的一个平均电流,而不是静态电流,那么平均电流越大,电机的一个输出力矩也就越大。

(7)电机正反转控制:电机的一个正反转控制通过改变这个线圈的一个通电的一个方向,就可以改变电机的一个正反转,这个是我们步进电机的一些技术指标。

四、28BYJ-48步进电机简介

1、

2、我们是实验当中使用的是28BYJ-48步进电机,当然我们没有配置这个步进电机,需要大家去购买,对于我们A5到A7开发板,我们也使用了一个步进电机,也就是视线双极性,那双极性的控制方法,前面我们已经分析了其实是跟这个类似的,那我们就以这个28BYJ-48这个步进电机比较通用,那我们就以这个电机为例来给大家讲解一下。

3、这张图就是我们这个28BYJ-48步进电机,它的一个外观的一个实物图,有五根线,并且这个电机表面也会表明这个电机是5V的一个直流供电的,它是一个步进电机,那型号呢是这个,右边这张图,是这个步进电机的一个内部的一个结构图,那么这个结构图其实前面我们介绍这个单极性步进电机的一个工作原理的时候,我们其实也分析过了,因为这个五项四线的步进电机,它其实也是单极性的一个步进电机,就是公共端一端是VCC电源固定的,然后另一端就是四个相,四个相分别控制这四个项的一个通电顺序,就能让这个电机进行一个旋转。

4、下面这张图就是针对这个五线四相步进电机的一个工作的一个八拍,也就是八步,它的一个通电顺序是怎样的,首先我们先看一下,第一步是这个红线就是VCC固定的,也就是5V,然后这个D相先得电,也就是让它为低电平,其他的都不动,这是第一步。第二步,假设只是现在的位置是旋转到这个位置,那第二步就是D和C相得电,那此时它的工作应该就是到了这个位置中间的D和C段。第三部是让C得电,C得电就是到了C这一段,相当于我们的这个位置,相当于我们的这个位置开始旋转。第四步就是C和B得电,也就是C和B的中间,那就相当于又转到这里来了。那第五步就是让B得电,那B得电,那他的一个转走就转到这里来了。第六步就是B和A得电,那就转到这里来了。第七步是A得电,转到这里来了。第八步是D和A得电,那就有转到这里来了。所以这个步骤让它这样一个循环进行。

5、如果你要反过来让这个电机旋转,跟刚才的方向是这样的一个假设方向,那怎样操作呢,其实就是把它的一个步数反过来,由第八步开始到第一步。

6、

(1)这里列举了步进电机的它的相关的一些参数,比如它的电压工作电压要求在5V,如果说你高于5V或者低于5V,那这个电机的旋转是一个,比如说电压大于5V,那就有可能会损坏这个电机,如果电压低于5V,那么可能使这个电机带不动,它的项数是四相,也就是ABCD,一个公共端,那么相电阻300欧,然后步距角是5.625除以64,那么减数比就是64,减数比就是因为这个步进电机它内部含有这个自带齿轮的一个减速,自带这个减速器,那么它的一个减速是怎么看的呢,从这个拆分图我们可以看一下,拆分图里面分了这几个齿轮,通过这个齿轮换算,得出1比64,也就是减速比是这个,其他的呢参数大家可以看一下,这个是电机的相关的一些参数,我们要让这个步进电机旋转这个360度,也就是一圈,那我需要多少个脉冲,比如说我们的步距角是这样5.625除以64,这是它的一个步进电机一个脉冲所要旋转的一个角度,那如果我要旋转360度,那就是360除以5.625乘以64就可以得到它的一个脉冲数。

五、硬件设计

1、

六、软件设计

1、本章所要实现的功能是:通过ULN2003驱动模块控制28BYJ48步进电机运行方向及速度,当按下KEY1健可调节电机旋转方向;当按下KEY2健,电机加速;当按下KEY3键,电机减速。

2、

;