大连理工大学本科设计报告
题目:步进电机转速控制系统设计
课程名称: 单片机综合设计
学院(系): 电子信息与电气工程学部
专 业:
班 级:
学 号:
学生姓名:
成 绩:
2013 年 7 月 20 日
题目:步进电机转速控制系统设计
1 设计要求
1) 利用ZLG7290的键盘控制直流电机(或步进电机的转速、转向);
2) 也可以利用ADC模块(与电位器配合),利用电位器控制转速;
3) 利用ZLG7290的8位LED数码管显示电机转向、转速参数显示。
2 设计分析及系统方案设计
实验要求使用步进电机作为被控制对象,由ZLG7290做人机对话平台,利用单片机的P1(8位)和P3(部分口线)构造系统。实验最终实现功能、设计思路以及方案设计如以下几个小节所述。
2.1 系统设计实现功能
根据设计要求、现有设备以及知识储备,完成功能如下:
1 由按键S1~S8实现转速切换,其中S1~S4正转,S5~S8反转
2 按键S16作为停止键,按下S10后步进电机停止转动,再按S1~S16步进电机按照按键对应转速以及转向转动
3 按键S10作为复位键,当按下S10后,无论当前处于何种状态,系统恢复至初始态
4 8为LED数码管显示当前步进电机转速(speed=0/1 1~4),转速前0表示正转,1表示反转
5 若按下停止键,数码管显示当前转速;若按下复位键,数码管显示初始态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的主要参数如下表所示: 型号 E2PROM 存储器 定时器 ROM RAM I/0 串行口 中断 速度 (MH) 其它特点
51单片机汇编语言步进电机转速控制系统



