微机原理与应用步进电机控制系统设计

上传人:仙*** 文档编号:36200548 上传时间:2021-10-29 格式:DOC 页数:26 大小:1.48MB
收藏 版权申诉 举报 下载
微机原理与应用步进电机控制系统设计_第1页
第1页 / 共26页
微机原理与应用步进电机控制系统设计_第2页
第2页 / 共26页
微机原理与应用步进电机控制系统设计_第3页
第3页 / 共26页
资源描述:

《微机原理与应用步进电机控制系统设计》由会员分享,可在线阅读,更多相关《微机原理与应用步进电机控制系统设计(26页珍藏版)》请在装配图网上搜索。

1、湖南工程学院课 程 设 计课程名称课程名称 微机原理与应用微机原理与应用 课题名称课题名称 步进电机控制系统设计步进电机控制系统设计 专专 业业 电子科学与技术电子科学与技术 班班 级级 08020802 学学 号号 姓姓 名名 * 指导教师指导教师 * 20112011 年年 6 6 月月 2727 日日湖南工程学院课 程 设 计 任 务 书课程名称课程名称 微机原理与应用微机原理与应用 课课 题题 步进电机控制系统设计步进电机控制系统设计 专业班级专业班级 电子科学与技术电子科学与技术 08020802 班班 学生姓名学生姓名 * 学学 号号 * 指导老师指导老师 * 审审 批批 任务书下

2、达日期 2011 年 6 月 27 日任务完成日期 2011 年 7 月 8 日设计内容与设计要求设计设计内容:内容:以单片机为核心设计一个步进电机控制系统,要求能够通过键盘设置步进电机的转向和转速,并在 4 位 LED 显示器上显示步进电机转速或工作状态。设计设计要求:要求:1)确定系统设计方案; 2)进行系统的硬件设计;3)完成应用程序设计;4)硬件电路及应用程序的调试。主主 要要 设设 计计 条条 件件本课题以单片机为核心,设计并制作出步进电机控制系统,设计要求:1. 按下不同的键,分别使步进电机实现顺时针和逆时针旋转;2. 步进电机可实现正、反转,加速、减速等工作状态;3. 通过 LE

3、D 数码管显示步进电机运行速度或工作状态;说 明 书 格 式1 课程设计任务书2 目录3 总体方案确定4 各单元硬件电路设计说明及计算方法5 软件设计与说明(包括流程图)6 调试结果与必要的调试说明7 使用说明8 总结9 参考文献附录附录 A 系统原理图附录 B 程序清单进 度 安 排设计时间为两周第一周星期一、上午:布置课题任务,讲课及课题介绍 下午:借阅有关资料,总体方案讨论星期二、系统总体方案星期四、设计及调试星期五、设计及调试第二周星期一、设计及调试星期二、设计及调试星期三、设计及调试星期四、写说明书星期五、上午:写说明书,整理资料下午:交设计资料,答辩参 考 文 献参考文献1王迎旭.

4、单片机原理与应用.北京:机械工业出版社,2004.7目录目录第第 1 1 章章 概述概述.1 11.1 单片机概述 .11.2 步进电机概述 .2第第 2 2 章章 系统总体方案设计系统总体方案设计.3 32.1 系统总体设计思路 .32.2 系统总体设计方案方框图 .3第第 3 3 章章 硬件介绍与说明硬件介绍与说明.4 43.1 开发板按键硬件连接及实物说明 .43.2 开发板数码管硬件连接及实物说明.53.3 开发板步进电机硬件连接及实物图 .6第第 4 4 章章 软件设计流程软件设计流程.7 74.1 系统整体流程概述 .74.2 系统整体流程图 .8第第 5 5 章章 调试结果与说明

5、调试结果与说明.9 95.1 系统调试 .95.2 调试说明 .95.3 调试结果 .10第第 6 6 章章 总结总结.1212参考文献参考文献.1313附录附录.1414附录 A 系统原理图.14附录 B 程序清单.15第第 1 章章 概述概述1.1 单片机概述单片机概述单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。

6、单片机也被称为微控制器(Microcontroller) ,是因为它最早被用在工业控制领域。单片机由芯片内仅有 CPU 的专用处理器发展而来。最早的设计理念是通过将大量外围设备和 CPU 集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL 的 Z80 是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。AT89 系列单片机。他不但具有一般MCS-51 单片机的所有特性,而且还拥有一些独特的优点,此次设计中所用到的 STC90C52RC 就是其中典型的代表。STC 单片机是以 51 内核为主的单片机 : 高速:1 个时钟/

7、机器周期,增强型 8051 内核,速度比普通 8051 快 812倍宽电压:5.54.1V/3.7V,3.6V2.4V/2.1V(STC11/10L 系列)低功耗设计:空闲模式(可由任意一个中断唤醒)低功耗设计:掉电模式(可由任意一个外部中断唤醒,可支持下降沿/低电平和远程唤醒,STC11xx 系列还可通过内部专用掉电唤醒定时器唤醒)工作频率:035MHz,相当于普通 8051:0420MHz。 1.2 步进电机概述步进电机概述步进电机是一种感应电机,它的工作原理是利用电子电路,将直流电变成分时供电的,多相时序控制电流,用这种电流为步进电机供电,步进电机才能正常工作,驱动器就是为步进电机分时供

8、电的,多相时序控制器 感应子式步进电机与传统的反应式步进电机相比,结构上转子加有永磁体,以提供软磁材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁材料工作点的耗能,因此该电机效率高,电流小,发热低。因永磁体的存在,该电机具有较强的反电势,其自身阻尼作用比较好,使其在运转过程中比较平稳、噪音低、低频振动小。 感应子式步进电机某种程度上可以看作是低速同步电机。一个四相电机可以作四相运行,也可以作二相运行。 (必须采用双极电压驱动) ,而反应式电机则不能如此。例如:四相,八相运行(A-AB-B-BC-C-CD-D-DA-A)完全可以采用二相八拍运行方式。 一个二相电机的内部绕组与四相电机完全一

9、致,小功率电机一般直接接为二相,而功率大一点的电机,为了方便使用,灵活改变电机的动态特点,往往将其外部接线为八根引线(四相) ,这样使用时,既可以作四相电机使用,可以作二相电机绕组串联或并联使用。完成一个磁场周期性变化所需脉冲数或导电状态用 n 表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相拍运行方式即 AB-BC-CD-DA-AB,四相八拍运动方式即 A-AB-B-BC-C-CD-D-DA-A。虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、

10、电机、电子及计算机等许多专业知识。 第第 2 章章 系统总体方案设计系统总体方案设计2.1 系统总体设计思路系统总体设计思路本系统,通过选取单片机的四个独立键盘作为信号控制的按键输入,并连接到单片机的 P3 口,通过单片机内部的处理将键盘的输入信号读入并执行相应的动作,并从 P,0,P2 口分别接数码管的段选端和位选端,从而使得四位数码管能按指定要求显示指点的档位加减,和步进电机运行状态的效果。同时利用程序对步进电机(本方案中采取四项四拍的方式)实施与数码管同步的相应运转状态,从而使得整个步进电机控制系统得以准确的实现。具体设计方框图如下。2.2 系统总体设计方案方框图系统总体设计方案方框图

11、P1 P0 STC89C54RTP3 P2 键盘输入驱动步进电机段选信号四位数码管片选信号键 盘 图图 2.1 总体总体设计方案方框图总体总体设计方案方框图第第 3 章章 硬件介绍与说明硬件介绍与说明本系统采用自备的 STC89C54RD+系列的单片机开发板进行硬件搭接与调试,并利用 C 语言编程来实现硬件的既定功能。下面就对此些列开发板的硬件电路原理图进行相应的说明。3.1 开发板按键硬件连接及实物说明开发板按键硬件连接及实物说明图 3.1 按键硬件连接及实物图图中 S1S4 可以配置成独立按键,即通过一个眺冒 J11 切换,在独立键盘配置中,应该把眺冒跳到左端,此时独立键盘才有效,由于,此

12、个步进电机控制系统中所用的按键刚好四个即可满足要求,因此,系统中采用独立键盘。本系统设计通过四个独立按键 S1,S2,S3,S4 接入单片机 P3 口前四位,当 S1 键按下时,步进电机正转,当 S2 键按下时,步进电机反转,当 S3 键按下时,步进电机通过按键的次数来增大步进电机的脉冲频率从而在原有的转速上进行加速,当 S4 键按下时,步进电机通过按键的次数来减小步进电机的脉冲频率从而在原有的转速上进行减速。由此,通过四个按键的控制即可实现步进电机的准确控制。3.2 开发板数码管硬件连接及实物说明开发板数码管硬件连接及实物说明图 3.2 数码管硬件连接及实物图图中 74HC573 11 脚接

13、 VCC,锁存不起作用,相当于直通,相应的段赋值为 1,A,B,C 赋值 07,则输出端分别是 Y0Y7 置 0,从而选通七个数码管,在此步进电机控制系统中仅使用三个数码管,一个用来显示电机运转状态,另外两个用来显示电机转速的不同档位。本系统设计通过 P0 口控制数码管的段选,P2 口控制数码管的八位数码管的位选,利用数码管的动态扫描选通数码管的 1,4,5 位数码管,其中第 1 位为电机的转动状态,4,5 位显示一个十位数以用来表示电机转动速度及档位的显示。3.3 开发板步进电机硬件连接及实物图开发板步进电机硬件连接及实物图图 3.3 步进电机硬件连接及实物图图中 ABCD 为 4 相信号输

14、入端,此端默认为悬空,需要用 4 根杜邦线连接至单片机 I/O 口,在此系统中,在软件中定义 ABCD 4 相分别为P1.0,P1.1, P1.2,P1.3,即可利用 4 根杜邦线将其连接即可。本系统设计接的是四项的步进电机,每项分别接到P1.0,P1.1,P1.2,P1.3 端口上,并通过程序来控制 P1 高低电平的循环输出。由于此电机利用的是四项四拍方式来驱动电机,因此,通过程序中的设置从而选择合适的脉冲输出频率从 P1 口的转换成高低电平信号输出,从而可以有效的驱动电机。 第第 4 章章 软件设计软件设计流程流程 4.1 系统整体流程概述系统整体流程概述本系统通过 C 语言编程,其中包括

15、数码管显示部分,键盘扫描部分,步进电机控制部分三个主要部分,进入程序先给数码管初始化然后设置中断的工作状态同时开启总中断,然后进入键盘扫描程序部分,首先判断 S1 键的状态,并通过按键的去抖程序后,给档位进行初始设置,同时设置标志位为 1。然后在保证 S2键没有按下的前提下进入转速控制子模块并开始检测 S3,S4 键的状态,并分别在相应的键按下时对档位进行相应的加减,并同步修改电机的转速参数。之后,再对中断装入初值,S1 键按下的程序中开启中断,从而程序进入中断并通过标志位的选择从而进入电机正反转的程序,并最后进入数码管的动态扫描。同理可以对 S2 键进行扫描,流程与上相似。4.2 系统整体流

16、程图系统整体流程图 图 4.1 系统工作流程图Y主程序有无键按下?等待键抬起N数码管,中断初始化键盘扫描一号键按下,启动中断数码管显示正转符号和档位二号键按下,启动中断三号键按下,启动中断四号键按下,启动中断数码管显示反转符号和档位正反转符号不变,档位加一正反转符号不变,档位减一第第 5 章章 调试结果与说明调试结果与说明5.1 系统调试系统调试本系统调试过程中采用直接硬件调试的方法,对整体的系统程序进行分解排故,首先对八段显像管进行数字显示测试,然后对键盘进行按键响应测试,当测试都得到正确结果时,将键盘与显示结合起来,并给予恰当的字型码,最后加入定时器中断程序,给出正确的脉冲信号和频率。5.

17、2 调试说明调试说明在调试过程中出现了不少问题,通过不同方法得到了解决,在此逐一进行说明:(1)显示管出现不停闪烁,不能清晰显示的问题,后查出由于延时程序过长没有小于眼镜分辨频率所致,缩短定时器定时后解决。(2)按键出现按下一键响应多次的情况,后查出由于键位抬起子程序书写不当,造成键盘多次响应,并加上了松手去抖程序后问题得以顺利解决。(3)在设计中断初值重装的时候,发现要适时的修改步进电机的脉冲频率,可以直接将控制电机转速参数的量直接赋到初值里面,这样的效果比通过固定初值再去计数的效果要好5.3 调试结果调试结果图 5.1 电机正转显示效果图图 5.2 电机反转显示效果图图 5.3 电机最高档

18、位显示效果图图 5.4 电机最低档位显示效果图第第 6 章章 总结总结这次单片机课程设计让我获益很多,由于先前我自己已经对单片机的基本功能都有个比较具体的了解,因此,对于这个课程设计我并不是很担心,因此,对于选题我也并不是很在意,那天老师给我们布置了课题后,我接到的是步进电机控制的课题,由于平时我对步进电机控制上并没有下太大的功夫,因此,对于这个课题还是比较陌生的,但是,我并不担心,接到课题后我就开始准备程序。其实,我做的还是比较顺利,由于先前一些基本的程序我自己都有编过,因此很多基本的模块就可以直接调用,像键盘扫描模块就可以直接调用,由于先前我的程序都是用 C 语言编的,因此,我也就没有打算

19、用汇编语言编程,将这些外面的控制模块都编好了后,我就开始查资料了解步进电机的工作原理及程序控制方法,了解完后,我也很顺利的编好了电机驱动程序,接下来就剩下了最后一个功能部分,也算是最关键的部分,那就是电机的加速减速,一开始,我是利用按键的按下次数来控制步进电机的延时程度,从而达到电机转速控制的效果。弄好了这个程序后,我后来就去拿给老师检查,但是老师说我的档位设置的不够,同时最好利用中断来控制步进电机的脉冲频率,要我回家继续修改,因此,我拿回程序后继续改进方案,最后,终于,按照老师的要求完成了目标同时也有了个比较好的硬件显示效果。至此,我的程序编译调试阶段算是结束了,剩下的就是报告的书写,我们老

20、师对我们要求很严格,报告一定要按照老师指定的规范书写,因此,在报告的书写上我们也获益匪浅,也理解到了做事情一定要细致。通过这次单片机课程设计,我不仅又重温了一下单片机的操作,同时也让我加深了对单片机的了解,尤其是对步进电机的工作原理及运转状态的控制有了个比较形象的认知,让我,在单片机上又有了更进一步的提升。最后,也得感谢我们的指导老师,由于她的严格要求让我们学到了更多。 参考文献参考文献1、 王迎旭编.单片机原理与应用M.机械工业出版社. 2、 楼然苗编.51 系列单片机设计实例M.北京航空航天大学出版社.3、 黄勤编.计算机硬件技术基础实验教程M.重庆大学出版社4、刘乐善编.微型计算机接口技

21、术及应用M.华中科技大学出版社.5、陈光东编.单片微型计算机原理及接口技术M.华中科技大学出版社. 附录附录附录附录 A 系统原理图系统原理图图 A 系统整体原理图附录附录 B 程序清单程序清单#include sbit key1=P30; /定义按键位置sbit key2=P31;sbit key3=P32;sbit key4=P33;unsigned int sudu,dang,flag,a,b,c,num,num1;unsigned char i=0;unsigned char code tab=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x0

22、7,0 x7f,0 x6f,0 x71,0 x7C,0 x77,0 x6d;unsigned char code seg=0,1,2,3,4,5,6,7;unsigned char code F_Rotation4=0 xf1,0 xf2,0 xf4,0 xf8;/正转表格unsigned char code B_Rotation4=0 xf8,0 xf4,0 xf2,0 xf1;/反转表格void delay(unsigned int cnt) /延时子程序 while(-cnt);void add()if(!key3) delay(1000); if(!key3) dang+; if(da

23、ng=19) dang=19;while(!key3) ;if(!key4) delay(1000); if(!key4) dang-; sudu=sudu+50; if(dang=4)i=0;if(flag=2)P1=B_Rotationi;i+;if(i=4)i=0;if(num=1) P2=seg0;P0=taba; delay(80); P2=seg4;P0=tabb; delay(80);P2=seg5;P0=tabc; delay(1);num=0;TR0=0;TR0=0;电气信息学院课程设计评分表项 目评 价设计方案的合理性与创造性开发板焊接及其调试完成情况硬件设计或软件编程完成情况*硬件测试及软件调试结果*设计说明书质量设计图纸质量答辩汇报的条理性和独特见解答辩中对所提问题的回答情况完成任务情况独立工作能力组织纪律性(出勤率)综合评分 指导教师签名:_ 日 期:_ 注:表中标*号项目是硬件制作或软件编程类课题必填内容;此表装订在课程设计说明书的最后一页。课程设计说明书装订顺序:封面、任务书、目录、正文、评分表、附件(非 16K 大小的图纸及程序清单) 。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!