资源描述
. . . .
电子线路设计2课程设计报告
单片机控制的步进电动机
姓 名:
班 级:09车辆工程2班
学 号:
指导老师:
日期: 2011.6.6~2011.6.10
华南农业大学工程学院
7 / 21
摘 要
步进电机控制设计
摘 要
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
步进电机控制系统以8086作为控制的核心元件,利用8255的C口控制步进电机,同时获取控制转动方向(即正转和反转),A口连接键盘,以选取不同档的移动速度,B口连接LED显示器,以显示当前的速度档,8253作为定时器,提供必要的时钟信号。
本课程设计报告通过步进电机的基本介绍、系统的软硬件设计(包括最小系统介绍、接口电路设计、延时程序设计、步进电机的驱动程序设计等几个主要模块)、完整的汇编语言程序等,我们完成了对步进电机系统的设计,并完成了相应的任务,如正转、反转、显示步数与设定速度等,使我们进一步掌握了汇编语言,也使我们能很好的把书本上的知识与实践相结合,大大提高了我们的动手能力。
关键词:步进电机,脉冲信号,方向控制,时钟信号
1 绪论
1.1 课题描述
步进电机将脉冲信号转换成的机械角位移和转速分别与输入电机绕组的脉冲个数和脉冲频率成比例,通过改变电脉冲频率,可在大围调速,同时,该电机还能快速起动、制动、反转.此外,步进电机易于实现与单片机机或其它数字元件接口,适用于数字控制系统,并可取得较高的控制精度,系统硬件实施比较简单。
这次数控原理的课程设计方案是基于单片机的步进电机运行控制系统。在这个控制系统中,控制器是它的核心,因为它担负着产生脉冲,发送、接受控制命令等任务。该系统的步进电机驱动控制电路,采用低价的AT89C51为控制器,可直接对步进电机进行控制,省去了昂贵的专用步进电机控制器,简化了硬件线路,降低了成本,提高了系统的可靠性。
. 步进电机是纯粹的数字控制电动机。它将电脉冲信号转换成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。近几十年来,数字技术、计算机技术和永磁材料的迅速发展,为步进电机的应用开辟了广阔的前景。
1.2 步进电机控制工作原理
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
步进电机由于其电气特性,运转时会有步进感 ,即振动感。为了使电机转动平滑 ,减小振动 ,可在步进电机控制脉冲的上升沿和下降沿采用细分的梯形波 ,可以减小步进电机的步进角 ,提高电机运行的平稳性。在步进电机停转时 ,为了防止因惯性而使电机轴产生顺滑 ,则需采用合适的锁定波形 ,产生锁定磁力矩 ,锁定步进电机的转轴 ,使步进电机的转轴不能自由转动。
如果给定工作方式正序换相通电 ,步进电机正转。若步进电机的励磁方式为四相八拍 ,即 A-AB-B-BC-C-CD-D-DA-A。如果按反序通电换相 ,即则电机就反转。其他方式情况类似。
如果给步进电机发一个控制脉冲 ,它就转一步 ,再发一个脉冲 ,它会再转一步。2 个脉冲的间隔越短 ,步进电机就转得越快。调整送给步进电机的脉冲频率 ,就可以对步进电机进行调速。
步进电机换向时 ,一定要在电机减速停止或降到突跳频率围之再换向 ,以免产生较大的冲击而损坏电机。换向信号一定要在前一个方向的最后一个脉冲结束后以与下一个方向的第1 个脉冲前发出。对于脉冲的设计主要要求要有一定的脉冲宽度(一般不小于5μs)、脉冲序列的均匀度与高低电平方式。在某一高速下的正、反向切换实质包含了减速→换向→加速3 个过程。
2 步进电机系统的总体设计
2.1 系统设计方框图
本系统是用单片机软件编程来产生脉冲分配信号,即把数字控制计数的高精度等方面的优势有效地应用于步进电机控制系统,同时本系统设计的步进电机控制器硬件电路十分简单,成本低,使用方便。本系统硬件方案论证包括开关控制电路、复位电路、时钟电路、显示电路、光电耦合电路、功率放大电路的选择
2.2 方框图的描述
单片机的选择:本次设计以CPU选用AT89C5l作为步进电机的控制芯片.AT89C51的结构简单并可以在编程器上实现闪烁式的电擦写达几万次以上.使用方便等优点。AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
AT89C51的引脚结构图如图2所示,其管脚说明如下:
图2 AT89C51引脚结构图
VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
P1口:P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有部程序存储器。注意加密方式1时,/EA将部锁定为RESET;当/EA端保持高电平时,此间部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入与部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
复位电路的设计:本设计采用上电复位形式,微控制器上电后,系统时钟启动,当8051MCU的脚复位引第9脚接高电平并且时间超过2个机器周期,即可完成复位操作。如图4所示。
图4 复位电路原理图
开关控制电路:89C51单片机复位后P0-P3口初始状态为0FFH,通过按钮开关控制电机的换向和调速,系统不断检测P3.2-P3.3引脚的状态,按钮按下系统检测到低电平,执行相关操作,否则在上拉电阻和+5V电源作用下始终保持高电平。如图5所示。
图5 开关控制电路原理图
显示电路:显示电路有三个发光二极管分别显示电机的正转、反转、停止。发光二极管采用共阳极接法,+5V电源供电,分别接P0.0~P0.2。编程时由三个引脚输出低电平控制通断。如图6所示。
图6 显示电路原理图
光电耦合电路:光电耦合电路将步进电机的强电信号与微机的弱电信号进行隔离与电平转换。光电耦合器由发光源和受光器两部分组成。当有电流流过发光二极管时,发光二极管发光。光敏三极管接受光照后即可导通,从而产生电信号。使用光电耦合器时必须接外电路。主要考虑接驱动器和外接电阻。如图7所示。
图7 光电耦合电路原理图
功率放大电路:功率放大电路的功能是将环形分配器送来的弱电信号变为强电信号,在这里采用单电压驱动电路。如图8所示。
图8 功率放大电路
3 步进电机的软件设计
3.1 主程序流程图
步进电机系统主程序流程图如图9所示。
图9 主程序流程图
3.2 中断子程序流程图
中断子程序流程图如图10所示。
图10 中断子程序流程图
3.3 步进电机系统程序
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP LP0
ORG 0013H
LJMP LP1
ORG 0100H
MAIN: MOV R7,#40H
MOV P0,#04H
MOV IE,#85H ; 外部中断0、中断1开中断
MOV SP,0030H
TP: JNB P3.6,START2 ;P3.6检测到反转负脉冲跳转
P3.4 TP ;P3.4检测到正转脉冲,电机正转
START: MOV P0,#00H
SETB P0.0
MOV R0,#00H ;正转
START1:MOV P1,#00H
MOV A,R0
MOV DPTR,#TABLE
MOVC A,A+DPTR
JZ START ;对 A 的判断,当 A = 0 时则转到 START
MOV P1,A
LCALL DELAY
INC R0
P3.5,START1 ;P3.5无负脉冲是跳转,电机继续运转
MOV P1,#00H
LCALL DELAY1
LJMP MAIN
START2:MOV P0,#00H
SETB P0.1
MOV P1,#00H ;反转
MOV R0,#07
START3:MOV A,R0
MOV DPTR,#TABLE
MOVC A,A+DPTR
JZ START2
MOV P1,A
LCALL DELAY
INC R0
P3.5,START3
MOV P1,#00H
LCALL DELAY1
LJMP MAIN
DELAY:MOV R6,#248
DJNZ R6,$
DJNZ R7,DELAY
RET
DELAY1:MOV R4,#20 ;2S 延时子程序
DEL2: MOV R3,#200
DEL3: MOV R2,#250
DJNZ R2,$
DJNZ R3,DEL3
DJNZ R4,DEL2
MOV R7,#40 ;恢复R6、R7初始值
RET
LP0: PUSH A ;加速子程序
PUSH PSW
MOV A,R7
INC A
JZ LT0
INC R7
LT0: POP A
POP PSW
RETI
LP1: PUSH A ;减速子程序
PUSH PSW
MOV A,R7
JZ LI
DEC R7
LT1: POP A
POP PSW
RETI
TABLE:
DB 01H,03H,02H,06H,04H,05H ; 正转表
DB 00 ;正转结束
DB 01H,05H,04H,06H,02H,03H ;反转表
DB 00 ;反转结束
END
4 步进电机系统的总原理图与元器件清单
4.1 系统总原理图
系统总原理图如图11所示。
图11 系统总原理图
4.2 元器件清单
表1 系统元器件清单
位 号
规 格
位 号
规 格
C1
30pF
R11
1K
V7
IN3904
C2
30pF
R12
1K
V8
IN3904
C3
10uF
R13
1K
V9
IN3904
Y1
12MHZ
R14
1K
U1
AT89C51
R1
4.7K
R15
1K
U2
PC817
R2
4.7K
R16
1K
U3
PC817
R3
4.7K
R17
2.2K
U4
PC817
R4
1K
R18
1K
S1
R5
1K
V1
DIP20000
S2
R6
1K
V2
DIP20000
S3
R7
10K
V3
IN5400
S4
R8
2.2K
V4
IN5400
S5
R9
1K
V5
IN5400
R10
2.2K
V6
DIP20000
目 录
1 方案比较与选择(须详细阐述创新点或新见解)
2 电路仿真与分析
2.1电路仿真
2.2电路分析
3电路板制作、焊接、调试
3.1 电路板制作
3.2 电路板焊接
3.3电路板调试
4讨论与进一步研究建议
5课程设计心得
Abstract
参考文献
方案二:
单片机控制步进电机驱动器工作原理
步进电机在控制系统中具有广泛的应用。它可以把脉冲信号转换成角位移,并且可用作电磁制动轮、电磁差分器、或角位移发生器等。
有时从一些旧设备上拆下的步进电机(这种电机一般没有损坏)要改作它用,一般需自己设计驱动器。本文介绍的就是为从一日本产旧式打印机上拆下的步进电机而设计的驱动器。
本文先介绍该步进电机的工作原理,然后介绍了其驱动器的软、硬件设计。
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Ω电阻可减小回路的放电时间常数,使绕组中电流脉冲的后沿变陡,电流下降时间变小,也起到提高高频工作性能的作用。
3.软件设计
该驱动器根据拨码开关KX、KY的不同组合有三种工作方式供选择:
方式1为中断方式:P3.5(INT1)为步进脉冲输入端,P3.7为正反转脉冲输入端。上位机(PC机或单片机)与驱动器仅以2条线相连。
方式2为串行通讯方式:上位机(PC机或单片机)将控制命令发送给驱动器,驱动器根据控制命令自行完成有关控制过程。
方式3为拨码开关控制方式:通过K1~K5的不同组合,直接控制步进电机。
当上电或按下复位键KR后,AT89C2051先检测拨码开关KX、KY的状态,根据KX、KY 的不同组合,进入不同的工作方式。以下给出方式1的程序流程框图与源程序。
在程序的编制中,要特别注意步进电机在换向时的处理。为使步进电机在换向时能平滑过渡,不至于产生错步,应在每一步中设置标志位。其中20H单元的各位为步进电机正转标志位;21H单元各位为反转标志位。在正转时,不仅给正转标志位赋值,也同时给反转标志位赋值;在反转时也如此。这样,当步进电机换向时,就可以上一次的位置作为起点反向运动,避免了电机换向时产生错步。
图4 方式1程序框图
方式1源程序:
MOV 20H,#00H ;20H单元置初值,电机正转位置指针
MOV 21H,#00H ;21H单元置初值,电机反转位置指针
MOV P1,#0C0H ;P1口置初值,防止电机上电短路
MOV TMOD,#60H ;T1计数器置初值,开中断
MOV TL1,#0FFH
MOV TH1,#0FFH
SETB ET1
SETB EA
SETB TR1
SJMP $
;***********计数器1中断程序************
IT1P: P3.7,FAN ;电机正、反转指针
;*************电机正转*****************
00H,LOOP0
01H,LOOP1
02H,LOOP2
03H,LOOP3
04H,LOOP4
05H,LOOP5
06H,LOOP6
07H,LOOP7
LOOP0: MOV P1,#0D0H
MOV 20H,#02H
MOV 21H,#40H
AJMP QUIT
LOOP1: MOV P1,#090H
MOV 20H,#04H
MOV 21H,#20H
AJMP QUIT
LOOP2: MOV P1,#0B0H
MOV 20H,#08H
MOV 21H,#10H
AJMP QUIT
LOOP3: MOV P1,#030H
MOV 20H,#10H
MOV 21H,#08H
AJMP QUIT
LOOP4: MOV P1,#070H
MOV 20H,#20H
MOV 21H,#04H
AJMP QUIT
LOOP5: MOV P1,#060H
MOV 20H,#40H
MOV 21H,#02H
AJMP QUIT
LOOP6: MOV P1,#0E0H
MOV 20H,#80H
MOV 21H,#01H
AJMP QUIT
LOOP7: MOV P1,#0C0H
MOV ; 20H,#01H
MOV 21H,#80H
AJMP QUIT
;***************电机反转*****************
FAN: 08H,LOOQ0
09H,LOOQ1
0AH,LOOQ2
0BH,LOOQ3
0CH,LOOQ4
0DH,LOOQ5
0EH,LOOQ6
0FH,LOOQ7
LOOQ0: MOV P1,#0A0H
MOV 21H,#02H
MOV 20H,#40H
AJMP QUIT
LOOQ1: MOV P1,#0E0H
MOV 21H,#04H
MOV 20H,#20H
AJMP QUIT
LOOQ2: MOV P1,#0C0H
MOV 21H,#08H
MOV 20H,#10H
AJMP QUIT
LOOQ3: MOV P1,#0D0H
MOV 21H,#10H
MOV 20H,#08H
AJMP QUIT
LOOQ4: MOV P1,#050H
MOV 21H,#20H
MOV 20H,#04H
AJMP QUIT
LOOQ5: MOV P1,#070H
MOV 21H,#40H
MOV 20H,#02H
AJMP QUIT
LOOQ6: MOV P1,#030H
MOV 21H,#80H
MOV 20H,#01H
AJMP QUIT
LOOQ7: MOV P1,#0B0H
MOV 21H,#01H
MOV 20H,#80H
QUIT: RETI
END
任务安排:
1.方案比较与选择 邓浩成 真强
2. 电路仿真与分析 邓浩成 真强
3. 电路板制作、焊接、 董杰龙,单楚良,符子锐
电路板调试 全队
4. 课程设计心得 全队
设计时间安排:
6月3号前完成方案提出和比较,确定最终选择方案,提交元器件清单
6月6号前完成电路的仿真和分析
6月8号完成电路板制作、焊接、调试
6月10号提交作品,设计报告
展开阅读全文