使用8051的控制直流风扇的温控电路

描述

该项目基于模数转换原理。来自LM35温度传感器的模拟数据被提供给模数转换器ADC0804,根据温度的变化,将生成ADC的输出。ADC的数字输出提供给微控制器以计算温度并相应地控制风扇。

温度控制直流风扇是一种当环境温度升高到一定极限以上时自动打开直流风扇的系统。

通常,电子设备产生更多的热量。因此,应降低热量以保护设备。有很多减少热量的方法。一种方法是自发打开风扇。

使用8051的控制直流风扇的温控电路1

电路图

原理

该项目基于模数转换原理。来自LM35温度传感器的模拟数据被提供给模数转换器ADC0804。

温度传感器的模拟输出将在每摄氏度10mV的范围内变化。

ADC0804是一个8位ADC。对于5V的参考电压,我们将获得5V / 28 = 20mV的分辨率。这意味着,这是ADC IC可识别的传感器模拟值的最小变化。

根据温度的变化,将生成ADC的输出。ADC的数字输出提供给微控制器以计算温度并相应地控制风扇。

组件

微控制器部分

AT89C51单片机

AT89C51编程器板

11.0592 MHz石英晶体

33pF陶瓷电容器

2 x10KΩ电阻

10µF电解电容器

按钮

16 X 2 LCD显示屏

10KΩ电位器

温度传感器部分

LM35

ADC0804

10KΩ电阻

150pF陶瓷电容器

1KΩx 8电阻包

负载部分

2N2222 NPN晶体管

1N4007二极管

12V继电器

1KΩ电阻

风扇

adc

adc

adc

adc

为此项目配置ADC0804

此处说明ADC0804的配置。首先,我们需要将5V稳压电源连接到Vcc引脚(引脚20)。然后,将模拟和数字接地引脚(引脚8和10)连接到GND。

为了使用内部时钟,我们需要在CLK IN(引脚4和CLK R(引脚19))之间连接一个10KΩ的电阻,然后在引脚4和GND之间连接一个150pF的电容以完成振荡器电路。

CS引脚(引脚1)连接到GND,以使能ADC。

为了由微控制器连续从ADC读取数据,我们需要将RD引脚(引脚2)连接到GND。

为了使ADC连续从传感器读取模拟数据,我们需要将Interrupt引脚(Pin 5)与Write引脚(Pin 3)短路。

传感器(LM35)的模拟输出连接到ADC的Vin +(引脚6)。负模拟输入引脚,即ADC的Vin-连接到GND。

转换后的8位数字数据将在DB0至DB7(引脚18至11)处可用。

电路设计

该项目的主要组件是8051微控制器,16×2 LCD显示器,LM35温度传感器,ADC0804,继电器和风扇。

与微控制器有关的基本连接包括时钟,复位和EA。时钟由11.0592 MHz晶体和两个33pF电容器组成。复位电路由一个10µF电容,一个10KΩ电阻和一个按钮组成。EA引脚通过10KΩ电阻上拉。

现在,我们将看到与其他组件的连接。

对于LCD显示屏,一个10KΩ的电位器连接到对比度调节引脚。LCD的三个控制引脚连接到引脚P3.6,GND和P3.7。

LCD的8个数据引脚连接到微控制器的PORT1。

关于ADC的基本连接在其配置中进行了说明。ADC的8个数字输出必须连接到微控制器的端口2。

我们将要连接的下一个组件是LM35。将LM35的数据引脚连接到模拟输入引脚,即ADC的引脚6。

最后,我们需要将由电阻,晶体管和继电器组成的继电器电路连接到微控制器的PORT0上,并在外部将PORT 0上拉。

将继电器的输入(即晶体管的基极)连接到微控制器的P0.0引脚。

工作中

该项目的目的是使用8051微控制器设计温度控制风扇,其中风扇会根据温度自动打开或关闭。在此说明该项目的工作。

在该电路中,LM35温度传感器将根据其感测到的温度提供连续的模拟输出。该模拟信号提供给ADC,ADC将模拟值转换为数字值。

ADC的数字输出等于感测到的模拟电压。

为了从感测到的模拟电压获得温度,我们需要在微控制器的编程中执行一些计算。

一旦微控制器根据逻辑完成计算,温度就会显示在LCD上。这样,微控制器将连续监控温度。

如果温度超过50摄氏度(根据代码),则微控制器将打开继电器以启动风扇。如果温度降到40摄氏度以下(按照代码)。    

使用ATmega8控制直流风扇实现温控

电路图

使用ATmega8单片机的温度控制直流风扇电路图

电路原理

该电路的主要原理是在温度高于阈值时打开连接到直流电动机的风扇。

微控制器不断从周围环境读取温度。温度传感器充当传感器,并将感测到的温度转换为电气值。这是应用于微控制器的ADC引脚的模拟值。

ATmega8微控制器具有六个10位分辨率的多路复用ADC通道。模拟值应用于输入ADC引脚之一。因此,使用逐次逼近方法在内部进行转换。

对于ADC转换,应声明内部寄存器。ADC引脚输出数字值。控制器将其与阈值进行比较,如果该值大于阈值,控制器将切换风扇。

您知道如何使用8051单片机进行步进电机控制电路的工作吗?

组件

Atmega8

L293D

35毫米

直流马达

组件说明

LM35

LM35是可用于测量温度的集成电路传感器。该传感器的输出电压与摄氏温度成正比。LM35的输出电压将以每摄氏度10mV的速率变化。

通常,LM35温度传感器的范围为-55摄氏度至+150摄氏度。要测量整个温度范围,即从负范围到正范围,我们需要在数据引脚和负之间连接一个外部电阻器。 Vcc的供应。

无论如何,我们不会在这个项目中考虑负温度范围。因此,在正常操作条件下,我们可以测量的温度范围为+2摄氏度至+150摄氏度。

ADC

大自然的所有参数都是模拟的,即,现实世界中的大多数数据都以模拟信号为特征。例如,如果测量房间的温度。

室温随时间连续变化。该测量信号随时间连续变化,例如从1sec,1.1sec,1.2sec等变化,称为模拟信号。

为了使用微处理器或微控制器来处理现实世界中的数据,我们需要将模拟信号转换为数字信号,以便处理器或控制器能够读取,理解和处理数据。

Atmega8具有内部模数转换器。

内部ADC寄存器的声明

ATmega8微控制器内部具有三个寄存器,即ADMUX,ADCSRA和ADC数据寄存器。模数转换器的分辨率为10位。

首先,使用ADCMUX寄存器选择ADC的基准电压。

在ADMUX寄存器中选择REFS0和REFS1值以设置参考电压。

现在,使用ADMUX寄存器中的MUX0-MUX3位选择ADC通道。下表中给出了要放置在MUX0-MUX3位中以选择通道的二进制值。

adc

如果传感器通过AVCC连接到ADC0通道且AVCC的外部电容器位于AREF引脚,则分配给ADMUX寄存器的二进制值为ADMUX = 0b01000000。

现在,使用ADCSRA寄存器的ADPS0,ADPS1和ADPS2位选择预标量值,并使用ADSCRA寄存器的ADEN位使能ADC。

以下位决定XTAL频率与ADC输入时钟之间的分频因子:

adc

现在启用ADCSRA寄存器中的ADCSC的起始转换位。

值转换后,硬件将使能中断位

等待直到中断位ADIF设置为1。

结果存储在ADC的两个数据寄存器中,即ADCL和ADCH。现在从这些寄存器中读取数字值

温控直流风扇电路设计

该电路主要由ATmega8微控制器,温度传感器,直流电动机,驱动器IC组成。温度传感器连接到ADC引脚的输入,即微控制器的ADC0引脚。

温度传感器具有三个输入引脚,VCC,接地。中间一个输出,另外两个引脚接地和VCC。ADC的VREF和AVCC从外部应用于微控制器。引脚20和21是连接到5v电源电压的AREF和AVCC引脚。

微控制器的端口B通过电机驱动器IC(即L293D)连接到电机。电机驱动器的输入引脚连接到微控制器。PB0和PB1连接到电机驱动器IC的输入3和输入4。

PB2和PB3引脚连接到电机驱动器IC的输入1和输入2。输出引脚连接到电机。由于电机有两个引脚,因此它们连接到驱动器IC的输出引脚。

使用MCU控制直流风扇实现温控的电路如何工作?

最初切换电源。

单片机开始读取周围的温度。

温度的模拟值由温度传感器给出。

该模拟值应用于MCU的模数转换器引脚。

微控制器使用内部逐次逼近方法将该模拟值转换为数字值。

当温度高于阈值时,微控制器会向控制器发送命令以切换电机。

这样风扇开始旋转。

应用领域

温控直流风扇可用于通过监视温度来控制设备,房间,电子组件等的温度。

可以扩展到基于PWM的输出,风扇的速度可以根据PWM信号的占空比而变化。

该电路可用于CPU中以减少热量。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分