基于51单片机的步进电机控制系统-单片机课程设计报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

微机原理与接口技术课程设计报告基于51单片机的步进电机控制系统学号姓名班级2011级电子2班华侨大学电子工程系摘要步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。步进电机可以直接用数字信号驱动,使用非常方便。步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态。因此非常适合于单片机控制。它的运行速度和步距不受电源电压波动及负载的影响,因而被广泛应用于数模转换、速度控制和位置控制系统。本课程设计以STC89C52单片机作为微控制器,使用混合式步进电机驱动芯片ULN2003AN进行驱动,实现了对步进电机运行状态的简单控制,并将其运行状态用LCD1602液晶显示。本次设计能实现的功能有电机运行、停止,设置运行圈数,调节转速,电机正反转,点动等。关键词:STC89C52单片机,28BYJ-48步进电机,ULN2003AN驱动芯片,LCD1602显示,电机控制,点动第一章总体设计方案本次课程设计本课程设计以STC89C52单片机作为微控制器,使用混合式步进电机驱动芯片ULN2003AN进行驱动,实现了对步进电机运行状态的简单控制,并将其运行状态用LCD1602液晶显示。本次设计能实现的功能有电机运行、停止,设置运行圈数,调节转速,电机正反转,点动等。系统流程图如下:51单片机LCD1602显示状态步进电机工作ULN2003驱动按键第二章硬件原理一、STC89c52单片机2.1、STC89c52芯片简介STC89C52是一个低功耗,高性能CMOS8位单片机,片内含8kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及STC89C52引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的STC89C52可为许多嵌入式控制应用系统提供高性价比的解决方案。STC89C52具有如下特点:40个引脚,8kBytesFlash片内程序存储器,256bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。2.2、STC89c52芯片引脚功能说明STC89C52RC引脚图STC89C52RC引脚功能说明VCC(40引脚):电源电压VSS(20引脚):接地P0端口(P0.0~P0.7,39~32引脚):P0口是一个漏极开路的8位双向I/O口。作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。在访问外部程序和数据存储器时,P0口也可以提供低8位地址和8位数据的复用总线。此时,P0口内部上拉电阻有效。在FlashROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。验证时,要求外接上拉电阻。P1端口(P1.0~P1.7,1~8引脚):P1口是一个带内部上拉电阻的8位双向I/O口。P1的输出缓冲器可驱动(吸收或者输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流()。P2端口(P2.0~P2.7,21~28引脚):P2口是一个带内部上拉电阻的8位双向I/O端口。P2的输出缓冲器可以驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流()。在访问外部程序存储器和16位地址的外部数据存储器(如执行“MOVX@DPTR”指令)时,P2送出高8位地址。在访问8位地址的外部数据存储器(如执行“MOVX@R1”指令)时,P2口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容),在整个访问期间不会改变。在对FlashROM编程和程序校验期间,P2也接收高位地址和一些控制信号。P3端口(P3.0~P3.7,10~17引脚):P3是一个带内部上拉电阻的8位双向I/O端口。P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流()。在对FlashROM编程或程序校验时,P3还接收一些控制信号。,如下表所示:引脚号复用功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通)RST(9引脚):复位输入。当输入连续两个机器周期以上高电平时为有效,用来完成单片机单片机的复位初始化操作。看门狗计时完成后,RST引脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/(30引脚):地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在Flash编程时,此引脚()也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址位8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOV指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址位8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。(29引脚):外部程序存储器选通信号()是外部程序存储器选通信号。当AT89C51RC从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而访问外部数据存储器时,将不被激活。/VPP(31引脚):访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,必须接GND。注意加密方式1时,将内部锁定位RESET。为了执行内部程序指令,应该接VCC。在Flash编程期间,也接收12伏VPP电压。XTAL1(19引脚):振荡器反相放大器和内部时钟发生电路的输入端。XTAL2(18引脚):振荡器反相放大器的输入端。二、28BYJ-48步进电机2.2.1步进电机的工作原理步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。可以通过控制脉冲个来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。本次设计是采用步进电机28BYJ48型四相八拍电机,电压为DC5V—DC12V。当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动。每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。当通电状态的改变完成一个循环时,转子转过一个齿距。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A。。。),双(双相绕组通电)四拍(AB-BC-CD-DA-AB-。。。),八拍(A-AB-B-BC-C-CD-D-DA-A。。。)其相序分配表如下:2.2.2步进电机24BYJ48的相关电气参数1.额定电压:12VDC(另有电压:5V、6V、24V)2.相数:43.减速比:1/64(另有减速比:1/16、1/32)4.步距角:5.625°/645.驱动方式:4相8拍6.直流电阻:200Ω±7%(25℃)(按客户要求而定:80、130欧姆)7.空载牵入频率:≥600Hz8.空载牵出频率:≥1000Hz9.牵入转矩:≥34.3mN.m(120Hz)10.自定位转矩:≥34.3mN.m11.绝缘电阻:>10MΩ(500V)12.绝缘介电强度:600VAC/1mA/1S13.绝缘等级:A14.温升:<50K(120Hz)15.噪音:<40dB(120Hz)16.重量:大约40g17.未注公差按:GB1804-m18.转向:CCW2.2.3步进电机的基本术语2.2.3.1相数产生不同对极N、S磁场的激磁线圈对数,常用m表示。2.2.3.2拍数完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,比如说本次设计中使用的24BYJ48有单(单相绕组通电)四拍(A-B-C-D-A。。。),双(双相绕组通电)四拍(AB-BC-CD-DA-AB-。。。),八拍(A-AB-B-BC-C-CD-D-DA-A。。。)2.2.3.3步距角对应一个脉冲信号,电机转子转过的角位移用θ表示。θ=360度(转子齿数J*运行拍数),以常规二相,转子齿为50齿电机为例。四拍运行时步距角为θ=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步)。2.2.3.4信号分配四相步进电机按照其通电方式的不同,可以分为单四拍,双四拍和双八拍三种工作方式。单四拍与双四拍的步距角相等,均为11.25度,而八拍的步距角则是单四拍与双四拍的一半,5.625度。单(单相绕组通电)四拍(A-B-C-D-A。。。),双(双相绕组通电)四拍(AB-BC-CD-DA-AB-。。。),八拍(A-AB-B-BC-C-CD-D-DA-A。。。)。这里选取的是双相八拍的工作方式。三、ULN2003达林顿陈列芯片步进电机的驱动采用ULN2003芯片。ULN2003是高耐压、大电流达林顿陈列,由七个硅NPN达林顿管组成。ULN2003的每一对达林顿都串联一个2.7K的基极电阻,在5V的工作电压下它能与TTL和CMOS电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V的电压,输出还可以在高负载电流并行运行。其引脚及内部原理图如下:本设计中实验1、2、3、4脚做输入端,16、15、14、13做相对应的输出端,起到放大的作用,以驱动电机。四、LCD1602液晶1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。其各引脚功能见下图:其典型接口电路如下图:其基本操作时序为:读状态输入:RS=L,RW=H,E=H输出:DB0~DB7=状态字写指令输入:RS=L,RW=L,E=下降沿脉冲,DB0~DB7=指令码输出:无读数据输入:RS=H,RW=H,E=H输出:DB0~DB7=数据写数据输入:RS=H,RW=L,E=下降沿脉冲,DB0~DB7=数据输出:无第三章电路设计一、单片机最小系统与LCD1602接口电路本电路模块包括单片机最小系统,即51单片机、时钟电路、复位电路、上电开关等,和1602液晶接口电路。模块电路原理图如下:各子模块电路如下:(1)时钟产生电路用于产生单片机的控制时钟,实际使用时采用11.0592M晶振。(2)复位电路用于单片机手动复位。(3)1602液晶接口电路用于连接1602液晶,P2.0—P2.2分别接RS、RW、EN,P0口接数据指令输入口。二、步进电机驱动及接口电路本电路模块用于单片

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功