单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx

上传人:b****1 文档编号:1654397 上传时间:2022-10-23 格式:DOCX 页数:23 大小:438.76KB
下载 相关 举报
单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx_第1页
第1页 / 共23页
单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx_第2页
第2页 / 共23页
单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx_第3页
第3页 / 共23页
单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx_第4页
第4页 / 共23页
单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx

《单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx》由会员分享,可在线阅读,更多相关《单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx(23页珍藏版)》请在冰豆网上搜索。

单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点.docx

单片机控制直流电机并测速电压ADDA转换以及pwm按键调速正转反转要点

单片机原理及应用

课程设计报告书

题目:

用单片机控制直流电动机并测量转速

姓名:

徐银浩

学号:

1110702225

专业:

电子信息工程

指导老师:

沈兆军

设计时间:

2014年11月

信息工程学院

3.1AT89C51最小系统3

3.2按键电路4

3.3A/D转换模块4

3.4.D/A转换模块6

3.5电机转速测量电路7

3.6显示电路8

3.7总电路图10

4.1系统主程序设计12

4.2按键扫描程序设计12

4.3显示子程序12

4.4定时中断处理程序12

4.5A/D转换程序13

用单片机控制直流电动机并测量转速

1引言

1.1.设计意义

电动机作为最主要的动力源,在生产和生活中占有重要地位。

电动机的调速控制过去多用模拟法,随着计算机的产生和发展以及新型电力电子功率器件的不断涌现,电动机的控制也发生了深刻的变化,本系统利用直流电机的速度与施加电压成正比的原理,通过滑动变阻器向ADC0809输入控制电压信号,经AD后,输入到AT89C51中,AT89C51将此信号转发给DAC0832,通过功放电路放大后,驱动直流电机。

1.2.系统功能要求

单片机扩展有A/D转换芯片ADC0809和D/A转换芯片DAC0832。

通过改变A/D输入端可变电阻来改变A/D的输入电压,D/A输入检测量大小,进而改变直流电动机的转速。

手动扩展。

在键盘上设置两个按键——直流电动机加速键和直流电动机减速减。

在手动状态下,每按一次键,电动机的转速按照约定的速率改变。

用显示器LED或LCD显示数码移动的速度,及时形象地跟踪直流电动机转速的变化情况。

2方案设计

为了使用单片机对电动机进行控制,对单片机的基本要求应有足够快点速度;有捕捉功能。

总体设计方案如图所示

 

 

图2.1总体设计方案

(1)键盘向单片机输入相应控制指令,由单片机通过P3.0口输出信号,该编码通过DAC0832译成相应的模拟电压,经过信号放大实现电动机转向与转速的控制。

(2)可变电阻接ADC0808转变成相应电压的数字信号,单片机通过P1口读取,再由P2口输出与转速相应的8位BCD编码与DAC0832相接。

电动机的运转状态则通过四位数码管显示出来。

(3)电机的测速显示,采用光电传感器测量电机的转速,在设计中,在电机转轴末梢上安装纸卡,在纸卡上留出两个孔。

电机转轴每转一圈,发射二极管发出的光便通过纸卡的孔到达接受二极管,就可在接受二极管上产生相应的脉冲信号。

计算下1s内输出的脉冲信号的个数,把计数的结果取一半,就可得到电动机的转动速度。

(4)通过Max7219驱动器驱动4位共阴极LED灯,这样节省了许多I/O口。

3硬件设计

3.1AT89C51最小系统

AT89C51是一种带4K字节FLASH存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。

AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。

单片机的可擦除只读存储器可以反复擦除1000次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。

AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

图3.1单片机最小系统的设计

 

AT89C51提供以下标准功能:

4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

3.2按键电路

单片机的P3.6和P3。

7口分别接一个按键用于控制电机。

当按下“叫”键时,电机转速提高,进入加速状态;当按下“减”键时,电机转速减慢,进入减速状态。

通过“加”“减”两个按键可以达到键盘控制电机的作用。

3.3A/D转换模块

(1)ADC0808

ADC0808是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D模数转换器。

其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

是目前国内应用最广泛的8位通用A/D芯片。

主要特性

1)8路输入通道,8位A/D转换器,即分辨率为8位。

  

2)具有转换起停控制端。

  

3)转换时间为100μs(时钟为640kHz时),130μs(时钟为500kHz时)   

4)单个+5V电源供电。

  

5)模拟输入电压范围0~+5V,不需零点和满刻度校准。

  

6)工作温度范围为-40~+85摄氏度。

  

7)低功耗,约15mW。

ADC0809的工作过程

首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。

此地址经译码选通8路模拟输入之一到比较器。

START上升沿将逐次逼近寄存器复位。

下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。

直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。

当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。

  

转换数据的传送A/D转换后得到的数据应及时传送给单片机进行处理。

数据传送的关键问题是如何确认A/D转换的完成,因为只有确认完成后,才能进行传送。

为此可采用下述三种方式。

  

(1)定时传送方式  

对于一种A/D转换器来说,转换时间作为一项技术指标是已知的和固定的。

例如ADC0809转换时间为128μs,相当于6MHz的MCS-51单片机共64个机器周期。

可据此设计一个延时子程序,A/D转换启动后即调用此子程序,延迟时间一到,转换肯定已经完成了,接着就可进行数据传送。

  

(2)查询方式  

A/D转换芯片由表明转换完成的状态信号,例如ADC0808的EOC端。

因此可以用查询方式,测试EOC的状态,即可确认转换是否完成,并接着进行数据传送。

  

(3)中断方式  

把表明转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。

  

不管使用上述哪种方式,只要一旦确定转换完成,即可通过指令进行数据传送。

首先送出口地址并以信号有效时,OE信号即有效,把转换数据送上数据总线,供单片机接受。

图3.3AD转换电路的设计

(2)工作原理

如图3.3所示,外部电源通过滑动变阻器向ADC0808输入控制电压信号,经A/D处理后,输入到AT89C51中,交由AT89C51处理,进行下一步动作。

3.4D/A转换模块

(1)DAC0832

DAC0832是8分辨率的D/A转换集成芯片。

与微处理器完全兼容。

这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。

D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

主要特性参数

1.分辨率为8位;  

2.电流稳定时间1us;  

3.可单缓冲、双缓冲或直接数字输入;  

4.只需在满量程下调整其线性度;  

5.单一电源供电(+5V~+15V); 

6.低功耗,20mW。

DAC0832的工作方式  

DAC0832进行D/A转换,可以采用两种方法对数据进行锁存。

  

第一种方法是使输入寄存器工作在锁存状态,而DAC寄存器工作在直通状态。

具体地说,就是使和都为低电平,DAC寄存器的锁存选通端得不到有效电平而直通;此外,使输入寄存器的控制信号ILE处于高电平、处于低电平,这样,当端来一个负脉冲时,就可以完成1次转换。

  

第二种方法是使输入寄存器工作在直通状态,而DAC寄存器工作在锁存状态。

就是使和为低电平,LE为高电平,这样,输入寄存器的锁存选通信号处于无效状态而直通;当和端输入1个负脉冲时,使得DAC寄存器工作在锁存状态,提供锁存数据进行转换。

  

图3.4DA转换电路的设计

(2)工作原理

如上图3.4所示,电压信号输入后经过AD转换输入到AT89C51,由单片机通过P1口输出与转速相应的8位BCD编码,该编码通过DAC0832译成相应的模拟电压,经过信号放大实现电动机转向与转速的控制。

3.5电机转速测量电路

图3.5光电传感器测速设计

采用光电传感器测量电机的转速,在设计中,在电机转轴末梢上安装纸卡,在纸卡上留出两个孔。

电机转轴每转一圈,发射二极管发出的光便通过纸卡的孔到达接受二极管,就可在接受二极管上产生相应的脉冲信号。

计算下1s内输出的脉冲信号的个数,把计数的结果取一半,就可得到电动机的转动速度。

3.6显示电路

(1)MAX7219

MAX7219/MAX7221是一种集成化的串行输入/输出共阴极显示驱动器,它连接微处理器与8位数字的7段数字LED显示,也可以连接条线图显示器或者64个独立的LED。

其上包括一个片上的B型BCD编码器、多路扫描回路,段字驱动器,而且还有一个8*8的静态RAM用来存储每一个数据。

只有一个外部寄存器用来设置各个LED的段电流。

MAX7221与SPI™、QSPI™以及MICROWIRE™相兼容,同时它有限制回转电流的段驱动来减少EMI(电磁干扰)。

一个方便的四线串行接口可以联接所有通用的微处理器。

每个数据可以寻址在更新时不需要改写所有的显示。

MAX7219/MAX7221同样允许用户对每一个数据选择编码或者不编码。

整个设备包含一个150μA的低功耗关闭模式,模拟和数字亮度控制,一个扫描限制寄存器允许用户显示1-8位数据,还有一个让所有LED发光的检测模式。

功能特点:

1、10MHz连续串行口  

2、独立的LED段控制  

3、数字的译码与非译码选择  

4、150μA的低功耗关闭模式  

5、亮度的数字和模拟控制  

6、高电压中断显示  

7、共阴极LED显示驱动  

8、限制回转电流的段驱动来减少EMI(MAX7221)  

9、SPI,QSPI,MICROWIRE串行接口(MAX7221)

(2)工作原理

如图3.6所示,可变电阻接ADC0808转变成相应电压的数字信号,单片机通过P0口读取,再由P1口输出与转速相应的8位BCD编码到MAX7219。

经由MAX7219处理后通过四位数码管显示出来。

采用光电传感器测量电机的转速,在设计中,在电机转轴末梢上安装纸卡,在纸卡上留出两个孔。

电机转轴每转一圈,发射二极管发出的光便通过纸卡的孔到达接受二极管,就可在接受二极管上产生相应的脉冲信号。

计算下1s内输出的脉冲信号的个数,把计数的结果取一半,就可得到电动机的转动速度。

  

图3.6显示电路的设计

3.7总电路图

由各子模块设计给得出总硬件电路设计如下图3.7所示

图3.7硬件总电路图

4软件设计

4.1系统主程序设计

本系统编程部分工作采用KELI-C51语言完成,采用模块化的设计方法,与各子程序做为实现各部分功能和过程的入口,完成键盘输入、按键识别、ADC0809读取和D

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 公共行政管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1