薛君妍
摘要:文章研究了基于8051单片机的步进电机控制系统的设计。通过单片机产生脉冲信号,通过环形分配电路和功率放大电路驱动步进电机;指令通过矩阵键盘输入,步进电机的转速通过数码管显示;完成单片机控制程序编写和搭建控制电路后,可以方便地实现步进电机的运动。
关键词:单片机;步进电机;控制系统;脉冲信号;环形分配电路;矩阵键盘输入 文献标识码:A
中图分类号:TM383 文章编号:1009-2374(2016)20-0017-02 DOI:10.13535/j.cnki.11-4406/n.2016.20.008
1 概述
步进电机是一种将数字输入脉冲信号转变为旋转运动或直线运动的电磁驱动元件。每输入一个脉冲信号,步进电机的电机轴转过一定的角度。角位移增量与输入脉冲数量的乘积即可得到步进电机的转速。相比于一般的直流电机和交流电机,步进电机有很多优势,比如步进电机可以快速启动、具有较高的定位精度和较小的转动惯量、反向制动、位移和输入的脉冲数量一致、较小的定位误差和短期积累等等,所以步进电机是控制系统中比较常用的元件。为了更深入地理解步进电机的动作特点,熟悉控制系统的搭建过程,本文设计了基于8051单片机的步进电机控制系统。在通过应用MCU建立的控制电路和电机控制程序的方式下,可以方便的实现步进电机的控制。
2 控制系统的硬件设计
为了面向于机械设备的应用,控制系统的搭建是基于比较常见的三相步进电机,系统控制框图如图1所示。这个系统主要由硬件电路和控制程序组成。硬件电路包括电源电路和控制电路。电源电路提供控制电压,控制电压需要应用到控制系统的每一个元件中,同时作为步进电机的驱动电压。控制电路主要包括微控制器电路、环形电路、功率放大电路和显示电路、键盘界面。MCU和8279单片机通信;将控制信息发送到环形电路,此信息用于控制步进电机的速度和方向。
2.1 电源电路的设计
电源电路的设计如图2所示。这个电路主要包括变压器、整流器电桥、电容、三端稳压集成块等。变压器的输入端时是220V的交流电。直流电通过整流滤波之后输送到三端稳压集成模块7812和7805的输入端。在三端稳压集成模块的输出端,我们可以得到分别用于步进电机和MCU的12V和5V的直流电压。
2.2 MCU电路的设计
美国爱特梅尔公司的AT89S52微处理器内部包括了高性能的CMOS8位微处理器。该单片机由于其众多优势而广泛应用于工业生产,主要体现在低功耗、良好的兼容性、系统稳定性、价格低廉。为了使单片机可以正常工作,同时设计了晶体电路和重置电路。
2.3 环形分配电路的设计
步进电机通电之后,各相绕组在一定的频率下运转。所以控制脉冲要根据电流定律分配到每一相绕组。该电路称为脉冲分配器,也称为电路分配器,用以完成脉冲分配功能。环形分配器由步进电机控制绕组数量和工作方式组成。电路原理图如图3所示。在电路原理图中Q1、Q2、Q3是三相A、B、C是触发器,分别通过三个响应的OR电路控制,组成三相六环分配器。当相应触发器处于高电平“1”时,A、B、C为电机输出端。低电平为“0”时,称为电机切断绕组。
环形分配器的工作过程如下:预置边脉冲在CP脉冲尚未到达时,将Q1置位,Q2和Q3复位。在这一点,预置状态的环形分配器设置为100,这是初始状态。由于A端口处于置位状态,当在CP端输入正脉冲时,B和C处于复位状态。根据逻辑规则,D触发器只触发Q2,A、C端保持初始状态不变,B端有“0”强制变为“1”。环路分配算符的状态由100变为110。环路分配算符变为另一种状态当CP端输入二次脉冲的时候,只触发Q1,将A端口强制由“1”变为“0”,这也可以称为010形式。类似地,当CP端接入3、4、5、6次脉冲时,环形分配器的状态连续在011、001、101和001之间转换,这是一个循环。当7次脉冲接入的时候开始第二次循环。工作过程的电路设计如图4所示。从图中可以看出环形分配电路主要包括2片74 LS74、1片74LS32、2片74LS08和外围独立元件。
2.4 功率放大电路的设计
本文研究的是三相步进电机。为每一相都设计了功率放大电路。在该电路中L1是电机绕组,T401是功率放大器转换元件,e和c是与微控制器输出脉冲相连的控制位,a和b分别对应ADD和GND。电阻R401可以减少功率放大电路的时间常数,这样可以减少电流增大和减小消耗在电路中的转换时间。电容C401是加速电容器,所以在绕组的导通电压瞬时值都落在绕组的电流速度实现加速功能。二极管D401和电阻R402在绕组相反的一端,平行布置。当VMOS管断电瞬间,它们也能够完成提供感应电磁力消耗路径的功能。
2.5 显示电路和键盘交互界面的设计
8279是可编程键盘同时界面显示芯片具备键盘处理和自动显示的功能,广泛应用于MCU系统。在本文中8279芯片用于和MCU的通信,使用矩阵键盘输入指令,它将步进电机的转速显示在四个数码管上。
3 MCU的控制程序的预置
为了减少单片机的存储空间,同时提高执行速度,我们采用集成语言编写单片机的控制程序。控制程序主要包括主程序、键盘扫描和显示子程序、十进制到二进制转换子程序、脉冲生成子程序和延时子程序。键盘扫描和显示子程序主要用于驱动8279芯片键盘扫描和控制数码管显示。十进制到二进制转换子程序用于显示步进电机速度替代后的相应值。脉冲生成子程序可以生成步进电机所需的指令。延时程序用于延迟一定的时间。控制MCU的主程序显示如下:
Program Startup
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:MOV R0,#00H;
4K Space reset
MOV R1,#7EH
M1:MOV @R0,#00H
INC R0
DJNZ R1,M1
MOV R0,#20H
MOV SP,#32H
CLR EA;IRQ AND FIQ
MOV A,#0D1H
MOV DPTR,#7FFFH
MOVX@DPTR,A
WAIT:MOVX A,@DPTR;Read Status
JB ACC.7,WAIT
MOV A,#00H;8character display,left input
MOVX@DPTR,A
MOV A,#34H
LCALL KEY
LCALL DTOB;
Display the subroutine
SETB EA;IRQ and FIQ
SETB EXO
LCALL PUL
END
4 结语
本文搭建了基于MCU的单片机步进电机控制系统,建立了硬件电路,包括电源电路、微处理器电路、子回路、变量控制电路、功率放大电路、键盘和界面显示电路,最后设计了MCU的预置程序。测试结果表明,该系统可以方便地实现步进电机运动的控制。
参考文献
[1] M.Shi,X.Wang.The stepper motor's drive design and technological improvement[J].Science&Technology Information,2012,(13).
[2] 张占立,康春花,郭士军,符克理.基于单片机的步进电机控制系统[J].电机与控制应用,2011,(3).
[3] Y.Wu.Application of step motor control system in slab continuous casting marking machine[J].Metallurgical Power,2012,(2).
[4] L.Xie.The click on measurement system which is measure therotational speed is based on AT89C51[J].Guangxi Journal of LightIndustry,2012,(2).
[5] H.Chen.The basic structure and working principle of MCU-AT89S52 the function of MCU,clock system,timing and reset[J].Practical Electronics,2006,(2).
[6] Z.Hang.The Circuit Design of Rf Power Amplifier
[D].The Publishing Company of Xi'an Electronic and Engineering University,2009.