版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机系统开发与应用工程实习报告选题名称:基于AT89S52单片机的控制步进电机系(院): 计算机工程学院 专业:计算机科学与技术(嵌入式软件技术与设计)班级:姓名:学号:指导教师: 学年学期: 2009 ~2010学年第2学期 2010 年5 月30 日摘要:步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。由于脉冲信号数与步距角的线性关系,加上步进电机只有周期性的误差而无累积误差等特点,使得在速度、位置等控制领域用步进电机来控制变的非常的简单。关键词:步进电机;单片机;步距角
目 录TOC\o"1-2"\h\u182511课题综述 194141.1课题来源和意义 1126101.2预期目标 1177212系统分析 193452.1框图设计 178872.2晶振电路 2272413系统设计 239013.1硬件连接图 292853.2按键功能 3192823.3单片机 345313.4驱动电路 45514软件设计 5172654.1软件流程图 5284984.2激磁方式 5259585程序代码 631538总 结 1125121参考文献 121课题综述1.1课题来源和意义步进电机是一种将电脉冲转换成相应角位移或线位移的电磁机械装置,也是一种能把输出机械位移增量和输入数字脉冲对应的驱动器件。步进电机具体有快速启动、停止的能力,精度高、控制方便,因此,在工业上得到广泛应用。1.2预期目标(1)开始通电时,步进电机停止转动。(2)单片机分别接有按键开关K1、K2和K3,用来控制步进电机的转向,要求如下:当按下K1时,步进电机正转。当按下K2时,步进电机反转。当按下K3时,步进电机停止转动。(3)正转采用1相激磁方式,反转采用1~2相激磁方式。2系统分析2.1框图设计根据系统要求画出基于AT89S52单片机的控制步进电机的控制框图如图2-1所示。按键按键电路复位电路晶振电路AT89S52电源电路驱动电路步进电机图2-1基于AT89S52单片机的控制步进电机的控制框图系统主要包括单片机、复位电路、晶振电路、按键电路、步进电机及驱动电路几部分。2.2晶振电路AT89S52单片机有一个用于构成内部振荡器的反相放大器,XTAL1和XTAL2分别是放大器的输入、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器。晶振模块自带振荡器、提供低阻方波输出,并且能够在一定条件下保证运行。最常用的两种类型是晶振模块和集成RC振荡器(硅振荡器)。晶振模块提供与分立晶振相同的精度。硅振荡器的精度要比分立RC振荡器高,多数情况下能够提供与陶瓷谐振槽路相当的精度。图2-2为晶振电路。图2-2晶振电路3系统设计3.1硬件连接图根据图2-1,可以设计出单片机控制步进电机的硬件电路图,如图3-1所示。图3-1硬件连接图3.2按键功能按键采用3个功能键,K1、K2和K3按键开关分别接在单片机的P0.0~P0.2引脚上,用来控制步进电机的转向,作为控制信号的输入端键。按K1时,步进电机正传;按K2时,步进电机反转;按K3时,步进电机停止转动。3.3单片机 At89s52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。。At89s52主要技术参数如下:与MCS-51单片机产品兼容8K字节在系统可编程Flash存储器1000次擦写周期全静态操作:0Hz~33MHz三级加密程序存储器32个可编程I/O口线三个16位定时器/计数器图3-2AT89S52引脚图3.4驱动电路单片机的输出电流太小,不能直接与步进电机相连,需要增加驱动电路。对于电流小于0.5A的步进电机,可以采用ULN2003类的驱动IC。ULN2003技术参数如下所示。最大输出电压:50V。最大连续输出电流:0.5A。最大连续输入电流:25mA。功耗:1W。如图3-3所示为2001/2002/2003/2004系列驱动器引脚图,图3-3左侧1~7引脚为输入端,接单片机P1口的输出端,引脚8接地;右侧10~16引脚为输出端,接步进电机,引脚9接电源+5V,该驱动器可提供最高0.5A的电流。图3-3ULN20034软件设计4.1软件流程图程序设计流程图如图4-1所示,主要包括键盘扫描模块、步进电机正转模块、步进电机反转模块和步进电机定时模块。YYYYY开始设置堆栈步进电机停转按键扫描K1按下吗K2按下吗K3按下吗步进电机正转模块步进电机反转模块步进电机停转读取表格输出结束NN4.2激磁方式步进电机正转采用1相激磁方式,正转工作时序如表4-2所示;步进电机反转采用1~2相激磁方式,工作时序如表4-3所示。表4-2相激磁方式正转时序步进数代码111000FCH210010F9H300110F3H401100F6H表4-3相激磁方式反转时序步进数P1.2代码101110F7H200110F3H310110FBH410010F9H511010FDH611000FCH711100FEH801100F6H5程序代码#include<reg52.h>sbitp00=P0^0;sbitp01=P0^1;sbitp02=P0^2;unsignedcharcodeForward[4]={0xFC,0xF9,0xF3,0xF6};//正转表格unsignedcharcodeReturn[8]={0xF7,0xF3,0xFB,0xF9,0xFD,0xFC,0xFE,0xF6};//反转表格voiddelay(unsignedinti)//延时{while(--i);}/***********步进电机正转P0口的第三口,P0^2***********************/voidturnfor(void){ unsignedchari; while(1) { if(p00==0) { delay(1000); if(p00==0) break; } if(p01==0) { if(p01==0) break; } for(i=0;i<4;i++) { P1=Forward[i]; delay(2000); } } }/********************步进电机反转 P0口的第二口,P0^1*********************/voidretur(void){ unsignedchari; while(1) { if(p00==0) { delay(1000); if(p00==0) break; } if(p02==0) { delay(1000); if(p02==0) break; } for(i=0;i<8;i++) { P1=Return[i]; delay(2000); } } }/*****************步进电机停止转动 P0口的第一口,P0^0*******************/voidstop(void){ while(1) { if(p01==0) { delay(1000); if(p01==0) break; } if(p02==0) { if(p02==0) break; } } }/************************步进电机转动主函数*******************************/voidMain(void){ stop(); while(1) { if(p00==0) { delay(1000); if(p00==0) stop(); } if(p01==0) { delay(1000); if(p01==0) retur(); } if(p02==0) { delay(1000); if(p02==0) turnfor(); } }}总 结在单片机课程设计的学习过程中,我把老师以前教导的内容反馈到实践中来,在实践中验证了学习到的理论,同时也对理论知识进行了巩固。虽然说对于单片机技术依然处于入门阶段,但是通过课程设计让我体验到了单片机技术的魅力。看一堆元器件在自己手工焊接下成为一个能正常工作的电子产品,让我有巨大的成就感。在焊接元器件的时候,生疏的焊接技巧得到锻炼,焊点越来越美观。同时在设计之初就考虑到元器件的排布,为了让成品更好看,我还将焊接好的元器件拆下从新布局。在硬件部分完成后,开始设计软件。刚开始使用汇编,但是对于汇编掌握的不够好,于是不得不用C来编写。但是也从中感受到用高级语言编写的高效,快捷,简便。经过一周的努力,顺利完成课程设计。从硬件到软件,都是自己付出的成果。虽然有一些遗憾,比如没能用汇编写出程序,但是收获是巨大的,课程设计完成后,我的目标就是用汇编将源程序进行改写,来锻炼自己对汇编语言的熟练程度以及理解。最重要的是,我从这次课程设计中得到了信心,很久没有像这样的机会体验到巨大的成就感,这成就感会让自己受用一生,帮助自己取得更大的成就。参考文献1.胡汉才,单片机原理及其接口技术。清华大学出版社,19962.王晓明,电动机的单片机控制。北京航空航天大学出版社,20023.曾一江,单片机原理与接口技术。北京:科学出版社,20064.何立民,MCS-51系列单片机应用系统设计。北京:北京航空航天大学出版社,19905.任志锦,电机与电气控制。北京:机械工业出版社,20026.彭沛夫,张桂芳,微机控制技术与实验指导。北京:清华大学出版社,20057.杨渝钦,控制电机。北京:机械工业出版社,1995指导教师评语学号姓名班级选题名称基于AT89S52单片机的控制步进电机序号评价内容权重(%)得分1考勤记录、学习态度、工作作风与
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中等教育特色学校发展与示范建设考核试卷
- 施工现场安全教育机械安全篇考核试卷
- 环保的意义理论与实践考核试卷
- 炼铁生产中的作业安全操作规程考核试卷
- 危险品仓储应急救援演练考核试卷
- 拆船业在全球产业链中的位置考核试卷
- 可穿戴设备在健康管理中的实际效果考核试卷
- 信息系统的组织与企业管理考核试卷
- 低温仓储人员安全行为培训考核试卷
- DB11T 494.12-2013 人力资源服务规范 第12部分:劳务派遣
- 251直线与圆的位置关系(第1课时)(导学案)(原卷版)
- 2024浙江绍兴市人才发展集团第1批招聘4人(第1号)高频难、易错点500题模拟试题附带答案详解
- 幼儿园说课概述-课件
- 冠状动脉介入风险预测评分的临床应用
- 35导数在经济中的应用
- 苏科版(2024新版)七年级上册数学期中学情评估测试卷(含答案)
- 部编版《道德与法治》三年级上册第10课《父母多爱我》教学课件
- 期中模拟检测(1-3单元)2024-2025学年度第一学期西师大版二年级数学
- 气管插管操作规范(完整版)
- 2024-2025学年外研版英语八年级上册期末作文范文
- 四级劳动关系协调员试题库含答案
评论
0/150
提交评论