武汉理工大学
信息工程课程设计报告书
课 程 名 称 单片机控制步进电机 课程设计总评成绩 学生姓名、学 号 学 生 专 业 班级 指 导 教 师 姓名 课程设计起止日期
课程设计基本要求
课程设计是工科学生十分重要的实践教学环节,通过课程设计,培养学生综合运用先修课程的理论知识和专业技能,解决工程领域某一方面实际问题的能力。课程设计报告是科学论文写作的基础,不仅可以培养和训练学生的逻辑归纳能力、
综合分析能力和文字表达能力,也是规范课程设计教学要求、反映课程设计教学水平的重要依据。为了加强课程设计教学管理,提高课程设计教学质量,特拟定如下基本要求。
1. 课程设计教学一般可分为设计项目的选题、项目设计方案论证、项目设计结果分析、答辩等4个环节,每个环节都应有一定的考核要求和考核成绩。
2. 课程设计项目的选题要符合本课程设计教学大纲的要求,该项目应能突出学生实践能力、设计能力和创新能力的培养;该项目有一定的实用性,且学生通过努力在规定的时间内是可以完成的。课程设计项目名称、目的及技术要求记录于课程设计报告书一、二项中,课程设计项目的选题考核成绩占10%左右。
3. 项目设计方案论证主要包括可行性设计方案论证、从可行性方案中确定最佳方案,实施最佳方案的软件程序、硬件电路原理图和PCB图。项目设计方案论证内容记录于课程设计报告书第三项中,项目设计方案论证主要考核设计方案的正确性、可行性和创新性,考核成绩占30%左右。
4. 项目设计结果分析主要包括项目设计与制作结果的工艺水平,项目测试性能指标的正确性和完整性,项目测试中出现故障或错误原因的分析和处理方法。项目设计结果分析记录于课程设计报告书第四项中,考核成绩占25%左右。
5. 学生在课程设计过程中应认真阅读与本课程设计项目相关的文献,培养自己的阅读兴趣和习惯,借以启发自己的思维,提高综合分和理解能力。文献阅读摘要记录于课程设计报告书第五项中,考核成绩占10%左右。
6. 答辩是课程设计中十分重要的环节,由课程设计指导教师向答辩学生提出2~3个问题,通过答辩可进一步了解学生对课程设计中理论知识和实际技能掌握的程度,以及对问题的理解、分析和判断能力。答辩考核成绩占25%左右。
7.学生应在课程设计周内认真参加项目设计的各个环节,按时完成课程设计报告书交给课程设计指导教师评阅。课程设计指导教师应认真指导学生课程设计全过程,认真评阅学生的每一份课程设计报告,给出课程设计综合评阅意见和每一个环节的评分成绩(百分制),最后将百分制评分成绩转换为五级分制(优秀、良好、中等、及格、不及格)总评成绩。
8. 课程设计报告书是实践教学水平评估的重要资料,应按课程、班级集成存档交实验室统一管理。
一、课程设计项目名称 单片机控制步进电机实验 二、项目设计目的及技术要求 了解步进电机工作原理,掌握用单片机的步进电机控制系统的硬件设计方法,熟悉步进电机驱动程序的设计与调试,提高单片机应用系统的设计与调试水平。 1、了解步进电机控制的基本原理。 2、掌握它的转动控制方式。 3、设计并实现给定步进电机的控制。 4、进一步掌握步进电机的控制方法。 5、进一步掌握单片机硬件和软件的综合设计方法。 三、项目设计方案论证(可行性方案、最佳方案、软件程序、硬件电路原理图和PCB图 ) 单片机对于工业控制界来说,意义是革命性的。从世界上第一块单片机最初的简单控制功能到如今能够满足不同场合的需要,仅仅经历了不到30年的时间。如今世界知名的半导体公司大多有其独立的单片机系列产品。比较著名的有ATMEL公司的AVR(简化指令)系列、德州仪器公司的MSP430(超低功耗)系列、美国半导体公司的COP8(内含高性能16位AD)系列、摩托罗拉公司68HC08(低频高速)系列等。全世界范围内从事单片机开发的人员有上百万之多,原因就是单片机最大的特点:性能十分稳定、适应能力强,并且开发价格低廉、门槛低,非常适用于工业控制。单片机编程只需要一台电脑、一个下载器和一块单片机开发板即可。本次设计是对单片机最小系统的设计,通过进一步扩展可做成单片机开发板。 1 单片机最小系统设计 1.1 单片机AT89S52 AT89S52片内集成256字节程序运行空间、8K字节Flash存储空间,支持最大64K外部存储扩展。根据不同的运行速度和功耗的要求,时钟频率可以设置在0-33M之间。片内资源有4组I/O控制端口、3个定时器、8个中断、软件设置低能耗模式、看门狗和断电保护。可以在4V到5.5V宽电压范围内正常工作。不断发展的半导体工艺也让该单片机的功耗不断降低。同时,该单片机支持计算机并口下载,简单的数字芯片就可以制成下载线,仅仅几块钱的价格让该型号单片机畅销10年不衰。根据不同场合的要求,这款单片机提供了多种封装,本次设计根据最小系统有时需要更换单片机的具体情况,使用双列直插DIP-40的封装。 图1 DIP-40封装89S52引脚图 1.2 复位电路及时钟电路 复位电路和时钟电路是维持单片机最小系统运行的基本模块。复位电路通常分为两种:上电复位和手动复位。 图2 上电复位 图3 手动复位 有时系统在运行过程中出现程序跑飞的情况,在程序开发过程中,经常需要手动复位。所以本次设计选用手动复位。 高频率的时钟有利于程序更快的运行,也有可以实现更高的信号采样率,从而实现更多的功能。但是告诉对系统要求较高,而且功耗大,运行环境苛刻。考虑到单片机本身用在控制,并非高速信号采样处理,所以选取合适的频率即可。合适频率的晶振对于选频信号强度准确度都有好处,本次设计选取8.000M无源晶振接入XTAL1和XTAL2引脚。并联2个30pF陶瓷电容帮助起振。 1.3 八段数码管显示 LED数码管显示是利用半导体发光制成条形的发光二极管,封装在一起组成数字或其他符号形状。数码管根据公共端不同,分为共阴极和共阳极两种形式。 图4 共阴极数码管 根据设计需要,选用共阴极数码管。由于一个数码管不能实现多位数显示,同时从节省I/O端口考虑,结合数电知识,利用74LS139并联四个一位8段数码管。由于点亮数码管需要10-100毫安电流,单片机输出口难以提供,所以加9013型NPN三极管在接入数码管前进行扩流。 74LS139是德州仪器公司生产的集成2个2-4译码器芯片。单片机控制译码器,四个公共端接芯片的Y0、Y1、Y2、Y3,实现对四个数码管的选通。这样,单片机一组端口控制数码管阳极,74芯片通过另外端口选通阴极,即可实现不同数码管显示不同数字。由于74LS139是低电平有效,所以也适用于共阴极数码管。 1.4 4x4矩阵键盘设计 图5 4x4矩阵键盘 矩阵键盘是在要求按键不多是的一种简易键盘设计。与编码键盘相比,矩阵键盘不需要专门的编码芯片,从而成本低,设计简单,用简单的面包板即可搭成。缺点是占用单片机端口较多,而且编程实现行扫描列扫描比较占用资源。 键盘的原理是在一端接入高电平,用单片机一个端口去检测按键另一端的电平,另一端也是高电平时,说明按键被按下。4×4矩阵键盘,分为4行4列,在每列加上拉电阻(加高电平),然后用程序控制行扫描和列扫描,判断具体哪个按键被按下。由于本身键盘的特点,再设计程序是需要加入消除抖动处理。 1.5 串口通信电路 图6 串口通信电路 规定逻辑“1”,-5— -15V;逻辑“0”,+5— +15V 。噪声容限为2V。要实现利用串口与单片机进行通信,就要进行电平转换,把标准转化成单片机可以识别的。MAX220–MAX249都是电平转换芯片,在单片机最小系统中,使用MAX232。 MAX232是电平转换芯片。1970年,美国电气学会规定“RS232”串口通信协议。1.6 单片机供电系统 图7 USB供电电路 对于一个完整的电子设计来讲,首要问题是为整个系统提供电源供电模块,电源模块的稳定可靠时系统平稳运行的前提和基础。51单片机虽然使用时间最早、应用范围最广,但在实际使用过程中,一个典型的问题是相比其他系列的单片机,51单片机更容易受到干扰而出现程序跑飞的现象,客服这种现象出现的一个重要手段就是为单片机系统配置一个稳定可靠的电源供电模块。 此最小系统中的电源供电模块的电源可以通过计算机的USB口供给,也可以使用外部稳定的电源供电模块供给。 2 最小系统protel制图 2.1 设计软件Prorel Protel公司于80年代末推出了Protel——电子行业的CAD软件,由于最初在国内普及率较高,所以发展较好,大多数公司中低频电路设计都采用此软件。早期的版本主要用于印刷版自动布线。后来推出著名的Protel 99se,能够在Windows 9X/XP下运行。2000年以后,Altium公司又推出了该软件的升级版Altium Designer。Altium Designer在原有的基础上做出了很大的改进,能够打开如Pspice等仿真软件做出的文件。虽然市场上还有很多电路设计软件,但是该软件还是占有很大的市场份额。现在业界最高版本为Altium Designer Winter 09版。 最高版本支持中文输入,修正了以前软件的一些BUG,并且增加了许多人性化的操作,使用起来更便捷,同时扩充了元件库,在自动布线和模型方面也做了很多优化,增加包括对FPGA项目的支持,同时还增加了BGA封装的布线处理(如INTEL CPU就是这种封装),增加了很多仿真技术。本软件存在的缺点是高频模型不够理想,所以失去了很多市场,对于极其专业的设计方面,显得有些黔驴技穷。但是在一般领域的应用,这款软件的强大功能足以够用。本次设计使用的是Altium Designer Winter 09版本。 该软件简单易学,了解了基本规则以后就可以进行电路板设计。主要掌握内容包括:原理图连线、元件库熟悉、元件库制作、元件封装选取、pcb图生成、印制板规则设置、印制板走线、元器件摆放、基本电磁兼容。[4] 规则设置和印刷版走线比较难掌握。在初学时主要遇到的几个问题包括①设置线宽(>12mil);②设置过孔大小;③设置铺铜与走线的距离(>10mil);④版面的安排。 由于软件功能十分强大,想了解全部功能需要几个月的学习,而且要做出高质量的印制板需要长期大量的工程实践。所以此次设计仅能达到基本要求,更高的标准还需要慢慢提高。 2.2 原理图 建立工程:杨周.Prjpcb,杨周.Schdoc,杨周.Pcbdoc。 电路设计使用到了单片机原理及应用、数字电路、模拟电路的相关知识。 整个设计过程中,原理图设计主要工作量在于电路设计、制作元件库、元件命名、封装正确合适选取。通过几天的努力,基本完成了设计目标。 图8 原理图 2.3 印刷部分 由于单片机及其他元件引脚较多,单层板难以实现,所以使用双层板,方便走线。将绘制好的原理图点击Update Pcb Document 单片机.pcbdoc选项,将原理图导入,得到一堆未连线的元器件。先对元件进行基本的摆放,再对照原理图进行细致的安排。摆放元器件考虑实际电路特性以及美观、实用性。准备工作做完以后,需要对印刷版规则进行设置。然后进行连线。连线尽量整齐,并考虑线长对系统的影响 在布线过程中不断调整元件位置和元器件封装,完成后设置印制板边框,对板正面铺铜为VCC,背面铺铜GND。 由于元件封装遵循的规则与对于一些与规则有冲突的地方在版图上会显示出绿 色,确认冲突并不影响实际版图功能的时候,可以不用修改规则,忽略冲突。 图8 最小系统PCB板 3 单片机控制步进电机转动设计 步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。您可以通过控制脉冲个来控制角位移量,从而达到准确定位的目的;同时您可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 图9 28BYJ48步进电机 步进电机28BYJ48型四相八拍电机,电压为DC5V—DC12V。当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动。每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。当通电状态的改变完成一个循环时,转子转过一个齿距。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A。。。),双(双相绕组通电)四拍(AB-BC-CD-DA-AB-。。。),八拍(A-AB-B-BC-C-CD-D-DA-A。。。) 图10 驱动方式 红线接电源5V,橙色电线接P1.3口,黄色电线接P1.2口,粉色电线接P1.1口,蓝色接P1.0口。 由于单片机接口信号不够大需要通过ULN2003放大再连接到相应的电机接口,如下: 图 11 步进电机驱动 4 控制程序 #include 因篇幅问题不能全部显示,请点此查看更多更全内容