基于51单片机步进电机控制设计

  • 格式:wps
  • 大小:2.67 MB
  • 文档页数:17

下载文档原格式

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

项目设计报告项目名称:步进电机的控制

课程名称:单片机应用工程技术训练学院:机电学院

专业:机械工程及自动化

学号:2010090301304/22/37

姓名:张梦迪张博文崔剑锋

成绩:

2013年05月28 日

1.设计任务

设计基于51单片机的步进电机测控系统。

基本功能:可6键控制步进电机的启动/停止、加速/减速和正转/反转。

扩展功能:可在LED显示器上实时显示步进电机的运行状态。

2. 设计要求

2.1. 基本功能

(1)利用2按键控制步进电机的启停与停止。系统上电后,等待启动命令;按“启动”键后,步进电机开始正转(默认转向和转速);在转动过程中,按“停止”键后步进电机停止转动,程序回到上电状态。要求按键作消抖处理。

(2)利用2个按键改变步进电机的转动方向,使其在转动过程中按“正转”键时步进电机正转;按“反转”键时步进电机反转,要求按键作消抖处理。在LCD显示器上显示步进电机的转向。

(3)利用2按键改变步进电机的转速,使其在转动过程中按“加速”键时步进电机的转速增加10r/min,按“减速”键时步进电机的转速减少10r/min,转速控制在10~100r/min的范围内。默认值为50r/min。

2.2.扩展功能

电机运行后,在LED显示器上实时显示步进电机的运行状态。

2.3. 材料清单

表1. 材料清单

序号数量步进电机的控制规格

1 1 四相步进电机

2 1 电机驱动器ULN2003

3 6 独立式按键

4 1 LED显示器

3、总体方案设计

3.1 步进电机控制设计要点

本系统中驱动的电机为四相步进电机。该四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动[6]。

四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。本系统使用的工作方式便为四拍工作方式。

工作方式如图2所示:

在用软件控制时,主要设计要点如下:

(1)判断旋转方向;

(2)按相序确定控制字;

(3)按顺序输入控制字;

(4)确定控制步数和每一步的延时时间。

系统控制简图如图3所示:

图3. 系统控制简图

4. 硬件设计

4.1 各单元模块功能及电路设计,绘制电路原理图;

1)按键设计

该系统中运用到六个控制按钮,即正转、反转、启动、停止、加速、减速,由于按钮较少,所以采用独立键电路,这种按键电路的按键结构相对行列式按键电路更简单,更使人易懂。

按键电路如图4所示

图4. 按键电路图

2)显示设计

使用LED 实时显示步进电机的转向和转速,方法简单,容易控制,成本低。

控制按键

单片机 AT89c51

功率驱动电路

步进电机

数码管显示模块

显示电路图如图5所示

图5. 显示电路图

3)功率驱动电路

对单片机发出的脉冲信号进行放大,来控制步进电机运转。功率驱动电路如图6所示

图6. 驱动电路图

4.2 电路参数的计算及元器件的选择。表2.步进电机单4拍方式节拍控制字表

通电顺序

P1口线输出状态

控制字P1.3(D)P1.2(C)P1.1(B) P1.0(A)

A000101

B001002

C010004

D100008

电路晶振频率为12MHz

步进电机步距角为18度

5、软件设计

通过项目分析,由于随时有可能输入启动停止信号、加减速信号和方向改变信号,因而采用中断方式,这样总共要完成4个部分的工作才能满足课题要求,即主程序部分、定时器中断部分以及中断部分,其中主程序的主要功能是系统初始参数的设置及启动开关的检测,若启动开关合上则系统开始工作,反之系统停止工作;定时器部分控制脉冲频率,它决定了步进电机转速的快慢;两个外部中断程序要做的工作都是为了完成改变速度这一功能。

5.1 软件设计及程序流程图

1)主程序设计

主程序中要完成的工作主要有系统初始值的设置、系统状态的显示以及各种开关状态的检测判断等。其中系统初始状态的设置内容较多,该系统中,需要选定定时器工作方式、初始化定时器、开放外部中断,设置标志位及偏移量。主程序流程图如图7所示。

主程序中开放了正反控制标志位30H,设置默认转速值放于中间寄存器R2,设置步进电机工作方式为单相四拍并存储于中间寄存器R4中。

系统初始化

调用显示子程序

调用按键扫描程序

开始

图7. 主程序流程图

2)LED显示子程序

在显示子程序中,由于需要四位数码管显示,单片机的I/O接口不够用,所以需要使用数码管动态显示,在显示程序中,先要完成送显字符BCD译码,在对译码数据进行送显。显示子程序如图8所示。

在显示子程序中,由于要对显示进行查表,为避免与按键与电机扫描查表混乱,所以需要对表头地址进行堆栈,保护现场,设置的堆栈地址为40H,41H,42H。

进入

取显示数据

分离数据

取送字位码

取送字形码

判断3位是否显示完

返回修改字位码

Y

N 图8. 显示子程序流程图