ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:307.99KB ,
资源ID:8573129      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8573129.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(步进电机课程设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

步进电机课程设计.docx

1、步进电机课程设计单片机综合设计实验 题目: 步进电动机综合控制 学院 计算机科学与信息工程学院 专业年级 2013级自动化三班 实验组员 指导教师 职称 日 期 2013-12-30 摘要.一 概述. 1.1 实验目的. 1.2 实验内容与要求. 1.3步进电机的介绍. 1.4研究的思路.二 硬件设计. 2.1 51单片机介绍. 2.2 LCD1602液晶显示介绍 2.3 uln2003步进电机驱动介绍三 相关图像.3.1总电路图.3.2程序流程图. 3.2.1控制框图 3.2.2流程图四 调试结果及分析.五 设计总结及心得体会.附录【1】系统程序.附录【2】参考文献.【摘要】 步进电机是将电

2、脉冲信号转变为角位移或线位移的开环控制元件 本实验利用8051单片机达到控制步进电机的启动、停止、正转、反转、点动、转过指定角度、状态显示和数据指示的目的,使步进电机控制更加灵活。整个系统有80C51单片机控制系统,由uln2003驱动电路驱动,键盘控制电路,LCD液晶显示电路。用51单片机控制两相四线步进电动机,在非超载情况下,电机的转速,停止的位置只取决于脉冲信号的频率和个数,而不受负载的影响,给电机一个脉冲信号,电机则转过一个步距角,通过控制脉冲个数可以控制角位移量,从而达到控制位的作用,同时通过控制脉冲的相序来改变步进电机的转向,从而达到控制正反相的作用。本次采用51单片机为核心器件来

3、控制步进电机,系统的实用性较强。关键字: 51单片机;步进电动机;脉冲;LCD16021.1实验目的: 1,单片机对步进电动机控制可以熟悉步进电机的控制与原理运用。 2,单片机对步进电动机控制可以熟悉步进电机结构及各种工作方式。 3,通过本次实验可以运用所学单片机理论知识,专业技能来对实际问题进行分析,思考,解决,提高对专业知识的掌握和锻炼逻辑思维能力。1.2 设计内容与要求:1、任务介绍:实现步进电机按规定的速度正转、反转,转过指定的角度,要有点动功能。所有命令通过键盘输入,步进电机在运行过程中要有状态和数据指示。2、每套设计文档应包括: 系统原理说明、程序框图、电路原理图和程序清单。 1.

4、3步进电机的介绍1.3.1相关的技术指标: a、相数:指电机内部的线圈组数,目前常用的有二相、三相、四相、五相步进电机,本实验用的是二相步进电机。电机相数不同,其步距角也不同。 b、步距角:表示控制系统每发一个步进脉冲信号,电机所转动的角度。本实验程序运行前要先测量步进电机的步距角。(本开发板上已测步进电机步距角为18度)c、拍数:完成一个磁场周期性变化所需脉冲数或导电状态,或指电机转过一个齿距角所需脉冲数。也就是说本步进电机每转一周需要20个脉冲。本实验用2相4拍运行方式双四拍工作方式: *; 正转:A/B AB AB/ A/B/ * 反转:A/B/ AB/ AB A/B该实验板上步进电机内

5、部结构图如图一1.3.2工作原理: 步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的,可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点,使得在速度、位置等控制领域用步进电机来控

6、制变的非常的简单。 1.3.3步进电机的驱动:步进电机的驱动可以选用专用的电机驱动模块,比如L298、FT5754等,这类驱动模块接口简单,操作方便,它们既可以驱动步进电机,同时也可以驱动直流电机。但本实验使用ULN2003驱动电路驱动步进电机运转。1.4研究的思路 1 了解单片机本身内部应有的资源,如:中断,定时器,计数器,IO的使用。 2 了解步进电机的工作原理和作用。 3 根据步进电机的原理,分析并分配单片机内部资源,并根据单片机的资源,来实现 硬件电路的设计以及软件程序的编写。 4 遇到自己所学知识不懂或不熟悉的东西,查阅资料探究明白。 5 在设计好单片机控制步进电动机时,要学会分析电

7、路中出现的问题,并且好好总结。二 硬件设计2.1 51单片机介绍 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案 其引脚图如下所示 。1主要特性:与MCS-51 兼容 4K字节可编

8、程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 22管脚说明: VCC:供电电压。 GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内

9、部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当

10、对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(

11、记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只

12、有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 51单片机内部结构图/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。4芯片擦除:整个PEROM

13、阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。5MCS-51单片机是美国INTE公司于1980年推出的产品,典型产品有 8031(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片

14、采用HMOS,功耗是630mW,是89C51的5倍,实际使用方面已经被市场淘汰)和8751等通用产品,一直到现在, MCS-51内核系列兼容的单片机仍是应用的主流产品(比如目前流行的89S51、已经停产的89C51等),各高校及专业学校的培训教材仍与MCS-51单片机作为代表进行理论基础学习。 有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由于MCS-51单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51内核实际上已经成为一个8位单片机的标准。 其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。同样的一段程序,在各个单片机厂

15、家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、89S51, PHILIPS(菲利浦),和WINBOND(华邦)等,我们常说的已经停产的89C51指的是ATMEL公司的 AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写1000次)存储器取带了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。2.2 LCD1602液晶显示介绍 液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。 这里介绍的字符型液晶模块是一种用

16、5x7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字、2行20个字等等,这里以常用的2行16个字的DM-162液晶模块来介绍它的编程方法* a. 1602LCD主要技术参数: 显示容量:162个字符 芯片工作电压:4.55.5V 工作电流:2.0mA(5.0V) 模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm b. 1602液晶模块引脚功能1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如下表所示: 编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据

17、4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极1602液晶模块引脚说明: 第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会 “鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时

18、可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。 3.1602LCD的指令说明及时序1602液晶模块内部的控制器共有11条控制指令,如下表所示: 序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮

19、器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平) 指令1:清显示,指令码01H,光标复位到地址00H位置。 指令2:光标复位,光标返回到地址00H。 指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。 指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低

20、电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。 指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。 指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。 指令7:字符发生器RAM地址设置。 指令8:DDRAM地址设置。 指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。 (注意每次输入指令前都要判断液晶模块是否

21、处于忙的状态) 指令10:写数据。 指令11:读数据。 2.3 ULN2003步进电机驱动介绍 ULN是集成达林顿管IC,内部还集成了一个消线圈反电动势的二极管,可用来驱动继电器。它是双列16脚封装,NPN晶体管矩阵,最大驱动电压=50V,电流=500mA,输入电压=5V,适用于TTL COMS,由达林顿管组成驱动电路。 ULN是集成达林顿管IC,内部还集成了一个消线圈反电动势的二极管,它的输出端允许通过电流为200mA,饱和压降VCE 约1V左右,耐压BVCEO 约为36V。用户输出口的外接负载可根据以上参数估算。采用集电极开路输出,输出电流大,故可直接驱动继电器或固体继电器,也可直接驱动低

22、压灯泡。通常单片机驱动ULN2003时,上拉2K的电阻较为合适,同时,COM引脚应该悬空或接电源。ULN2003是一个非门电路,包含7个单元,但独每个单元驱动电流最大可达350mA.资料的最后有引用电路,9脚可以悬空。 比如1脚输入,16脚输出,负载接在VCC与16脚之间,不用9脚。2.3.1 ULN2003的作用:ULN2003是大电流驱动阵列,多用于单片机、智能仪表、PLC、数字量输出卡等控制电路中。可直接驱动继电器等负载。 输入5VTTL电平,输出可达500mA/50V。ULN2003是高耐压、大电流达林顿陈列,由七个硅NPN达林顿管组成。 ULN2003的每一对达林顿都串联一个2.7K

23、的基极电阻,在5V的工作电压下它能与TTL和CMOS电路 直接相连,可以直接处理原先需要标准逻辑缓冲器。ULN2003 是高压大电流达林顿晶体管阵列系列产品,具有电流增益高、工作电压高、温度范围宽、带负载能力强等特点,适应于各类要求高速大功率驱动的系统。2.3.2 ULN2003A功能及引脚图:功能:ULN2003 是高耐压、大电流、内部由七个硅NPN 达林顿管组成的驱动芯片。 经常在以下电路中使用,作为显示驱动、继电器驱动、照明灯驱动、电磁阀驱动、伺服电机、步进电机驱动等电路中。ULN2003 的每一对达林顿都串联一个2.7K 的基极电阻,在5V 的工作电压下它能与TTL 和CMOS 电路直

24、接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003 工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受 50V 的电压,输出还可以在高负载电流并行运行。ULN2003 的封装采用DIP16 或SOP16 。ULN2003可以驱动7个继电器,具有高电压输出特性,并带有共阴极的续流二极管使器件可用于开关型感性负载。每对达林顿管的额定集电极电流是500mA,达林顿对管还可并联使用以达到更高的输出电流能力。显示电路主要包括大型LED数码管BSI20-1(共阳极,数字净高12 cm)和高电压大电流驱动器ULN2003,大型LED数码管的每段是由多个LED发光二极管串并

25、联而成的,因此导通电流大、导通压降高。ULN2003是高压大电流达林顿晶体管阵列电路,他具有7个独立的反相驱动器,每个驱动器的输出灌电流可达500 mA,导通时输出电压约1 V,截止时输出电压可达50 V。ULN2003的17脚为信号输入脚,依次对应的输出端为1610脚,8脚为接地端。当驱动电源电压为+12 V时,若要求数码管每段导通电流为40 mA,则每段的限流电阻为50。则一块ULN2003恰好驱动一个LED数码管的7段。大数码管采用共阳极接法,低电平有效。锁存器输出的电平经NPN三极管9014反相后,再由ULN2003放大后推动大数码管显示 三 相关图像3.1 总电路图 上图是protu

26、es的电路图 ,由于我们开发板上没有74HD09和74HC21与门,于是我们在实际开发板上采用软件实现中断信号的产生及K1,K2,K3,K4,K5相与后赋值给P1.6输出口再于外部中断口INTO的P3.2相连实现外部中断。3.2.1 控制框图 进入中断子程序步进数赋值步进数赋值送正向脉冲送负向脉冲步进数减一步进数减一步进数是否为0?步进数是否为0?RET判断是否正转?开始初始化单片机是否启动3.2.2流程图 NO yes NO YES NO YES四 调试结果及分析1,打开文件,进行编译,确认无误后,点击工具栏中的运行工具。2,准备调试3,调入文件到硬件中,开始调试硬件电路,点击运行,电路正常

27、连接。4,从键盘输入,按正转电机正转运行。5,从键盘输入,按反转电机反转运行。6,从键盘输入,按点动,电机点一下转过一个步距角。 7,从键盘输入,按角度转变,电机转过设定角度。调试完毕,通过键盘可以控制电机的按照预先设置的转速,转向,点动,转过一定角度等功能的运行。所得的结果与理论设计的运行结果相同。调试成功。设计总结及心得体会 刚接触到设计的时候确实很难着手,不知道该重什么地方下手。主要是理论的学习是空洞的,而且并不是那么熟练。本次设计我们采用的是51单片机对两相四线步进电机进行控制,通过改变相序可以改变电机的转向,通过键盘的按键可以控制电机的正转,反转,点动等动能。所运行的角度,速度通过LCD1602给以显示。通过调试和运行得到了正确的预期结果。 刚开始就像大海捞针一样,通过上网查阅资料,图书馆借阅文献查询。慢慢开始对我们的设计有了了解,逐步开始了进行,确实发现了很多问题 ,如怎样设置中断,慢慢

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1