if(!KEY2) {
Flag++; //s3按下触发一次 if(Flag==3) Flag=0; } }
5.4步进电机驱动程序 #include
unsigned char Flag;//定义正反转和停止标志位 sbit KEY = P3^3;
unsigned char code F_Rotation[4]={0xf1,0xf2,0xf4,0xf8}; //正转表格 unsigned char code B_Rotation[4]={0xf8,0xf4,0xf2,0xf1}; //反转表格 /******************************************************************/ /* 延时函数 */ /******************************************************************/ void Delay(unsigned int i)//延时 {
while(--i); }
/******************************************************************/ /* 主函数 */ /******************************************************************/ main() {
unsigned char i;
EX1=1; //外部中断0开 IT1=1; //边沿触发 EA=1; //全局中断开
while(Flag==0) {
P0=0x71;//显示 F 标示正转 for(i=0;i<2;i++) //2相 {
26
基于单片机的步进电机控制系统设计
P1=F_Rotation[i]; //输出对应的相可以自行换成反转表格
Delay(500); //改变这个参数可以调整电机转速 ,数字越小,转速越大
} }
while(Flag==1) {
P0=0x7C;//显示 b 标示反转 for(i=0;i<2;i++) //2相 {
P1=B_Rotation[i]; //输出对应的相
Delay(500); //改变这个参数可以调整电机转速 ,数字越小,转速越大
} }
while(Flag==2) //停止 {
P0=0x6D;// 显示 S P1=0; } }
/******************************************************************/ /* 中断入口函数 */ /******************************************************************/ void ISR_Key(void) interrupt 2 using 1 {
Delay(500); if(!KEY) {
Flag++; //s3按下触发一次 if(Flag==3) Flag=0; } }
6 总结
27
采用单片机作为控制核心,利用其强大的功能,键盘电路和数字显示电路,电机驱动电路,电机电流检测电路的有机结合,形成一个操作方便,交互性强的简单系统。通过设计实现系统的设计目标,完成所有设计任务,具体功能如下:系统的软件编程的硬件设计,可以通过键盘电路控制步进电机的速度控制,可以实现启动,正转,反转,加速,减速控制,实现速度最小为25 rpm,最大转速180 rpm;通过单片机实现控制两相输出脉冲序列。驱动电路提供12V,0.3A驱动信号;电机的旋转速度,旋转方向,所检测到的电机电流可由数码管显示;结果是最终的步进电机控制电路板的形式显示出来。本文电机驱动模块的正常工作,驱动芯片L298及其外围电路的设计实现,具有成本低,可靠性高,出现问题容易维护,实现相对容易等特点。在电机的工作模式上,设计并实现了电机的两相带脉冲控制方式。 参考文献
28
基于单片机的步进电机控制系统设计
[1] 杜家熙.基于单片机的步进电机控制器设计[J].煤矿机械,2007(1):1. [2] 王迎旭.单片机原理及应用[M].北京:机械工业出版社,2005,10:4.
[3] 张迎新.单片微型计算机原理及接口技术[M].北京:国防工业出版社,2007,3:36.
[4] 周向红.51系列单片机应用与实践教程[M].北京:北京航天航空大学出版社,2011,1:14-15. [5] 陈石龙.基于单片机的步进电机控制系统[J].宁德师专学报(自然科学版),2009(3):20. [6] 顾德英,张健,马淑华.计算机控制技术[M]. 北京:北京邮电大学出版社,2006:72-73. [7] 张芬.步进电动机及其选用[J].科技信息(学术版),2007(9):5.
[8] 王志强.步进电机和交流伺服电机性能综合比较[J].天津职业院校联合学报,2006(5):38. [9] 郭天祥.新概念51单片机C语言教程[M].北京:电子工业出版社,2009,8:113-114. [10] 张家生.电机原理与拖动基础[M].北京:北京邮电大学出版社,2006,5:62-63. [11] 黄友群.全自动弹簧检测仪的开发与应用[D].南京:东南大学,2009:31. [12] 李春川.电视机I2C总线控制器研究及实现[D].成都:电子科技大学,2007:23. [13] 段渊博.电调天线控制器关键技术研究[D].西安:西安电子科技大学,2009:42. [14] 李朝青.单片机原理及接口技术[M].北京:北京航空航天大学出版社,2012,10:22-24. [15] 沈永明.430系列卫星接收机MCU电路的控制[J].卫星电视与宽带多媒体,2006(9):3.
致谢
29
在论文完稿之际,首先需要感谢的就是我的指导老师老师,感谢她对我的辛勤培养和精心指导。老师学识渊博、治学态度非常严谨、经验也很丰富,尤其是忘我工作的科研精神使我受益匪浅。在田老师的悉心指导和大力的帮助之下,我的毕业设计才能够顺利完成。
论文的完成还得感谢跟我一起学习的同学们,感谢他们在平时的学习生活中给予我的热心帮助与支持!再次要感谢我的母校,尤其是自动化专业所有的老师们,在这片净土读书四年,无形中塑造了我生命的气质、生活的方式,也练就了我乐观的心态和一颗感恩的心,没有你们悉心的指导和讲解,我就不可能完成此次比较专业的设计。最后,我要感谢多年来一直支持我、爱护我的父母和亲人,谨此向他们致以最由衷的感恩和敬意!
30
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于单片机的步进电机控制系统设计(6)在线全文阅读。
相关推荐: