单片机控制步进电机

  • 格式:doc
  • 大小:890.40 KB
  • 文档页数:25

下载文档原格式

  / 25
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课题:单片机控制步进电机

目录

一、前言 (1)

1.1 步进电机简介 (1)

1.2 摘要 (1)

1.3 设计目的 (2)

二、设计任务及要求 (3)

三、总体方案设计 (4)

3.1 方案的选择 (4)

四、硬件电路设计 (6)

4.1 单片机及其外围电路介绍 (6)

4.2控制键电路 (8)

4.3步进电机驱动电路 (9)

4.4 步进电机控制系统硬件电路图 (10)

五、软件设计 (12)

5.1程序设计平台 (12)

5.2 程序设计思路 (13)

5.3程序流程图 (14)

六、仿真效果 (17)

七、实物调试 (18)

7.1调试与改进 (18)

八、设计总结 (19)

参考文献 (20)

一、前言

1.1步进电机简介

步进电机是一种将数字脉冲信号转化为角位移的执行机构。也就是说,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(即步进角、步距角)。您可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时您可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。一般步进电机的精度为步进角的3-5%,且不累积。步进电机最早是在1920年由英国人所开发。以后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解性能、高响应性、信赖性等灵活控制性高的机械系统中。在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。步进电机作为执行元件,是机电一体化的关键产品之一, 广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。步进电机可以直接用数字信号驱动,使用非常方便。一般电动机都是连续转动的,而步进电动机则有定位和运转两种基本状态,当有脉冲输入时步进电动机一步一步地转动,每给它一个脉冲信号,它就转过一定的角度。步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态。因此非常适合于单片机控制。

1.2 摘要

步进电机是一种能将电脉冲信号转换成角位移或线位移的机电元件,步进电机控制系统主要由步进控制器,功率放大器及步进电机等组成。采用单片机控制,

用软件代替上述步进控制器,使得线路简单,成本低,可靠性大大增加。软件编程可灵活产生不同类型步进电机励磁序列来控制各种步进电机的运行方式。

系统由硬件设计和软件设计两部分组成。其中,硬件设计包括AT89C51单片机的最小系统、电源模块、键盘控制模块、步进电机驱动(集成达林顿ULN2003)模块、数码显示(SM420361K数码管)模块、测速模块(含霍尔片UGN3020)6个功能模块的设计,以及各模块在电路板上的有机结合而实现。软件设计包括键盘控制、步进电机脉冲、数码管动态显示以及转速信号采集模块的控制程序,最终实现对步进电机转动方向及转动速度的控制,并将步进电机的转动速度动态显示在LED数码管上,对速度进行实时监控显示。

1.3 设计目的

(1)设计并实现给定步进电机的控制;

(2)进一步掌握步进电机的控制方法;

二设计任务及要求

本设计的目的是以单片机为核心设计出一个单片机控制步进电机的控制系统。本系统采用AT89C51作为控制单元,通过键盘实现对步进电机转动方向及转动速度的控制,并且将步进电机的转动速度动态显示在LED数码管上,如图一系统模块图。

图一系统模块图

设计的步进电机控制系统应具有以下功能:

1. 步进电机的启停控制

2.步进电机的正反转控制

3. 步进电机的加速控制

三总体方案设计

本步进电机控制系统,按照系统设计功能的要求,确定系统由4个模块组成:主控制器、电机驱动模块、LED指示灯电路、键盘电路。

温度无线采集报警系统结构框图如图2所示

图2 系统结构框图

3.1 方案的选择

3.1.1主控芯片方案

方案一:

采用传统的STC89C52单片机作为主控芯片。此芯片价格便宜、操作简便,低功耗,比较经济实惠。

方案二:

采用TI公司生产的MSP430F149系列单片机作为主控芯片。此单片机是一款高性能的低功耗的16位单片机,具有非常强大的功能,且内置高速12位ADC。但其价格比较昂贵,而且是TPFQ贴片封装,不利于焊接,需要PCB制板,大大增加了成本和开发周期。

方案三:

采用宏晶科技有限公司的STC12C5A60S2增强型51单片机作为主控芯片。此芯片内置ADC和SPI总线接口,且内部时钟不分频,可达到1MPS。而且价格适中。

考虑到此系统需要不用到ADC,从性能和价格上综合考虑我们选择方案一,即用STC89C52作为本系统的主控芯片。

3.1.2 步进电机驱动方案

方案1:

采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整.此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。

方案2:

采用电阻网络或数字电位器调节电动机的分压,从而达到分压的目的。但电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。更主要的问题在于一般的电动机电阻很小,但电流很大,分压不仅会降低效率,而且实现很困难。方案3:

采用ULN2003达林顿管电机驱动芯片,ULN2003芯片是高耐压、大电流达林顿阵列,由7组达林顿晶体管阵列和相应的电阻网络以及钳位二极管网络构成,具有同时驱动7组负载的能力,为单片双极型大功率高速集成电路。功率电子电路大多要求具有大电流输出能力,以便于驱动各种类型的负载。功率驱动电路是功率电子设备输出电路的一个重要组成部分。ULN2003芯片高压大电流达林顿晶体管阵列产品属于可控大功率器件。对步进电机控制方便灵活。

因此我们选用了方案3。

3.1.3显示模块方案

方案一:

选择主控为ST7920的带字库的LCD12864来显示信息。12864是一款通用的液晶显示屏,能够显示多数常用的汉字及ASCII码,而且能够绘制图片,描点画线,设计成比较理想的结果。

方案二:

采用四个LED发光二极管显示,其成本低,简单明了,容易显示控制。

综合以上方案,我们选择了经济实惠LED来作为速度级别显示