51单片机汇编语言步进电机转速控制系统

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

理工大学本科设计报告题目:步进电机转速控制系统设计

课程名称:单片机综合设计

学院(系):电子信息与电气工程学部

专业:

班级:

学号:

学生:

成绩:

2013 年7 月20 日

题目:步进电机转速控制系统设计

1 设计要求

1)利用ZLG7290的键盘控制直流电机(或步进电机的转速、转向);

2)也可以利用ADC模块(与电位器配合),利用电位器控制转速;

3)利用ZLG7290的8位LED数码管显示电机转向、转速参数显示。

2 设计分析及系统方案设计

实验要求使用步进电机作为被控制对象,由ZLG7290做人机对话平台,利用单片机的P1(8位)和P3(部分口线)构造系统。实验最终实现功能、设计思路以及方案设计如以下几个小节所述。

2.1 系统设计实现功能

根据设计要求、现有设备以及知识储备,完成功能如下:

①由按键S1~S8实现转速切换,其中S1~S4正转,S5~S8反转

②按键S16作为停止键,按下S10后步进电机停止转动,再按S1~S16步进电机按

照按键对应转速以及转向转动

③按键S10作为复位键,当按下S10后,无论当前处于何种状态,系统恢复至初

始态

④8为LED数码管显示当前步进电机转速(speed=0/1 1~4),转速前0表示正转,

1表示反转

⑤若按下停止键,数码管显示当前转速;若按下复位键,数码管显示初始态

speed=00

2.2 设计思路

本次的设计是LED显示与步进电机相结合以及若干功能键的组合的一种设计。根据之前学习的按键中断显示实验和定时器实验,使用INT0和INT1,INT0作为按键中断,INT1作为定时器。在主程序中实现LED初始显示、定时器计时初始、按键中断初始。INT0中断调用中断服务子程序实现对按键键值的判断,并根据相应的按键值实现对应步进电机的变化,并显示该按键对应的转速。INT1定时器中断根据INT0的按键键值,对定时器设定相应的初值,实现步进电机按规定的转速转动。对于按键停止,则是利用中断优先级,当INT0的中断优先级高时,系统进入中断,此时INT1停止计时,也就实现了步进电机的停止,当改变定时器与按键中断的优先级时,即把INT0设为低优先级,INT1设为高优先级,步进电机重新开始转动。此时添加一个对INT0位地址的查询,若有按键即正/反转的4档转速所对应的按键,步进电机开始重新转动。对于复位功能,则同样是利用按键键值的判断,在对应键值下控制电机初始化。

2.3 系统方案设计

系统总设计方案框图如下所示:

图1.1 系统总框图

3 系统电路图

见附录

4 外围接口模块硬件电路功能描述

本设计主要用到的器件是AT89C51、ZLG7290B和步进电机。

4.1 AT89C51

AT89C51的主要参数如下表所示:

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。其引脚如图1.2所示。

图1.2 单片机的引脚排列

管脚说明如下:

VCC:供电电压GND:接地

P0口:8位漏级开路双向I/O口,每脚可吸收8TTL门电流;

P1口:P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流;

P2口:P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

P3口:P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

P3口也可作为AT89C51的一些特殊功能口,如下所示:

P3.0 RXD(串行输入口)

P3.1 TXD(串行输出口)

P3.2 /INT0(外部中断0)

P3.3 /INT1(外部中断1)

P3.4 T0(记时器0外部输入)

P3.5 T1(记时器1外部输入)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

4.2 ZLG7290B

ZLG7290B是数码管动态显示驱动、键盘扫描管理芯片。接口采用I2C结构。

部寄存器有13个单元00H-0DH:

1)系统寄存器(地址00H),第0位称作按键有效位,为1表示按键按下,为0表示没有按键操作,并且有按键按下的时候在ZLG7290B的/INT引脚会产生一个低电平的中断请求信号。

2)键值寄存器(地址01H),如果按下的是普通键,键值寄存器就保存按键对应的兼职(1-56)。

3)连击计数器(02H),就是芯片为普通键提供的一种连击计数功能,当按下某

一按键就可以产生连续的中断请求信号。

4)功能键值寄存器(地址03H),功能按键不产生键值,但是在按下和抬起都会产生中断请求信号。

5)命令寄存器(地址07H和08H),向命令寄存器送入相关的控制命令可以实现段寻址,下载显示数据和控制闪烁等功能。

6)闪烁控制寄存器(地址0HCH),闪烁控制寄存器决定闪烁的频率和占空比。

7)扫描位数寄存器(地址0DH),扫描位数寄存器决定着ZLG7290B动态扫描显示的位数,取值0-7,对应的显示1-8位。

8)显示缓冲寄存器(地址10H-17H),八个显示缓冲寄存器直接决定着数码管上显示的字形和显示的位置。ZLG7290B的引脚图如下:

图1.3. ZLG7290B引脚逻辑图

4.3 步进电机

步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。

(一)步进电机的静态指标术语

1、相数:产生不同对N、S磁场的激磁线圈对数。常用m表示。

2、拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数。

3、步距角:对应一个脉冲信号,电机转子转过的角位移用θ表示。

(二)步进电机动态指标及术语:

相关文档
最新文档