基于单片机的仓库温湿度监测系统设计.docx
- 文档编号:6558313
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:23
- 大小:29.81KB
基于单片机的仓库温湿度监测系统设计.docx
《基于单片机的仓库温湿度监测系统设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的仓库温湿度监测系统设计.docx(23页珍藏版)》请在冰豆网上搜索。
基于单片机的仓库温湿度监测系统设计
毕业设计(论文)
中文题目
基于单片机的仓库温湿度监测系统设计
英文题目
Thedesignofthewarehousehumiture
MonitoringsystembasedontheMCU
系别:
电子与电气工程系
年级专业:
2013级电子信息工程(专升本)
姓名:
顾博诚
学号:
指导教师:
章玲
职称:
讲师
闽南理工学院教务处制
年月日
毕业设计诚信声明书
本人郑重声明:
在毕业设计工作中严格遵守学校有关规定,恪守学术规范;我所提交的毕业设计是本人在指导教师的指导下独立研究、撰写的成果,设计中所引用他人的文字、研究成果,均已在设计中加以说明;在本人的毕业设计中未剽窃、抄袭他人的学术观点、思想和成果,未篡改实验数据。
本设计和资料若有不实之处,本人愿承担一切相关责任。
学生签名:
年月日
基于单片机的仓库温湿度监测系统设计
【摘要】本文主要设计了一种基于STC89C52单片机的智能温湿度监测系统,该系统能对仓库内的温湿度进行读取从而了解其温湿度的变化情况,利用温湿度传感器DHT11将仓库内的温湿度的变化情况,变换成数字量,通过单片机进行控制,最后由LCD完成温湿度显示。
该系统可以方便的实现温度和湿度的采集和显示,使用起来相当方便,具有精度高,量程大,灵敏度高,体积小,耗能低等优点,适用于我们日常生活和工农业的温湿度监测,也可以作为温湿度处理模块嵌入其他系统中,作为其他系统的辅助扩展,有广泛的前景。
【关键词】DHT11,监测与控制,单片机SCT89C52,LCD1602
ThedesignofthewarehousehumituremonitoringsystembasedontheMCU
【ABSTRACT】Thispapermainly?
introducesakindof?
intelligenttemperatureandhumiditymonitoringsystembasedonSTC89C52MCU.thesystem?
can?
readand?
understandthe?
changes
of?
temperatureandhumidity?
on?
the?
temperatureandhumidityDHT11?
inthewarehouse,?
usingtemperatureandhumiditysensor?
will?
change?
oftemperatureandhumidity?
inthewarehouse.
transform?
intodigitalquantity?
throughthemicrocontrollertocontrol,?
finally?
completedbyLCD?
temperatureandhumidity?
display.?
Thesystemcanachievethetemperatureandhumidity
convenient?
acquisitionanddisplay,?
veryconvenientto?
use,?
hashighaccuracy,?
largemeasuringrange,?
highsensitivity,?
smallvolume,?
low?
energyconsumption,temperatureandhumiditymonitoring?
appliedto?
ourdailylifeand?
industrialandagricultural,butalsocanbeusedas?
atemperatureandhumidity?
processingmoduleembeddedin?
othersystems,?
asanadjuncttoother?
theexpansionofthesystem,?
hasbroad?
prospects.
【KeyWords】DHT11,monitoringandcontrol,singlechipmicyocoSCT89C52,LCD1602
1.绪论1
1.1课题研究的目的和意义1
1.2温湿度计及其温湿度监测系统的研究现状1
1.3本论文的主要内容1
2.系统方案设计2
3.系统硬件设计3
3.1硬件系统总体结构图3
3.2STC89C52最小系统3
3.3温湿度传感器模块4
3.4ADC0832接口电路模块5
3.5LCD1602显示模块7
3.6报警模块9
4.系统软件设计11
4.1主程序设计11
4.2LCD1602软件设计12
4.3A/D转换模块软件设计15
5.总结17
致谢18
参考文献19
附录一:
单片机程序20
附录二:
总设计原理图26
1.绪论
1.1课题研究的目的和意义
随着国民经济的快速发展和科学技术的普及,高性能设备发展快,对温度和湿度的要求也越来越高的企业也越来越多。
传统模式的温湿度监测是以人为基础,依靠人工抄数值,人工巡回查看等方式来测量和记录环境状况的数据。
在这种模型中,不仅效率低不利于人才资源的管理分配,以及缺乏科学性,许多重大事故都是由人为因素造成的,人工维护缺乏完整的管理系统。
该监控系统可以解决资源的人力浪费,管理不及时的问题。
1.2温湿度计及其温湿度监测系统的研究现状
?
早在1970年,温湿度监测技术首先采用模拟式的组合仪器,采集现场信息和数据,并进行记录、指示和监测。
1980年末期生产出了分布式控制系统。
在90年代中期的智能温湿度传感器(亦称数字温湿度传感器)开发出来。
它是微电子技术、计算机技术和自动测试技术(ATE)的结晶。
目前,国际上已开发出多种智能温度传感器系列产品。
内部温湿度传感器包括智能温湿度传感器、A/D传感器、信号处理器、存储器(或寄存器)和接口电路。
部分产品用一个CPU、多路选择器、只读存储器(ROM)和随机存取存储器(RAM)。
智能温湿度传感器可采集温湿度,适配各种微控制器(MCU),并且可通过软件来实现测试和控制,实现更智能的温湿度控制器。
现在科学家使用一台称为“psychrometer”的仪器测量相对湿度。
“psychrometer”由两个连接在一起的温度计。
在测量相对湿度时,要把“psychrometer”旅转直至被包着的温度计维持一个稳定的温度,并且该温度必须比干的温度计低。
空气中的实际温度是干温度计。
两个不同温度之间调用,因为水分蒸发的结果。
科学家记录的温度的温度计和“wet-bulbdepression”,然后制成图表,用来计算相对湿度。
跟电子温度计一样,湿度计随着湿度传感器的快速发展日益成熟。
现在常用的AD590温度传感器,DS18B20湿度传感器HMxx’系列,HS1xx系列,随着温湿度计的发展温室监控系统发展较为成熟,为人们更好的服务。
目前正研究和发展计算机数据采集控制系统的多因子综合控制系统。
在世界上的一些国家,温湿度监控技术在实现半自动化的基础上朝着完全无人化、自动化的方向迅速发展。
1.3本论文的主要内容
该系统通过温湿度传感器对仓库内的温湿度进行采集,利用ADC0832将仓库内的温湿度的变化情况,变换成数字量,通过单片机STC89C52进行控制,最后由LCD完成温湿度显示。
2.系统方案设计
综合自己在本科阶段所学的知识和参与实验的经验,研究设计了以STC89C52单片机为主芯片的仓库温湿度监测系统,本设计是一个以单片机为核心的主模块,包括显示模块与报警器、温湿度传感器以及相应的软件等。
通过接口可以有选择性的择取所需的功能模块进行所需的测量。
设计框图如2-1所示。
在单片机电路设计中,可以采用一只温湿度传感器DHT11,此传感器,超快响应、抗干扰能力强、性价比高等优点可以满足设计要求。
电路比较简单,软件设计也比较简单。
设计以STC89C52单片机为核心,整体结构采用模块化设计,主板上设计有键盘与显示电路以及RS232串口电路和电路子模块与功能扩展模块的接口,通过子模块接口用户可以按需来组合所需要的子模块,完成温湿度监测的实现。
在通信和监控上,采用LCD液晶显示。
本温湿度传感器属于多功能温湿度传感器,可以设置上下报警温度,当温度不在设置范围内时,可以报警。
图2-1总设计框图
由ST89C52控制温湿度监测系统的设计完成后,将实现以一种基于DHT11的数字温湿度传感器设计方案。
简要阐述了温湿度传感器DHT11的性能指标、单片机系统、LCD1602显示模块以及时序图、ADC0832接口电路模块及时序图。
利用主板STC89C52单片机控制DHT11进行数据采集并将数据送至LCD液晶显示结果。
另外,采集结果可由接口电路送入计算机显示并存储。
3.系统硬件设计
3.1硬件系统总体结构图
本文所设计的数字测温湿度显示系统主要由STC89C52单片机及其最小系统模块、温湿度传感器、LCD1602液晶显示,结构方框图如图3-1所示,各部分主要结构设计及功能在下面介绍。
图3-1硬件电路图
3.2STC89C52最小系统
单片机最小系统是指用最少的元器件件组成可以运行的单片机的系统。
即如图3-2所示。
单片机的最小系统包括电源(接地),晶振电路(本设计使用11.0592MHz晶振),复位电路及EA引脚。
有以上部分组成的最小系统,单片机就可以进行正常的简单运行了,值得注意的是,EA(31脚)需要接高电平,因此,单片机不使用片外存储器,这样单片机系统才会正确运行用C语言编程所烧写进单片机的程序。
图3-2STC89C52最小系统
1)电源:
单片机使用的是5V电源,其中正极接40引脚,负极(地)接20引脚。
2)晶振电路:
单片机是一种时讯电路,必须提供脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。
3)复位电路:
复位按钮,重启。
4)EA引脚:
上拉倒VCC,表示烧写到单片机内部,程序小的话直接存在内部集成的ROM,至于程序大了就要接地了,外扩ROM。
至此,一个单片机就接好,通上电,单片机就开始运行了。
图中的排阻RM1是P0口上拉用的,C4是滤波电容,抗干扰用。
其他P0-P3口均为I/O口,每个口有8个引脚,共32个,编号都是0-7,如P0.0-P0.7,这些IO口是用来外接各种元器件,通过编程来实现各种所需要的功能。
3.3温湿度传感器模块
本系统采用DHT11数字温湿度传感器,它是一个含有一个数字信号输出的温度和湿度传感器。
以确保产品具有较高的长期稳定性与可靠性。
它是特殊的温度和湿度传感技术和数字技术的模块集合。
传感器包括电阻式感湿元件和一个测温元件,并具有较高的性能的8位微控制器相连接。
DHT11的供电电压为3.3~5.5VDC。
传感器通电后,等待1S度过一个不稳定状态,在这种状态下不需要发送任何指令。
电源引脚(VCC,GND)之间可增加一个100pF的电容,用于去耦滤波。
因此该产品具有抗干扰能力强、性价比高、响应快速等优点。
DHT11的典型应用模块和实物图如图3-3、3-4所示。
图3-3DHT11硬件模块
图3-4DHT11数字温湿度传感器
3.4ADC0832接口电路模块
ADC0832是8位分辨率的A/D转换芯片,其最高分辨达到256级,适用于一般的模拟量转换。
其参考电压和电源输入的内部复用,实现0~5V的芯片模拟输入电压。
芯片转换时间为32μS,据有双输出数据,可作用于数据验证,为了减少数据误差,稳定性强和转换速度。
芯片的特定数据输入,使处理器控制变得更加方便和多器件挂接。
DI通过数据的输入端子,可以方便地达到功能选择通道。
ADC0832接口电路如图3-5所示。
图3-5ADC0832与单片机连接电路
一般情况下ADC0832与单片机的接口是四条数据线,分别是DI、DO、CLK、CS。
因为DI端与DO端在通信时不能同时有效,并且单片机的接口是双向的,所以电路设计时可以将DI和DO并行在同根数据线上使用(如图3-5)。
当ADC0832没有运行时,其CS输入应设置为高电平,则芯片被禁止,DO/DI和CLK的电平可任意。
当要执行A/D转换时,首先将CS置于低电平,直到转换结束完成为止。
在此芯片开始转换运行,并且由数据处理器CLK产生时钟脉冲,DO/DI端则使用其DI端的数据信号。
在第一个时钟脉冲的结束之前DI端必须置于高电平,表示启始信号。
在第二、三个脉冲结束之前DI端2位数据应用于选择信道的功能,其功能项如表3-1所示。
表3-1功能项
MUXADDRESS
Channel#
SGL/DIF
ODD/SIGN
0
1
1
0
+
1
1
+
当两者的数据是“0”,“1”时,CH0为输入负端IN-,CH1为输入正端IN+进行输入,当两者数据为“0”、“0”时,将CH0作为输入正端IN+,CH1为输入负端IN-进行输入,当两者数据为“1”、“1”时,只单一的对CH1进行单通道转换,当两者的数据为“1”、“0”时,只单一的对CH0进行单通道转换。
到第三个脉冲的结束之后DI端的输入电平没有输入作用,此后DI/DO端则开始使用数据输出,DO开始读取转换数据。
从第四个脉冲结束开始由DO端输出转换数据最高位DATA7,然后每个脉冲结束,DO端输出下个数据。
直到第十一个脉冲时发出最低位数据DATA0,完成输入一个字节的数据。
也正是从此位开始输出下一个相反字节的数据,即从第十一个字节的末端输出DATD0。
然后输出的8位数据,到第十九个脉冲时完成数据输出,也就是标志着一次的A/D转换结束。
最后将CS置高电平,立即处理转换完成后的数据。
具体的时序图参考图3-6。
图3-6ADC0832时序图
作为一个单通道的模拟输入电压ADC0832是0~5V并且电压精度为19.53mV时ADC0832为8位分辨率。
如果IN+输入与IN-输入的时,可是将电压值设定在一个大范围内,增加了转换的宽度。
但值得指出的是,在进行IN+输入与IN-的输入时,如果IN-输入的电压大于IN+输入的电压则转换后数据结果一直为00H。
3.5LCD1602显示模块
LCD1602显示模块原理图如图3-7所示。
图3-7LCD1602与单片机连接电路
工业字符型液晶,能够同时显示16x02即32个字符。
(16列2行)
LCD1602液晶也被称为1602字符型液晶,它是一个专门显示符号、字母、数字等的点阵型液晶模块,它有许多的5X7或者5X11等点阵字符位汇聚而成,每个点阵字符位可以显示一个字符。
具体引脚功能参照表3-2。
LCD1602的特性:
1)+5V电压,可调对比度
2)内部含有复位电路
3)提供各种控制命令,如:
清屏、闪烁的光标、闪烁字符、以及其他功能
4)80个字节的显示数据存储器DDRAM
5)内置有192个5X7字型点阵的CGROM(字符发生器)
6)8个可以用户自定义的5X7的CGRAM
表3-2LCD1602引脚说明
编号
符号
引脚说明
编号
符号
引脚说明
1
VSS
电源地
9
D2
数据
2
VDD
电源正极
10
D3
数据
3
VL
液晶显示偏压
11
D4
数据
4
RS
数据/命令选择
12
D5
数据
5
R/W
读/写指令选择
13
D6
数据
6
E
使能信号
14
D7
数据
7
D0
数据
15
BLA
背光源正极
8
D1
数据
16
BLK
LCD1602读写时序图如图3-8、3-9所示。
图3-8LCD1602读操作时序图
图3-9LCD1602读操作时序图
3.6报警模块
本系统根据实际测得的温度值由温湿度传感器处理从而判断出指标是否超出,如果存在超出则有蜂鸣器报警。
蜂鸣器的电流比较大,用单片机的I/O口直接驱动不能带动,需要进行电流放大,这里采用PNP三极管8550。
R3限流电阻,一般取1-2K,蜂鸣器正极接到PNP的C极,当P2.0=1:
PNP截止,不响,当P2.0=0:
PNP导通,响。
报警模块如图3-10所示。
图3-10报警模块
4.系统软件设计
4.1主程序设计
本文采用DHT11温湿度传感器,它对仓库内的温湿度进行采集,并将其转换成数字信号,将数字信息提供给系统,系统进行LCD初始化显示,进行延时等待后读取DHT11温湿度传感器模块中的信息,才采集好的信息传给LCD1602进行显示,通过设定好的上下限进行报警。
软件系统具体流程图如图4-1所示。
图4-1软件主程序图
4.2LCD1602软件设计
1.指令介绍
1.1清屏指令
表4-1清屏指令
指令功能
指令编码
执行时间/MS
清屏
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
1.64
0
0
0
0
0
0
0
0
1
0
功能:
<1>清除液晶显示器,将DDRAM的内容都填入"空白"的ASCII码0H;
<2>光标归位,将光标撤回显示屏的左上方;
<3>将AC(地址计数器)的值设置为0。
2.光标归位指令
表4-2光标归位指令
指令功能
指令编码
执行时间/MS
光标归位
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
1.64
0
0
0
0
0
0
0
0
1
X
功能:
<1>把光标撤回到显示屏的左上方;
<2>把AC(地址计数器)的值设置为0;
<3>保持DDRAM的内容保持不变。
3.进入模式设置指令
表4-3进入模式设置指令
指令功能
指令编码
执行时间/MS
进入模式设置
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
40
0
0
0
0
0
0
0
1
I/D
S
功能:
设定每次输入1位数据后光标的方向,并且观察每次写入的一个
字符是否移动方向。
4.显示开关控制指令
表4-4显示开关控制指令
指令功能
指令编码
执行时间/MS
显示开关控制
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
40
0
0
0
0
0
0
1
D
C
B
功能:
光标显示/关闭控制显示器开/关、控制显示器开/关以及光标是否闪烁。
5.设定显示屏或光标移动方向指令
表4-5显示屏或光标移动方向指令
指令功能
指令编码
执行时间/MS
设定显示屏或光标移动方向
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
40
0
0
0
0
0
1
S/C
R/L
X
X
功能:
使整个显示屏幕移位光标移位或光标移位。
6.功能设定指令
表4-6功能设定指令
指令功能
指令编码
执行时间/MS
功能设定
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
40
0
0
0
0
1
DL
N
F
X
X
功能:
设定数据总线位数、显示的行数及字型。
7.设定CGRAM地址指令
表4-7CGRAM地址指令
指令功能
指令编码
执行时间/MS
设定CGRAM地址
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
40
0
0
0
1
CGRAM的地址(6位)
功能:
设定下一个要存入数据CGRAM的地址。
DB5DB4DB3为字符号。
地址。
(000~111)(能定义八个字符)
DB2DB1DB0为行号。
(000~111)(八行)
8.设定DDRAM地址指令
表4-8DDRAM地址指令
指令功能
指令编码
执行时间/MS
设定DDRAM地址
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
40
0
0
0
1
CGRAM的地址(7位)
功能:
设定下一个要存入数据DDRAM的地址。
9.读取忙信号或AC地址指令
表4-9读取忙信号或AC地址指令
指令功能
指令编码
执行时间/MS
读取忙碌信号或AC地址
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
40
0
1
FB
AC内容(7位)
功能:
<1>读取忙碌信号BF的内容,BF=1表示液晶显示器繁忙,暂时无法接收单
片机传送来的数据或指令;当BF=0时,液晶显示器可以接收单片机传送来的数据或指令。
<2>读取地址计数器(AC)的内容。
10.数据写入DDRAM或CGRAM指令一览
表4-10数据写入DDRAM和CGRAM指令
指令功能
指令编码
执行时间/MS
数据写入到DDARM或CGRAM
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
40
1
0
要写入的数据D7~D0
功能:
<1>将字符码写入DDRAM,显示出相对应的字符在液晶显示器上。
<2>将使用者自己设计的图形存入CGRAM。
DB7DB6DB5可为任何数据,一般取“000”。
DB4DB3DB2DB1DB0对应于每行5点的字模数据。
11.从CGRAM或DDRAM读出数据的指令一览
表4-11从CGRAM或DDRAM读出数据的指令一览
指令功能
指令编码
执行时间/MS
从CGRAMN或DDRAM读出数据
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
40
1
1
要读出的据D7~D0
功能:
读取CGRAM或DDRAM中的内容。
显示模块的程序流程图如图4-2所示。
图4-2LCD1602流程图
4.3A/D转换模块软件设计
ADC0832通过内部多路器来控制通道,处理器的控制命令通过DI引脚输入。
ADC0832有8个引脚,CH0和CH1为模拟输入端,CS为片选引脚,CLK为ADC0832的时钟输入端,CS低置位才能对ADC0832进行配置和启动转换,CS在转换中必须为低,当CS为低时,DI端加上一个高电平,接着CLK上加一个时钟,DI上的逻辑1会使ADC0832脱离高电平,然后通道配置数据随着时钟通过DI端移入多路器,在经过一个时
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 仓库 温湿度 监测 系统 设计