基于单片机的步进电机毕业设计.docx
- 文档编号:8956326
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:50
- 大小:145.78KB
基于单片机的步进电机毕业设计.docx
《基于单片机的步进电机毕业设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的步进电机毕业设计.docx(50页珍藏版)》请在冰点文库上搜索。
基于单片机的步进电机毕业设计
基于单片机的步进电机毕业设计
目 录
前 言
步进电动机已成为除直流电动机和交流电动机以外的第三类电动机。
传统电动机作为机电能量转换装置,在人类的生产和生活进入电气化过程中起着关键的作用。
可是在人类社会进入自动化时代的今天,传统电动机的功能已不能满足工厂自动化和办公自动化等各种运动控制系统的要求。
为适应这些要求,发展了一系列新的具备控制功能的电动机系统,其中都有自己的特点,应用最为广泛的一类便是步进电动机。
步进电动机的发展与计算机工业密切相关。
自从步进电动机在计算机外围设备中取代小型直流电动机以后,使其设备的性能提高,很快地促进了步进电动机的发展。
另一方面,微型计算机和数字控制技术的发展,又将作为数控系统执行部件的步进电动机推广应用到其他领域,如电加工机床、小功率机械加工机床、测量仪器、光学和医疗仪器以及包装机械等。
现在比较常用的步进电机包括反应式步进电机、永磁式步进电机、混合式步进电机等。
其中反应式步进电机的转子磁路由软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩。
现阶段,反应式步进电机获得最多的应用。
本文第一章系统介绍了步进电机的分类,结构,以及它的工作原理。
第二章着重介绍了本系统的硬件控制方案,对用到的外围芯片做了简单的介绍。
第三章给出了整个系统的运行流程,以及重要子系统的流程,最终编写了完整的运行程序。
第1章步进电机工作原理
步进电机是一种完成数字/模拟转换的执行元件。
步进电机区别于其他控制用途电动机的最大特点是:
步进电机接收数字控制信号(电脉冲信号),并将这些脉冲信号转换成与之相对应的角位移或直线位移。
步进式伺服驱动系统是典型的开环控制系统。
在此系统中,执行元件是步进电机。
它受驱动控制线路的控制,将代表进给脉冲的电平信号直接变换为具有一定方向、大小和速度的机械转角位移,并通过齿轮和丝杠带动工作台移动。
由于该系统没有反馈检测环节,它的精度较差,速度也受到步进电机性能的限制。
但它的结构和控制简单、容易调整,故在速度和精度要求不太高的场合具有一定的使用价值。
从步进电机的矩-频特性可知,启动频率越高,启动转矩越小,带动负载的能力越差。
当启动频率较高时,启动时会造成失步,而停止时由于惯性作用又会发生过冲,所以在步进电机控制中必须要采取升降速控制措施。
本文根据步进电机的动力学方程和矩-频特性曲线建立系统的数学模型,采用指数规律的升降速算法,对升降速的过程进行离散处理,用定时器控制发出脉冲的时间间隔,采用查表和计算相结合的方法实现了步进电机的升降速过程的控制。
本系统采用单片机为核心对步进电机进行控制。
1.1步进电机的分类
步进电机的分类方式很多,常见的分类方式有按产生力矩的原理、按输出力矩的大小以及按定子和转子的数量进行分类等。
根据不同的分类方式,可将步进电机分为多种类型,如表1-1所示。
表1-1步进电机的分类
分 类 方 式
具体类型
按力矩产生的原理
(1)反应式:
转子无绕组,由被激磁的定子绕组产生反应力矩实现步进运行。
(2)激磁式:
定、转子均有激磁绕组(或转子用永久磁钢),由电磁力矩实现步进运行。
按输出力矩大小
(1)伺服式:
输出力矩在百分之几之几至十分之几(N·m)只能驱动较小的负载,要与液压扭矩放大器配用,才能驱动机床工作台等较大的负载。
(2)功率式:
输出力矩在5-50N·m以上,可以直接驱动机床工作台等较大的负载。
按定子数
(1)单定子式
(2)双定子式(3)三定子式(4)多定子式
按各相绕组分布
(1)径向分布式:
电机各相按圆周依次排列。
(2)轴向分布式:
电机各相按轴向依次排列。
1.2步进电机的各项参数指标
1.2.1动态指标
1、失步:
电机运转时运转的步数,不等于理论上的步数。
称之为失步。
2、最大空载起动频率:
电机在某种驱动形式、电压及额定电流下,在不加负载的情况下,能够直接起动的最大频率。
3、最大空载的运行频率:
电机在某种驱动形式,电压及额定电流下,电机不带负载的最高转速频率。
4、运行矩频特性:
电机在某种测试条件下测得运行中输出力矩与频率关系的曲线称为运行矩频特性,这是电机诸多动态曲线中最重要的,也是电机选择的根本依据。
电机一旦选定,电机的静力矩确定,而动态力矩却不然,电机的动态力矩取决于电机运行时的平均电流(而非静态电流),平均电流越大,电机输出力矩越大,即电机的频率特性越硬。
如图1-1所示,曲线3电流最大、或电压最高;曲线1电流最小、或电压最低,曲线与负载的交点为负载的最大速度点。
要使平均电流大,尽可能提高驱动电压,使采用小电感大电流的电机。
5、电机正反转控制:
当电机绕组通电时序为AB-BC-CD-DA为正转,通电时序为DA-CD-BC-AB时为反转。
图1-1电流(或电压)对动力矩的影响
1.2.2静态指标
相数:
产生不同对磁极N、S磁场的励磁线圈对数。
常用m表示。
拍数:
完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以三相电机为例,有三相三拍运行方式即AB-BC-CA-AB,三相六拍运行方式即A-AB-B-BC-C-CA-A.
步距角:
对应一个脉冲信号,电机转子转过的角位移用θ表示。
θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。
四拍运行时步距角为θ=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步)。
1.3步进电机控制系统组成原理
典型的步进电机控制系统,如图1-2所示。
图1-2步进电机控制系统的组成
步进电机控制系统主要由步进控制器、功率放大器及步进电机组成。
步进电机控制是由缓冲寄存器、环形分配器、控制逻辑及正反转控制门组成的。
它的作用就是能把输入的脉冲转换成环形脉冲,以便控制步进电机,并能进行正反向控制。
功率放大器的作用就是把控制器输出的环形脉冲加以放大,以驱动步进电机转动。
在这种控制方式中,由于步进控制器线路复杂,成本高,因而限制了它的应用。
但是,采用计算机控制系统,由软件代替步进控制器,问题将大大简化,不仅简化了线路,降低了成本,而且可靠性也大大提高。
特别是采用微型计算机控制,更可以根据系统的需要,灵活改变步进电机的控制方案。
典型的单片机控制步进电机系统原理图,如图1-3所示。
图1-3用单片机控制步进电机原理图
图1-3与图1-2相比,主要区别在于用单片机代替了步进控制器。
因此,单片机的主要作用就是把并行二进制码转换成串行脉冲序列,并实现方向控制。
当步进电机脉冲输入线上得到一个脉冲,它便沿着方向控制线信号所确定的方向走一步。
只要负载在步进电机允许的范围内,那么,每个脉冲将使电机转动一个固定的步距角度。
根据歨距角的大小及实际走的步数,只要知道初始位置,便可知道步进电机的最终位置。
1.4步进电机工作原理
步进电机作为执行元件的一个显著特点是速度启停能力,若符合不超过步进电机所提供的动态转矩值,就能迅速使步进电机启动或停止,一般步进电机的步进速度为100~1000步/秒,如果步进电机是以逐渐加速到最大值然后逐渐减速到零的方式工作,其速度可增加到2-8倍,而不失步。
在实际应用中,在大多数时候需要步进电机及负载的机械惯性以最优化的曲线升频和降频,即步进电机启动时,以低于相应频率Fe的速度运行,然后慢慢加速到一定速度后,就以此恒速运行,当快到终点时慢慢减速至Fe以下,直至停机并走完一定的步数。
这样步进电机就可以很快的走完全程且不失步。
失步和过冲现象分别出现在步进电机启动和停止的时候。
一般情况下,系统的极限启动频率比较低,而要求的运行速度往往比较高。
如果系统以要求的运行速度直接启动,因为该速度已超过极限启动频率而不能正常启动,轻则可能发生丢步,重则根本不能启动,产生堵转。
系统运行起来以后,如果达到终点时立即停止发送脉冲串,令其立即停止,则由于系统惯性作用,电机转子会转过平衡位置,如果负载的惯性很大,会使步进电机转子转到接近终点平衡位置的下一个平衡位置,并在该位置停下。
实验表明,图1-4所示的指数曲线是步进电机最合理的升频曲线,最符合电机和负载的惯性规律。
且步进电机在启动时,由于其静态惯性大,需以较小的加速升频,当电机转动越来越快时,其运动惯性逐渐增大,可以较大的加速度升频。
如果我们简单的将其设计成直线,就不能使步进电机在最短的时间内升到最高的频率,且保证力矩最大。
同理降频时应为反指数曲线。
为实现步进电机的升降频,在系统设计中,一般采用硬件设计和软件设计,硬件使用积分电路和微分电路实现,其元件参数一经选定,曲线形状就固定不变,因为每个电机及其负载的机械特性不同,所以它不能最好地与所有的电机适配。
而且随着系统使用的时间越来越长,元器件会发生变值,造成电机升降频存在阻尼。
为克服硬件设计中这些不能灵活变动和元器件变值的特点,我们采用程序来实现升降频。
软件控制与硬件控制相比来说,具有运行可靠,改动方便的特点,而且可以降低成本。
针对不同电机的机械特性,我们专门设计了一个数据区,这个数据区中的数据即确定了指数曲线的形状,我们改变电机时,只要根据电机的特性改变数据区的一些数据,即可使曲线很好的与电机适配。
图1-4步进电机升降频曲线
第2章步进电机硬件设计
2.1控制方案的确定
本文采用目前国内比较常用的单片机及其外围芯片对整个回路进行控制,单片机选用51系列的8031芯片,程序存储器选用EPROM2764芯片,数据存储器选用6264芯片,8255芯片用于键盘口扩展,地址锁存器为74LS373,选用5个74LS164和5个8段数码管用于显示。
2.2外围芯片的介绍
2.2.1CPU选择
8031是主机板的核心,接收各部分信息并向各部发出命令,控制电机运行的各种工作状态。
一.8031有4个全双工通信的串行口,在本系统用作显示器,此时串行口工作在同步移位寄存器工作方式:
其中RXD串行输入显示数据,TXD输出同步移位时钟,数据存放在发送寄存器SBUF中。
串行口的工作状态存放在控制寄存器SCON中。
SM0
SM1
SM2
REN
TB8
RB8
TI
RI
RI:
接受中断标志
TI:
发送中断标志
SM0,SM1:
工作方式控制
本系统方式字为00H
二.8031有两个定时/计数器,本系统选用T0作为定时器使用。
T0的模式存放在模式控制寄存器TMOD中(T0作为16位定时器,为模式1)
GATE
C/T
M1
M0
GATE
C/T
M1
MO
M1,M0:
操作模式控制位
C/T:
定时器/计数器方式选择位
GATE:
门控位
TMOD不能位寻址,只能用字节设置定时器工作模式,低半字节设定T0,高半字节设定T1。
本系统控制字为01H
三.数据总路线(DB):
宽度为8位,数据由P0口提供
四.地址总线(AB):
宽度为16位,本系统用13位地址访问2764或6264,P0口经地址存储器提供低8位(与数据分时输出),P2口直接提供高5位。
五.控制总线(CB):
由P3口第二功能状态和RESET,EAPSEN、ALE控制线组成。
在本系统中P3口作为专门功能口使用。
P3.0——RXD(串行输入口或输出)
P3.1——TXD(串行输出口)
P3.2——INT0(外部中断0输入)
P3.3——INT1(外部中断1输入)
P3.6——WR(外部数据存储器写选通)
P3.7——RD(外部数据存储器读选通)
WR、RD与6264RAM的WE、OE相连控制6264的读、写允许,另外与8255芯片相应的WR、RD引脚连结。
控制外围芯片的读写。
RESET:
复位信号。
分别与8031的外围芯片的RESET引脚相接,可同时使单片机及其它芯片复位。
ALE:
允许地址锁存,要访问外部存贮器,ALE为地址锁存器芯片的输出控制信号。
EA:
EA=0时访问外部程序存贮器,由于8031中无ROM,将EA接地。
PSEN:
外部ROM的读选用信号,与外部的EPROM2764的使能论相连;PSEN=0时选中2764芯片,PSEN=1时选中RAM。
六.用户线P1口:
P1口与步进电机相连,为电机输入控制脉冲,以控制步进电机。
P1.0~P1.2口分别接步进电机的A、B、C、三相。
2.2.2地址锁存器
8031在系统扩展时,如程序存贮器扩展,8031的P0口线作用ROM、RAM的地址线低8位,同时P0口还担当数据传送任务,这样8031的地址和数据采用同一引脚分时输出,就要借助地址锁存器。
74LS373可作为地址锁存器,它是带三态缓冲输出的锁存器。
一、74LS373的引脚功能
表2-174LS373引脚功能
引脚名称
功能
D0~D7
数据输入
Q7~Q0
地址输出
OE
使能端
LE
输出控制
二、74LS373功能表
表2-274LS373功能表
输出控制
使能
数据
输出
LE
OE
D7~D0
Q7~Q0
1
0
1
1
1
0
0
0
0
0
X
Q0
X
1
X
高阻
ALE作为低8位地址锁存控制信号锁存器的输出端连到地址总线上去。
ALE与LE相连,在ALE下降沿将地址锁存。
2.2.3I/O扩展
8031对步进电机的控制是需要借助面板上的一些功能键即通过几个I/O接口把功能键与8031相连接键的状态输入到CPU中,CPU则根据功能键的状态输出与之相应的脉冲到步进电机。
8031供用户使用的I/O容量不够,需扩展与功能键相应的I/O口线,8255是可编程的外围接口芯片,它的功能是作为一个通用的I/O元件,在功能键与CPU之间提供了一个输入、输出通道。
本文中只使用8255的PA口用来扩展键盘,其入口地址为4000H。
一、8255芯片引脚功能:
表2-38255芯片引脚功能
引脚名称
功能
D0~D7
数据总线(双向)
RESET
复位输入
CS
片选
RD
读信号
WR
写信号
A0~A1
口地址选择
PA0~PA7
A口
PB0~PB7
B口
PC0~PC7
C口
二、8255芯片的操作方式:
1.读/写控制逻辑操作选择:
由单片机输出的地址线A、A0控制信号CLR、RD、CS,来选择口的操作状态,其中A0、A1由P0口的低位锁存器与之相连,WR、RD信号由8031的WR、RD信号控制,片选信号CS的引脚与译码器的Y3相连以控制片子的选通。
2.工作方式选择:
本系统选用8255的工作方式0,即基本输入/输出方式,这种方式不需要任何选通信号,A口、B口及C口的两个4位口中任何一个都可被设定为输入或输出口,作为输出口时,输出数据被锁存,作为输入口时,输入数据不锁存。
3.方式选择控制字:
本系统设置控制字为:
92H(10010010)
4.键盘连接:
本系统用PA口与控制键连接,其连接如下表:
表2-4PA口与控制键连接
PA.0
PA.1
PA.2
PA.3
PA.4
K1
K2
K3
K4
K5
正传启动
反转启动
停止
升频
降频
2.2.4显示接口
根据系统功能要求,要配置一组显示器及人机通道,来完成应用系统向人报告运行状态及结果,操作人员通过显示器就可读出电机运行的频率。
显示器由5个发光的LED(发光二极管显示器)组成,均采用共阳极接法。
1.显示器的功能
LED显示十进制数,它们分别有8段组成,其中一段有一个或几个发光二级管组成,当有逻辑“0”时,该段发光。
第一个LED显示器显示1时电机正传,显示0时电机反转。
2.显示方法选择:
本系统采用静态显示,其阳极连在一起接+5V,LED的段选线与一个8位并行接口芯片74LS164相连。
2.2.5数据存储器扩展
8031中有256B的RAM,可供用户的只有128B,容量太小不能满足要求,根据系统的功能要求,需在片外扩展一片8K×8的RAM,静态的RAM扩展电路简单,且RAM中数据通过有源电路来保持,所以选用静态RAM6264芯片。
一、6264的性能指标:
6264是静态随机存贮器芯片,容量为8192×8,采用COMS工艺制成,典型存取时间为200ns,工作温度为-40℃~85℃。
二、6264芯片的引脚功能
表2-56264芯片的引脚功能
引脚名称
功能
A0~A12
地址输入
CS1
片选1
CS2
片选2
WE
写允许
OE
读允许
D0~D7
数据输出输入
NC
不接
三、6264的操作方式
表2-66264的操作方式
引脚
操作方式
CS1
(20)
CS2
(26)
OE
(22)
WE
(27)
D0~D7
(11~13)
(15~19)
闲置或数据
1
——
——
——
高阻
保持(掉电)
——
0
——
——
高阻
输出禁止
0
1
1
1
高阻
读
0
1
0
1
输出
看
0
1
1
0
输出
写
0
1
0
0
输出
2.2.6程序存储器扩展
在8031内,无程序存贮器,故要在片外扩展程序存贮器,以存贮监控程序,目前用EPROM作为单片外部存贮器为常用的扩展方法。
根据控制系统的功能要求需扩展存贮器空间为8KB的EPROM,因为74LS139占用最高3位地址线,所以8031只能提供13根地址线。
因此,选用8K的EPROM2764低8位地址由P0口通过锁存器提供,高5位由P2口提供,ROM可与RAM共用地址总线和数据总线。
一、2764的性能指标:
型号LD2764,容量为8192B×8,工作速度为250ns,电源5V±5%,工作温度0~40℃~55℃
二、2764引脚的功能
表2-72764引脚的功能
引脚名称
功能
A0~A12
地址线
CE
芯片允许
OE
输出允许
D0~D7
数据线
PGM
编程
NC
未接
三、EPROM2764的工作方式选择:
表2-8EPROM2764的工作方式选择
引脚
模式
CE
(20)
OE
(22)
PGN
(27)
VCC
(8)
Q0~Q7
(11~13)
(15~19)
读
VIL
VIL
+5V
+5V
输出
闲置
VIH
——
+5V
+5V
高阻
编程
VIL
——
+21V
+5V
输入
编程检验
VIL
VIL
+21V
+5V
输出
编程禁止
VIH
——
+21V
+5V
高阻
四、EPROM的扩展电路
EPROM2764使用单独的控制信号和指令,控制信号为8031引脚PSEN的输出,只有PSEN为低电平时,2764才能输出它与OE相连读取数据用MOVC查表指令,本设计中片选信号CE与74LS139的Y0相连,只有CE=0时,才选中读芯片。
2.3单片机控制步进电机硬件原理图
(见附录)
第3章软件设计
3.1主程序流程
本文以110BF步进电机拖动一中型负载为例,首先根据步进电机的特性设计一个数据区,再编写程序对此数据的的数据进行调试。
设计的最小启动频率为100HZ,在升频过程中每按一次升频键,步进电机升300HZ后匀速运行,这样易于发现因数据区的数据不合理而导致电机出现失步的状况。
降频阶段可采用升频区的数据进行反指数降频。
图3-1步进电机运行总控制流程图
3.2升降频子程序流程
图3-2步进电机升频控制流程图
3.3走一步子程序流程
图3-3走一步子程序流程图
3.4系统运行程序分析
入口:
升频步长、定时常数数据区的首地址分别为1300H,1400H;
降频步长、定时常数数据区的首地址分别为1500H,1400H;
阶梯序数寄存器R0。
根据以上原则,设定系统晶振为6MHZ,用8031T0口定时,以100HZ为例,说明定时常数和台阶步长(BC)的计算方法:
两步之间定时时间t0(μs)为:
t0=
=
=0.01(s)=10000(μs)
定时常数(十六进制)为:
t0(H)=10000(H)-[t0/(t0*C)](H)
=10000(H)-[
](H)=0D8F0(H)
晶振周期C为12(一个机器周期为12个晶振周期)
100HZ持续时间T=0.24s,计算其台阶步长:
BC=
=
=24=18(H)
以下为我们实验所得的系统晶振为6MHZ,用8031T0口定时,型号为110BF的反应式步进电机100HZ-2000HZ的升降频数据区内容:
1300HDB00H,18H,00H,01CH,00H,20H,00H,24H,
00H,28H,00H,02CH,00H,30H,00H,34H,
00H,38H,00H,03CH
1400HDB0D8H,0F0H,0AEH,08H,0F5H,10H,0F8H,0F8H,
0FAH,0ECH,0FCH,18H,0FCH,0E0H,0FDH,62H,
0FDH,0C5H,0FEH,0CH
1500HDB00H,05H,00H,07H,00H,09H,00H,0CH,
00H,10H,00H,14H,00H,18H,00H,1CH,
00H,20H,00H,24H
以上数据区的内容可以根据用户的需要而改变以达到最优效果,这种设计方法在实际应用中效果良好,操作方便。
表3-1三相六拍步进电机的控制时序
方式
步序
P1.2(C相)
P1.1(B相)
P1.0(A相)
通电绕组
控制字
三
相
六
拍
方
式
1步
0
0
1
A
01H
2步
0
1
1
AB相
03H
3步
0
1
0
B相
02H
4步
1
1
0
BC相
06H
5步
1
0
0
C相
04H
6步
1
0
1
CA相
05H
110BF电机的参数如下:
表3-2110BF电机参数
相数
步距角(Deg)
电压(V)
电流(A)
保持转矩(N.m)
空载启动频率(HZ)
运行频率(HZ)
3
0.75|1.5
80~300
6
7.84
1400
15000
系统程序如下:
StartEnd bit 01H ;起动及停止标志
Minford EQU100 ;起始转动速度
FQRDATA23H;动态频率计数
DISPBUF DATA58H;显示缓冲区
ORG 0000H
AJMP MAIN
ORG000BH
ZDCX:
MOV6AH,#0FFH
MOVTH0,R6
MOVTL0,R7
CLRET0
RETI
ORG0070H
MAIN:
MOVSP,#5FH
MOVP1,#0FFH
MOV FQR,#MinFQR;起始转动频率送入计数器
CLR StartEnd ;停转状态
MOVTMOD,#01H;定时
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 步进 电机 毕业设计