ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:71.15KB ,
资源ID:1400892      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-1400892.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(步进电机课程设计.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

步进电机课程设计.docx

1、步进电机课程设计一、设计目的.3二、设计要求.3三、仪器设备.3四、硬件线路图及主要芯片说明.31.系统所使用的开发板上的区域.32.系统硬件电路图.33.系统所用主要芯片说明.4 3.1 STC89C52RC芯片介绍.4 3.2 ULN2003A芯片介绍.4 3.3 LCD1602液晶介绍.4五、系统工作原理.51.步进电机介绍.52.控制原理基本框图.5六、程序框图.6七、程序清单.7八、设计体会.12九、参考文献.12一、设计目的通过具体小型测试系统设计,实践单片机系统设计及调试的全过程,以加深对单片机内部结构、功能和指令系统的理解,并进一步学习单片机开发系统的应用及一些外围芯片的接口和

2、编程方法,初步掌握单片机系统的硬、软件设计技术及调试技巧。了解步进电机的构造、驱动、工作原理以及步进电机的一些指标术语,掌握步进电机的转动控制方式和调速方法。加深对单片机开发试验仪各部分功能的了解与使用,方便对以后的设计进行开发、编程与调试。熟练C语言以及函数、中断的使用。二、设计要求1)电机转速可以平稳控制2)通过键盘可以选择电机的转动方式3)通过键盘可以设置电机的转速4)显示器可以显示步进电机的运行状况 三、主要仪器设备设备数量单片机开发板 一套步进电机一台按键四个ULN2003A驱动芯片一片LCD1602 一片STC89C52RC一片四、硬件线路图及主要芯片说明1.系统所使用的开发板上的

3、区域步进电机实验区上面有一个四相步进电机及其驱动芯片,用户可以在上面进行步进电机控制的相关实验。步进电机将电脉冲信号转变为角位移或线位移实现电机转动。键盘实验区的按键控制步进电机的启动/停止,正/反转,加/减速,本设计采用单键控制启停、单键控制正反转以及两个按键分别控制加减速。用STC89C52RC单片机实现控制整个步进电机系统的启动/停止,正/反转,加/减速以及驱动LCD1602显示步进电机的运行状况。2.系统硬件电路图 步进电机运动系统的硬件电路图(用Proteus绘制)如下图所示: 3.系统所用主要芯片说明 3.1 STC89C52RC芯片介绍STC89C52是STC公司生产的一种低功耗

4、、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至

5、0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。3.2 ULN2003A芯片介绍本设计采用ULN2003A作为步进电机的驱动芯片,ULN2003A电路具有以下特点: 电流增益高(大于1000) 带负载能力强(输出电流大于500mA) 温度范围宽(-4085) 工作电压高(大于50V)3.3 LCD1602液晶介绍1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字

6、、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形。 1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。 五、系统工作原理1.步进电机介绍步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距

7、角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机是一种感应电机,它的工作原理是利用电子电路将直流电变成分时供电的多相时序控制电流,用这种电流为步进电机供电,步进电机才能正常工作,驱动器就是为步进电机分时供电的多相时序控制器。虽然步进电机已被广泛地应用,但步进电机并不能像普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D

8、-A.),双(双相绕组通电)四拍(AB-BC-CD-DA-AB-.),八拍(A-AB-B-BC-C-CD-D-DA-A.);当通电时序相反时,转向相反。本设计采用的通电方式是八拍。2.控制原理基本框图 步进电机控制原理的基本框图如下: 其中P3.2、P3.3为外部中断,本设计采用下降沿触发方式,通过改变用m和n的值来控制电机的启动/停止,正/反转;P3.4、P3.5为定时/计数器中断,本设计采用计数方式,并工作于方式2,将TH0、TL0、TH1、TL1都设为0xff,这样和外部中断是一样的功能,通过改变脉冲之间的延迟时间T来控制电机的加/减速;P0口用以控制液晶指令与数据的传输,P2.5、P2

9、.6、P2.7连接液晶的三个控制接口从而实现对液晶的控制。六、程序框图 开始 系统以及LCD 初始化 N m=0 Y Y n=0 N 正转 反转 T0中断 T1中断 Y Y 减速 加速 结束 七、程序清单 #include#include#define uchar unsigned char#define uint unsigned intsbit RS=P26;sbit RW=P25;sbit EN=P27;void DelayMS(uint ms) uchar i; while(ms-) for(i=0;i120;i+);uchar Busy_Check() uchar LCD_Statu

10、s; RS=0; RW=1; EN=1; DelayMS(1); LCD_Status=P0; EN=0; return LCD_Status;void Write_LCD_Command(uchar cmd) while(Busy_Check()&0x80)=0x80); RS=0; RW=0; EN=0; P0=cmd;EN=1;DelayMS(1);EN=0;void Write_LCD_Data(uchar dat) while(Busy_Check()&0x80)=0x80); RS=1;RW=0;EN=0;P0=dat;EN=1;DelayMS(1);EN=0;void Initi

11、alize_LCD() Write_LCD_Command(0x38);DelayMS(1); Write_LCD_Command(0x01);DelayMS(1); Write_LCD_Command(0x06);DelayMS(1); Write_LCD_Command(0x0c);DelayMS(1); void ShowString(uchar x,uchar y,uchar z,uchar *str) uchar i=0; if(y=0) Write_LCD_Command(0x80|x); if(y=1) Write_LCD_Command(0xc0|x); for(i=0;iz;

12、i+) Write_LCD_Data(stri); for(i=0;iz;i+) Write_LCD_Data(stri); LCD_Data(stri); #include#include#define uchar unsigned char #define uint unsigned intvoid Initialize_LCD();void ShowString(uchar,uchar,uchar,uchar *);sbit K1=P32;sbit K2=P33;sbit K3=P34;sbit K4=P35;uint Sp;float T=45;bit m=1,n=1;uchar LC

13、D_DSP=00.0 r/min;uchar LCD_DSP1= up ; uchar LCD_DSP2=down;uchar LCD_DSP3=; uchar code FFW=0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9; /八拍正转uchar code REV=0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1; /八拍反转 void delay(uint t) uchar i; while(t-) for(i=0;i80;i+); void motor_ffw() /正转 uchar i,j; for(j=0;j2;j+)

14、for(i=0;i8;i+) P1 = FFWi; delay(T); /调节转速 if(m=1) break; void motor_rev() /反转 uchar i,j; for(j=0;j2;j+) for(i=0;i8;i+) P1 = REVi; delay(T); /调节转速 if(m=1) break; void Format_speed(uchar d,uchar *a) /速度转换为数字字符a0=d+0; void main() TMOD=0x66; TH0=TL0=0xff; TH1=TL1=0xff; TR0=1; TR1=1; IT0=1; IT1=1; IE=0x8

15、f; Initialize_LCD(); while(1) if(m=0) if(n=0) ShowString(9,1,2,LCD_DSP3); motor_ffw(); else ShowString(9,1,2,LCD_DSP4); motor_rev(); Sp=(uint)(9000/T); else P1=0xf9; Sp=0; ShowString(9,1,2, ); Format_speed(Sp/100, LCD_DSP);Format_speed(Sp%100/10, LCD_DSP+1);Format_speed(Sp%10, LCD_DSP+3);ShowString(

16、3,0,10,LCD_DSP); void EX_INT0() interrupt 0m=m;void Timer0() interrupt 1if(T15)T=T+0.2;else if(T20)T=T+0.5;else if(T30)T=T+1;else if(T40)T=T+2;else if(T50)T=T+3;else if(T100)T=T+6;else if(T150)T=T+18;else if(T150)T=T-25;else if(T100)T=T-18;else if(T50)T=T-6;else if(T40)T=T-3;else if(T30)T=T-2;else i

17、f(T20)T=T-1;else if(T15)T=T-0.5;else if(T11)T=T-0.2;elseT=11;ShowString(2,1,4,LCD_DSP1);delay(400);ShowString(2,1,4, );八、设计体会通过此次课程设计,首先,我更加扎实的掌握了有关单片机的控制、LCD1602液晶显示、C语言编程等方面的知识以及步进电机原理、控制、驱动方面的知识;其次,我进一步懂得了如何对一个课程设计进行整体规划和实行。在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查,终于找出了原因所在,但也暴露出了我前期在这方面的知识欠缺。实践出真知,通过Proteus的仿真,外加开发板调试,使得设计的过程更加顺畅,也使我掌握的知识不再是纸上谈兵。九、参考文献1徐煜明.C51单片机及应用系统设计.电子工业出版社2彭伟.单片机C语言程序设计实训100例基于8051+Proteus仿真.电子工业出版社3郭天祥.51单片机C语言教程入门、提高、开发、拓展全攻略.电子工业出版社4张齐.单片机与应用系统设计基于C51的8051+Proteus仿真实验与解题指导.电子工业出版社欢迎您的下载,资料仅供参考!

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2