四相步进电机全教程

合集下载

5线4相步进电机接线

5线4相步进电机接线

5线4相步进电机接线步进电机是一种关键的电子元件,广泛应用于各种自动化设备中。

其中,5线4相步进电机是一种常见的类型,具有较高的精度和稳定性。

在进行接线时,正确连接各个引脚非常重要,否则可能导致电机无法正常工作或损坏电路。

电机引脚说明首先,我们来了解一下5线4相步进电机的引脚。

这种类型的步进电机通常拥有5条引线,分为4组相,即A相、B相、C相和D相。

具体而言,引脚分别为A+、A-、B+、B-、COM。

其中,A+和A-为A相引脚,B+和B-为B相引脚,C和D相分别连接在COM引脚上。

接线步骤接下来,我们将介绍5线4相步进电机的接线方法。

首先,将A相的A+引脚连接到电机驱动器的A+端子,A-引脚连接到A-端子;将B相的B+引脚连接到B+端子,B-引脚连接到B-端子;最后,将C相和D相分别连接到COM引脚上。

接线完成后,需要确保所有连接牢固且没有短路。

注意事项在接线过程中,需要注意几个关键问题。

首先,务必按照正确的引脚对接方式进行连接,以确保电机按照正常顺序旋转。

其次,连接过程中要小心防止引脚短路,以免损坏电机或其他电路元件。

另外,在使用电机时,要留意电机的工作温度和电流参数,避免超载造成损坏。

接线测试完成接线后,可以进行简单的接线测试来验证连接是否正确。

通过对电机施加适当的电压和信号,观察电机的旋转情况,以确认接线是否正确。

如果电机按照预期旋转,表示接线正确无误;如果电机无法转动或转动异常,需要检查接线是否有误,并及时调整修正。

总结5线4相步进电机是一种常见的步进电机类型,正确的接线方法对于电机的正常运行至关重要。

在进行接线时,需要仔细查看电机的引脚说明,并按照正确的顺序连接各个引脚。

在接线完成后,务必进行测试验证,确保电机可以正常运转。

通过正确的接线和使用方法,可以充分发挥步进电机的功能,实现各种自动化设备的精准控制。

四相八拍步进电机调速

四相八拍步进电机调速

目录引言 . 0第 1 章绪论 . (1)1.1步进电机的概述 (1)1.1.1步进电机的特点 (1)1.1.2步进电机的工作原理简述 . (1)1.2四相八拍步进电机 (1)1.2.1四相步进电机工作原理 (1)1.2.2八拍得工作方式 (3)1.3单片机概述 (3)1.3.1单片机原理简述 (3)1.3.28031 单片机 . (4)1.4总体方案设计 (4)1.4.1系统的组成 (4)1.4.2系统的工作原理 (5)第 2 章系统软件设计 . (6)2.1显示子程序的设计 (6)2.2键盘子程序的设计 (8)2.3正反转程序流程图 (11)2.3.1正反转程序流程图 (11)2.3.2转速快慢程序流程图 (14)2.4定时中断流程图 (17)2.5语音报警系统 (19)2.6主程序设计 (20)参考文献. (23)致谢 . (24)引言步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。

在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。

这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。

使得在速度、位置等控制领域用步进电机来控制变的非常的简单。

步进电机的调速一般是改变输入步进电机的脉冲的频率来实现步进电机的调速,因为步进电机每给一个脉冲就转动一个固定的角度,这样就可以通过控制步进电机的一个脉冲到下一个脉冲的时间间隔来改变脉冲的频率,延时的长短来具体控制步进角来改变电机的转速,从而实现步进电机的调速。

在本设计方案中采用单片机内部的定时器改变脉冲的频率从而实现对步进电机的转速进行控制,实现电机调速与正反转的功能。

关键词:步进电机,单片机,调速系统第1章绪论1.1步进电机的概述1.1.1步进电机的特点1)一般步进电机的精度为步进角的3-5%,且不累积。

2)步进电机外表允许的温度高。

步进电机温度过高首先会使电机的磁性材料退磁,从而导致力矩下降乃至于失步,因此电机外表允许的最高温度应取决于不同电机磁性材料的退磁点;一般来讲,磁性材料的退磁点都在摄氏130 度以上,有的甚至高达摄氏200 度以上,所以步进电机外表温度在摄氏80-90 度完全正常。

四相步进电机工作原理

四相步进电机工作原理

四相步进电机工作原理
四相步进电机是一种采用四个独立线圈驱动的电机,其工作原理是通过依次给每个线圈施加电流,来使得电机轮换地进行一步一步的旋转。

在电机内部,有四个线圈,分别被标记为A、B、C和D。


在线圈A中通入电流时,会在A线圈周围产生一个磁场。


据右手定则,当电流通过线圈A时,会产生一个磁场方向,
使得电机的转子顺时针旋转90度。

接下来,当在线圈B中通入电流时,会在B线圈周围产生一
个磁场。

由于磁场与转子的磁场相互作用,转子会继续顺时针旋转90度。

然后,当在线圈C中通入电流时,会在C线圈周围产生一个
磁场。

同样地,转子会继续顺时针旋转90度。

最后,当在线圈D中通入电流时,会在D线圈周围产生一个
磁场。

此时,转子已经完成一次完整的旋转。

通过依次按照A、B、C和D的顺序通入电流,并且控制电流
的大小,就可以实现精确控制步进电机的旋转角度和速度。

需要注意的是,四相步进电机的驱动方式和控制方法多种多样,可以通过改变电流的方向和大小来控制电机的运动。

同时,通过适当的脉冲信号控制,可以实现步进电机的准确位置控制,适用于许多自动控制系统和精密仪器。

四相步进电机使用

四相步进电机使用

1. 步进电机的工作原理该步进电机为一四相步进电机,采用单极性直流电源供电。

只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。

图1是该四相反应式步进电机工作原理示意图。

图1 四相步进电机步进示意图开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。

当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,1、4号齿和C相绕组的磁极对齐。

而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。

依次类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。

四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。

单四拍与双四拍的步距角相等,但单四拍的转动力矩小。

八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。

单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图2.a、b、c所示:a. 单四拍b. 双四拍c八拍图2.步进电机工作时序波形图2.基于AT89C2051的步进电机驱动器系统电路原理步进电机驱动器系统电路原理如图3:图3 步进电机驱动器系统电路原理图AT89C2051将控制脉冲从P1口的P1.4~P1.7输出,经74LS14反相后进入9014,经9014放大后控制光电开关,光电隔离后,由功率管TIP122将脉冲信号进行电压和电流放大,驱动步进电机的各相绕组。

使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和停止等动作。

图中L1为步进电机的一相绕组。

AT89C2051选用频率22MHz的晶振,选用较高晶振的目的是为了在方式2下尽量减小AT89C2051对上位机脉冲信号周期的影响。

图3中的RL1~RL4为绕组内阻,50Ω电阻是一外接电阻,起限流作用,也是一个改善回路时间常数的元件。

4相8拍步进电机工作原理

4相8拍步进电机工作原理

4相8拍步进电机工作原理
4相8拍步进电机工作原理:
步进电机是一种通过依次激励不同的电磁线圈来使转子转动的电机。

它的工作原理可以分为以下几个步骤:
1. 电机通电:步进电机需要接通电源才能正常工作。

通过给电机施加电源电压,电流被输送到电机的不同线圈上。

2. 电流激励:步进电机中的线圈被分为四组,分别为A、B、
C和D相。

每个相由多个线圈组成,这些线圈被连在一起并
以特定的方式绕绕在动转子上。

3. 电流方向:通过改变每个相的电流方向来控制步进电机的转向。

电流可以从逆时针或顺时针方向流过线圈。

4. 步进模式:步进电机通常以8拍或4拍两种模式工作。

在8
拍模式下,每个相都按照特定的顺序依次激励。

在4拍模式下,相的激励顺序会不同。

5. 磁场旋转:当电流通过相线圈时,会在周围产生一个磁场。

这个磁场会与电机中的永磁转子进行相互作用,导致转子发生旋转。

6. 转子转动:通过循环激励电机的不同相,可以使得转子以步进的方式进行旋转。

每次激励一个相,转子就会转动一个固定的角度(通常为1.8度,对应于8拍模式)。

7. 控制方式:步进电机可以通过使用特定的控制器或驱动器来控制其旋转步长、转速和方向。

控制器会向驱动器发送信号,通过改变激励的相来控制电机的运行。

通过不断地循环激励不同相,步进电机可以实现相对准确的位置控制和连续的旋转运动,在自动化领域广泛应用于精密定位、自动化设备和机器人等方面。

[整理]2相4线步进电机

[整理]2相4线步进电机

通过上图可知,A,~A是联通的,B和~B是联通。

那么,A和~A是一组a,B和~B是一组b。

不管是两相四相,四相五线,四相六线步进电机。

内部构造都是如此。

至于究竟是四线,五线,还是六线。

就要看A和~A之间,B和B~之间有没有公共端com抽线。

如果a组和b 组各自有一个com端,则该步进电机六线,如果a和b组的公共端连在一起,则是5线的。

所以,要弄清步进电机如何接线,只需把a组和b组分开。

用万用表打。

四线:由于四线没有com公共抽线,所以,a和b组是绝对绝缘的,不连通的。

所以,用万用表测,不连通的是一组。

五线:由于五线中,a和b组的公共端是连接在一起的。

用万用表测,当发现有一根线和其他几根线的电阻是相当的,那么,这根线就是公共com端。

对于驱动五线步进电机,公共com端不连接也是可以驱动步进电机的。

六线:a和b组的公共抽线com端是不连通的。

同样,用万用表测电阻,发现其中一根线和其他两根线阻止是一样的,那么这根线是com端,另2根线就属于一组。

对于驱动四相六线步进电机,两根公共com端不接先也可以驱动该步进电机的。

步进电机相关概念:相数:产生不同对极N、S磁场的激磁线圈对数。

常用m表示。

拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号,电机转子转过的角位移用θ表示。

θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。

四拍运行时步距角为θ=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步)。

定位转矩:电机在不通电状态下,电机转子自身的锁定力矩(由磁场齿形的谐波以及机械误差造成的)静转矩:电机在额定静态电作用下,电机不作旋转运动时,电机转轴的锁定力矩。

2相四线,四相五线,四相六线步进电机接线及驱动方法

2相四线,四相五线,四相六线步进电机接线及驱动方法

2相四线,四相五线,四相六线步进电机接线及驱动方法步进电机原理按照常理来说,步进电机接线要根据线的颜色来区分接线 的步进电机,线的颜色不一样。

特别是国外的步进电机那么,步进电机接线应该用万用表打表。

~B 是一组b o 不管是两相四相,四相五线,四相六线步进电机。

内部构造都是如此。

至于究竟是四线,五线,还是六线。

就要看 A 和~A 之间,B 和B~之间有没有公共端com 抽线。

如果a 组和b 组各自有一个com 端,则该步进电机六线,如果 a 和b 组的公 共端连在一起,则是 5 线的。

但是不同公司生产B 和~B 是联通。

那么, A 和~A 是一组a , B 和通过上图可知,A, ~A 是联通的,步进电机内部构造如下图所以,要弄清步进电机如何接线,只需把 a 组和 b 组分开。

用万用表打。

四线:由于四线没有com公共抽线,所以,a和b组是绝对绝缘的,不连通的。

所以,用万用表测,不连通的是一组。

五线:由于五线中,a和b组的公共端是连接在一起的。

用万用表测,当发现有一根线和其他几根线的电阻是相当的,那么,这根线就是公共com端。

对于驱动五线步进电机,公共com端不连接也是可以驱动步进电机的。

六线:a和b组的公共抽线com端是不连通的。

同样,用万用表测电阻,发现其中一根线和其他两根线阻止是一样的,那么这根线是com端,另2根线就属于一组。

对于驱动四相六线步进电机,两根公共com端不接先也可以驱动该步进电机的。

步进电机相关概念:相数:产生不同对极N S磁场的激磁线圈对数。

常用m表示。

拍数: 完成一个磁场周期性变化所需脉冲数或导电状态用n 表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD- DA-AB四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号,电机转子转过的角位移用9表示。

B =360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。

四相步进电机原理图

四相步进电机原理图

四相步进电机原理图本文先介绍该步进电机的工作原理,然后介绍了其驱动器的软、硬件设计。

1. 步进电机的工作原理该步进电机为一四相步进电机,采用单极性直流电源供电。

只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。

图1是该四相反应式步进电机工作原理示意图。

图1 四相步进电机步进示意图开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。

当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,1、4号齿和C相绕组的磁极对齐。

而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。

依次类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。

四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。

单四拍与双四拍的步距角相等,但单四拍的转动力矩小。

八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。

单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图2.a、b、c 所示:a. 单四拍b. 双四 c八拍图2.步进电机工作时序波形图2.基于AT89C2051的步进电机驱动器系统电路原理步进电机驱动器系统电路原理如图3:图3 步进电机驱动器系统电路原理图AT89C2051将控制脉冲从P1口的P1.4~P1.7输出,经74LS14反相后进入9014,经9014放大后控制光电开关,光电隔离后,由功率管TIP122将脉冲信号进行电压和电流放大,驱动步进电机的各相绕组。

使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和停止等动作。

图中L1为步进电机的一相绕组。

AT89C2051选用频率22MHz的晶振,选用较高晶振的目的是为了在方式2下尽量减小AT89C2051对上位机脉冲信号周期的影响。

四相步进电机有两种运行方式

四相步进电机有两种运行方式

四相步进电机有两种运行方式,一、四相四拍;二、四相八拍。

要想搞清楚四相八拍运行方式下步进电机的转速如果计算,需要先清楚两个基本概念。

1、拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即
A-AB-B-BC-C-CD-D-DA-A.
2、步距角:对应一个脉冲信号,电机转子转过的角位移用θ表示。

θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。

四拍运行时步距角为θ=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步)。

这两个概念清楚后,我们再来计算转速,以基本步距角1.8°的步进电机为例(现在市场上常规的二、四相混合式步进电机基本步距角都是1.8°),四相八拍运行方式下,每接收一个脉冲信号,转过0.9°,如果每秒钟接收400个脉冲,那么转速为每秒400X0.9°=360°,相当与每秒钟转一圈,每分钟60转。

其他情况同理可以计算得出。

至于针对某一电机的最大转速,这跟电机的内部参数和驱动器的电压有关系。

在这不做详解。

希望可以解决你的问题,打了这么多字,感觉满意的话加分哈!。

六线四相步进电机总结

六线四相步进电机总结

六线四相步进电机总结2009-05-10一、步进电机基本原理图1 四相步进电机步进示意图开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。

当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,1、4号齿和C相绕组的磁极对齐。

而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。

依次类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。

四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。

a. 单四拍b. 双四拍 c八拍二、步进电机转动程序单四拍://顺时针AI=0;BI=1;CI=1;DI=1;delay(1000);AI=1;BI=0;CI=1;DI=1;delay(1000);AI=1;BI=1;CI=0;DI=1;delay(1000);AI=1;BI=1;CI=1;DI=0;delay(1000); //逆时针AI=1;BI=1;CI=1;DI=0; delay(1000);AI=1;BI=1;CI=0;DI=1; delay(1000);AI=1;BI=0;CI=1;DI=1; delay(1000);AI=0;BI=1;CI=1;DI=1; delay(1000);双四拍:AB-BC-CD-DA顺时针AI=0;BI=0;CI=1;DI=1;delay(1000);AI=1;BI=0;CI=0;DI=1;delay(1000);AI=1;BI=1;CI=0;DI=0;delay(1000);AI=0;BI=1;CI=1;DI=0;delay(1000); DC-CB-BA-AD逆时针AI=1;BI=1;CI=0;DI=0;delay(1000);AI=1;BI=0;CI=0;DI=1;delay(1000);AI=0;BI=0;CI=1;DI=1;delay(1000);AI=0;BI=1;CI=1;DI=0;delay(1000);八拍://顺时针AI=0;BI=1;CI=1;DI=1;delay(1000);AI=0;BI=0;CI=1;DI=1;delay(1000);AI=1;BI=0;CI=1;DI=1;delay(1000);AI=1;BI=0;CI=0;DI=1;delay(1000);AI=1;BI=1;CI=0;DI=1;delay(1000);AI=1;BI=1;CI=0;DI=0;delay(1000);AI=1;BI=1;CI=1;DI=0;delay(1000);AI=0;BI=1;CI=1;DI=0;delay(1000); //逆时针AI=1;BI=1;CI=1;DI=0; delay(1000);AI=1;BI=1;CI=0;DI=0; delay(1000);AI=1;BI=1;CI=0;DI=1; delay(1000);AI=1;BI=0;CI=0;DI=1; delay(1000);AI=1;BI=0;CI=1;DI=1; delay(1000);AI=0;BI=0;CI=1;DI=1; delay(1000);AI=0;BI=1;CI=1;DI=1; delay(1000);AI=0;BI=1;CI=1;DI=0; delay(1000);三、步进电机高精度细分四相八拍四、步进电机电路设计五、步进电机程序设计。

四相八拍步进电机调速

四相八拍步进电机调速

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

在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。

这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。

使得在速度、位置等控制领域用步进电机来控制变的非常的简单。

步进电机的调速一般是改变输入步进电机的脉冲的频率来实现步进电机的调速,因为步进电机每给一个脉冲就转动一个固定的角度,这样就可以通过控制步进电机的一个脉冲到下一个脉冲的时间间隔来改变脉冲的频率,延时的长短来具体控制步进角来改变电机的转速,从而实现步进电机的调速。

在本设计方案中采用单片机内部的定时器改变脉冲的频率从而实现对步进电机的转速进行控制,实现电机调速与正反转的功能。

关键词:步进电机,单片机,调速系统AbstractStep-by-step electric motor is the ring opening gating element changing electricity pulse signal into angular displacement or line displacement. Under the situation of must overload, the electric motor rotation rate , discontinuous location depend on pulse signal frequency and pulse number only , make free from being loaded with the effect changing ,but be that being added a pulse signal , the electric motor by electric motor is to have rotated a step spur angle. This gleam of location Step-by-step electric motor speed regulation general be change import step-by-step electric motor pulse frequency come true step-by-step electric motor speed regulation, because of step-by-step electric motor every be given to a pulse right away rotate one fixed angle, such right away not bad pass under the control of step-by-step electric motor a pulse arrive at next pulse period come to change pulse frequency Come to control the speed regulation ,Frequency adopt the internal timer of realizing an electric motor and the function that the positive and negative rotates being in progress to step-by-step electric motor rotation rate thereby.Key Words: Step-by-step electric motor , monolithic machine , speed regulation system目录摘要------------------------------------------------------------------------------------------------------------- I ABSTRACT --------------------------------------------------------------------------------------------------- II 第1章绪论 ---------------------------------------------------------------------------------------------- 1 1.1步进电机的概述-------------------------------------------------------------------------------------- 11.1.1 步进电机的特点----------------------------------------------------------------------------- 11.1.2 步进电机的工作原理简述-------------------------------------------------------------------- 11.1.3 步进电机的基本参数-------------------------------------------------------------------------- 11.1.4 步进电机调速原理简述----------------------------------------------------------------------- 2 1.2四相八拍步进电机---------------------------------------------------------------------------------- 21.2.1四相步进电机工作原理 ----------------------------------------------------------------------- 21.2.2 八拍得工作方式 -------------------------------------------------------------------------------- 4 1.3单片机概述 -------------------------------------------------------------------------------------------- 41.3.1 单片机原理简述 -------------------------------------------------------------------------------- 41.3.2 8031单片机 ------------------------------------------------------------------------------------- 5 1.4总体方案设计 ----------------------------------------------------------------------------------------- 61.4.1 系统的组成 -------------------------------------------------------------------------------------- 61.4.2 系统的工作原理 -------------------------------------------------------------------------------- 6 第2章硬件设计----------------------------------------------------------------------------------------- 72.1A/D转换器选择-------------------------------------------------------------------------------------- 72.1.1 MC14433A/D转换器简介 ---------------------------------------------------------------------- 72.1.2 MC14433各类引脚的功能--------------------------------------------------------------------- 7 2.2外部程序存储器的扩展 --------------------------------------------------------------------------- 8 2.3片外数据存储器的扩展----------------------------------------------------------------------------- 9 2.4脉冲分配器的选择 --------------------------------------------------------------------------------- 10 2.5键盘与显示选择------------------------------------------------------------------------------------ 12 2.6六反向器的设计------------------------------------------------------------------------------------ 13 2.7逻辑电路---------------------------------------------------------------------------------------------- 142.7.1地址锁存器的设计---------------------------------------------------------------------------- 142.7.2地址译码器的选择---------------------------------------------------------------------------- 142.8报警电路设计 --------------------------------------------------------------------------------------- 15 2.9掉电保护电路设计 --------------------------------------------------------------------------------- 16 2.10光电隔离 -------------------------------------------------------------------------------------------- 17 2.11光电传感器----------------------------------------------------------------------------------------- 17 2.12步进电机的加减速控制 ------------------------------------------------------------------------- 18 第3章系统软件设计 ------------------------------------------------------------------------------ 203.1显示子程序的设计-------------------------------------------------------------------------------- 20 3.2键盘子程序的设计--------------------------------------------------------------------------------- 22 3.3正反转程序流程图--------------------------------------------------------------------------------- 253.3.1 正反转程序流程图--------------------------------------------------------------------------- 253.3.2 转速快慢程序流程图 ---------------------------------------------------------------------- 28 3.4定时中断流程图------------------------------------------------------------------------------------ 30 3.5语音报警系统-------------------------------------------------------------------------------------- 33 3.6A/D转换器中断程序------------------------------------------------------------------------------- 35 3.7主程序设计 ------------------------------------------------------------------------------------------ 37 第4章结论 ---------------------------------------------------------------------------------------------- 40 参考文献 --------------------------------------------------------------------------------------------------- 41 致谢----------------------------------------------------------------------------------------------------------- 42第1章绪论1.1 步进电机的概述1.1.1 步进电机的特点1)一般步进电机的精度为步进角的3-5%,且不累积。

四相步进电机全教程

四相步进电机全教程

四相步进电机全教程——盖尔@袁(4、21)前段时间就有玩过步进电机了,但是后来因为硬盘坏了,资料全没了,之后想再玩的时间都不知道该怎么弄了,这时候觉得假如当时有留点资料发到网上的话,那现在也就不会那么纠结了,所以,昨晚又再一次拿起那步进电机,再一次玩一下,大概把之前那些东西回想起来了,现在写一份小教程(之所以叫全教程,是因为看了这份资料之后,对应地也就大概能用起来,对步进电机也有一个大概的了解了),以共大家学习,希望高手拍砖!(里面有些是直接引用网上的资料,如有原作者看到的话,我在这里跟他说声谢谢,因为您写得太好了!)驱动电路我用的是L298N这款很经典的电机驱动芯片,这芯片可以驱动直流电机,步进电机等,功能相当强大,很好用,虽然贵了点(下面再介绍一种比较好的,价格比较低的驱动电路,也相当好用),但是还是用了,毕竟是经典之作嘛!呵呵!电路如下:大家可以看到,上面这电机驱动芯片L298N有四个输入(IN1,IN2,IN3,IN4)和四个输出(M1,M2),对了,就是对应单片机(或者其它主控芯片,比如说M3,我用的就是这个)的输入控制端,然后这四个控制端通过L298N间接地控制了步进电机(也就是图里的M1,M2),因为步进电机转动的时候需要比较大的电流,单片机IO引脚没法提供,只有通过这驱动芯片才能够带动起来!电路里面还有PWMA和PWMB,这是使能端,用于使能M1和M2是否被输入控制的,高电平有效!一般我们假如需要控制的话,这个就接单片机的IO引脚上,假如不需要独立控制的话那直接接高电平就行了!另外,大家可以看到电路里面还有一个5V的输入,具体这个是做什么的我也不是很清楚,不过照给就是了,没问题的!好,首先先把这电路焊出来,记得,因为L298N工作的时候电流比较大,所以要求必需加上一个散热片,这样有利于保护电路不会因为过热而烧了!这里有一个小知识跟大家说一下,焊电路最好是加上一个电源指示灯,这样的好处多多,可以防止电源接反而完全不知!OK,这个方案介绍完了,下面介绍另一种成本比较低的驱动方案!假如手头上有ULN2003的话,也可以用来当成驱动电路用,我们只要知道驱动电路的作用就是放大那个电流,那任何一种能够放大电流的方法都可以拿过来用,包括你用三极管都行!下面提供一个三极管的驱动电路!至于ULN2003,具体电路我就不说了!很简单的,看下芯片的PDF就知道了。

四相步进电机的三种控制方法

四相步进电机的三种控制方法

四相步进电机的三种控制方法四相步进电机是一种常用的电机,其控制方法有多种。

下面将介绍其中的三种控制方法。

1. 单板机控制单板机控制是一种非常常见的控制方法,其原理是通过使用控制芯片驱动四相步进电机,实现步进电机的精确控制。

单板机控制器通常由两部分组成:驱动电路和控制电路。

驱动电路由四个 MOSFET 组成,可分别控制四种不同的相序。

控制电路与驱动电路集成在控制芯片中。

单板机控制对于复杂步进电机的控制具有很高的可扩展性。

此外,在一些较小的应用中,这种控制方法还具有成本较低的优势。

2. PLC 控制PLC(可编程逻辑控制器)是一种通用的控制器,其功能与单板机控制类似,但具有更高的可编程性和灵活性。

通过配置软件,用户可以使用 PLC 控制器轻松实现四相步进电机的控制。

与单板机控制相比,PLC 控制的优势在于其对于复杂控制任务的处理能力更强。

此外,PLC 控制器通常支持多种不同的通信协议,使其更易于与其他设备进行集成。

3. 微控制器控制微控制器控制是一种集成度高的控制方案。

在这种方案中,微控制器被用作控制逻辑和驱动输出的单元。

与 PLC 控制器相比,微控制器控制的成本相对较低,并且通常具有更小的物理尺寸。

与单板机控制和 PLC 控制相比,微控制器控制的优势在于其高度集成的性质。

这意味着可以将其集成到其他系统中,以实现复杂的控制任务。

此外,由于其成本相对较低,因此可以大规模应用于消费类电子产品等应用中。

总体来说,三种控制方法各具特点,可以根据具体应用场景选择最适合的控制方案。

不论选择哪一种控制方法,都可以通过精确控制四相步进电机来实现高度自动化的系统。

PLC的四相步进电机控制方法及实现

PLC的四相步进电机控制方法及实现

基于PLC的四相步进电机控制方法及实现#1步进电机是一种将电脉冲信号转换成直线位移或角位移的执行元件。

步进电机的输出位移量与输入脉冲个数成正比,其转速与单位时间内输入的脉冲数(即脉冲频率)成正比,其转向与脉冲分配到步进电机的各相绕组的相序有关。

所以只要控制指令脉冲的数量、频率及电机绕组通电的相序.便可控制步进电机的输出位移量、速度和转向。

步进电机具有较好的控制性能,其启动、停车、反转及其它任何运行方式的改变,都在少数脉冲内完成,且可获得较高的控制精度,因而得到了广泛的应用2 PLC的特点及应用可编程序控制器fProgrammable Logic Controller)简称PLC,是在继电器控制和计算机控制的基础上开发出来的,并逐渐发展成以微处理器为核心,把自动化技术、计算机技术、通讯技术融为一体的新型工业自动控制装置。

它具有可靠性高、环境适应性好、编程简单、使用方便以及体积小、重量轻、功耗低等优点,因此迅速普及并成为当代工业自动化的支柱设备之一。

2.1高可靠性PLC所有的I/O接口电路均采用光电隔离,使工业现场的外电路与PLC内部电路之间电气上隔离;各输入端均采用RC滤波器,其滤波时间常数一般为10~20ms;各模块均采用屏蔽措施,以防止辐射干扰;采用性能优良的开关电源:具有良好的自诊断功能.一旦电源或其他软、硬件发生异常情况,CPU立即采用有效措施,以防止故障扩大;简化编程语言,对信息进行保护和恢复.设置警戒时钟WDT;对程序和动态数据进行电池后备。

上述措施使PLC有高的可靠性。

而采用循环扫描工作方式也提高其抗干扰能力。

2.2通用性强、采用模块化结构各个PLC的生产厂家都有各种系列化产品和各种模块供用户选择。

用户可以根据控制对象的规模和控制要求,选择合适的PLC产品,组成所需要的控制系统。

在做应用设计时,一般不需要用户制作任何附加装置.从而能使设计工作简化。

为了适应各种工业控制需要,除了单元式的小型PLC以外。

四相步进电机原理图及其驱动器的软、硬件设计

四相步进电机原理图及其驱动器的软、硬件设计

四相步进电机原理图及其驱动器的软、硬件设计1. 步进电机的工作原理该步进电机为一四相步进电机,采用单极性直流电源供电。

只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。

图1是该四相反应式步进电机工作原理示意图。

图1 四相步进电机步进示意图开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。

当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,1、4号齿和C相绕组的磁极对齐。

而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。

依次类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。

四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。

单四拍与双四拍的步距角相等,但单四拍的转动力矩小。

八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。

单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图2.a、b、c 所示:a. 单四拍b. 双四拍 c八拍图2.步进电机工作时序波形图2.基于AT89C2051的步进电机驱动器系统电路原理步进电机驱动器系统电路原理如图3:图3 步进电机驱动器系统电路原理图AT89C2051将控制脉冲从P1口的P1.4~P1.7输出,经74LS14反相后进入9014,经9014放大后控制光电开关,光电隔离后,由功率管TIP122将脉冲信号进行电压和电流放大,驱动步进电机的各相绕组。

使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和停止等动作。

图中L1为步进电机的一相绕组。

AT89C2051选用频率22MHz的晶振,选用较高晶振的目的是为了在方式2下尽量减小AT89C2051对上位机脉冲信号周期的影响。

四相步进电机原理图及程序

四相步进电机原理图及程序

四相步进电机原理图本文先介绍该步进电机的工作原理,然后介绍了其驱动器的软、硬件设计。

1. 步进电机的工作原理该步进电机为一四相步进电机,采用单极性直流电源供电。

只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。

图1是该四相反应式步进电机工作原理示意图。

图1 四相步进电机步进示意图开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。

当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,1、4号齿和C相绕组的磁极对齐。

而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。

依次类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。

四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。

单四拍与双四拍的步距角相等,但单四拍的转动力矩小。

八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。

单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图2.a、b、c所示:a. 单四拍b. 双四拍c八拍图2.步进电机工作时序波形图2.基于AT89C2051的步进电机驱动器系统电路原理步进电机驱动器系统电路原理如图3:图3 步进电机驱动器系统电路原理图AT89C2051将控制脉冲从P1口的P1.4~P1.7输出,经74LS14反相后进入9014,经9014放大后控制光电开关,光电隔离后,由功率管TIP122将脉冲信号进行电压和电流放大,驱动步进电机的各相绕组。

使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和停止等动作。

图中L1为步进电机的一相绕组。

AT89C2051选用频率22MHz的晶振,选用较高晶振的目的是为了在方式2下尽量减小AT89C2051对上位机脉冲信号周期的影响。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

四相步进电机全教程——盖尔@袁(4、21)前段时间就有玩过步进电机了,但是后来因为硬盘坏了,资料全没了,之后想再玩的时间都不知道该怎么弄了,这时候觉得假如当时有留点资料发到网上的话,那现在也就不会那么纠结了,所以,昨晚又再一次拿起那步进电机,再一次玩一下,大概把之前那些东西回想起来了,现在写一份小教程(之所以叫全教程,是因为看了这份资料之后,对应地也就大概能用起来,对步进电机也有一个大概的了解了),以共大家学习,希望高手拍砖!(里面有些是直接引用网上的资料,如有原作者看到的话,我在这里跟他说声谢谢,因为您写得太好了!)驱动电路我用的是L298N这款很经典的电机驱动芯片,这芯片可以驱动直流电机,步进电机等,功能相当强大,很好用,虽然贵了点(下面再介绍一种比较好的,价格比较低的驱动电路,也相当好用),但是还是用了,毕竟是经典之作嘛!呵呵!电路如下:大家可以看到,上面这电机驱动芯片L298N有四个输入(IN1,IN2,IN3,IN4)和四个输出(M1,M2),对了,就是对应单片机(或者其它主控芯片,比如说M3,我用的就是这个)的输入控制端,然后这四个控制端通过L298N间接地控制了步进电机(也就是图里的M1,M2),因为步进电机转动的时候需要比较大的电流,单片机IO引脚没法提供,只有通过这驱动芯片才能够带动起来!电路里面还有PWMA和PWMB,这是使能端,用于使能M1和M2是否被输入控制的,高电平有效!一般我们假如需要控制的话,这个就接单片机的IO引脚上,假如不需要独立控制的话那直接接高电平就行了!另外,大家可以看到电路里面还有一个5V的输入,具体这个是做什么的我也不是很清楚,不过照给就是了,没问题的!好,首先先把这电路焊出来,记得,因为L298N工作的时候电流比较大,所以要求必需加上一个散热片,这样有利于保护电路不会因为过热而烧了!这里有一个小知识跟大家说一下,焊电路最好是加上一个电源指示灯,这样的好处多多,可以防止电源接反而完全不知!OK,这个方案介绍完了,下面介绍另一种成本比较低的驱动方案!假如手头上有ULN2003的话,也可以用来当成驱动电路用,我们只要知道驱动电路的作用就是放大那个电流,那任何一种能够放大电流的方法都可以拿过来用,包括你用三极管都行!下面提供一个三极管的驱动电路!至于ULN2003,具体电路我就不说了!很简单的,看下芯片的PDF就知道了。

对了,这里顺便介绍一个找PDF比较全的网站——ICPDF,当然IC37也很全!步进电机原理按照常理来说,步进电机接线要根据线的颜色来区分接线。

但是不同公司生产的步进电机,线的颜色不一样。

特别是国外的步进电机。

那么,步进电机接线应该用万用表打表。

步进电机内部构造如下图:通过上图可知,A,~A是联通的,B和~B是联通。

那么,A和~A是一组a,B 和~B是一组b。

不管是两相四相,四相五线,四相六线步进电机。

内部构造都是如此。

至于究竟是四线,五线,还是六线。

就要看A和~A之间,B和B~之间有没有公共端com抽线。

如果a组和b组各自有一个com端,则该步进电机六线,如果a和b组的公共端连在一起,则是5线的。

所以,要弄清步进电机如何接线,只需把a组和b组分开。

用万用表打。

四线:由于四线没有com公共抽线,所以,a和b组是绝对绝缘的,不连通的。

所以,用万用表测,不连通的是一组。

五线:由于五线中,a和b组的公共端是连接在一起的。

用万用表测,当发现有一根线和其他几根线的电阻是相当的,那么,这根线就是公共com端。

对于驱动五线步进电机,公共com端不连接也是可以驱动步进电机的。

六线:a和b组的公共抽线com端是不连通的。

同样,用万用表测电阻,发现其中一根线和其他两根线阻止是一样的,那么这根线是com端,另2根线就属于一组。

对于驱动四相六线步进电机,两根公共com端不接先也可以驱动该步进电机的。

通过上面的方法都可以测得不同线对应的接线,当然,也还有一些朋友不知道,那测出AA’和BB’之后,怎么分开哪根是A哪根是A’,哪根是B哪根是B’呢?之前我也有一样的问题,相信初学步进电机的朋友也一样,我这里有一看到一个帖,里面介绍了一种方法,不知道好不好用(我这边的步进电机就不行):拿到步进电机,根据以前看书对四相步进电机的了解,我对它进行了初步的测试,就是将5伏电源的正端接上最边上两根褐色(指的是公共端,不同电机颜色不同)的线,然后用5伏电源的地线分别和另外四根线(红、兰、白、橙)(指的是剩下的控制线,不同电机颜色不同)依次接触,发现每接触一下,步进电机便转动一个角度,来回五次,电机刚好转一圈,说明此步进电机的步进角度为360/(4×5)=18度。

地线与四线接触的顺序相反,电机的转向也相反。

除了上面这种方法,现在还没有看到有帖介绍如何区分这四条线的,当然,假如有朋友研究出来还请共享一下!谢谢!如果实在不行,最好是找下别人现有的程序,然后一个一个试!没办法!驱动方法我们驱动步进电机的话有好几种方法,个人觉得比较简单也比较常用的还是下面这两种,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.,什么是四相四拍,什么是四相八拍,这些字母代表什么意思,请往下看!上图是表示刚刚步进电机的内部结构(手工画的不好看),没有画中线抽头。

中间那个表示电机转子,左边蓝色的表示A线圈,上面红色的表示B线圈,大家看到上面标志中还有一些是打括号的,表示什么呢?就是说这个接线是一开始讲到的A’接线,跟刚刚讲到的那个C字母表示的接线其实是同一根线!那现在我就用图来表示解释下什么是四相四拍,AB-BC-CD-DA-AB表示的是什么。

AB-BC-CD-DA-AB中的出现的字母表示这根线对应加上高电平,其余的都是低电平。

具体就是,在AB处于高电平,CD处于低电平,延时一小段时间;然后BC处于高电平,AD 处于低电平,再延时一小段时间,如此下去CD高,AB低,延时,DA高,BC低,延时……那究竟为什么要这样子呢?下面我用图给大家解释一下。

第一:AB高,CD低,电流则如下图黄色线所示方向流动,产生的磁场使得电机转子顺时针转动90度,转过90度之后就停在那里了;第二:BC高,AD低,电流如下图所示,同样道理,电机转子转过90度;第三,CD高,AB低,如下图:第四,DA高,BC低,如下图:如此一循环之后,电机转子就转过了一周,如果这样循环这样一个动作的话,那电机就会转起来了!现在大家应该明白了什么是四相四拍了吧!同理,四相八拍也是一样的道理,这里就不多说了,大家应该明白!上面讲述的是顺时针转动,那逆时针转动的话该怎么弄了,相信明白上面原理的朋友自己都能够画出来,我这里就只是简单地提供一下给大家做参考,时序为DA-CD-BC-AB!软件部分:知道了硬件原理,软件方面就简单好办了,只要按照上面说的对应地给上高电平低电平的,再来个延时就可以实现了。

对于四相四拍的驱动方法,程序形式如下:While(1){IN1=1;IN2=1;IN3=0;IN4=0;Delay();IN1=0;IN2=1;IN3=1;IN4=0;Delay();IN1=0;IN2=0;IN3=1;IN4=1;Delay();IN1=1;IN2=0;IN3=0;IN4=1;Delay();}同样,反向转动的也能够搞定,四相八拍的也一样道理。

那程序是不是就非常之简单呢?当然不是,程序里面最难的要确定的就是——延时,这个延时的时间把握得好才能够驱动起来,太长了不行,太短了也不行,那究竟是多少才合适呢?这里我教大家一个方法,原理很简单,就是用一个for循环来变换不同的延时时间,通过这样来确定在哪个延时时间范围之内比较合适,这样来慢慢试:For(num=0;num<100;num++){For(time=0;time<100;time++){IN1=1;IN2=1;IN3=0;IN4=0;Delay(num*1000);IN1=0;IN2=1;IN3=1;IN4=0;Delay(num*1000);IN1=0;IN2=0;IN3=1;IN4=1;Delay(num*1000);IN1=1;IN2=0;IN3=0;IN4=1;Delay(num*1000);}}程序里面,num是用来调整每次延时时长的,time是做为每次一个固定时长让电机转一定的时间,因为我们不可以让电机一直变变变,而需要变一下转几圈看看合不合适,就是这样的道理了,通过这种方法大家可以大概知道电机适时多长时长比较合适,在一个适合的延时里电机才能够转动,不同的延时电机转动速度不同。

下面提供一些C51的程序代码(注:这些是在另一份资料找到的,非本人所写,在这里感谢原作者的无私):C51程序代码为:代码一#include <AT89X51.h>static unsigned int count;static unsigned int endcount;void delay();void main(void){count = 0;P1_0 = 0;P1_1 = 0;P1_2 = 0;P1_3 = 0;EA = 1; //允许CPU中断TMOD = 0x11; //设定时器0和1为16位模式1ET0 = 1; //定时器0中断允许TH0 = 0xFC;TL0 = 0x18; //设定时每隔1ms中断一次TR0 = 1; //开始计数startrun:P1_3 = 0;P1_0 = 1;delay();P1_0 = 0;P1_1 = 1;delay();P1_1 = 0;P1_2 = 1;delay();P1_2 = 0;P1_3 = 1;delay();goto startrun;}//定时器0中断处理void timeint(void) interrupt 1{TH0=0xFC;TL0=0x18; //设定时每隔1ms中断一次count++;}void delay(){endcount=2;count=0;do{}while(count<endcount);}将上面的程序编译,用ISP下载线下载至单片机运行,步进电机便转动起来了,初步告捷!不过,上面的程序还只是实现了步进电机的初步控制,速度和方向的控制还不够灵活,另外,由于没有利用步进电机内线圈之间的“中间状态”,步进电机的步进角度为18度。

所以,我将程序代码改进了一下,如下:代码二#include <AT89X51.h>static unsigned int count;static int step_index;void delay(unsigned int endcount);void gorun(bit turn, unsigned int speedlevel);void main(void){count = 0;step_index = 0;P1_0 = 0;P1_1 = 0;P1_2 = 0;P1_3 = 0;EA = 1; //允许CPU中断TMOD = 0x11; //设定时器0和1为16位模式1ET0 = 1; //定时器0中断允许TH0 = 0xFE;TL0 = 0x0C; //设定时每隔0.5ms中断一次TR0 = 1; //开始计数do{gorun(1,60);}while(1);}//定时器0中断处理void timeint(void) interrupt 1{TH0=0xFE;TL0=0x0C; //设定时每隔0.5ms中断一次count++;}void delay(unsigned int endcount){count=0;do{}while(count<endcount);}void gorun(bit turn,unsigned int speedlevel) {switch(step_index){case 0:P1_0 = 1; P1_1 = 0; P1_2 = 0; P1_3 = 0;break; case 1:P1_0 = 1; P1_1 = 1; P1_2 = 0; P1_3 = 0;break; case 2:P1_0 = 0; P1_1 = 1; P1_2 = 0; P1_3 = 0;break; case 3:P1_0 = 0; P1_1 = 1; P1_2 = 1; P1_3 = 0;break; case 4:P1_0 = 0; P1_1 = 0; P1_2 = 1; P1_3 = 0;break; case 5:P1_0 = 0; P1_1 = 0; P1_2 = 1; P1_3 = 1;break; case 6:P1_0 = 0; P1_1 = 0; P1_2 = 0; P1_3 = 1;break; case 7:P1_0 = 1;P1_1 = 0;P1_2 = 0;P1_3 = 1;}delay(speedlevel);if (turn==0){step_index++;if (step_index>7)step_index=0;}else{step_index--;if (step_index<0)step_index=7;}}改进的代码能实现速度和方向的控制,而且,通过step_index静态全局变量能“记住”步进电机的步进位置,下次调用 gorun()函数时则可直接从上次步进位置继续转动,从而实现精确步进;另外,由于利用了步进电机内线圈之间的“中间状态”,步进角度减小了一半,只为9度,低速运转也相对稳定一些了。

相关文档
最新文档