单片机毕业设计步进电机简易控制系统设计.docx
- 文档编号:3276504
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:17
- 大小:216.65KB
单片机毕业设计步进电机简易控制系统设计.docx
《单片机毕业设计步进电机简易控制系统设计.docx》由会员分享,可在线阅读,更多相关《单片机毕业设计步进电机简易控制系统设计.docx(17页珍藏版)》请在冰点文库上搜索。
单片机毕业设计步进电机简易控制系统设计
湖南技学院课程设计任务书
工学院机械系机械式及制造及其自动化专业08级1班
学号08010354姓名胡健康指导教师江苏
题目:
步进电机简易控制系统设计
课程:
单片机应用技术
课程设计时间2011年11月28日至12月11日共2周
课程设计工作内容与基本要求(设计要求、设计任务、工作计划、所需相关资料)(纸张不够可加页)
1.设计任务与要求(完成后需提交的文件和图表等)。
(1)能控制步进电机作正向和反向运转,要有正转和反转控制按钮。
(2)步距角为45度。
(3)在一定的范围内可以控制运转的速度,有加速和减速控制按钮。
(4)要求随时可以在不断电源情况下可以暂停,有一个暂停按钮。
2.安装调试要求
(1)安装时要仔细检查元器件和连接;
(2)进行元器件焊接;
(3)对电路板进行调试。
(4)观察结果并达到设计要求。
3.工作计划(进程安排)
序号
设计内容
所用时间
1
布置任务及调研
3天
3
制作与调试
7天
4
撰写设计报告书
4天
合计
14天
4.主要参考资料
《MCS-51单片机原理接口及应用》王质朴北京理工大学出版社
《单片机课程设计指导》皮大能北京理工大学出版社
系主任审批意见:
审批人签名:
日期:
步进电机简易控制系统设计
1设计目的
《单片机原理与应用》是电子信息工程专业的一门重要专业课,对应用能力和动手能力要求很高,课程设计环节是学生学习该课程后进行的一项必不可少的基本训练。
其主要目的是使学生增进对单片机的感性认识,加深对单片机理论方面的理解,巩固学生所学理论知识;使学生掌握单片机的内部功能模块的应用,培养学生系统设计的思想;培养学生的软件设计能力,提高学生的动手能力;培养学生查阅相关资料、撰写文档的能力和自学、科研的能力。
2设计任务与要求
(1)能控制步进电机作正向和反向运转,要有正转和反转控制按钮。
(2)步距角为45度。
(3)在一定的范围内可以控制运转的速度,有加速和减速控制按钮。
(4)要求随时可以在不断电源情况下可以暂停,有一个暂停按钮。
3设计思路与方案
对步进电动机的控制,接口采用软件方法控制步进电动机的旋转。
步进电动机的驱动脉冲由8031单片机编程实现,并通过8255芯片的A端口的PA0、PA1、PA2脚出发,然后再驱动电动机的A、B、C三相。
由于步进电动机各相电动机驱动电流较大,所以驱动步进电动机的各相支路均通过复合管驱动。
同时考虑到步进电动机各相电动机驱动电流较大,驱动电流的通断会造成电磁干扰的反串,从而影响单片机的正常工作,因此在输出通道上加入了光电隔离器,以割断步进电动机的电流驱动和8031单片机控制电路之间的电联系。
另外,在步进电动机的各相绕组上串接限流电阻,以防止过大的电流流过线圈。
在电动机绕组的两端并联了一个二极管,主要用于在复合管从导通转入截止的瞬间,吸收绕组线圈中的反电动势以避免产生电磁干扰影响其他电路的工作并击穿复合管。
通过8255片的B口读取启/停(K0)、正/反转控制信号(K1、K2)以及加速/减速控制(K3、k4)的值。
对步进电机简易控制系统的设计,其具体情况可以根据任务要求从以下几个方面来考虑:
3.1控制电机正/反向转
步进电动机有三相绕组A、B、C,当某一项绕组通电时,在其内部形成N-S极,产生磁场,在磁场的作用下,转子将会转动,步进一步。
若步进电动机按三相六拍方式来工作,则在A、B、C三相绕组上依次输入脉冲的顺序为:
步进电动机将沿顺时针方向转动。
若在A、B、C三相绕组上依次输入脉冲的顺序为:
则步进电动机将沿逆时针方向转动。
因而只要控制脉冲输出的顺序,就可实现对步进电动机正/反转的控制。
3.2控制电机运转速度
步进电动机运转的速度是由输入到A、B、C三相绕组的频率所决定的。
频率越高,电动机运转的速度越快,否则,速度就越慢。
因而通过延时程序控制输出脉冲的频率,就可以实现对步进电动机颛顼的控制。
3.3控制电机转动角度
通常,按A→B→C→A(或A→C→B→A)的顺序轮流通电,则步进电动机会沿瞬时针(或逆时针)方向转动,这种运行方式被称为三相单三拍方式。
“三相”是指定子三相绕组;“单”是指每次只有一相绕组通电;“拍”是指从一种通电状态转换到另一种通电状态;“三拍”是指经过三次切换控制绕组的通电状态为一个循环,第四拍通电状态是重复第一拍的情况。
如果将该方式下每周运行的拍数(步数)设为N,则三相六拍方式下每周运行的拍数恰恰为2N。
4系统硬件设计
步进电机简易控制系统设计包含了主控模块、驱动模块、按键控制模块三个模块。
其功能实现是首先利用按键模块输入所要执行的任务,然后通过主控模块调用所对应的程序并把信息送给驱动模块,最后通过驱动模块驱动电机,使电机按照所按下的按钮命令来运转,从而实现步进电机简易控制系统设计的功能。
其硬件总电路图如附录一所示。
4.1主控模块
主控模块采用的是AT89C52单片机芯片来控制。
AT89C52是一个8位单片机,片内ROM全部采用FLASHROM技术,晶振时钟为12MHz。
AT89C52是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,分别记作P0、P1、P2、P3。
第31引脚需要接高电位使单片机选用内部程序存储器;P0口的引脚39到引脚35分别接暂停按钮、反转按钮、正传按钮、加速按钮、减速按钮;引脚21到引脚24分别接芯片LN2004A的1、2、3、4引脚;引脚12接中断电路的与门;第九引脚接一个上自动复位电路;第18、19脚之间接上一个12MHz的晶振为单片机提供时钟信号;第40脚为电源端VCC,接+5V电源,第20引脚为接地端VSS。
芯片图如图1所示。
图1AT89C52芯片图
4.2按键控制模块
按键模块有五个按钮,暂停按钮、反转按钮、正传按钮、加速按钮和减速按钮,它们分别控制电机的随时暂停、反向转动、正向转动、加速和减速。
如下图2所示。
STOP暂停按钮接一端单片机AT89C52的P3.0(引脚39),FOR反向转动按钮一端接单片机AT89C52的P3.1(引脚38),REV正向转动按钮一端接单片机AT89C52的P3.2(引脚37),FF是加速按钮一端接单片机AT89C52的P3.3(引脚36),RR是减速按钮一端接单片机AT89C52的P3.4(引脚35),同时都通过一个上拉电阻接高电平+12V。
他们的另一端都接地。
当按下其中任意一个键时,它就与的直接相连。
与门D4与中断入口AT89C52的INT0(引脚12)相接。
图2按键控制模块图
4.3驱动控制模块
驱动电路主要是利用LN2004A芯片来来驱动电机。
LN2004A的原理是LN2004A是一个7路反向器电路,即当输入端为高电平时ULN2003输出端为低电平,当输入端为低电平时ULN2004A输出端为高电平,继电器得电吸合。
如下图3所示。
ULN2004A的引脚1、2、3、4分别接单片机AT89C52的P2.0、P2.1、P2.2、P2.3;LN2004A的1C引脚、2C引脚、3C引脚、4C引脚分别接电机的引脚A、C、A’、C’;COM(引脚9)接电机引脚的B和B’并与高电平+12V相接。
目的是驱动电机,使电机正常工作。
图3驱动电路图
5系统软件设计
5.1主程序
主程序的源程序见附录二源程序清单表,主程序设计流程图如下图4所示:
图4
5.2子程序
子程序有正\反转子程序和加\减速子程序。
它们的源程序见附录二源程序清单表。
6系统仿真
6.1WAVE调试控制程序
调试程序具体步骤如下:
(1)打开WAVE编译软件。
(2)新建一个项目,在项目里进行设置,转换成HEX文件。
(3)将刚写好的汇编语言程序添加进去。
(4)点击编译生成后缀名为“.HEX”的文件。
6.2Proteus仿真
打开Proteus上的单片机控制步进电机电路图,点击AT89C52单片机,调用后缀名为.”HEX”的文件。
点击运行,观察现象。
当按下Proteus软件上的开始按钮时,电机不转动。
其显示如图5所示:
图5暂停转动图
当按下FAR按钮时,电机开始反向转动,电机上显示的是转过的角度。
下面是当电机反向转动一段时间后的显示图如图6所示:
图6反向转动图
当按下REV按钮时,电机则正向转动,电机转动一段时间后的显示图如图7所示:
图7正向转动图
当按下按钮EE或RR是,电机相应的做加速转动或减速转动,但加速或减速到一定范围是则不能再加速或减速了。
STOP是控制电机的暂停,任意时刻按下STOP按钮,电机就停止转动。
当再次按下按钮ROR\REV按钮时电机又重新开始工作。
7收获与体会
在这次单片机课程设计中使我对步进电机的控制有了更深的了解,对单片机也有了更高层次的了解,单片机的种类多,而型号杂,这也是我们学习中的困难,所以就MCS-51系列的产品来说,就是一个典型的学习方法。
单片机编程是用汇编语言进行编程,也就需要我们对电路的分析,然后总结,查阅相关资料才能变成好的程序,编程讲究的是多动手写,自己写,用自己的思路,不怕写错,写错再改,懂得有新的思想这样才能提高。
我是一个电子信息工程专业的在校学生,在对元件的选取中表现出来许多的不足,比如在选单片机芯片是我选了一块AT89C51,是老师告诉我这种芯片已经在早几年停产了。
这使深深的体会到在做设计的同时要联系实际,跟上时代的步伐。
另外,在做课程设计过程中,我表现出耐心不够、专业知识不扎实等不足,这些都需要我在以后的学习和工作不断的改进。
在这次步进电机简易控制系统的设计中还有一些待改进的地方,比如用一个AT89C52芯片可以同时控制两个互不干扰的步进电机;可以在此设计的基础上加上一个显示模块,使我们在对步进电机的控制过程中更加直观、更加方便;还有对转速的控制可以更精确、控制范围更大。
最后,我还要感谢在此次课程设计中帮助过我的老师和同学。
特别是肖老师和与我同组的同学,是他们无私的帮助才使我顺利的完成了本次课程设计。
参考文献
[1]陈伯阳.单片机原理及应用实验指导书.自编实验指导书,配合实验平台进行
[2]李朝青.单片机原理及接口技术(第3版)北京:
北航出版社,2006
[3]赵亮,候国锐.单片机C语言编程与实例.北京:
人民邮电出版社,2003
[4]沙占友,王彦朋,孟志永.单片机外围电路设计. 北京:
电子工业出版社,2003
附录一总电路图
附录二源程序清单
ZHENGEQU30H;电机动作开关
FANEQU31H;方向标志位,1为正传
NOEQU32H;脉冲计数器
ASEQU33H;秒钟计数器
SSEQU34H;电机停时中断计数器
ORG00H
AJMPMAIN
ORG03H
AJMPSUB_INT0;中断入口
ORG30H
MAIN:
MOV10H,#01H
MOV11H,#03H
MOV12H,#02H
MOV13H,#06H
MOV14H,#04H
MOV15H,#0CH
MOV16H,#08H
MOV17H,#09H
MOV20H,#50
MOV21H,#25
MOV22H,#10
MOV23H,#05
CLRZHENG
CLRFAN
CLRNO
CLRAS
CLRSS
MOVR1,#20H
MOVA,@R1
MOVR5,A
MOVIE,#10000001B允许EX0中断
SETBIT0电平触发
MOVR0,#0FH
LOOP:
JNBZHENG,LP
CALLGO
LP:
JNBFAN,LOOP
CALLBACK
AJMPLOOP
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(中断)
SUB_INT0:
SCAN:
MOVA,P0
CPLA
ANLA,#00011111B
JNZSCAN1
AJMPSCAN
SCAN1:
CALLDELAY1;调用延时程序
MOVA,P0;P0口输入
CPLA
ANLA,#00011111B
JZSCAN;是否有键按下
CALLRDKEY;调用按键程序
RETI
RDKEY:
MOVA,P0
JNBACC.0,STOP;是否是暂停按键
JNBACC.2,REV;是否是反转按键
JNBACC.1,FOR;是否是正传按键
JNBACC.3,ADDSPEED;是否是加速按键
JNBACC.4,SUBSPEED;是否减速按键
STOP:
SETBNO
RET
FOR:
SETBZHENG
RET
REV:
SETBFAN
RET
ADDSPEED:
SETBAS;
RET
SUBSPEED:
SETBSS
RET
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(正转)
GO:
CLRZHENG
CLRFAN
CLRNO
CLRAS
CLRSS
INCR0
MOVA,R0
CJNEA,#18H,GO2
MOVR0,#10H
GO2:
MOVP2,@R0;P2口输出
MOVA,@R1
MOVR5,A
CALLDELAY
JBNO,RETURN
JBZHENG,RETURN
JBFAN,RETURN
JNBSS,GO3
CALLJIAN
GO3:
JNBAS,GO4
CALLJIA
GO4:
AJMPGO
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(反转)
BACK:
CLRZHENG
CLRFAN
CLRNO
CLRAS
CLRSS
DECR0
MOVA,R0
CJNEA,#0EH,TT
MOVR0,#17H
SJMPBACK2
TT:
CJNEA,#0FH,BACK2
MOVR0,#17H
BACK2:
MOVP2,@R0
MOVA,@R1
MOVR5,A
CALLDELAY
JBNO,RETURN
JBZHENG,RETURN
JBFAN,RETURN
JNBAS,BACK3
CALLJIA
BACK3:
JNBSS,BACK4
CALLJIAN
BACK4:
AJMPBACK
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(加速)
JIA:
MOVA,R1
CJNEA,#23H,JIA1
RET
JIA1:
INCR1
RET
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(减速)
JIAN:
MOVA,R1
CJNEA,#20H,JIAN1
RET
JIAN1:
DECR1
RET
RETURN:
RET
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(延时)
DELAY:
D1:
MOVR6,#50
D2:
MOVR7,#150
D3:
DJNZR7,$
DJNZR6,D2
DJNZR5,D1
RET
DELAY1:
MOVR6,#60
D4:
MOVR7,#100
DJNZR7,$
DJNZR6,D4
RET
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 毕业设计 步进 电机 简易 控制系统 设计
![提示](https://static.bingdoc.com/images/bang_tan.gif)