基于51单片机的步进电机控制系统单片机课程设计报告.docx
- 文档编号:2424455
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:31
- 大小:781.41KB
基于51单片机的步进电机控制系统单片机课程设计报告.docx
《基于51单片机的步进电机控制系统单片机课程设计报告.docx》由会员分享,可在线阅读,更多相关《基于51单片机的步进电机控制系统单片机课程设计报告.docx(31页珍藏版)》请在冰豆网上搜索。
基于51单片机的步进电机控制系统单片机课程设计报告
微机原理与接口技术课程设计报告
基于51单片机的步进电机控制系统
学号
姓名
班级2011级电子2班
华侨大学电子工程系
摘要
步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。
步进电机可以直接用数字信号驱动,使用非常方便。
步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。
在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态。
因此非常适合于单片机控制。
它的运行速度和步距不受电源电压波动及负载的影响,因而被广泛应用于数模转换、速度控制和位置控制系统。
本课程设计以STC89C52单片机作为微控制器,使用混合式步进电机驱动芯片ULN2003AN进行驱动,实现了对步进电机运行状态的简单控制,并将其运行状态用LCD1602液晶显示。
本次设计能实现的功能有电机运行、停止,设置运行圈数,调节转速,电机正反转,点动等。
关键词:
STC89C52单片机,28BYJ-48步进电机,ULN2003AN驱动芯片,LCD1602显示,电机控制,点动
第一章总体设计方案
本次课程设计本课程设计以STC89C52单片机作为微控制器,使用混合式步进电机驱动芯片ULN2003AN进行驱动,实现了对步进电机运行状态的简单控制,并将其运行状态用LCD1602液晶显示。
本次设计能实现的功能有电机运行、停止,设置运行圈数,调节转速,电机正反转,点动等。
系统流程图如下:
第二章硬件原理
一、STC89c52单片机
2.1、STC89c52芯片简介
STC89C52是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及STC89C52引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的STC89C52可为许多嵌入式控制应用系统提供高性价比的解决方案。
STC89C52具有如下特点:
40个引脚,8k Bytes Flash片内程序存储器,256 bytes的随机存取数据存储器(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口除作为一般I/O口外,还有其他一些复用功能,如下表所示:
表XXP3口引脚复用功能
引脚号
复用功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
(外部中断0)
P3.3
(外部中断1)
P3.4
T0(定时器0的外部输入)
P3.5
T1(定时器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.相数:
4
3.减速比:
1/64(另有减速比:
1/16、1/32)
4.步距角:
5.625°/64
5.驱动方式:
4相8拍
6.直流电阻:
200Ω±7%(25℃)(按客户要求而定:
80、130欧姆)
7.空载牵入频率:
≥600Hz
8.空载牵出频率:
≥1000Hz
9.牵入转矩:
≥34.3mN.m(120Hz)
10.自定位转矩:
≥34.3mN.m
11.绝缘电阻:
>10MΩ(500V)
12.绝缘介电强度:
600VAC/1mA/1S
13.绝缘等级:
A
14.温升:
<50K(120Hz)
15.噪音:
<40dB(120Hz)
16.重量:
大约40g
17.未注公差按:
GB1804-m
18.转向:
CCW
2.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~
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 步进 电机 控制系统 课程设计 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)