基于单片机的电动机正反转控制设计.docx
《基于单片机的电动机正反转控制设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的电动机正反转控制设计.docx(22页珍藏版)》请在冰豆网上搜索。
基于单片机的电动机正反转控制设计
基于单片机的电动机正反转控制设计
学生:
xxx(指导教师:
xxx)
(xxxxxx电气信息工程学院)
摘要:
基于单片机的基本理论,本文设计了一种步进电机控制系统。
该系统通过软硬件的设计调试,实现步进电机能根据设定的参数进行开关加减速控制,使控制系统以最短的时间到达控制终点,而又不发生失步的现象;同时它能准确地控制步进电机的正反转,启动和停止。
硬件是以AT89C51单片机为核心的控制电路,主要包括:
开关输入电路、液晶显示电路、步进电机的驱动电路等。
软件部分采用C语言编程,主要包括液晶显示程序、步进电机的正反转即快慢程序等。
通过仿真验证了本文设计系统的实用性能。
关键词:
步进电机控制系统;调速;单片机
ThedesignofmotorcontrolsystembasedonSCM
Student:
ZhouTianhang(Supervisor:
LiuYunxia)
ElectricalandInformationEngineeringDepartmentofHuainanNormalUniversity
Abstract:
ThebasictheorybasedonSCM.thispaperdesignsakindofsteppingmotorcontrolsystem.Thesystemgoesthroughthedesignofsoftwareandhardware.Realizethesteppermotorcanswitchtheaccelerationanddecelerationcontrolaccordingtothegivenparameterswhichmakesthecontrolsystemintheshortesttimetofinishandnotoutofstep.Atthesametime,itcancontrolthereversingthesteppermotoraccurately,startandstop.ThehardwarecontrolcircuitAT89C51microcontrollerasthecoremainly.Include:
switchinputcircuit,LCDdisplayingcircuit,steppermotordrivecircuit.ThesoftwareisprogrammedbyClanguage.Include:
LCDdisplayprogramandthesteppermotorspeedprogram.Thepracticalperformanceofthedesignofthesystemisvalidatedbysimulation.
Keywords:
Steppingmotorcontrolsystem;speedcontrol;Single-chipComputer
1绪论
1.1设计研究的目的和意义
由于步进电机不需要位置传感器或速度传感器就可以实现定位,即使在开环状态下它的控制效果也是令人非常满意的,这有利于装置或设备的小型化和低成本,因此步进电机在计算机外围设备、数控机床和自动化生产线等领域中都得到了广泛的应用。
对于一个步进电机控制系统而言,总希望它能以最短的时间到达控制终点。
因此要求步进电机的速度尽可能地快,但如果速度太快,则可能发生失步。
此外,一般步进电机对空载最高启动频率都是有所限制的。
当步进电机带负载时,它的启动频率要低于最高空载启动频率。
根据步进电机的矩频特性可知,启动频率越高,启动转矩越小,带负载的能力越差。
当步进电机启动后,进入稳态时的工作频率又远大于启动频率。
由此可见,一个静止的步进电机不可能一下子稳定到较高的工作频率,必须在启动时有一个加速的过程。
从高速运行到停止也应该有一个减速的过程,防止步进电机因为系统惯性的原因,而发生冲过终点的现象。
为此本文以单片机作为控制核心,实现步进电机的自动加减速控制,使系统以最短的时间到达控制终点,而又不发生失步的现象。
因为步进电机的转速正比于控制脉冲的频率,所以调节步进电机的转速,实质上是调节单片机输出的脉冲频率[1-3]。
由于步进电机的运动特性受电压波动和负载变化的影响小,方向和转角控制简单,并且步进电机能直接接收数字量的控制,非常适合采用微机进行控制。
步进电机工作时,失步或者过冲都会直接影响其控制精度。
研究步进电机的加减速控制,可以提高步进电机的响应速度、平稳性和定位精度等性能,从而决定了步进电机控制系统的综合性能。
1.2步进电机的发展状况
步进电机的机理是电磁铁作用,其原始模型起源于1830年至1860年间。
1870年前后开始以控制为目的的尝试,应用于氩弧灯的电极输送机构中。
20世纪60年代后期,在步进电机本体方面随着永磁材料的发展,各种实用性步进电机应运而生,而半导体技术的发展则推进了步进电机在众多领域的应用。
我国步进电机的研究及制造起始于本世纪50年代后期。
从50年代后期到60年代后期,主要是高等院校和科研机构为研究一些装置而使用从而开发少量产品。
70年代初期,步进电机的生产和研究有所突破。
70年代中期至80年年代中期为成品发展阶段,新品种高性能电机陆续被开发。
自80年代中期以来,由于对步进电机精确模型做了大量研究工作,各种混合式步进电机及驱动器作为产品广泛利用[4]。
1.3论文的主要容
1.3.1步进电机的工作原理
通过查阅文献对步进电机的各种运行方式进行研究,深入了解各种运行方式的特点和对步进电机控制性能的影响。
1.3.2步进电机控制的设计
考虑到电动机有各种转动方式与转速大小的控制,设计符合逻辑的开关控制方式。
1.3.3步进电机系统的硬件设计
该部分主要介绍控制步进电机系统各个部分所使用的各种硬件,并且相对所选用的硬件设计其相对应的数学逻辑关系。
1.3.4步进电机控制系统的软件设计
根据步进电机的原理和控制特点,对步进电机控制系统的软件进行分析和设计。
1.3.5程序的调试及修改
用Keil软件进行编程和调试,并且在Proteus环境下进行系统仿真。
本设计第一章介绍了系统的设计目的、意义及发展,第二章是系统的硬件设计,第三章是系统的软件设计,第四章是设计系统的仿真分析,第五章是结束语。
2系统设计的相关理论
2.1步进电机的介绍
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。
当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的[5]。
2.2液晶显示器的介绍
2.2.1液晶显示器的概述
液晶显示器,或称LCD(LiquidCrystalDisplay),其本事是不发光的,是通过借助外界的光线照射液晶材料而实现显示的被动显示器件。
其分类方法有很多种如:
按电光效应分类,按显示容分类,按采光方式分类。
2.2.2液晶显示器的特点
液晶显示材料的优点:
无闪烁、驱动电压低、成本低廉、可靠性高、彩色显示、显示信息量大、生产过程自动化、功耗微小、对人体无危害、可以制成各种规格和类型的液晶显示器等。
用液晶材料制成的计算机终端和电视可以大幅度减小体积等。
液晶显示技术对显示显像产品结构产生了深刻影响,促进了微电子技术和光电信息技术的发展[6]。
2.2.3液晶显示器的发展
1850年 普鲁士医生鲁道夫菲尔绍(RudolfVirchow)等人就发现神经纤维的萃取物中含有一种不寻常的物质。
1877年 德国物理学家奥托·雷曼(OttoLehmann)运用偏光显微镜首次观察到了液晶化的现象。
1883年3月14日 植物生理学家斐德烈·莱尼泽(FriedrichReinitzer)观察到胆固醇苯甲酸酯在热熔时有两个熔点。
1888年 莱尼泽反复确定他的发现后,向德国物理学家雷曼请教。
当时雷曼建造了一座具有加热功能的显微镜去探讨液晶降温结晶之过程,而从那时开始,雷曼的精力完全集中在该类物质。
1888年 出版《分子物理学》,这是对这段时间他在材料物理领域知识的总结,特别值得一提的是,他在书中首次提出了显微镜学研究方法,通过对晶体显微镜和用它所作的观察。
20世纪 化学家伏兰德(D.Vorlander)的努力由聚集经验使他能预测哪一类的化合物最可能呈现液晶特性,然后合成取得该等化合物质,于是雷曼关于液晶的理论被证明。
1922年 法国人弗里德(G.Friedel)仔细分析当时已知的液晶,把他们分为三类:
向列型(nematic)、层列型(smectic)、胆固醇(cholesteric)。
1930-1960年 在G.Freidel之后,液晶研究暂时进入低谷,也有人说,1930-1960年期间是液晶研究的空白期。
究其原因,大概是由于当时没有发现液晶的实际应用。
但是,在此期间,半导体电子工业却获得了长足的发展。
为使液晶能在显示器中的应用,透明电极的图形化以及液晶与半导体电路一体化的微细加工技术必不可缺。
随着半导体工业的进步,这些技术已趋向成熟。
20世纪40年代 开发出矽半导体,利用传导电子的 n 型半导体和传导电洞的 p 型半导体构成 pn 介面(pnjunction),发明了二极管和晶体管。
在此之前,在电路中为实现从交流到直流的整流功能,要采用二极管,而要实现放大功能,要采用电子管。
这些大而笨重的元件完全可以由半导体二极管和晶体管代替,不需要向真空中发射电子,仅在固体特别是极薄的膜层中,即可实现整流、放大功能,从而使电子回路实现了小型化。
接着,藉由光加工技术实现了包括二极管、晶体管在的电子回路图形的薄膜化、超微细化。
这种技术简称为微影(photolithography)。
20世纪60年代,随着半导体集成电路(integratedcircuit)技术的发展,电子设备实现了进一步的小型化。
上述技术的进步,对于在液晶显示装置(display)中的应用是必不可少的,随着材料科学和材料加工技术的进一步发展,以及新型显示模式和驱动技术的开发,液晶显示技术获得了快速发展。
20世纪60年代 随着半导体集成电路(integratedcircuit)技术的发展,电子设备实现了进一步的小型化。
1968年任职美国RCA公司的G.H.Heilmeier发表采用DS(dynamicscattering,动态散射)模式的液晶显示装置。
在此之后,美国企业最早开始了数字式液晶手表实用化的尝试[7]。
3基于AT89C51的步进电机转动方式的总体设计
3.1系统设计的原理及组成
3.1.1系统设计的工作原理
本设计使用4个开关分别控制步进电机的开启、关闭,步进电机的正反转和步进电机的转速。
1号开关控制其启动,当按下1号开关时,电动机开始转动;2号开关控制其转速快慢,没有按下开关是默认是慢速转动,当按下2号开关时电动机开始快速转动;3号开关控制电机正反转,没有按下开关时默认是正转,按下3号开关时电动机反向转动;4号开关控制使电动机停止转动。
所有的动作都会显示在LED的显示屏幕上。
分别是:
Reverseslow(正向慢转),Reversefast(正向快转),Positiveslow(反向慢转),Positivefast(反向快转)。
3.1.2系统的组成
本文设计了一种基于以AT89C51单片机控制为核心的电动机正反转控制系统,系统主要从硬件设计和软件设计两方面来进行设计与研究。
硬件部分主要从控制电路,输入电路及输出电路三方面进行设计,软件部分主要用C语言进行编程以实现设计要求。
系统的总体设计框图如图1所示。
图1系统设计框图
3.2系统的硬件设计
系统设计的硬件部分主要包括单片机控制模块、输入开关电路、步进电机及液晶显示器四大部分。
3.2.1单片机控制模块的设计
单片机控制模块即单片机最小系统:
单片机、复位、晶振、串行通信电路、电源。
3.2.1.1AT89C51单片机的介绍
控制系统的核心元件是单片机,本设计采用的单片机芯片是AT89C51,它是美国ATMEL公司生产的低电压,高性能CMOS8位微处理器,片含4k字节的可反复擦写的只读程序存储器(PEROM)和128字节的随机存取数据存储器(RAM),该器件采用ATMEL高密度、非易失性存储器技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
片置通用8位中央处理器(CPU)和Flash闪存存储单元,具有1000次擦写周期,三级加密程序存储器,32个可编程I/O口线,2个16位定时/计数器,6个中断源,可编程串行UART通道,低功耗空闲和掉电模式,全静态操作围是0Hz~24MHz,功能强大的AT89C51单片机是一种高效微控制器,可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域[8-10]。
AT89C51芯片总共有40个引脚,各引脚图如图2所示。
图2单片机引脚图
各管脚说明如下:
VCC:
供电电压。
GND:
接地。
P0口:
8位,漏极开路的双向I/O口。
P1口:
8位,准双向I/O口,具有部上拉电阻。
P2口:
8位,准双向I/O口,具有部上拉电阻。
P3口:
8位,准双向I/O口,具有部上拉电阻。
P3口的第二功能,如表1所示:
表1P3口引脚的第二功能
端口引脚
第二功能
P3.0
RXD
P3.1
TXD
P3.2
INT0
P3.3
INT1
P3.4
T0
P3.5
T1
P3.6
WR
P3.7
RD
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位引脚,高电平有效。
ALE/PROG:
低8位地址锁存允许信号端。
PSEN:
读外部程序存储器的选通信号端。
EA/VPP:
外部程序存储器访问允许控制端。
XTAL1:
片振荡器反相放大器和时钟发生器电路的输入端。
XTAL2:
片震荡器反相放大器的输出端[11-13]。
3.2.1.2晶振电路
晶振电路由两个22pF的电容和一个11.0592MHz的晶振组成。
电路图如图3所示,其中XTAL1和XTAL2分别为反向放大器的输入和输出。
图3晶振电路图
3.2.1.3复位电路
复位电路有两种复位方式,即手动复位和上电复位,采用的是高电平复位,由一个按键、一个10K的电阻、一个1K的电阻和一个10uF的电容组成。
电路图如图4所示。
图4复位电路图
3.2.1.4串行通信电路
串行通信电路由5个0.1uF电容和一个MAX232芯片组成,MAX232芯片采用的是美信公司生产的芯片,符合所有的RS-232C技术标准,只需要单一+5V电源供电,片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V-,功耗低,典型供电电流5mA,部集成2个RS-232C驱动器,高集成度,片外最低只需4个电容即可工作。
电路图如图5所示。
图5串行通信电路图
3.2.1.5电源电路
单片机采用的是5V电源,电源电路中有一个1K的电阻和一个发光二极管组成。
电路图如图6所示。
图6电源电路图
3.2.2SMC1602A的部结构及工作原理
SMC1602A主要是由日立公司的HD44780、HD44100(或兼容电路)和几个电阻、电容等组成。
HD44780是用低功耗COMS技术制造的大规模点阵LCD控制器,具有简单而功能较强的指令集,可实现字符移动、闪烁等功能,与微处理器相连能使LCD显示大小应为字母、数字和符号。
HD44780控制电路主要由DDRAM、CGROM、CGRAM、IR、DR、BF、AC等大规模集成电路组成。
DDRAM为数据显示RAM,用以存放要LCD显示的数据,能存储80个字符。
只要将标准的ASC2码放入到DDRAM,部控制线路就会自动将数据传送到显示器上,并显示出ASC2码对应的字符。
CGROM为字符生产器ROM,它存储了由8位字符码生成的192个5*7点阵字符和32种5*10点阵字符和32种5*10点阵字符。
HD447808位字符编码和字符的对应关系,即置字符集,如表2所示:
表2HD44780置字符集
低4位高4位
0000
0001
0010
0011
0100
0101
0110
0111
****0000
CGRA
0
P
\
p
****0001
(2)
!
1
A
Q
a
q
****0010
(3)
“
2
B
R
b
r
****0011
(4)
#
3
C
S
c
s
****0100
(5)
$
4
D
T
d
t
****0101
(6)
%
5
E
U
e
u
****0110
(7)
&
6
F
V
f
v
****0111
(8)
‘
7
G
W
g
w
****1000
(1)
(
8
H
X
h
x
****1001
)
9
I
Y
i
y
****1010
*
:
J
Z
j
z
****1011
+
;
K
[
k
(
****1100
<
L
l
****1101
-
=
M
]
m
)
****1110
.
>
N
n
****1111
(8)
/
?
O
_
o
CGRAM为字符生产器RAM,可供使用者储存特殊造型的造型码,CGRAM最多可存8个造型。
IR为指令寄存器,负责储存MCU要写给LCD的指令码,当RS及R/W引脚信号为0且E引脚信号由1变为0时,D0~D7引脚上的数据便会存入到IR寄存器中。
DR为数据储存及,负责存储微机要写到CGRAM或DDRAM的数据,或者存储MCU要从CGRAM或DDRAM读出的数据。
因此,可将DR视为一个数据缓冲区,当RS及R/W引脚信号为0且E引脚信号由1变为0时,读取数据;当RS引脚信号为1,R/W引脚信号为0且E引脚信号由1变为0时,存入数据。
BF为忙碌信号,当BF为1时,不接收微机送来的数据或指令;当BR为0时,接受外部数据或指令。
在写数据或指令到LCD之前,必须查看BF是否为0。
AC为地址计数器,负责计数写入/读出CGRAM或DDRAM的数据地址,AC依照MCU对LCD的设置值而自动修改它本身的容。
HD44100也是采用COMS技术制造的大规模LCD驱动IC,即可当行驱动,又可当列驱动用,由20*20bit二进制移位寄存器、20*20bit数据锁存器、20*20bit驱动器组成,主要用于LCD时分割驱动[14-16]。
液晶显示部分如图7所示:
图7液晶显示部分电路图
3.2.3输入电路的设计
该部分使用开关控制输入单片机P0口高低点位,单片机接收到来自P0口的高低点位时,从而按照输入的C程序执行电动机的动作。
与单片机引脚相接部分接上加入下拉电压电阻的形成高电位,开关的另一端接入地线。
所以未按下开关时,单片机引脚为高电位;当按下开关时,所接的引脚就会变为地电位。
1号开关控制其启动,当按下1号开关时,电动机开始转动;2号开关控制其转速快慢,没有按下开关是默认是慢速转动,当按下2号开关时电动机开始快速转动;3号开关控制电机正反转,没有按下开关时默认是正转,按下3号开关时电动机反向转动;4号开关控制使电动机停止转动。
所有的动作都会显示在LED的显示屏幕上。
开关输入信号电路如图8所示:
图8输入电路电路图
3.2.4发光二极管电路的设计
发光二极管报警电路由2个绿色和红色发光二极管组成。
绿色二极管阳极接在VCC上,阴极接在p0.0口,该接口处于高电位时(即开关1没有闭合时)灯为灭的,该口处于地电位时(即开关1闭合时)该灯变亮,灯亮时指示电动机正在运行;红色二极管阴极端接在地线上,阳极接在p0.3口,该接口处于高电位时(即开关1没有闭合时)灯为亮的,该口处于地电位时(即开关1闭合时)该灯变灭,灯亮时指示电动机停止运行[17-18]。
发光二极管指示电路图如图9所示。
图9发光二极管指示电路图
3.2.5系统硬件的总体电路图
根据对以上各硬件部分的分析,可以画出系统各部分之间的接口电路图,如图10所示。
图10系统各硬件接口电路图
3.3系统的软件设计
本设计采用的KeilC51软件进行系统的编程,KeilC51是当前使用最广泛的的基于80C51单片机核的软件开发平台之一,由德国KeilSoftware公司推出。
uVision2是KeilSoftware公司推出的51系列单片机开发工具,uVision2集成开发环境IDE是一个基于Windows的软件开发平台,集编辑、编译、仿真与一体。
支持汇编语言和C语言的程序设计。
一般来说,Keil51和uVision2指的是uVision2集成开发环境。
3.3.1系统主程序的设计
主程序设计主要是对系统各部分进行初始化,并设定好各部分开关触发信号和显示电路程序的设计,根据上述工作原理和硬件结构的分析可画出系统主程序工作流程图,如图11所示。
图11系统主程序流程图
3.3.2中断服务程序的设计
主程序实现的功能是:
当单片机引脚接收到来自输入p0.0口的低电压信号时程序开始运行,等待开关输入p0.1~p0.3口的电压信号改变正在运行的状态。
当P0.1或p0.2口输入的高低电压信号后,步进电机表现出相应的正反转与快速慢速,并且一直持续这一动作直至外接再次向单片机输入新的高低电压信号。
当p0.3口输入低电压时,步进电机就再次进入初始状态,该程序就是运行了一个循环。
图12中断服务程序工作流程图
4系统设计的仿真分析
通过对系统硬件和软件两方面的介绍,为了更好的验证系统设计的的功能,本设计采用Protues进行仿真。
该软件是英国Labcenterelectronics公司出版的EDA工具软件。
从1989年问世至今已经有20年的历史,在全球得到广泛使用。
Proteus软件除具有和其他EDA工具软件一样的原理编辑、印制电路板制作外,还具有交互的仿真功能。
它不仅是模拟电路、数字电路、模数混合电路的设计与仿真平台。
更具目前世界上最先进、最完整的的多种型号未处理器系统的设计与仿真平台,真正实现了在计算机中完成电路原理图设计、电路分析与仿真、微处理器设计与仿真、系统测试与功能验证到形成印制电路板的完整电子设计、研发过程。
Proteus软件由ISIS(Intelligentschematicinputsystem)和ARES(Aduancedroutingandeditingsoftware)两个软件构成,其中ISIS是一款智能电路原理图输入系统软件,可作为电子系统仿真平台;ARES是一款高级布线编辑软件,用于印制电路板(PCB)[21]。
开关都全未闭合时,即处于该系统的最初始状态,如图红色二极管发光,绿色二极管不发光,显示该电动机没有旋转。
初始仿真电路图如图13所示。
图13初始状态仿真电路图
当按下开关1后,p0.0口接低电平,红色发光二级管熄灭,绿色二极管发光,电动机开