步进电机转速控制系统
- 格式:docx
- 大小:28.55 KB
- 文档页数:20
课程设计报告
题 目: 步进电机转速控制显示系统 学生姓名: 陶宁 学生学号: 0908020132
1该设计要求通过程序实现单片机对电动机进行控制。共包含五个键盘,分别操控正转、反转、停止、加速、减速。并且讲电动机的转动状态反映在LCD 上。 1.3 课程设计的研究基础
2步进电机转速控制显示系统方案制定 2.1 方案提出
方案一:使用开关直接控制电动机的正反转以及转速控制,此种设计非常简便易操作,共两个开关控制。
方案一:本方案十分简单,除了实现正常的正转反转,只能实现步进电机的正转加速,还有反转减速,并不能实现正转减速或者反转加速等功能。程序设计上比较简单,实用性不大。
方案二:本方案较方案一复杂些,并且成功的实现了电机的正转加速和减速,反转的加速和减速,简单明了,控制范围更大,实用性更强。但是由于复杂性增加,程序的编写难度上就增加了。
2.3 方案论证
对于以上两个方案比较分析得出:方案二成功的实现了方案一所有的功能,而且其他功能上更加全面。使用上也更加易操作。方案一对于简单的应用可以适用,但局限性很大,有时无法实现必要的功能。
2.4 方案选择
根据以上的比较论证,选择方案二。
3 步进电机转速控制显示系统方案设计
3.1各单元模块功能介绍及电路设计
该设计分为控制模块,驱动模块,显示模块。
,从而
—Falsh
AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
1)主要特性
a.与MCS-51 兼容
b.4K字节可编程闪烁存储器
c.寿命:1000写/擦循环
d.数据保留时间:10年
e.全静态工作:0Hz-24Hz
f.三级程序存储器锁定
g.128*8位内部RAM
k.可编程串行通道
l.低功耗的闲置和掉电模式
m.片内振荡器和时钟电路
2)管脚说明
a.VCC:供电电压。
b.GND:接地。
c.P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速目的[3]。
3.4 系统整体电路图
图4系统整体电路图
4 步进电机转速控制显示系统仿真和调试
4.1 仿真软件介绍
本设计主要采用Protues软件,Protues软件是英国Labcenter electronics公司出
版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译。它具有丰富的元器件库,超过27000种元器件,可方便地创建新元件。
仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。
仿真仪表资源:示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号
(5)按下K6开关,使电动机减速,显示正转减速运行。
图9正转减速
(6)当步进电机转速达到稳定时,LCD显示正转低速运行。
图10正转低速运行
(7)此时按下K3,无需先按下K2停止,电动机实现反转运行,显示反转低速运行。
图11反转低速运行
(8)此时按下K4,与正转加速类似,加速过程后,显示反转正常运行。
图12反转正常运行状态
4.3 系统测试
测试环境:20℃
测试仪器:XP系统计算机,protues仿真软件,keil程序编辑软件。
测量数据:暂无数据。
4.4 数据分析
由于本课程设计仅限于仿真阶段,实现其设计功能,未做出实体,所以暂时没有数据,有待以后深入研究发展。
5 总结
5.2 展望
随着技术的不断发展,步进电机的控制应用前景将越来越广阔,而其控制系统也将向着智能化和网络化的方向发展。此课程设计还是比较基础部分,基本上在实用上没有太大用途,但是我们要在现在的基础上,不断吸收新的技术和方法,并将其应用于课题研究上来,为以后学习更多的电子类如嵌入式、微机原理等知识打下了坚实基础。
6参考文献
[1]侯玉宝,等.基于proteus的51系列单片机设计与仿真[M].电子工业出版社,2010.
[2]林志琦,等.基于proteus的单片机可视化软硬件仿真[M].科学出版社,2006.
[3]李全利,等.单片机原理及接口技术[M].北京航空航天大学出版社,2010.
[4]薛均义,等.MCS-51 系列单片微型计算机及其应用[M].西安交通大学出版社,2009. 7附录
7.1系统主要功能展示图
图13 系统展示
7.2器件清单
#include
#include
#include
#define uc unsigned char
#define ui unsigned int
#define LCDPAGE 0xB8
#define LCDLINE 0x40
sbit p00=P0^0;
sbit p01=P0^1;
sbit p02=P0^2;
sbit p03=P0^3;
sbit E=P3^5;
sbit RW=P3^4;
sbit RS=P3^2;
uc code YUN[]=
{
0x40,0x41,0xCE,0x04,0x00,0x20,0x22,0xA2, 0x62,0x22,0xA2,0x22,0x22,0x22,0x20,0x00, 0x40,0x20,0x1F,0x20,0x28,0x4C,0x4A,0x49, 0x48,0x4C,0x44,0x45,0x5E,0x4C,0x40,0x00, };