产品概述

基于单片机的温湿度控制 基于单片机温湿度检测报警系统#原理图pcb设计

小编 2024-10-08 产品概述 23 0

基于单片机温湿度检测报警系统#原理图pcb设计

温湿度控制系统。

大家好,今天给大家介绍一款基于单片机的温湿度控制系统。

·这个是温度,这是湿度,这是温度下限,这是上限,这个是湿度下限,这个是上限。

·这个按键可以设置温度上限,就加这个减,湿度是一样的。

·现在温度,把温度设高一点,测量温度小于下限的时候灯点亮,把上限设置低一点,把湿度设高一点。

·温度大于上限,湿度指示灯点亮,湿度上限设低一点,当它大于上限,指示灯点亮。

·它可以通过将测量数据发在串口上面,串口看一下,里面发1,发送1,它会每隔5秒将数字发生回来,如果发个0就会停止发送。

本设计的主要功能就这些,谢谢大家。

实验室温湿度测量系统设计

摘 要 : 针对当前实验室无法实现温湿度数据实时测量、数据传递不方便等缺点,以数字式温湿度传感器和通用单片机为基础,开发了实验室温湿度测量系统。该系统以AT89S52单片机为主芯片,数字式温湿度传感器SHT21为主要传感器,完成了测量系统硬件系统和软件系统的开发,并且设计了能够传递给上位机数据的通信程序。该系统可以实现温湿度测量,并且可以传递相关数据给上位机,对于实验室数据监测有着积极的作用。

0 引言

温湿度是重要的环境参数[1-3],特别是对于实验室环境,温湿度需要出现在许多的检测报告中。而目前实验室常用的是湿度计和温度表,基本原理是采用水银温度湿度计进行检测,缺点是在需要记录数据的时候要先读取相关数据,非常不方便;同时还无法实现温湿度的实时测量。

目前应用较为广泛的温湿度传感器主要是热电偶[4-5]、热电阻[6-8]及湿度等模拟传感器,该类型的传感器输出为模拟信号。为了能够测量该数据需要进行模数转换,在使用过程中较为繁琐。而数字温湿度传感器将温湿度信息直接用数字量输出,能够直接输出给测量系统,因此数字式温湿度传感器在温湿度监测中应用更为方便[9]。

为此,拟以成本较低的AT89S52单片机为控制芯片[10]、以低功耗的新型数字式SHT21作为测量温度、湿度的传感器[11]和FYD12864液晶模块[12],开发用于实验室的温湿度显示及报警系统。

1 控制系统总体结构

整个控制系统包括传感器、微处理器、显示模块和电源模块,如图1所示。其中,传感器为SHT21温湿度传感器,该传感器除了配有电容式相对湿度传感器和能隙温度传感器外,还包含一个放大器、A/D转换器、OTP内存和数字处理单元,能够非常方便地测量温度和湿度信号[9];ECU是整个控制系统的核心,选用ATMEL公司的8位单片机AT89S52,能够接受输入信号和输出控制信号,同时还包含与上位机的接口,用于程序下载和数据通信;显示模块采用FYD12864液晶模块,用于显示温度和湿度值;报警模块采用蜂鸣器,如果当前温度或者湿度大于设定值就会发出报警;通信模块用于与采集系统进行通信,该通信采用串口通信,用于把温湿度信息传递给采集系统。

2 控制系统硬件设计

2.1 温湿度信号处理

温湿度传感器SHT21的管脚定义如表1所示,该传感器的供电范围为2.1~3.6 V,推荐电压为3.0 V,为了保证传感器的正常运行,在电源(VDD)和接地(VSS)之间须连接一个0.1 μF的电容,且电容的位置应尽可能靠近传感器。SCL用于微处理器与传感器之间的通信同步,SDA引脚用于传感器的数据输入和输出,当向传感器发送命令时,SDA在串行时钟(SCL)的上升沿有效,在SCL下降沿之后,SDA值可被改变;当从传感器读取数据时,SDA在SCL变低以后有效,且维持到下一个SCL的下降沿。为避免信号冲突,通常在SDA端口需要一个外部的上拉电阻(如10 kΩ)将信号提拉至高电平。

在本电路图中,VSS接地,VDD接电源+3 V,NC保持不连接,SDA接单片机P1.6口,SCL接单片机P1.7口,并接两个上拉电阻R3,R4,其大小都为10 kΩ,在VDD与VSS之间接一个0.1 μF的去耦电容,其连接电路图如图2所示。

2.2 报警电路

蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于各种电子产品中作为发声器件。而在单片机应用的设计上,大部分都会使用蜂鸣器来作提示或报警,为此本设计中也采用蜂鸣器作为报警提示。蜂鸣器驱动电路一般都包含以下几个部分:一个三极管、一个蜂鸣器、一个续流二极管和一个电源滤波电容。本设计采用如图3所示的电路驱动蜂鸣器,R5阻值为2 kΩ,蜂鸣器驱动电路与单片机的P3.3口连接;蜂鸣器的额电流小于等于30 mA,对于AT89S51单片机来说,P3.3口的灌电流是15 mA,很明显可以看出仅仅依靠P3.3口的电流是驱动不了该蜂鸣器的,这就需要使用晶体管放大电路,所以本设计选用PNP型晶体管。

当外部的温度或者湿度超过设定的阈值时,基极变为低电平,蜂鸣器导通发出报警。

2.3 显示电路

本设计中所采用的FYD12864液晶显示模块是128×64点阵型液晶显示模块,可显示各种字符及图形,具有8位标准数据总线、6条控制线及电源线。为了能够实现对该模块的控制,采用P0和P2口控制,由于51单片机P0口没有内部上拉电阻,为此需要外部增加上拉电阻,本设计增加的外部上拉电阻为10 kΩ;对于FYD12864液晶显示模块来说,第三引脚VO是对比度电位引脚,本设计中采用10 kΩ的可变电阻来实现对比电压的调整,如图4所示。

2.4 通信模块

由于单片机输出是TTL电平,而PC输出是-12 V~ +12 V电平,所以需要一个MAX232串口通信模块芯片构成电平转换电路,实现通信时电平信号的匹配,其连接电路如图5所示,其中C1-和C2-表示连接点,分别连接电容的一端。

2.5 电源模块

本设计中的大部分电路都需用5 V的电压,而温湿度传感器需要用3 V电压,为了能够同时满足两者的需求,本设计采用三端稳压集成电路LM7805。其电路图如图6所示,在输出5 V电压的基础上,通过增加3个1N4007使输出的电压变为2.9 V,能够为温湿度传感器供电。

2.6 单片机最小系统

单片机最小系统由单片机、复位电路和时钟电路构成,如图7所示。所选用的8位单片机AT89C52具有8 KB的可编程Flash、256 B的RAM、32个I/O口、5个中断源、2个16位定时器,完全满足控制需求;复位电路采用上电复位方式;时钟电路晶振11.059 2 MHz,完全满足系统的要求。

3 控制系统软件设计

3.1主程序流程图

主程序主要完成硬件的初始化、子程序的调用等功能。在主程序中,首先进行SHT21和FYD12864的初始化,然后调用温湿度采集子程序,接着调用温湿度处理子程序,读取成功后,将读取成功的温湿度数据与所设定的数据相比较,如果超过所设定的温湿度数据,蜂鸣器导通鸣叫,起到报警作用,如果没有超过所设定的温湿度数据,就会直接在FYD12864显示器上显示出来。之后判断是否需要向上位机传递数据,如果需要传递则调用相应的子程序;如果不需要则重复采集温度和湿度数值,进行循环。其流程图如图8所示。

3.2 串口通信

为便于后续数据的分析及处理,编写了串口通信程序,使用RS232串口,将单片机采集到的数据上传到上位机。

上位机和下位机通信分为上位机串口初始化和下位机串口初始化,其中上位机串口初始化程序如下:

Private Sub Form_Load

MSComm1.CommPort=1//使用Com1口

MSComm1.Settings="9600,n,8,1"

//设置通信参数,波特率9 600,无校验位,发送8位,1个停止位

′MSComm1.PortOpen=True//开串口

End Sub

下位机串口初始化程序如下:

/********串口初始化函数**********/

void Serial_Init(void)//串口通信初始设定

{

SCON=0x50;//UART为模式1,8位数据,允许接收

TMOD=0x20;//定时器1为模式2,8位自动重装

PCON=0x00;//波特率9 600

TH1=0xfd; //定时器赋初值

TL1=0xfd;

TR1=1;//启动定时器TH1

ES=1;//允许串口中断

EA=1;//开中断总开关

}

在实际工程中,下位机根据上位机发送的不同数据请求分别发送相应的数据,下位机数据发送程序如下:

/********串口接收中断函数**********/

void Serial_Recieve_Inter interrupt 4 using 3

{

if(RI)

{

RI=0;

if(SBUF==0) //收到发送温度数据请求

{

AT24C64_RD(0xa1,AT24C64_Inter_Address_Read_Temp);

AT24C64_Inter_Address_Read_Temp++;

//读温度地址加1

SBUF=Temp_Val;//向串口发送温度数据

while(TI==0);//等待发送,直到8位数据发送完毕

TI=0; //TI清零

}

if(SBUF==1) //收到发送湿度数据请求

{

AT24C64_RD(0xa3,AT24C64_Inter_Address_Read_Pres);

AT24C64_Inter_Address_Read_Pres++;//读湿度地址加1

if(SBUF==3) //收到发送操作数据请求

AT24C64_Inter_Address_Read_Pres++;//读操作地址加1

SBUF=Proc_Val;//向串口发送操作数据

while(TI==0);//等待发送,直到8位数据发送完毕

TI=0;//TI清零

上位机界面采用VB6.0编写,添加其自带的MSComm控件,可以很方便地实现串口通信。上位机采集到的数据以*.text格式存储,便于其他软件的调用分析。

4 实物图

为了对所设计的温湿度监控系统进行测试,利用普通万用板进行制作,其实物如图9所示。此时,显示模块、单片机最小系统和串口通信模块分开布局,便于各自调试。

经过实际调试,该系统可以正常显示温湿度数据,同时也可以利用自编的上位机程序读取相关数据。

5 结论

本文介绍了实验室温湿度测量系统的设计过程,分别从控制系统的总体结构、硬件系统和软件系统进行了介绍,并且利用万用板实现了该系统。该系统结构简单、应用方便,对于实验室温湿度检测有着积极作用。

参考文献

[1] 范满红,马胜前,陈彦,等.基于多传感器数据融合的温湿度监测系统[J].压电与声光,2012,34(3):459-462,465.

[2] 钟晓伟,宋蛰存.基于单片机的实验室温湿度控制系统设计[J].林业机械与木工设备,2010,38(1):39-42.

[3] 刘明波,顾夏华,周琳琦.基于FPGA的远程温湿度监测系统设计与实现[J].计算机测量与控制,2011,19(11):2619-2622.

[4] 刘庆赟,焦斌亮,刘永富.仓库温湿度监测与nRF905无线传输系统的设计[J].传感器与微系统,2011,30(5):101-103.

[5] 刘希明.热电偶线性温度测量装置[J].仪器仪表学报,2007(S1):53-59.

[6] 许卓,杨雷,何志伟.多通道热电阻精密测量中温度漂移的补偿法[J].化工自动化及仪表,2011,38(8):32-36.

[7] 才智,范长胜,杨冬霞.PT100铂热电阻温度测量系统的设计[J].现代电子技术,2008,31(20):172-174,177.

[8] 谭长森.基于PT100型铂热电阻的测温装置设计[J].工矿自动化,2012,38(3):89-91.

[9] 刘洋,金太东.基于CAN总线的智能型温湿度采集系统设计[J].现代电子技术,2010,33(1):126-128.

[10] 迟钦河,赵仲生,乔桂芳,等.89C51单片机在多通道数据采集系统中的应用[J].自动化仪表,2000,21(6):33-35,39.

[11] 鲍爱达,张庆志,郭涛,等.基于FPGA和SHT21传感器的温湿度测量系统的设计[J].计算机测量与控制,2012,20(11):2885-2887.

[12] 范春辉,何广平.DAC7714和中文液晶模块与单片机的接口设计[J].电测与仪表,2005,42(12):62-64,61.

相关问答

你好啊,能否教我如何把 温湿度 传感器连接到电脑,我在网上看到...

温湿度传感器是和单片机连接的,它们采集的数据都是先传给单片机,再由单片机控制传给电脑的,单片机与电脑之间的数据传输需要使用串口,然后才能进行数据传送,而且...

python可以 单片机 编程吗,怎么样?

MicroPython以微控制器作为目标,从而使得Python可以用来控制硬件。说到MicroPython,也许有人会感到陌生。而说到和它密切相关的Python,是否会恍然大悟呢?Pyt...

温湿度控制 范围是多少?_住范儿家装官网

湿度指数为50—60的环境最感舒适,而冬天房间的温度太高,室内湿度通常仅为10%-15%RH,在这样的房间呆久了,就会使人皮肤紧绷...冰箱冷库温湿度监控...

单片机 能用于哪些行业?

这个我有发言权,我就是做单片机嵌入式软件开发的。单片机作为电子制造设备用于数据信息流的采集、传输与控制的载体应用于各行各业中。医疗器械方面,医院的检...

am2301 温湿度 传感器原理?

回答如下:AM2301温湿度传感器是一种数字式温湿度传感器。它通过集成数字信号输出技术,将温湿度信号转化为数字信号输出。其原理如下:1.温度测量原理:AM2301...

作业!急!数学的!问题在问题补充那里!某移动通信公司开设了两...

[回答](1)y1=50+0.4*Xy2=0.6*X(2)当y1=y2;即50+0.4*X=0.6*Xx=250(3)当x=300时;y1=50+0.4*300=170y2=0....

朋友们 谁了解:济宁中空玻璃 温湿度控制 设备生产周期, 温湿度 ...

[回答]还挺靠谱的,可以到他们的网站上去看看。我用的STC89系列的单片机和DHT11温湿度传感器,也碰到这个问题。现在准备这样解决:首先,显示不用液晶什么的...

智能穿戴设备发展的现状是怎样的?

在小米科技率先布局AIoT市场并坚持“手机+AIoT”的双引擎战略之后,包括华为在内的其他手机厂商也开始建立并丰富自家的AIoT生态,不过目前只有小米科技推出了自...

单片机 一般配合什么使用?

单片机一般配合各种外围设备和模块使用,以实现特定的功能。常见的配合使用的外围设备有显示器、键盘、鼠标等输入输出设备,用于与用户进行交互;还有各种传感器...

mcu是什么意思?

微控制单元(MicrocontrollerUnit;MCU),又称单片微型计算机(SingleChipMicrocomputer)或者单片机,是把中央处理器(CentralProcess...

猜你喜欢