四相八拍步进电机调速

四相八拍步进电机调速
四相八拍步进电机调速

目录

引言 (1)

第1章绪论 (2)

1.1步进电机的概述 (2)

1.1.1 步进电机的特点 (2)

1.1.2步进电机的工作原理简述 (2)

1.2四相八拍步进电机 (2)

1.2.1 四相步进电机工作原理 (2)

1.2.2 八拍得工作方式 (4)

1.3单片机概述 (4)

1.3.1 单片机原理简述 (4)

1.3.2 8031单片机 (5)

1.4总体方案设计 (5)

1.4.1 系统的组成 (5)

1.4.2 系统的工作原理 (6)

第2章系统软件设计 (7)

2.1显示子程序的设计 (7)

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度完全正常。

3)步进电机的力矩会随转速的升高而下降。当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。

4)步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。步进电机有一个技术参数:空载启动频率,即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。在有负载的情况下,启动频率应更低。如果要使电机达到高速转动,脉冲频率应该有加速过程,即启动频率较低,然后按一定加速度升到所希望的高频(电机转速从低速升到高速)。

{ TC \* MERGEFORMAT }1.1.2步进电机的工作原理简述

步进电机是一种用电脉冲进行控制 ,将电脉冲信号转换成相位移的电机 ,其机械位移和转速分别与输入电机绕组的脉冲个数和脉冲频率成正比 ,每一个脉冲信号可使步进电机旋转一个固定的角度.脉冲的数量决定了旋转的总角度 ,脉冲的频率决定了电机运转的速度.当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。

1.2 四相八拍步进电机

1.2.1 四相步进电机工作原理

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

图1.5 四相步进电机步进示意图

开始时,开关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方向转动。

四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。

单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图1-6.a、b、c所示:

a 单四拍 b双四拍 c八拍

图1.6步进电机工作时序波形图

1.2.2 八拍得工作方式

单双八拍工作方式:A-AB-B-BC-C-CD-D-DA (即一个脉冲,转 3.75度)八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步)。

1.3单片机概述

1.3.1 单片机原理简述

单片机(SINGLE-CHIP MICROCOMPUTER)是把微型计算机主要部分都集成在一块芯片上的单芯片微型计算机。图1.7中表示单片机的典型结构图。由于单片机的高度集成化,缩短了系统内的信号传送距离,优化了结构配置,大大地提高了系统的可靠性及运行速度,同时它的指令系统又很适合于工业控制的要求,所以单片机在工业过程及设备控制中得到了广泛的应用。

图1.7典型单片机结构图

单片机在进行实时控制和实时数据处理时,需要与外界交换信息。人们需要通过人机对话,了解系统的工作情况和进行控制。单片机芯片与其它CPU比较,功能虽然要强得多,但由于芯片结构、引脚数目的限制,片内ROM、RAM、I/O口等不能很多,在构成实际的应用系统时需要加以扩展,以适应不同的工作情况。单片机应用系统的构成基本上如图1.8所示。

图1.8 单片机的应用系统

单片机应用系统根据系统扩展和系统配置的状况,可以分为最小应用系统、最小功耗系统、典型应用系统。本设计是设计一款最小应用系统,最小应用系统是指能维持单片机运行的最简单配置的系统。这种系统成本低廉、结构简单,常用来构成简单的控制系统,如开关量的输入/输出控制、时序控制等。对于片内有ROM/EPROM的芯片来说,最小应用系统即为配有晶体振荡器、复位电路和电源的单个芯片;对与片内没有ROM/EPROM芯片来说,其最小应用系统除了应配置上述的晶振、复位电路和电源外,还应配备EPROM或EEPROM 作为程序存储器使用

1.3.2 8031单片机

8031单片机具有体积小,重量轻,价格低,耗电少,电源单一,抗干扰能力强,可靠性高,面向控制,控制功能强,运行速度快等特点。所以本次调速设计芯片采用8031来控制。

8031单片机内部组成:1个8位微处理器CPU;128字节的数据存储器(RAM);32条I/O位线(四个8位口P0,P1,P2,P3);2个定时器;1个具有5个中断源,2个优先级的中断嵌套机构;1个全双工的串行通信端口,特许功能寄存器以及一个震荡和时钟电路。各部分通过芯片内部总线连接。

8031单片机的硬件机构特点:8031单片机无内部存储器(ROM),有数据存储器(RAM);输入/输出(I/O)端口:它具有一个全双的串行口,该串行口由两根I/O位线构成,有四种工作方式,可通过编程选定,且8031还有32个I/O位线。中断与堆栈:8031单片机有5个中断源,分为2级优先,每个中断源的优先级是可以编程的。它的堆栈位置也是可以编程的,堆栈深度可以达到128字节。定时/计数器与寄存区:8031单片机有2个16位定时/计数器,通过编程可以实现四种工作模式。8031单片机在内部RAM中设置了四个通用工作寄存器区,共32个寄存器,以适应多种终端或子程序嵌套的要求。指令系统:8031单片机指令系统功能大,指令段,执行速度快。外接晶振的频率为128MHZ时,大部分指令执行时间为1μM。

1.4 总体方案设计

1.4.1 系统的组成

本系统主要组成部分为:主机芯片8031,转速测量采集系统,步进电机的驱动系统,8279扩展外部中断子系统,报警系统等多部分

系统原理图

图1.10 系统原理框图

1.4.2 系统的工作原理

系统的工作原理如下:有主机芯片8031发出指令至步进电机的驱动和隔离电路,步进电机启动,通过8031的内部中断来实现步进电机的加速运转。电机的转速通过光电传感器,传输到采样保持电路到A/D 转换器,转换成数字信号,存到主机芯片8031进行处理,在传输到8279到LED 显示器。如果转速超过规定速度,通过8031发出指令到报警电路报警。

单片机控制步进电机工作是,电机在几十伏,甚至一百幅的高压条件下工作,而单片机则在5V 的低压条件下工作,一旦步进电机的电压窜到单片机部分,竟会引起单片机损坏;或者步进电机部分的有关信号干扰单片机,也会引起系统工作失误。故单片机与不进电极之间的硬件接口一般需要进行电压隔离;对于四相步进电机,需要四路控制电路,每一路控制步进电机的一相;有时需要步进电机以不同的速度工作,不适应不同的目的,硬件接口中将包括工作频率发生器。

键盘 显示器

8279 8031 光电耦合

A/D 转换器

步进电机

第2章系统软件设计

2.1 显示子程序的设计

图2.1 显示程序流程图

8279的初始化程序如下:

INIT: MOV DPTR,#7FFFH ;置8279命令/状态口地址 MOV A,#0D1H ;置清显示命令字

MOVX @DPTR,A ;送清显示命令

WEIT: MOVX A,@DPTR ;读状态

JB ACC.7,WEIT ;等待清显示RAM结束

MOV A,#34H ;置分频系数,晶振12MHZ

MOVX @DPTR,A ;送分频系数

MOV A,#00H ;置键盘/显示命令

MOVX @DPTR,A ;送键盘/显示命令

MOV IE,#84H ;允许8279中断

RET

显示子程序如下:

DIS: MOV DPTR,#7FFFH ;置8279命令/状态口地址 MOV R0,#30H ;字段码首地址

MOV R7,#08H ;8位显示

MOV A,#90H ;置显示命令字

MOVX @DPTR,A ;送显示命令

MOV DPTR,#7FFEH ;置数据口地址

LP: MOV A,@R0 ;取显示数据

ADD A,#6 ;加偏移量

MOVC A,@A+PC ;查表,取得数据的段码

MOVX @DPTR,A ;送段码显示

INC R0 ;调整数据指针

DJNZ R7,LP ;

RET

SEG: DB 3FH,06H,5BH,4FH,66H,6DH

;字符0、1、2、3、4、5段码 DB 7DH,07H,7EH,6FH,77H,7CH

;字符6、7、8、9、A、B段码

DB 39H,5EH,79H,71H,73H,3EH

;字符C、D、E、F、P、U段码

DB 76H,38H,40H,6EH,FFH,00H

;字符H、L、-、Y、“空”段码

2.2 键盘子程序的设计

图2.2 键盘程序流程图键盘中断子程序如下:

KEY: PUSH PSW

PUSH DPL

PUSH DPH

PUSH ACC

PUSH B

SETB PSW.3

MOV DPTR,#7FFFH ;置状态口地址

MOVX A,@DPTR ;读FIFO状态

ANL A,#0FH ;

JZ PKYR ;

MOV A,#40H ;置读FIFO命令

MOVX @DPTR,A ;送读FIFO命令 MOV DPTR,#7FFEH ;置数据口地址 MOVX A,@DPTR ;读数据 LJMP KEY1 ;转键值处理程序

PKYR: POP B

POP ACC

POP DPH

POP DPL

POP PSW

RETI ;

KEY1: ……;键值处理程序

键盘程序清单:

KEY1: ACALL KS1;有无键按下子程序

JNZ LK1;有键按下,转去抖延时

AJMP KEY1;无键按下,继续扫描LK1: ACALL DELA12; 12MS延时程序调用

ACALL KS1;判断键是否真正按下

JNZ LK2 ;有键按下,转逐列扫描

AJMP KEY1;无键按下,继续扫描LK2: MOV R2,#0FEH;设置首列扫描字

MOV R4,#00H;保存首列号

LK4: MOV DPTR,#7F01H;列扫描字送至PA口

MOV A,R2

MOVX @DPTR,A

INC DPTR;指向PC口

INC DPTR

MOVX A,@DPTR;读入行状态

JB ACC.0,LONE;第0行无键按下,转LONE

MOV A,#00H;有键按下,设置行首键号

AJMP LKP;转求键号

LONE: JB ACC.1,LTWO;第1行无键按下,转LTWO MOV A,#08H;有键按下,设置行首键号

AJMP LKP;转求键号

LTWO: JB ACC.2,LTHR;第2行无键按下,转LTHR MOV A,#10H;有键按下,设置行首键?

AJMP LKP;转求键号

LTHR: JB ACC.3,NEXT;第3行无键按下,查下一列

MOV A,#18H;有键按下,设置行首键LKP: ADD A,R4 ;求键号,键号=行首键号+列号 PUSH ACC ;保护键号

LK3: ACALL KS1 ;等待键释放

JNZ LK3 ;键未释放,继续等待

POP ACC;键释放,键号送A

AJMP OVER;键扫描结束

NEXT: INC R4;列号加1,指向下一列 MOV A,R2;判断8列扫描完否

JNB ACC.7,KND; 8列扫描完,继续

RL A;扫描字左移一位

MOV R2,A;送扫描字

AJMP LK4 ;转下一列扫描

KND: AJMP KEY1

OVER: RET;键扫描结束

KS1: MOV DPTR,#7F01H;指向PA口

MOV A,#00H;设置扫描字

MOVX @DPTR,A;扫描字送PA口

INC DPTR;指向PC口

INC DPTR

MOVX A,@DPTR;读入PC口状态

CPL;以高电平表示有键按下

ANL A,#0FH;屏蔽高4位

RET

2.3 正反转程序流程图

2.3.1 正反转程序流程图

图2.3 正反转程序流程图主程序如下:

CON: MOV R3, # N

MOV TMOD , # 10H

MOV TL1 , # LOW

MOV TH1 , # H IGH

JNB FLAG ,LEFT

MOV R0 , RM

AJMP TIME - S

LEFT: MOV R0 , LM

TIME: SETB EA

SETB ET1

SETB TR1

步进电机控制程序P3.2正转,P3.3反转,P3.4停止步进电机接P1.0P1.1P1.2P1.3 ORG 00h

STOP: ORL P1,#0FFh; 步进电机停止

LOOP: JNB P3.2,FOR2; 如果P3.2按下正转

JNB P3.3,REV2 ; 如果P3.3按下反转

JNB P3.4,STOP1; 如果P3.4按下停止

JMP LOOP; 反复监测键盘

FOR: MOV R0,#00h; 正转到TAB取码指针初值

FOR1: MOV A,R0; 取码

MOV DPTR,#TABLE ;

MOVC A,@A+DPTR

JZ FOR; 是否到了结束码00h

CPL A ; 把ACC反向

MOV P1,A; 输出到P1开始正转

JNB P3.4,STOP1; 如果P3.4按下停止

JNB P3.3,REV2; 如果P3.3按下反转

CALL DELAY; 转动的速度

INC R0; 取下一个码

JMP FOR1; 继续正转

REV: MOV R0,#05h ; 反转到TAB取码指针初值

REV1: MOV A,R0

MOV DPTR,#TABLE; 取码

MOVC A,@A+TABLE

JZ REV; 是否到了结束码00h

CPL A; 把ACC反向

MOV P1,A; 输出到P1开始反转

JNB P3.4,STOP1; 如果P3.4按下停止

JNB P3.3,REV2; 如果P3.3按下反转

CALL DELAY; 转动的速度

INC R0; 取下一个码

JMP REV1; 继续反转

STOP1: CALL DELAY; 按P3.4的消除抖动

JNB P3.4,$; P3.4放开否?

CALL DELAY; 放开消除抖动

JMP STOP;

FOR2: CALL DELAY; 按P3.2的消除抖动

JNB P3.2,$; P3.2放开否?

CALL DELAY; 放开消除抖动

JMP FOR;

REV2: CALL DELAY; 按P3.3的消除抖动

JNB P3.3,$; P3.3放开否?

CALL DELAY; 放开消除抖动

JMP REV;

DELAY: MOV R1,#40; 步进电机的转速20MS D1:MOV R2,#248;

DJNZ R2,$

DJNZ R1,D1

RET

TABLE:

DB 03h,09h,0Ch,06h; 正转表

DB 00; 正转结束

DB 03h,06h,0Ch,09h; 反转

DB 00; 反转结束

END

2.3.2 转速快慢程序流程图

图2.4 转速快慢程序流程图步进电机正反快慢程序

ORG 00h

x1: MOV R3,#48 一圈48步

START: MOV R0,#00h 正转取码初值

START1:

MOV P1,#0FFh; 先停止

MOV A,R0

MOV DPTR,#TABLE

MOVC A,@A+DPTR

JZ START; 是否到了结束码00?

CPL A

MOV P1,A; 输出运转

CALL DELAY; 调用慢速的延时转动

INC R0; 取码指针加1取下一个码

DJNZ R3,START1; 是否走了48步?

MOV R3,#48; 是则重新设定48步START2:

MOV P1,#0FFh

MOV R0,#05; 逆转的取码初值

START3:MOV A,R0;

MOV DPTR,#TABLE

MOVC A,@A+DPTR

JZ START2

CPL A

MOV P1,A

CALL DELAY2

INC R0

DJNZ R3,START3

JMP x1; 重复开始

DELAY: ; 延时程序(慢速)

MOV R7,#255

D1: MOV R6,#50

D2: DJNZ R6,D2

DJNZ R7,D1

RET

DELAY2: ; 延时程序(快速)

MOV R5,#255

D3:MOV R2,#25

D4: DJNZ R2,D4

DJNZ R5,D3

RET

TABLE:

DB 03h,09h,0Ch,06h; 正转表

DB 00

DB 06h,0Ch,09h,03h; 反转表

DB 00

END

2.4 定时中断流程图

图2.5 中断子程序流程图中断服务程序如下:

INTTO: PUSH A

PUSH PSW

MOV A , @R0

MOV P1 ,A

INC R0

MOV A , # 00H

XRL A , @R0

JNZ NEXT

MOV A , R0

CLR C

SUBB A , # 03H

MOV R0 , A

NEXT: DJNZ R3 , RETU

CLR ET1

CLR EA

RETU: POP PSW

POP A

RETI

利用软件形成脉冲序列的程序清单:

PULSE_S: MOV R7,#NUM;设定脉冲个数

PUSH A ;保护现场

PUSH PSW

LOOP: SETB P1.0 ;输出高电平

ACALL DELAY1 ;延时

CLR P1.0 ;输出低电平

ACALL DELAY2 ;延时

DJNZ R7,LOOP ;R7≠0,继续输出脉冲

POP PSW ;恢复现场

POP A

RET

定时中断子程序:

TIME0: CLR EA ;关中断

INC 30H

MOV A,30H

XRL A,#50H ;判断是否到8秒

JZ S_8 ; 8秒定时到,转至S_8 AJMP RECOUN ;未到8秒,继续计时

S_8: SETB P3.2;触发外部中断0

NOP

CLR P3.2

NOP

RECOUN: MOV TH0,#3CH

MOV TL0,#0B0H ;设定定时器初值

SETB EA ;开中断

RETI ;中断返回

中断子程序

T_CON: PUSH A ;保护现场

PUSH PSW

MOV R7,#N ;设定控制步数

JNB FLAG,LEFT ;判断旋转方向

RIGHT: MOV R0,RM ;正转模型起始地址

AJMP ROTATE

LEFT: MOV R0,LM

ROTATE: MOV A,@R0 ;取第一拍控制模型

MOV P1,A ;输出第一拍控制模型

ACALL DELAY1 ;延时

INC R0

MOV A,@R0 ;取第二拍控制模型

MOV P1,A ;输出第二拍控制模型

ACALL DELAY1 ;延时

INC R0

MOV A,@R0 ;取第三拍控制模型 MOV P1,A ;输出第三拍控制模型

ACALL DELAY1 ;延时

DJNZ R7,ROTATE ;未走完要求的步数,继续

POP PSW ;恢复现场

POP A

RET ;返回

2.5 语音报警系统

步进电机的工作原理

1. 步进电机的工作原理 该步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。图1是该四相反应式 步进电机工作原理示意图。 图1 四相步进电机步进示意图 开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的4号齿就和C、D相 绕组磁极产生错齿,2、5号齿就和D 当开关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方向转动。 四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。 单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图、b、c所示: a. 单四拍 b. 双四拍c八拍 51单片机驱动步进电机的方法。 驱动电压12V,步进角为度 . 一圈 360 度 , 需要 48 个脉冲完成!!! 该步进电机有6根引线,排列次序如下:1:红色、2:红色、3:橙色、4:棕色、5:黄色、6:黑色。采用51驱动ULN2003的方法进行驱动。 ULN2003的驱动直接用单片机系统的5V电压,可能力矩不是很大,大家可自行加大驱动电压到12V。 1.步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流

四相八拍步进电机调速

目录 引言 (1) 第1章绪论 (2) 1.1步进电机的概述 (2) 1.1.1 步进电机的特点 (2) 1.1.2步进电机的工作原理简述 (2) 1.2四相八拍步进电机 (2) 1.2.1 四相步进电机工作原理 (2) 1.2.2 八拍得工作方式 (4) 1.3单片机概述 (4) 1.3.1 单片机原理简述 (4) 1.3.2 8031单片机 (5) 1.4总体方案设计 (5) 1.4.1 系统的组成 (5) 1.4.2 系统的工作原理 (6) 第2章系统软件设计 (7) 2.1显示子程序的设计 (7) 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、有无反馈;2、是否对当前控制起作用。开环控制一般是在瞬间就完成的控制活动,闭环控制一定会持续一定的时间,可以借此判断, 投篮第一次投篮投近了第二次投的时候用力一些,这也是一种反馈但不会对第一次产生影响了,所以是开环控制】 步进电机是一种感应电机,它的工作原理是利用电子电路,将直流电变成分时供电的,多相时序控制电流,用这种电流为步进电机供电,步进电机才能正常工作,驱动器就是为步进电机分时供电的,多相时序控制器。 【所谓时序,就是内存的时钟周期数值,脉冲信号经过上升再下降,到下一次上升之前叫做一个时钟周期,随着内存频率提升,这个周期会变短。例如CL9的意思就是CL这个操作的时间是9个时钟周期。 时序电路,是由最基本的逻辑门电路加上反馈逻辑回路(输出到输入)或器件组合而成的电路,与组合电路最本质的区别在于时序电路具有记忆功能。 如触发器、锁存器、计数器、移位寄存器、存储器等电路都是时序电路的典型器件,时序逻辑电路的状态是由存储电路来记忆和表示的。虽然组合逻辑电路能够很好地处理像加、减等这样的操作,但是要单独使用组合逻辑电路,使操作按照一定的顺序执行,需要串联起许多组合逻辑电路,而要通过硬件实现这种电路代价是很大的,并且灵活性也很差。为了实现一种有效而且灵活的操作序列,我们需要构造一种能够存储各种操作之间的信息的电路,我们称这种电路为时序电路。】 【步进电机、直流电机和无刷直流电机的主要区别在于他们的驱动方式。步进电机是以步阶方式分段移动,直流电机和无刷直流电机通常采用连续移动的控制方式。步进电机采用直接控制方式,它的主要命令和控制变量都是步阶位置。直流电机则是以电机电压为控制变量,以位置或速度为命令变量。

A步进电机四相八拍

一.方案设计 本设计采用电压为DC12V的四相八拍步进电机35BYJ46型电机,用ULN2803作为步进电动机驱动电路主芯片,以8255A作为8088并行输出接口,8088对步进电机的控制信号则通过8255A送到ULN2803. 关于转向与转速,通过查表的方式实现,以逐次递增方向查表,依次输出表中数据,则步进电机正转;以逐次递减方向查表,则步进电机反转,即通过一个表实现步进电机的正转与反转。转速则通过调用延时子程序,当调用延时较长的子程序时,则步进电机转速慢,当调用延时较短的子程序时,步进电机转速加快。 二、硬件系统的基本原理 在工业控制系统里步进电动机是主要的控制元件之一。步进电机具有快速启动停止,精确定位和能够使用数字信号进行控制,能够实现脉冲-角度转换的特点,因此得到广泛的应用。在使用步进电机的控制系统里,脉冲分配器产生周期的控制脉冲序列,步进电机驱动器每接收一个脉冲就控制步进电机沿给定方向步进一步。 实验使用型号为35BYJ46的四相步进电机,采用四相八拍控制方式工作。步进电机的转角和转动方向取决于各相中通电脉冲的个数和顺序。8088控制机控制步进电机的电路见图1-1。计算机将表1-1所示的各种通电方式转换成相应的状态控制字,通过计算机将各种状态字依次送到接口电路,并根据速度的要求作相应的延时处理。由接口电路输出所需的控制脉冲通过驱动电路路使步进电机按要求动作。驱动电路使用ULN2803A达林顿晶体管,反相驱动,驱动电流可以达到500mA。驱动电路的作用是对控制脉冲进行放大,产生步进电机工作所需要的激励电流。

图1-1 步进电机控制实验原理图 35BYJ46型步进电机使用DC12V 电压,采用四相八拍控制相序。励磁线圈和励磁顺序如图1-2,控制相序如表1-1。表中的PB10~PB13对应并行接口8055的B 口0~3位。如果使用8255B 口的其它位则相应的状态字也要改变。 表1-1 步进电机四相八拍相序表 步 序 相 序 通电相 对应PB 口的输出值 (状态字) PB13 PB12 PB11 PB10 1 0 0 0 1 A 01H 2 0 0 1 1 AB 03H 3 0 0 1 0 B 02H 4 0 1 1 0 BC 06H 5 0 1 0 0 C 04H 6 1 1 0 0 CD 0CH 7 1 0 0 0 D 08H 8 1 0 1 DA 09H 1 2 3 4 5 6 7 8 5 + + + + + + + + 4 - - - 3 - - - 5 (黑) 4 (黄) 3 (棕) 2 (蓝) 1 (红) +12V A ’ B ’ C ’ D ’ A B C D PB0 PB1 PB2 PB3 8255 驱动单元 步进电动机

(整理)四相步进电机原理图.

四相步进电机原理图 本文先介绍该步进电机的工作原理,然后介绍了其驱动器的软、硬件设计。 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Ω电阻是一外接电阻,起限流作用,也是一个改善回路时间常数的元件。D1~D4为续流二极管,使电机绕组产生的反电动势通过续流二极管(D1~D4)而衰减掉,从而保护了功率管TIP122不受损坏。

步进电动机的结构与工作原理

步进电动机的结构与工作原理 步进电机是利用电磁铁原理,将脉冲信号转换成线位移或角位移的电机。每来一个电脉冲,电机转动一个角度,带动机械移动一小段距离。 步进电动机 步进机将脉冲信号转换为角位移或线位移。主要要求:动作灵敏、准确、重量轻、体积小、运行可靠、耗电少等。 步进电动机的特点: (1)来一个脉冲,转一个步距角。 (2)控制脉冲频率,可控制电机转速。 (3)改变脉冲顺序,改变方向。 步进电动机的种类 根据励磁式方式的不同分为:反应式、永磁式和混合式(又叫感应子式)三种。反应式步进电机的应用较多。 下面以反应式步进电机为例说明步进电机的结构和工作原理。 图7-20 (a)三相反应式步进电动机工作原理图 A 相通电,A 方向的磁通经转子形成闭合回路。若转子和磁场轴线方向原有一定角度,则在磁场的作用下,转子被磁化,吸引转子,使转子的位置力图使通电相磁路的磁阻最小,使转、定子的齿对齐停止转动。

A 相通电使转子1、3齿和AA' 对齐。 图7-20 (b)三相反应式步进电动机工作原理图 同理,B相通电,转子2、4齿和B相轴线对齐,相对A相通电位置转30; 图7-20 (c)三相反应式步进电动机工作原理图 最后,C相通电,转子1、3齿和C相轴线对齐,相对B相通电比较,转子再次转动30。 步进电动机的结构 步进机主要由两部分构成:定子和转子。它们均由磁性材料构成,以三相为例其定子和转子上分别有六个、四个磁极。

步进电动机结构简图 定子的六个磁极上有控制绕组,两个相对的磁极组成一相。 注意:这里的相和交流电中的“相”的概念不同。步进机通的是直流电脉冲,这主要是指线图的联接和组数的区别。

步进电机原理接线

2相四线,四相五线,四相六线步进电机接线及驱动方法 分类:单片机2010-07-18 09:24 5085人阅读评论(9) 收藏举报 步进电机原理 按照常理来说,步进电机接线要根据线的颜色来区分接线。但是不同公司生产的步进电机,线的颜色不一样。特别是国外的步进电机。 那么,步进电机接线应该用万用表打表。 步进电机内部构造如下图:

通过上图可知,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度(俗称半步)。 定位转矩:电机在不通电状态下,电机转子自身的锁定力矩(由磁场齿形的谐波以及机械误差造成的) 静转矩:电机在额定静态电作用下,电机不作旋转运动时,电机转轴的锁定力矩。此力矩是衡量电机体积(几何尺寸)的标准,与驱动电压及驱动电源等无关。 步进电机驱动 驱动步进电机,无非是给电机a和b组先轮流给连续的脉冲,步进电机就可以驱动了。 步进电机驱动码:

两相步进电机的原理

两相步进电机的工作原理 工业上电机用三相制,普通的小玩具马达两相也可以。拿玩具电机来说。上下是两个磁铁。中间是线圈。通了直流电以后,就成了电磁铁。被上下的磁铁吸引后就产生了偏转。但是因为中间连接电磁铁的两根线不是直接连接的。是采用在转轴的位置用一个滑动的接触片。这样如果电磁铁转过了头,原先连接电磁铁的两根线刚好就相反了。所以电磁铁的n极s 极就和以前相反了。但是电机上下的磁铁是不变的。所以又可以继续吸引中间的电磁铁。当电磁铁继续转。由于惯性又转过头了。所以电极又相反了。重复上述过程就转了。 但是他有缺陷。因为在刚好要变换电极的时候是需要靠惯性的。所以他不利于自己启动。功率也达不到很高。所以就产生了三相的电机。每隔120度放一个磁铁。分布在电机一圈。这样的电机改善了很多。 另外注意。不一定磁铁非要放外边。可以放内侧。而外侧是电磁铁。常见的发电厂大致都是这个结构的电机。 电机不一定当作机械动力使用。也可以当小型发电机来用。比如用一个柴油的机器产生一个持续的扭力矩,连接到电机上。就可以发电了。 下面是交流的。 如果中间放一个磁铁。外面放电磁铁来吸引中间的磁铁呢。还是从两相开始。假如上边一个电磁铁产生磁力把磁铁n极吸到了上边,然后刚好电磁铁的正负极颠倒了,那么就产生斥力把n极推到下边去。同样道理下边的也是对中间的磁铁产生吸力和斥力。但是大家一想就知道了。两相的交流也存在一个惯性的问题。就是刚好磁铁和电磁铁直上直下的时候。 所以三相的,明显比两相的有优势。而且中间的磁铁也不一定非得是一个直上直下的n极和s极的磁铁。可以把三个磁铁s极放中间,n极冲外面。这样外面的三个电磁铁就轮番的吸引中间的n极磁铁。 如果轴承的滑动摩擦力够小的话。只要电磁铁变化。就可以不断的吸引中间的三个n极磁铁产生偏转旋转。电磁铁变化磁极速度快,中间的轴承旋转就快。电磁铁变化速度就是频率了。发电厂的频率是一定的。所以你可以用变频的机器把电频率变成你需要的。就可以控制电机的速度了。 另外电机也不一定是三相的,还可以是四相的、五相的、六相的、七相的。但是由于大家做试验做过。太多相的,电磁互相干扰大,另外大家也知道,每个电磁铁都通电,是很浪费电的。因为电磁铁是用电线缠绕成的线圈。但是电线都有电阻。如果做一个六项的电机,耗电

51单片机控制四相步进电机解析

51单片机控制四相步进电机 2009年07月21日星期二 12:44 51单片机控制四相步进电机 2009-03-01 18:53 接触单片机快两年了,不过只是非常业余的兴趣,实践却不多,到现在还算是个初学者吧。这几天给自己的任务就是搞定步进电机的单片机控制。以前曾看过有关步进电机原理和控制的资料,毕竟自己没有做过,对其具体原理还不是很清楚。今天从淘宝网买了一个EPSON的UMX-1型步进电机,此步进电机为双极性四相,接线共有六根,外形如下 图所示: 详细内容: https://www.360docs.net/doc/2915414008.html,/31907887_d.h tml

拿到步进电机,根据以前看书对四相步进电机的了解,我对它进行了初步的测试,就是将5伏电源的正端接上最边上两根褐色的线,然后用5伏电源的地线分别和另外四根线(红、兰、白、橙)依次接触,发现每接触一下,步进电机便转动一个角度,来回五次,电机刚好转一圈,说明此步进电机的步进角度为360/(4×5)=18度。地线与四线接触的顺序相反,电机的转向也相反。 如果用单片机来控制此步进电机,则只需分别依次给四线一定时间的脉冲电流,电机便可连续转动起来。通过改变脉冲电流的时间间隔,就可以实现对转速的控制;通过改变给四

线脉冲电流的顺序,则可实现对转向的控制。所以,设计了如下电路图: C51程序代码为: 代码一 #include static unsigned int count; static unsigned int endcount; void delay(); void main(void)

28BYJ-48步进电机简介

28BYJ-48步进电机: 步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。您可以通过控制脉冲个来控制角位移量,从而达到准确定位的目的;同时您可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 步进电机28BYJ48型四相八拍电机,电压为DC5V—DC12V。当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动。每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。当通电状态的改变完成一个循环时,转子转过一个齿距。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A。。。),双(双相绕组通电)四拍(AB-BC- CD-DA-AB-。。。),八拍(A-AB-B-BC-C-CD-D-DA-A。。。) 四相步进电机有两种运行方式,一、四相四拍;二、四相八拍。 要想搞清楚四相八拍运行方式下步进电机的转速如果计算,需要先清楚两个基本概念。 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转。

自己做的四相八拍步进电机调速

1 引言 在工业控制系统里步进电动机是主要的控制元件之一。步进电机具有快速启动停止,精确定位和能够使用数字信号进行控制,能够实现脉冲-角度转换的特点,因此得到广泛的应用。在使用步进电机的控制系统里,脉冲分配器产生周期的控制脉冲序列,步进电机驱动器每接收一个脉冲就控制步进电机沿给定方向步进一步。 本实验旨在通过控制AT89S52芯片,实现对四相步进电机的转动控制。具体功能主要是控制电机正转、反转、加速与减速。 具体工作过程是:给试验箱上电后,拨动启动开关,步进电机按照预先设置的转速和转动方式转动。调整正反转按钮,步进电机实现正反转切换;拨动加速开关,步进电机转速加快,速度达到最大值,不再加速;拨动减速开关时,电机减速转动,速度减到最小速度,停止减速。 2 四相步进机 2.I 步进电机 步进电机是一种将电脉冲转化为角位移的执行机构。电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。 2.2 步进电机的控制

1.换相顺序控制:通电换相这一过程称为脉冲分配。例如:混合式步进电机 的工作方式,其各相通电顺序为A-B-C-D,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D相的通断。 2.控制步进电机的转向控制:如果给定工作方式正序换相通电,步进电机正 转,如果按反序通电换相,则电机就反转。 3.控制步进电机的速度控制:如果给步进电机发一个控制脉冲,它就转一步, 再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。 2.3 步进电机的工作过程 图2.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方向转动。 四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。 八拍工作方式的电源通电时序与波形如图所示:

单片机控制步进电机_四相八拍

#include //51芯片管脚定义头文件 #include //内部包含延时函数_nop_(); #define uchar unsigned char #define uint unsigned int uchar code FFW[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //四相八拍正转编码 uchar code REV[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; ////四相八拍反转编码 sbit K1 = P3^2; //正转 sbit K2 = P3^3; //反转 sbit K3 = P3^4; //停止 sbit BEEP = P3^6; //蜂鸣器 /********************************************************/ /* /* 延时t毫秒 /* 11.0592MHz时钟,延时约1ms /* /********************************************************/ void delay(uint t) { uint k; while(t--) { for(k=0; k<125; k++) { } } } /**********************************************************/ void delayB(uchar x) //x*0.14MS { uchar i; while(x--) { for (i=0; i<13; i++) { } }

两相步进电机驱动器工作原理

两相步进电机驱动器工作原理 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所示:图2.步进电机工作时序波形图 2.基于AT89C2051的步进电机驱动器系统电路原理 图3 步进电机驱动器系统电路原理图 A T89C2051将控制脉冲从P1口的P1.4~P1.7输出,经74LS14反相后进入9014,经9014放大后控制光电开关,光电隔离后,由功率管TIP122将脉冲信号进行电压和电流放大,驱动步进电机的各相绕组。使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和停止等动作。图中L1为步进电机的一相绕组。A T89C2051选用频率22MHz的晶振,选用较高晶振的目的是为了在方式2下尽量减小AT89C2051对上位机脉冲信号周期的影响。 图3中的RL1~RL4为绕组内阻,50Ω电阻是一外接电阻,起限流作用,也是一个改善回路时间常数的元件。D1~D4为续流二极管,使电机绕组产生的反电动势通过续流二极管(D1~D4)而衰减掉,从而保护了功率管TIP122不受损坏。 在50Ω外接电阻上并联一个200μF电容,可以改善注入步进电机绕组的电流脉冲前沿,提高了步进电机的高频性能。与续流二极管串联的200Ω电阻可减小回路的放电时间常数,使绕组中电流脉冲的后沿变陡,电流下降时间变小,也起到提高高频工作性能的作用。 3.软件设计 该驱动器根据拨码开关KX、KY的不同组合有三种工作方式供选择: 方式1为中断方式:P3.5(INT1)为步进脉冲输入端,P3.7为正反转脉冲输入端。上位机(PC机或单片机)与驱动器仅以2条线相连。 方式2为串行通讯方式:上位机(PC机或单片机)将控制命令发送给驱动器,驱动器根据控制命令自行完成有关控制过程。

最新51单片机控制四相步进电机电路图汇总

51单片机控制四相步进电机电路图

51单片机控制四相步进电机 接触单片机快两年了,不过只是非常业余的兴趣,实践却不多,到现在还算是个初学者吧。这几天给自己的任务就是搞定步进电机的单片机控制。以前曾看过有关步进电机原理和控制的资料,毕竟自己没有做过,对其具体原理还不是很清楚。今天从淘宝网买了一个EPSON的UMX-1型步进电机,此步进电机为双极性四相,接线共有六根,外形如下图所 示: 拿到步进电机,根据以前看书对四相步进电机的了解,我对它进行了初步的测试,就是将5伏电源的正端接上最边上两根褐色的线,然后用5伏电源的地线分别和另外四根线(红、兰、白、橙)依次接触,发现每接触一下,步进电机便转动一个角度,来回五次,电机刚好转一圈,说明此步进电机的步进角度为360/(4×5)=18度。地线与四线接触的顺序相反,电机的转向也相反。 如果用单片机来控制此步进电机,则只需分别依次给四线一定时间的脉冲电流,电机便可连续转动起来。通过改变脉冲电流的时间间隔,就可以实现对转速的控制;通过改变给四线脉冲电流的顺序,则可实现对转向的控制。所以,设计了如下电路图:

C51程序代码为: 代码一 #include 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位模式1 ET0 = 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

最新四相步进电机使用

四相步进电机使用

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Ω电阻是一外接电阻,起限流作用,也是一个改善回路时间常数的元件。D1~D4为续流二极管,使电机绕组产生的反电动势通过续流二极管(D1~D4)而衰减掉,从而保护了功率管TIP122不受损坏。 在50Ω外接电阻上并联一个200μF电容,可以改善注入步进电机绕组的电流脉冲前沿,提高了步进电机的高频性能。与续流二极管串联的200Ω电阻

步进电机的工作原理及其原理图

步进电机的工作原理及其原理图

————————————————————————————————作者:————————————————————————————————日期:

一、前言 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。 虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。 目前,生产步进电机的厂家的确不少,但具有专业技术人员,能够自行开发,研制的厂家却非常少,大部分的厂家只一、二十人,连最基本的设备都没有。仅仅处于一种盲目的仿制阶段。这就给用户在产品选型、使用中造成许多麻烦。签于上述情况,我们决定以广泛的感应子式步进电机为例。叙述其基本工作原理。望能对广大用户在选型、使用、及整机改进时有所帮助。 二、感应子式步进电机工作原理 (一)反应式步进电机原理 由于反应式步进电机工作原理比较简单。下面先叙述三相反应式步进电机原理。 1、结构: 电机转子均匀分布着很多小齿,定子齿有三个励磁绕阻,其几何轴线依次分别与转子齿轴线错开。0、1/3て、2/3て,(相邻两转子齿轴线间的距离为齿距以て表示),即A与齿1相对齐,B与齿2向右错开1/3て,C与齿3向右错开2/3て,A'与齿5相对齐,(A'就是A,齿5就是齿1)下面是定转子的展开图: 2、旋转: 如A相通电,B,C相不通电时,由于磁场作用,齿1与A对齐,(转子不受任何力以下均同)。如B相通电,A,C相不通电时,齿2应与B对齐,此时转子向右移过1/3て,此时齿3与C 偏移为1/3て,齿4与A偏移(て-1/3て)=2/3て。如C相通电,A,B相不通电,齿3应与C 对齐,此时转子又向右移过1/3て,此时齿4与A偏移为1/3て对齐。如A相通电,B,C相 不通

单片机代码-步进电机四相八拍控制

#include sbit bell=P2^3; unsigned char code motor_table[8]={0x0e,0x0c,0x0d,0x09,0x0b,0x03,0x07,0x06}; //四相八拍步进脉冲信号表 unsigned char table_index; //定义一个变量,便于取出motor_table数组中的值 void delay_ms(unsigned int t) { unsigned int a,b; for(a=0;a

{ for(table_index=7;table_index>0;table_index--)//顺时针转动 { P1= motor_table[table_index]; //重复将8个脉冲信号送给电机控制端口 delay_ms(3); } } P1=0xff; //电机停止转动时,关闭电机,避免电机不转动时线圈通电过热。 while(1); } }

步进电机的工作原理及其原理图

一、前言 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。 虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。 目前,生产步进电机的厂家的确不少,但具有专业技术人员,能够自行开发,研制的厂家却非常少,大部分的厂家只一、二十人,连最基本的设备都没有。仅仅处于一种盲目的仿制阶段。这就给用户在产品选型、使用中造成许多麻烦。签于上述情况,我们决定以广泛的感应子式步进电机为例。叙述其基本工作原理。望能对广大用户在选型、使用、及整机改进时有所帮助。 二、感应子式步进电机工作原理 (一)反应式步进电机原理 由于反应式步进电机工作原理比较简单。下面先叙述三相反应式步进电机原理。 1、结构: 电机转子均匀分布着很多小齿,定子齿有三个励磁绕阻,其几何轴线依次分别与转子齿轴线错开。0、1/3て、2/3て,(相邻两转子齿轴线间的距离为齿距以て表示),即A与齿1相对齐,B与齿2向右错开1/3て,C与齿3向右错开2/3て,A'与齿5相对齐,(A'就是A,齿5就是齿1)下面是定转子的展开图: 2、旋转: 如A相通电,B,C相不通电时,由于磁场作用,齿1与A对齐,(转子不受任何力以下均同)。如B相通电,A,C相不通电时,齿2应与B对齐,此时转子向右移过1/3て,此时齿3与C 偏移为1/3て,齿4与A偏移(て-1/3て)=2/3て。如C相通电,A,B相不通电,齿3应与C 对齐,此时转子又向右移过1/3て,此时齿4与A偏移为1/3て对齐。如A相通电,B,C相

四相步进电机全教程

四相步进电机全教程——盖尔@袁(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也很全!

相关文档
最新文档