单片机控制步进电机论文 (1)_第1页
单片机控制步进电机论文 (1)_第2页
单片机控制步进电机论文 (1)_第3页
单片机控制步进电机论文 (1)_第4页
单片机控制步进电机论文 (1)_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 目录前言.1第一章 系统方案论证.4 1.1系统基本功能.4 1.2设计方案介绍.4 1.3系统设计.5第二章 硬件设计.62.1 单元模块设计.6 2.1.1 单片机STC89C52介绍.6 2.1.2 步进电动机工作原理.8 2.1.3 驱动器.12 2.1.4 光电开关.132.1.5显示电路与键盘的选择 .14 2.2 硬件设计电路图.18第三章 控制系统的软件设计.19 3.1程序设计流程图.19 3.2 汇编语言 .20第四章 总结.25第五章 参考文献.26 摘要单片机即单片微型计算机,是将中央处理器(CPU)、数据存储器、程序存储器、并行输入/输出接口、串行输入/输出接口、定

2、时/计数器、中断控制、系统时钟以及系统总线等电路集成在一个芯片上的微处理器,是一种典型的嵌入式控制器。它体积小,成本低,功能强,广泛应用与智能产业和工业自动化上等。本文主要研究AT89C51单片机的步进电机的驱动器控制,驱动系统采用74LS04和达林顿管,使步进机可以在智能化程序控制下完成正转、反转、转数的设定。文中在单片机与驱动器之间增加一级光电隔离可使步进电机具有更高性能,同时把数字电路与驱动电路隔离开避免了步进电机运行时产生的冲击电压和电流干扰单片机。要想达到单片机的高速启停、高精度步进运行从而实现工业生产的控制,采用单片机控制系统可将问题简化,不仅能简化线路、降低成本,而且能大大提高其

3、可靠性。关键词;AT89C51,步进电机,单片机,智能化控制前言 步进电机最早是在1920年由英国人所开发。1950年后期晶体管的发明也逐渐应用在步进电机上,这对于数字化的控制变得更为容易。以后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解性能、高响应性、信赖性等灵活控制性高的机械系统中。在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。 步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。步进电机可以直接用数字信号驱动,使用非常方便。一般电动机都是连续转动

4、的,而步进电动机则有定位和运转两种基本状态,当有脉冲输入时步进电动机一步一步地转动,每给它一个脉冲信号,它就转过一定的角度。步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态。因此非常适合于单片机控制。步进电机还具有快速启动、精确步进和定位等特点,因而在数控机床,绘图仪,打印机以及光学仪器中得到广泛的应用。步进电动机已成为除直流电动机和交流电动机以外的第三类电动机。传统电动机作为机电能量转换装置,在人类的生

5、产和生活进入电气化过程中起着关键的作用。步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。步进电机作为执行元件,是机电一体化的关键产品之一, 广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。 步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。步进电机可以直接用数字信号驱动,使用非常方便。一般电动机都是连续转动的,而步进电动机则有定位和运转两种基本状态,当有脉冲输入时步进电动机一步一步地转动,每给它一

6、个脉冲信号,它就转过一定的角度。步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态。因此非常适合于单片机控制。步进电机还具有快速启动、精确步进和定位等特点,因而在数控机床,绘图仪,打印机以及光学仪器中得到广泛的应用。步进电动机已成为除直流电动机和交流电动机以外的第三类电动机。传统电动机作为机电能量转换装置,在人类的生产和生活进入电气化过程中起着关键的作用。步进电机可以作为一种控制用的特种电机,利用其没有积累

7、误差的特点,广泛应用于各种开环控制。第一章 系统方案论证1.1系统基本功能设计的步进机控制器要求能从键盘上输入步进电机转数,控制步进电机正反转及启停,并显示转数。具体要求如下:(1)键盘设计09:数字键*:正反转数设定完后,按“*”启动步进电动机#:清除设定为正转及转数为00A: 设定正逆转,按A键,则LED指示灯亮,表示逆转;再按,LED灯灭,表示正转。(2)控制过程送电时,设定为正转,显示器显示为“00”。输入转数,显示器显示输入的转数,按”A”设定正逆转,LED指示灯亮表示逆转,LED指示灯灭表示正转,然后按“*”步进电动机开始运行。步进电机每转一转,显示器减1,直至为00,步进电动机停

8、止运转。1.2设计方案介绍根据功能设计的要求本设计采用AT89C51单片机系统控制矩阵式键盘作为输入控制端驱动系统采用74LS04和达林顿管,使步进机可以在智能化程序控制下完成正转、反转、转数的设定。文中在单片机与驱动器之间增加一级光电隔离可使步进电机具有更高性能,同时把数字电路与驱动电路隔离开避免了步进电机运行时产生的冲击电压和电流干扰单片机。1.3系统设计要想实现以上功能的实现只要通过P1口的键盘输入并按一定顺序改变P0口的输出脉冲信号,从而改变步进电机的四端通电状况,即可控制步进电机依选定的方向步进同时通过显示器同步显示相应的数据依以上可描绘如1.1图示。键盘显示单片机步进电机控制图1.

9、1步进电机控制器结构框图控制系统包括:键盘输入模块、显示、知识模块以及步进电机控制及驱动模块。键盘输入模块主要完成数据输入及控制输入,显示模块完成转数的显示。步进电机模块主要是由单片机输出控制码到驱动机构控制步进电机的运转。第二章 硬件设计2.1单元模块设计2.1.2 单片机STC89C52介绍单片机正常工作的基本条件是:有供电电路,有时钟电路,有复位电路,有数据存储器(RAM),有程序存储器(ROM),有程序。前五项是单片机正常工作的硬件条件基础。其中,供电电路为单片机提供工作电源;时钟电路为单片机提供时钟信号,保证单片机内部各部件同时工作;复位电路产生复位信号,使单片机上电后从确定状态开始

10、工作;RAM用来存放各类数据运算的中间结果和运算的最终结果;ROM用来存放单片机运行的程序和表格数据。现代的MCS-51单片机中,片内一般都集成有一定数量的RAM和ROM。其中STC89C52单片机片内集成有256字节的RAM、512字节的扩展RAM和2KB的Flash ROM,用于存放各类数据,片内集成有8KB的Flash ROM用来存放程序和表格数据。 STC89C52单片机与MCS-51单片机的引脚兼容,有DIP-40、PLCC-44、TQFP-44等封装形式。其中DIP-40的封装形式单片机有40个引脚。引脚向外,缺口朝上时,左上方第1个引脚为1脚,依逆时针方向数,依次为1、2、340

11、脚,40脚位于右上角。在这40个脚中,有32个脚用于各类控制,这32个脚叫做单片机的“端口”。在单片机中每个端口都有特定的名字,比如第1脚的端口叫做“p1.0”.1单片机各引脚的功能如下:(1)Vcc(40):电源引脚,接电源+5V。(2)GND(20):接地引脚,接电源地。(3 XTAL2(18):内部振荡电路反向放大器的输出端。采用内部震荡方式时,该引脚接外部晶振和微调电容的一端。采用外部震荡方式时,该引脚悬空。(4)XTAL1(19):内部振荡电路反向放大器的输入端。采用内部震荡方式时,该引脚接外部晶振和微调电容的另一端。采用外部震荡方式时,外部震荡脉冲从该引脚输入。(5)PSEN(29

12、):程序存储器允许。当单片机访问片外扩展程序存储器时,该引脚输出读外部程序存储器的选通信号。(6)ALE:地址锁存允许,当单片机访问外部存储器时,该引脚的输出信号ALE,用于锁存P0中的低8位地址。ALE的输出频率为时钟震荡频率的1/6。(7)RST(9):复位信号输入端,高电平有效,外接复位电路。 (8)EA/VP(31):允许访问外部程序存储器控制脚,低电平有效。如果程序保存在片内ROM中,应该将该引脚接高电平; 如果程序保存在片外ROM中,应该将它接地。          

13、60;                   (9)P0.0P0.7:并行端口P0、数据/地址复用总线端口。(10)P1.0P1.7:并行端口P1。(11)P2.0P2.7:并行端口P2、地址口。(12)P3.0P3.7:并行端口P3、双功能端口。2单片机的主要特性: 与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:全静态工作:0Hz-24Hz三级程序存储器锁定、128*8位内部R

14、AM、32可编程I/O线、两个16位定时器/计数器、5个中断源、可编程串行通道、低功耗的闲置和掉电模式、片内振荡器和时钟电路 (1)振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。(2)芯片擦除:整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节

15、被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。2.1.2 步进电机的工作原理步进电机是将电脉冲信号转变为角位移或线位移的执行机构。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点,使得在速

16、度、位置等控制领域用步进电机来控制变的非常的简单。(1)步进电机的特点本实验所用的步进电机为感应子式步进电机(型号为42BYG016)。感应子式步进电机与传统的反应式步进电机相比,结构上转子加有永磁体,以提供软磁材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁材料工作点的耗能,因此该电机效率高,电流小,发热低。因永磁体的存在,该电机具有较强的反电势,其自身阻尼作用比较好,使其在运转过程中比较平稳、噪音低、低频振动小。 感应子式步进电机某种程度上可以看作是低速同步电机。一个四相电机可以作四相运行,也可以作二相运行。(必须采用双极电压驱动),而反应式电机则不能如此。例如:四相八拍运

17、行(A-AB-B-BC-C-CD-D-DA-A)完全可以采用二相八拍运行方式.不难发现其条件为C=,D=. 一个二相电机的内部绕组与四相电机完全一致,小功率电机一般直接接为二相,而功率大一点的电机,为了方便使用,灵活改变电机的动态特点,往往将其外部接线为八根引线(四相),这样使用时,既可以作四相电机使用,可以作二相电机绕组串联或并联使用。(本实验采用两相四拍)(2) 步进电机的静态指标相数:产生不同对极N、S磁场的激磁线圈对数。常用m表示。拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB

18、,四相八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号,电机转子转过的角位移用表示。=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。四拍运行时步距角为=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为=360度/(50*8)=0.9度(俗称半步)。(3) 步进电机的动态指标1步距角精度: 步进电机每转过一个步距角的实际值与理论值的误差。用百分比表示:误差步距角*100%。不同运行拍数其值不同,四拍运行时应在5%之内,八拍运行时应在15%以内。 2失步: 电机运转时运转的步数,不等于理论上的步数。称之为失步。 3失调

19、角: 转子齿轴线偏移定子齿轴线的角度,电机运转必存在失调角,由失调角产生的误差,采用细分驱动是不能解决的。 4最大空载起动频率: 电机在某种驱动形式、电压及额定电流下,在不加负载的情况下,能够直接起动的最大频率。 5最大空载的运行频率: 电机在某种驱动形式,电压及额定电流下,电机不带负载的最高转速频率。 6运行矩频特性: 电机在某种测试条件下测得运行中输出力矩与频率关系的曲线称为运行矩频特性,这是电机诸多动态曲线中最重要的,也是电机选择的根本依据。(4) 步进电机的驱动控制系统控制系统的组成方框图如下:1)脉冲信号的产生 脉冲信号由单片机AT89S52的I/O口产生,一般的脉冲信号的占空比为0

20、.3-0.4左右,电机转速越高,占空比则越大。本实验采用的占空比为0.5。2)信号分配感应子式不仅以二、四相电机为主,二相电机工作方式有二相四拍和二相八拍两种, 具体分配如下:二相四拍为,步距角为1.8度;二相八拍为,步距角为0.9度。本设计采用步距角为1.8度。3)功率放大功率放大是驱动系统最为重要的部分。步进电机在一定转速下的转矩取决于它的动态平均电流而非静态电流(而样本上的电流均为静态电流)。平均电流越大电机力矩越大,要达到平均电流大这就需要驱动系统尽量克服电机的反电势。因而不同的场合采取不同的的驱动方式,到目前为止,驱动方式一般有以下几种:恒压、恒压串电阻、高低压驱动、恒流、细分数等。

21、步进电机一经定型,其性能取决于电机的驱动电源。步进电机转速越高,力距越大则要求电机的电流越大,驱动电源的电压越高。电压对力矩影响如下:4)功率放大细分驱动器      在步进电机步距角不能满足使用的条件下,可采用细分驱动器来驱动步进电机,细分驱动器的原理是通过改变相邻(A,B)电流的大小,以改变合成磁场的夹角来控制步进电机运转的。2.1.3驱动器由于单片机的I/O不具有直接驱动步进电机的能力,故在本系统中需要步进电机驱动器,我们选择驱动器为KD-221,该驱动器具有输入电压范围广,控制信号输入方式多样等特点。其具体接法如下:2.1、电源接线:

22、、E高:当驱动电压大于10V时,正极接此座,使用时最大不能大于40V,以防损坏模块。 、E低:当驱动电压小于10V时,正极接此座。 、地:驱动电压E高、E低的的负极接此座。 、A ,:接电机A相线圈的二根引线。 、B, :接电机B相线圈的二根引线。 2.2、控制信号接线: 、CP:接控制器发给步进电机的走步脉冲信号线。 、CW:接控制器发给步进电机的走步方向信号线。 、VP:接CP和CW信号的负极,即逻辑电路电源的负极。 、本驱动器内部设计接收信号为RTTL电平,即5V电平,如其它逻辑电平信号需要接限流电阻,否则可能损坏光耦元件。2.1.4光电开关 本系统中所用传感器为EE-EX672关电开关

23、,该传感器为开关型传感器,四个接线脚分别为“+,L,OUT,-”其输入电压范围广为直流5-24V,L为控制指示端,当“L”与“+”相连时,传感器未检测到物体时LED灯发光,当“L”悬空时则相反,其特点为:1. 动作模式备有遮光时ON/入光时ON(可切换型)2. 应答频率为1KHZ的高速响应3. 入光显示灯明显,容易进行动作确认.4. 电源电压为DC-24V的广范围5. 备有遮光时入光显示灯灯亮型其连接电路如下图所示:“L”与“+”相连时,传感器未检测到物体时LED灯发光。 “L”悬空传感器检测到物体时LED灯发光。2.1.5显示电路与键盘的选择 显示电路的用8279芯片来驱动,8279芯片分别

24、接两排显示器,每排为4位显示,分别用来显示步进电机的实际转速与给定转速。8279与CPU的连接框图如2.1.1所示:图2.1.1 8279与CPU的接线图8279芯片的具体介绍如下;1) DB0DB7:双向数据总线。在CPU于827数 据与命令的传送。2) CLK:8279的系统时钟,100KHZ为最佳选择。3) RESET:复位输入线,高电平有效。当 RESET 输入端出现高电平时,8279被初始复位。4) /CS:片选信号。低电平使能,使能时可将命令写入8279或读取8279的数据。5) A0:用于区分信息的特性。当A0=1时,CPU向8279写入命令或读取8279的状态;当A0为0时,读

25、写一数据。6) /RD:读取控制线。/RD=0,8279会送数据至外部总线。7) /WR:写入控制线。/WR=0,8279会从外部总线捕捉数据。8) IRQ:中断请求输出线,高电平有效。当FIFO RAM 缓冲器中存有键盘上闭合键的键码时,IRQ线升高,向CPU请求中断,当CPU将缓冲器中的输入键数的数据全部读取时,中断请求线下降为低电平。9) L0SL3:扫描输出线,用于对键盘显示器扫 描。可以是编码模式(16对1)或译码模式(4对1)。10) RL7:反馈输入线,由内部拉高电阻拉成高电平,也可由键盘上按键拉成低电平。11) FT、CNTL/STB :控制键输入线,由内部拉高电 阻拉成高电平

26、,也可由外部控制按键拉成低电平。12) TB03、OUTA03:显示段数据输出线,可分别作为两个半字节输出,也可作为8位段数据输出口,此时OUTB0为最低位, OUTA3位最高位。13) 消隐输出线,低电平有效。当显示器切换时或使用消隐命令时,将显示消隐。具体芯片理框图如下所示:图2.1.2 8279的引脚图键盘的连接一般有两种方式,一种是独立式键盘;一种是行列式键盘。独立式键盘就是各个键相互独立,每个键盘接一根输入线,通过检测输入线的电平状态来确定那个键按下。这种键盘的输入线较多,结构复杂,一般适用于按键较少操作速度较高的场合。而行列式键盘是由行和列线交义组成,一般用于按键较多的场合。本次设

27、计一共用9个键因此采用行列式键盘。具体的原理图如2.1.3所示: 图2.1.3键盘连接图显示电路的选择显示电路选用两排LED显示,每排分别为四位。能满足设计的要求,转速范围为0至1000。LED显示电路有两种接法,一种为共阴极,一种为共阳极。原理图如2.1.4所示:、图2.1.4 显示器接线图2.2硬件设计电路图 下图中为单片机的最小系统,其P0.0-P0.7口分别连接到LCD1602的D0-D7引脚,与P2.5,P2.6,P2.7相连的按键开关分别控制步进电机的正反转,加速,减速,P2.0,P2.1,P2.2分别接LCD1602的RS,RW,E引脚。下图中为电机驱动部分。驱动电压为+12V,

28、用单片机的P1.0与电机驱动器的CW相连控制单片机的转向,P1.1与电机驱动器的CP相连,给驱动器输入脉冲。a,b,c,d分别接入步进电机。SX-672为检测转速的传感器外接+5V驱动电压,输出接入单片机的T1脚。第三章 系统软件部分3.1程序图步进电机控制程序就是完成环形分配器的任务,从而控制步进电机转动,以达到控制转动角度和位移之目的。首先要进行旋转方向的判断,然后转到相应的控制程序。正反向控制程序分别按要求的控制顺序输出相应的控制模型,再加上脉宽延时程序即可。脉冲序列的个数可以用寄存器CL进行计数。控制模型可以以立即数的形式一一给出。控制标志单元FLAG为00H时,表示正转;为01H时,

29、表示反转。其程序流程图如下图所示:图3.1 程序流程图3.2汇编语言:D0 EQU 0D2 EQU 2 ORG 0000HSTART: LJMP MAIN ORG 0003H LJMP INT0 ORG 0100HMAIN: MOV P2,#00H ;等待信号 MOV P0,#FFH MOV R2,#0 MOV R3,#0 MOV R4,#0 CLR IT0 SETB EA SETB EX0 LJMP MAININT0: JNB P2.0,ZHENG;正转 JNB P2.1,FAN ;反转 JNB P2.2,JIA ;加 JNB P2.3,JIAN ;减速速 JNB P2.4,TIN ;停 R

30、ETIZHENG: MOV R2,#1 ;正转 MOV DPTR,CHA MOV A,D0 MOVC A,A+DPTR MOV P0,A ACALL YAN0 CPL P0.0 CPL P0.2 ACALL YAN0 CPL P0.0 CPL P0.1 ACALL YAN0 LJMP ZHENGFAN: MOV R2,#0 ;反转 MOV DPTR,CHA MOV A,D2 MOVC A,A+DPTR MOV P0,A ACALL YAN0 CPL P0.0 CPL P0.1 ACALL YAN0 CPL P0.0 CPL P0.2 LJMP FANZHENG1:MOV DPTR,CHA ;加

31、减速正转 MOV A,D0 MOVC A,A+DPTR MOV P0,A CJNE R3,#0,YIA1 CJNE R4,#0,YIA2 CPL P0.0 CPL P0.2 CJNE R3,#0,YIA1 CJNE R4,#0,YIA2 CPL P0.0 CPL P0.1 CJNE R3,#0,YIA1 CJNE R4,#0,YIA2 LJMP ZHENGFAN1: MOV DPTR,CHA ;加减速反转 MOV A,D2 MOVC A,A+DPTR MOV P0,A CJNE R3,#0,YIA1 CJNE R4,#0,YIA2 CPL P0.0 CPL P0.1 CJNE R3,#0,YIA1 CJNE R4,#0,YIA2 CPL P

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论