基于51单片机的步进电机控制课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告
课程设计名称:单片机系统综合课程设计
课程设计题目:基于51单片机的步进电机控制
院(系):计算机学院
专业:计算机科学与技术(嵌入式)
目录
第1章总体设计方案 (1)
1.1课程设计的内容和要求 (1)
1.2课程设计原理 (1)
1.3课程设计思路 (2)
1.4实验环境 (3)
第2章详细设计方案 (4)
2.1实现方法 (4)
2.2模块设计 (5)
2.2.1 步进电机的驱动 (5)
2.2.2 按键电路设计 (5)
2.2.3 时钟产生及复位电路 (6)
2.3主程序流程图图 (7)
第3章调试及结果分析 (8)
3.1调试步骤及方法 (8)
3.2实验结果及分析 (8)
参考文献 (9)
附录1(源程序) (10)
附录2(系统原理图) (14)
附录3(器件清单) (15)
第1章总体设计方案
1.1 课程设计的内容和要求
一、课程设计内容:
步进电机是一种将电脉冲转换成角位移或线位移的电磁机械装置,也是一种能把输出解析为唯一增量和输入数字脉冲对应的驱动器件。步进电机具有快速启动、停止的能力,精度高、控制方便,因此,在工业上得到了广泛应用。
利用单片机控制一个步进电机,而且要满足如下技术指标:
(1)开始通电时,步进电机停止转动。
(2)单片机分别接按键开关K1、K2和K3,用来控制步进电机的转向,要求如下:
当按下K1时,步进电机正转。
当按下K2时,步进电机反转。
当按下K3时,步进电机停止转动。
步进电机的工作方式有单四拍、双四拍、单双八拍。
二、课程设计要求:
1. 独立完成课程设计任务;
2. 通过老师当场验收;
3. 交出完整的课程设计报告。
1.2课程设计原理
步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。可以通过控制脉冲个来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调整节拍的目的。
本次设计是采用步进电机28BYJ48型四相八拍电机,电压为DC5V—DC12V。当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动。每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。当通电状态的改变完成一个循环时,转子转过一个齿距。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A),双(双相绕组通电)四拍(AB-BC-CD-DA-AB),八拍(A-AB-B-BC-C-CD-D-DA-A)。
单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图 1.1 (a)、(b)、(c)所示。
a. 单四拍
b. 双四拍 c八拍
图1.1步进电机工作时序波形图
1.3课程设计思路
(1) 提出方案
电机的运转一般由脉冲和方向信号来控制的,脉冲的频率控制电机的转速,脉冲的个数控制电机的转角;方向信号的高、低电平控制着电机的正、反转。用单片机控制步进电机,可以用一个输出口发送脉冲:高电平->延时->低电平->延时……延时的长短控制脉冲的频率,电平的转换次数就是脉冲个数。
因为步进电机的控制是通过脉冲信号来控制的,将电脉冲信号转变为角位移或线位移的开环控制元件。所以怎样产生这个脉冲信号和产生怎样的信号是电机控制的关键。
(2) 方案论证
用单片机来产生这个脉冲信号,通过单片机的P1口输出脉冲信号,因为所选电机是四相的,所以只需要P1口的低四位P1.0~P1.3分别接到电机的四根电线上。定时器定时来调整电机的转速,通过键盘的按钮,就可以对步进电机启动和停止以及转动方向节拍的控制,单片机上P3.0~P3.1连的是按键,这里键盘上的D 键为启动与A键停止键,B键为反转键,C键为正转键,K0、K1键为节拍控制键。用8051单片机作为控制芯片。
设计方案的确定
对步进电机的控制和驱动方案:
方案一:使用多个功率放大器件驱动电机,通过使用不同的放大电路和不同参数的器件,可以达到不同的放大要求,放大后能够得到较大的功率。但是由于使用的是四相的步进电机,就需要对四路信号分别放大,由于放大电路很难做到完全一致,当电机的功率较大时运行起来会不稳定,而且电路的制作也比较复杂。
方案二:使用ULN2003芯片驱动步进电机,可以直接用单片机的Y/O口提供信号;而且电路简单,使用比较方便。因此选择方案二作为本设计的驱动电路。
1.4 实验环境
·硬件环境:lab6000实验箱,PC机。
·软件环境:WA VE应用软件
第2章详细设计方案
2.1 实现方法
步进电机和普通电动机不同之处是步进电机接受脉冲信号的控制。即步进电机是将电脉冲信号转换为机械角位移的执行元件。步进电机的控制可以用硬件,也可以用软件通过单片机实现。硬件方法是采用脉冲分配器芯片进行通用换相控制;而软件方法是用单片机产生控制脉冲来控制步进电机的运行状态,这种方法可简化电路,降低成本。
在用软件控制时,主要设计要点如下:
●判断旋转方向;
●按相序确定控制字;
●按顺序输入控制字;
●确定控制步数和每一步的延时时间。
由于单片机的驱动电流一般都比较小,不能直接驱动电机工作,所以单片机的I/O口输出必须接驱动电路,即功率驱动,才得以控制电机正常工作。控制框图如下图所示:
开始启动时点击处于停止转动状态,当按下启动按键时,点击开始转动并以单四拍作为默认启动方式,用两个开关按键用于节拍控制,用键盘按键控制停止、启动、正转、反转。用8051作为总控制芯片。ULN2003用于步进电机的驱动控制。其中在键盘控制时用键盘扫描程序。如图2.1总方案图。
图2.1 总方案图