步进电机简易控制系统设计Word文档下载推荐.docx
- 文档编号:20952265
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:18
- 大小:194.84KB
步进电机简易控制系统设计Word文档下载推荐.docx
《步进电机简易控制系统设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《步进电机简易控制系统设计Word文档下载推荐.docx(18页珍藏版)》请在冰豆网上搜索。
(3)在不断电的情况下能通过一个按钮能随时控制电机的停止。
(4)能显示电机当前的运行情况。
第3章设计思路与方案
对步进电动机的控制,接口采用软件方法控制步进电动机的旋转。
步进电动机的驱动电路由ULN2003A芯片实现,并通过90C52芯片的P1.0~P1.6端口引脚出发,然后通过ULN2003A芯片再驱动电动机。
操作部分共分为五个操作按钮:
正转、反转、暂停、加速、减速。
其中正反转通过接入步进电机绕组的不同相序来实现。
加速、减速是通过延时时间的改变调整输入电机绕组的频率实现。
停止按钮则保证随时可以在不断电源情况下暂停。
五个操作按键分别通过90C52芯片的P3.0~P3.4口读取正/反转控制信号(K1、K2)、启/停(K0)以及加速/减速控制(K3、K4)的值。
对步进电机简易控制系统的设计,其具体情况可以根据任务要求从以下几个方面来考虑:
3.1控制电机正/反向转
步进电动机某一项绕组通电时,在其内部形成N-S极,产生磁场,在磁场的作用下,转子将会转动,步进一步。
若步进电动机按顺序给绕组通电,步进电动机将沿顺时针方向转动。
若步进电动机按逆序给绕组通电,则步进电动机将沿逆时针方向转动。
因而只要控制脉冲输出的顺序,就可实现对步进电动机正/反转的控制。
3.2控制电机运转速度
步进电动机运转的速度是由输入到电机绕组的频率所决定的。
频率越高,电动机运转的速度越快,否则,速度就越慢。
因而通过延时程序控制输出脉冲的频率,就可以实现对步进电动机转速的控制。
第4章硬件电路设计
步进电机简易控制系统设计包含了主控模块、按键控制模块、驱动控制模块、显示模块四个模块。
其功能实现是首先利用按键模块输入所要执行的任务,然后通过主控模块调用所对应的程序并把信息送给步进电机,使电机按照所按下的按钮命令来运转,同时在显示屏上显示当下的运行状态。
从而实现步进电机简易控制系统设计的功能。
其硬件总电路图如附录一所示。
4.1主控模块
主控模块采用的是90C52单片机芯片来控制。
90C52是一个8位单片机,片内ROM全部采用FLASHROM技术,晶振时钟为12MHz。
90C52是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,分别记作P0、P1、P2、P3。
第31引脚需要接高电位使单片机选用内部程序存储器;
P3口的引脚10到引脚14分别接正转按钮、反转按钮、暂停按钮、加速按钮、减速按钮;
引脚1到引脚7分别接芯片LN2003A的1、2、3、4引脚。
芯片接线简图如图1所示。
图190C52芯片图
4.2驱动控制模块
驱动电路主要是利用ULN2003A芯片来来驱动电机。
ULN2003A的原理是ULN2004A是一个7路反向器电路,即当输入端为高电平时ULN2003A输出端为低电平,当输入端为低电平时ULN2003A输出端为高电平,继电器得电吸合。
如下图3所示。
ULN2003A的引脚1、2、3、4分别接单片机AT89C52的P1.0、P1.1、P1.2、P1.3;
LN2004A的1C引脚、2C引脚、3C引脚、4C引脚分别接电机的引脚A、C、A’、C’;
COM(引脚9)接电机引脚的B和B’并与高电平+12V相接。
目的是驱动电机,使电机正常工作。
图3驱动电路图
4.3按键控制模块
按键模块有五个按钮,正转按钮、反转按钮、加速按钮、减速按钮和暂停按钮,它们分别控制电机的正向转动、反向转动、加速、减速和随时暂停。
如下图2所示:
K1正向转动按钮一端接单片机AT89C52的P3.0(引脚10),K2反向转动按钮一端接单片机AT89C52的P3.1(引脚11),K3暂停按钮接一端单片机AT89C52的P3.2(引脚12),K4是加速按钮一端接单片机AT89C52的P3.3(引脚13),K4是减速按钮一端接单片机AT89C52的P3.4(引脚14),同时都接地。
当按下其中任意一个键时,其状态的变换都会通过相应的端口输入单片机,从而完成控制的输入。
图2按键控制模块图
4.4显示模块
使电机正常工作。
P2.0口控制位显示,P0.0~P0.6控制段显示。
同时都通过一个上拉电阻接高电平,上拉电阻起到限流作用。
图4显示模块
第5章系统软件设计
5.1主程序
主程序的源程序见附录二源程序清单表,正转子程序及主程序设计流程图如下图4图5所示:
图4
图5
5.2子程序
子程序有正\反转子程序、正转加\减速子程序、反转加\减速子程序、延时子程序和显示子程序。
它们的源程序见附录二源程序清单表。
第6章系统仿真
6.1KEIL调试控制程序
调试程序具体步骤如下:
(1)打开Keil编译软件。
(2)新建一个项目,在项目里进行设置,转换成HEX文件。
(3)将刚写好的汇编语言程序添加进去。
(4)点击编译生成后缀名为“.HEX”的文件。
6.2Proteus仿真
打开Proteus上的单片机控制步进电机电路图,点击AT89C52单片机,调用后缀名为.”HEX”的文件。
点击运行,观察现象。
当按下Proteus软件上的开始按钮时,电机不转动。
其显示如图6所示:
图6暂停转动图
当按下K2按钮时,电机则正向转动,电机转动一段时间后的显示图如图8所示:
图8反向转动图
当按下K1按钮时,电机开始正向转动,电机上显示的是转过的角度。
下面是当电机反向转动一段时间后的显示图如图7所示:
图7正向转动图
当按下按钮K4或K5时,电机相应的做加速转动或减速转动,但加速或减速到一定范围是则不能再加速或减速了。
K3是控制电机的暂停,任意时刻按下K3按钮,电机就停止转动。
当再次按下按钮K1或K2按钮时电机又重新开始工作。
第7章收获与体会
此次课程设计使我对步进电机的控制有了更深的了解,对单片机也有了更高层次的了解。
也使我意识到许多地方的缺陷,所谓基础不牢地洞山摇。
单片机编程是用汇编语言进行编程,也就需要我们对电路的分析,然后总结,查阅相关资料才能变成好的程序,编程讲究的是多动手写,自己写,用自己的思路,不怕写错,写错再改,懂得有新的思想这样才能提高。
另外,在做课程设计过程中,我表现出耐心不够、专业知识不扎实等不足,这些都需要我在以后的学习和工作不断的改进。
最后,我还要感谢在此次课程设计中帮助过我的老师和同学。
特别是李老师和与我同组的同学,是他们无私的帮助才使我顺利的完成了本次课程设计。
进度安排
设计时间为两周
第一周
星期一、上午:
布置课题任务,讲课及课题介绍
下午:
借阅有关资料,总体方案讨论
星期二、系统总体方案
星期四、设计及调试
星期五、设计及调试
第二周
星期一、设计及调试
星期二、设计及调试
星期三、设计及调试
星期四、写说明书
星期五、上午:
写说明书,整理资料
下午:
交设计资料,答辩
参考文献
参考文献
1、《单片机原理及应用》王迎旭
机械工业出版社
2、《微型计算机接口技术及应用》
刘乐善等华中科技大学出版社
3、《51系列单片机应用与实践教程》
周向红
北京航空航天大学出版社
4、C程序设计》(第三版)
谭浩强
清华大学出版
附录1总电路图
附录2源程序清单
;
程序功能:
开关控制步进电机正反转
数码管显示0表示电动机正转
;
1表示电动机反转
2表示电动机正转加速
3表示电动机正转减速
4表示电动机反转加速
5表示电动机反转减速
键的端口定义K1EQUP3.0;
正转键
K2EQUP3.1;
反转键
K3EQUP3.2;
停止键
K4EQUP3.3;
加速
K5EQUP3.4;
减速
主程序
STOP:
MOVP1,#0FFH;
关闭P1口
LOOP:
JNBK1,Z_M2;
正转键按下转正转扫描部分
JNBK2,F_M2;
反转键按下转反转扫描部分
JNBK3,STOP1;
停止键按下转停止部分
JMPLOOP
-----------------------------;
键盘消抖
STOP1:
ACALLDELAY
JNBK3,$
JMPSTOP
Z_M2:
JNBK1,$
JMPZ_M
F_M2:
JNBK2,$
JMPF_M
---------------------------;
正转子程序
Z_M:
MOVR0,#00H
Z_M1:
MOVR7,#0
ACALLDISPLAY
MOVA,R0
MOVDPTR,#TABLE
MOVCA,@A+DPTR
JZZ_M
MOVP1,A
JNBK3,STOP1
JNBK2,F_M2
JNBK4,ACC_M2_ZZ
JNBK5,DLY_M2_ZZ
INCR0
JMPZ_M1
RET
-----------------------------;
反转子程序
F_M:
MOVR0,#05H
F_M1:
MOVR7,#1
ACALLDISPLAY
JZF_M
JNBK1,Z_M2
JNBK4,ACC_M2_FZ
JNBK5,DLY_M2_FZ
JMPF_M1
-----------------------------;
正转加速子程序
ACC_M2_ZZ:
ACC_M1:
JZACC_M2_ZZ
ACALLDELAY1
MOVR7,#2
JMPACC_M1
正转减速子程序
DLY_M2_ZZ:
MOVR0,#00H
ACC_M2:
JZDLY_M2_ZZ
JNBK3,MID1
ACALLDELAY2
MOVR7,#3
JMPACC_M2
MID1:
LJMPSTOP1
MID2:
LJMPZ_M2
反转加速子程序
ACC_M2_FZ:
DLY_M1:
MOVA,R0
JZACC_M2_FZ
JNBK1,MID2
MOVR7,#4
JMPDLY_M1
反转减速子程序
DLY_M2_FZ:
DLY_M2:
JZDLY_M2_FZ
JNBK5,ACC_M2_FZ
MOVR7,#5
JMPDLY_M2
延时子程序
DELAY1:
MOVR1,#10
JMPD1
DELAY2:
MOVR1,#100
DELAY:
MOVR1,#40
D1:
MOVR2,#248
DJNZR2,$
DJNZR1,D1
DISPLAY:
PUSHACC;
显示子程序
PUSHDPH
PUSHDPL
MOVA,R7
CHANG:
MOVP0,A
CLRP2.0
SETBP2.0
POPDPL
POPDPH
POPACC
RET
TAB:
DB3FH,06H,5BH,4FH;
显示字符存放表
DB66H,6DH,7DH,07H
DB7FH,6FH,77H,7CH
DB39H,5EH,79H,71H
-----------------------------
TABLE:
DB0FCH,0F9H,0F3H,0F6H;
正反转编码存放表
DB00
DB0F3H,0F9H,0FCH,0F6H
/*DB0F7H,0F3H,0FBH,0F9H
DB00H*/
-------------------------------
END
电气与信息工程系课程设计评分表
项目
评价
优
良
中
及格
差
设计方案的合理性与创造性(10%)
开发板焊接及其调试完成情况*(10%)
硬件设计或软件编程完成情况(20%)
硬件测试或软件调试结果*(10%)
设计说明书质量(20%)
设计图纸质量(10%)
答辩汇报的条理性和独特见解(10%)
答辩中对所提问题的回答情况(10%)
完成任务情况(10%)
独立工作能力(10%)
出勤情况(10%)
综合评分
指导教师签名:
________________
日期:
________________
注:
表中标*号项目是硬件制作或软件编程类课题必填内容;
此表装订在课程设计说明书的最后一页。
课程设计说明书装订顺序:
封面、任务书、目录、正文、评分表、附件(非16K大小的图纸及程序清单)。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 步进 电机 简易 控制系统 设计