毕业设计基于单片机控制的步进电动机设计.doc
《毕业设计基于单片机控制的步进电动机设计.doc》由会员分享,可在线阅读,更多相关《毕业设计基于单片机控制的步进电动机设计.doc(51页珍藏版)》请在三一办公上搜索。
1、 摘 要单片计算机即单片微型计算机。由RAM ,ROM,CPU构成,定时,计数和多种接口于一体的微控制器。它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。本文主要研究基于AT89C51 单片机的步进电机的驱动器控制,驱动系统采用74LS47和达林顿管,使步进电机可在智能化程序控制下完成正转、反转、转数设定等各种操作。文中在单片机与驱动器之间增加一级光电隔离可使步进电机具有更高的性能,同时把数字电路与驱动电路隔离开,避免了步进电机运行时所产生的冲击电压和电流干扰单片机。要想达到步进电动机的快速启停、高精度步进运行从而实现工业生产的控制,则采用单片机控制系统可将问题大大的简化。不仅能简
2、化线路,降低成本,而且能大大的提高其可靠性。整个系统采用模块化设计,结构简单,可靠,通过人机交互换接口可实现各功能设置,操作简单,易于掌握。该系统可应用于步进电机在机电一体化控制等大多数场合。实践证明,基于单片机控制的步进电机比传统的步进控制器具有更好的性能,更加简单、方便、可靠。本设计的主要研究对象就是开环伺服系统中最常用的执行器件步进电机。在这科技越来越发达的时代,人们对步进电动机控制技术的要求也越来越高。运用单片机对其高精度和智能化控制一直备受关注,对其高新技术的开发持续不断,单片机系统控制的研究具有很大的开发潜能,本控制系统的设计,由硬件设计和软件设计两部分组成。其中,硬件设计主要包括
3、单片机最小系统、键盘控制模块、步进电机驱动模块、数码显示模块等功能模块的设计,以及硬件电路在电路板上的实现。软件设计包括主程序以及各个模块的控制程序,最终实现对步进电机转动方向及转动速度的控制,并且将步进电机的转动速度动态显示在LED数码管上。本系统具有智能性、实用性及可靠性的特点。关键词:AT89C51 步进电机 目 录摘要绪论1第一章 系统方案论证31.1 系统基本功能31.2 设计方案介绍31.3 系统设计3第二章 硬件设计42.1 单片机系统42.1.1 AT89C51功能概述42.2 步进电机122.2.1 步进电机的分类122.2.2 步进电机概述132.2.3 电机的工作原理15
4、2.3 数码管显示电路192.4 键盘控制电路212.5 光电耦合器与驱动系统222.6 显示块242.7 单片机与步进电机的接口电路图26第三章 控制系统的软件283.1程序设计思路283.1.1程序流程图28第四章 仿真与调试34第五章 设计小结35附录36参考文献41感谢42 绪 论步进电动机又称脉冲电动机或阶跃电动机,国外一般称为Steppingmotor、 Pulse motor或Stepper servo,其应用发展已有约80年的历史。步进电机是一种把电脉冲信号变成直线位移或角位移的控制电机,其位移速度与脉冲频率成正比,位移量与脉冲数成正比。步进电机在结构上也是由定子和转子组成,可
5、以对旋转角度和转动速度进行高精度控制。当电流流过定子绕组时,定子绕组产生一矢量磁场,该矢量场会带动转子旋转一角度,使得转子的一对磁极磁场方向与定子的磁场方向一着该磁场旋转一个角度。因此,控制电机转子旋转实际上就是以一定的规律控制定子绕组的电流来产生旋转的磁场。每来一个脉冲电压,转子就旋转一个步距角,称为一步。根据电压脉冲的分配方式,步进电机各相绕组的电流轮流切换,在供给连续脉冲时,就能一步一步地连续转动,从而使电机旋转。步进电机每转一周的步数相同,在不丢步的情况下运行,其步距误差不会长期积累。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,同时步进
6、电机只有周期性的误差而无累积误差,精度高,步进电动机可以在宽广的频率范围内通过改变脉冲频率来实现调速、快速起停、正反转控制等,这是步进电动机最突出的优点。正是由于步进电机具有突出的优点,所以成了机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。比如在数控系统中就得到广泛的应用。目前世界各国都在大力发展数控技术,我国的数控系统也取得了很大的发展,我国已经能够自行研制开发适合我国数控机床发展需要的各种档次的数控系统。虽然与发达国家相比,我们我国的数控技术方面整体发展水平还比较低,但已经在我国占有非常重要的地
7、位,并起了很大的作用。除了在数控系统中得到广泛的应用,近年来由于微型计算机方面的快速发展,使步进电机的控制发生了革命性变革。优点明显的步进电机被广泛应用在电子计算机的许多外围设备中,例如打印机,纸带输送机构,卡片阅读机,主动轮驱动机构和存储器存取机构等,步进电机也在军用仪器,通信和雷达设备,摄影系统,光电组合装置,阀门控制,数控机床,电子钟,医疗设备及自动绘图仪,数字控制系统,工具机控制,程序控制系统以及许多航天工业的系统中得到应用。因而,对于步进电机控制的研究也就显得尤为重要了。为了得到良好的控制性能,对步进电机的控制的研究就一直没有停止过,许多重大的技术得以实现。上世纪80年代以后,由于微
8、型计算机以多功能的姿态出现,步进电动机的控制方式变得更加灵活多样。原来的步进电机控制系统采用分立元件的控制回路,或者集成电路,不仅调试安装复杂,要消耗大量元器件,而且一旦定型之后,要改变控制方案就一定要重新设计电路,不利于系统的改进升级。基于微型单片机的控制系统则通过软件来控制步进电机,能够更好地发挥步进电机的潜力。因此,用微型单片机控制步进电机己经成为了一种必然的趋势,也符合数字化的时代发展要求。还比如为了适应一些领域中高精度定位和运行平稳性的要求,出现的步进电机细分驱动技术,就包括振荡器、环行分配器控制的细分驱动、基于单片机斩波恒流驱动、基于单片机的直流电压驱动三种常见驱动方式,除上述三种
9、步进电机的驱动方案之外,目前报道的驱动方案还有根据汇编语言或C语言进行软件开发,通过串行或并行通行的方式实现机与步进电机控制器之间的数据通信,最终实现由PC机直接控制步进电机的方法。但是在有些应用场合,并不需要高精度的控制,而是需要在满足一般工作要求的情况下,尽量使控制系统做到:系统硬件结构简单,成本低;功能较为齐全;适应性强;电机各种运行状态指示一目了然,操作方便;系统抗干扰能力强,可靠性高等要求。本论文就是采用这个思路进行设计。一般步进电机控制器都用硬件实现,虽然电路可以做到了高集成度,可价格较贵,功能相对较单一,并且设计要求有所改变,就得改变整个硬件电路,比较麻烦。而采用单片机的软件和硬
10、件结合进行控制,运用其强大的可编程和运算功能,充分利用单片机的各种资源,能灵活的对步进电机进行控制,实现其不同模式、步数、正反转、转速等控制,如果需改变控制要求,一般只需改变软件就能适应新的环境,并且在本设计中利用动态扫描技术,把显示电路和键盘电路有机的结合起来,能做到一定的人机交换,而且为了抗干扰,提高可靠性,具有一定的应用价值。第一章 系统方案论证1.1 系统基本功能设计的步进电机控制器。要求内能从键盘上输入步进电机转数,控制步进电机的正反转及启停,并显示转数。具体要求如下:(1) 键盘设计09: 数字键。*:正逆转数设定完成后,按“*”启动步进电动机。#:清除设定为正转及转数为00。A:
11、设定正逆转。按“A”键则LED指示灯亮,表示逆转,再按则LED只是等灭,表示正转。(2) 控制过程 送电时,设定为正转,显示器显示为“00”。 输入转数,显示器显示输入的转数,按“A”设定正逆转,LED指示灯亮表示逆转,LED指示灯灭表示正转,然后按“*”步进电动机开始运行。 步进电机每转一转,显示器减1,直至为00,步进电动机停止运转。 1.2设计方案介绍根据功能设计的要求本设计采用AT89C51单片机系统控制运用矩阵式键盘作为输入控制端驱动系统采用74LS04和达林顿管,使步进电机可在智能化程序控制下完成正转、反转、转数设定等各种操作。文中在单片机与驱动器之间增加一级光电隔离。可使步进电机
12、具有更高的性能,同时把数字电路与驱动电路隔离开,避免了步进电机运行时所产生的冲击电压和电流干扰单片机。1.3 系统设计要想实现以上论述的功能只要通过P1口的键盘输入并按一定的顺序改变P0口输出的脉冲信号,从而改变步进电动机四端通电的状况,即可控制步进电机依选定的方向步进。同时通过显示器同步的显示相应数据。依据以上描述可画出控制系统的结构框图如图 1.1所示 图1.1 步进电机控制器结构框图控制系统包括:键盘输入模块、显示、指示模块以及步进电机控制及驱动模块。键盘输入模块主要完成数据输入及控制输入,显示模块完成转数的显示。步进电机模块主要是由单片机输出控制码到驱动机构控制步进电动机的运转。第二章
13、 硬件设计21单片机系统 2.1.1 AT89C51功能概述AT89C51是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含4K bytes的可反复擦写的只读程序存储器PEROM和128bytes的随机存取数据存储器,器件采用公司的高密度,非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和FLASH存储单元,功能强大。此单片机可为您提供许多高性价比的应用场合。AT89C51提供以下标准功能:4K字节FLASH闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个向量两级中断结构,一个全双工串行通讯口,内置一个精密比较器,片
14、内振荡器及时钟电路,同时AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的工作模式,空闲方式停止CPU的工作,但允许RAM,定时计数器,串行通信及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作,并禁止其它所有部件工作直到下一个硬件复位。(1)引脚功能说明MCS-51是标准的40脚双列直插式集成电路芯片,引脚排列请参见图2.1:图2.1 AT89C51的引脚图VCC:电源电压; GND:地;P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写1可作为高阻抗输入端用。在访问外部数
15、据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在FLASH编程时,P0口接受指令字节,而在程序效验时,输出指令字节,效验时,要求外接上拉电阻。P1口:P1口是一个带有内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动 (吸收或输出电流)4个TTL逻辑门电路。对端口写1,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉底时会输出一个电流。FLASH编程和程序效验期间,P1接收低8位地址。P2口:P2口是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动 (吸收或输出电
16、流)4个TTL逻辑们电路。对端口写1,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉底时会输出一个电流。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(如执行MOVXRI)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。FLASH编程或效验时,P2亦接收高位地址和其它控制信号。P3口:P3口是一个带有内部上拉电阻的8位双向I/O口,P3的输出缓冲级可驱动 (吸收或输出电流)4个TTL逻辑们电
17、路。对端口写1,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉底时会输出一个电流。P3口除了作为一般的I/O口线外,更重要的用途是他的第二个功能,如下表所示:表1 P3口AT89C51特殊功能端口引脚功能特性P3.0RXD(串行口输入)P3.1TXD(并行口输入)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(定时计数外部输入0)P3.5T1(定时计数外部输入0)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通)P3口还接收一些用于FLASH闪速存储器编程和程序效验的控制信号。RST:复位输
18、入。其引脚一旦变成两个机器周期以上的高电平,所有的I/O口都将复位到1状态,当振荡器正在工作时,持续两个机器周期以上高电平便可完成复位,每个机器周期为12个振荡时钟周期。EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(0000HFFFFH),EA端必须保持低电平接地,需注意的是:如果加密位LB1被编程,复位是内部会锁存EA端状态。如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源VPP,当然这必须是该器件是使用12V编程电压VPP。XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2:振荡器反相
19、放大器输出端(2)时钟振荡器AT89C51中有一个用于构成内部振荡器的高增益反向放大器,引脚XTAL1和 XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈器件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路参见图2.2。外接石英晶体或陶瓷振荡器及电容 C1,C2接在放大器的反馈回路中构成并联振荡电路。对外接电容 C1,C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低,振荡器工作的稳定性,起振得难易程度及温度稳定性,如果使用石英晶体,推荐电容使用30PF10PF,而如使用陶瓷振荡器建议选择40PF10PF。 图 2.2 时钟振荡电路(3)复位电路计算机在启
20、动运行是都需要复位,使中央处理器CPU和系统中的其它部件都处于一个确定的初始状态,并从这个状态开始工作。MCS-51的复位输入引脚RST为MCS-51提供了初始化的手段,可以使程序从指定处开始执行,在MCS-51的时钟电路工作后,只要RST引脚上出现超过两个机器周期以上的高电平时,即可产生复位的操作。只要 RST保持高电平,则MCS-51循环复位。只有当RST由高电平变低电平以后,MCS-51才从0000H地址开始执行程序。本系统采用按键复位方式的复位电路。MCS-51单片机有一个复位引脚RST,它是施密特触发输入,当振荡器起振后,该引脚上出现2个机器周期(即24个时钟周期)以上的高电平。使器
21、件复位,只要RST保持高电平,MCS-51保持复位状态。此时ALE、/PSEN、P0、P1、P2、P3口都输出高电平。RST变为低电平后,退出复位,CPU从初始状态开始工作。复位以后内部寄存器的初始状态为(SP=07,P0、P1、P2、P3为0FFH外,其它寄存器都为0。在RST复位端接一个电容至VccHE 一个电阻至Vss,就能实现上电自动复位,对于CMOS单片机只要接一个电容至Vcc即可。如图,在加电瞬间,电容通过电阻充电,就在RST端出现一定时间的高电平,只要高电平时间足够长,就可以使MCS-51有效地复位。RST端在加电时应保持的高电平时间包括Vcc的上升时间和振荡器起振时间,Vcc上
22、升时间若为10ms,振荡器起振时间和频率有关。10MHz时间约为1ms,1MHz时约为10ms,所以一般为了可靠地复位,RST在上电时应保持20ms以上的高电平。图2.5中,RC时间常数越大,上电时RST端保持高电平的时间越长。当振荡频率为12MHZ时,典型值为C=10uF,R=8.2k. 图2-3上电复位电路(4)人工复位除上电自动复位以外,常常需要人工复位,将一个按钮开关并联于上电自动复位电路,按一下开关就RST端出现一段时间的高电平,即使器件复位。如图所示图2-4上电和开关复位而我们在这次的毕业设计中运用的人工复位电路. 其中电平复位是通过RST端经电阻和电源Vcc接通而实现的,按键手动
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 基于 单片机 控制 步进 电动机 设计
链接地址:https://www.31ppt.com/p-3975250.html