基于单片机的粮库温湿度智能监控系统设计大学论文.docx
《基于单片机的粮库温湿度智能监控系统设计大学论文.docx》由会员分享,可在线阅读,更多相关《基于单片机的粮库温湿度智能监控系统设计大学论文.docx(29页珍藏版)》请在冰豆网上搜索。
基于单片机的粮库温湿度智能监控系统设计大学论文
本科毕业设计
基于单片机的粮库温湿度智能监控系统设计
BasedonMCUintelligentmonitoringsystemdesignofgraindepottemperatureandhumidity
学院(系):
机械电子工程学院
专业:
测控技术与仪器
学生姓名:
学号:
指导教师:
评阅教师:
完成日期:
EasternLiaoningUniversity
摘要
粮食的储藏是为了防备一些突发性事件而采取的措施,比如一些自然灾害。
“民以食为天”,粮食是人类生存的必要物品,对我们来说,粮食的重要性不言而喻。
想要生存就离不开它。
所以采用高科技的技术来保证粮食的安全有着非常重要的社会意义和经济价值。
每当粮食收获的时候,各个粮库的监控工作的压力是非常的巨大,如若管理不当,损失是非常大的。
粮库中温、湿度是能否保证粮食安全储存的重要因素,因此,温度和湿度的监控对保护粮食有着重要的意义,所以,设计性价比高的粮库温湿度智能监控系统已经到了急如星火的地步。
本系统是基于单片机的粮库温湿度智能监控系统,为的是保证存储粮食的安全,所采用的单片机是AT89C52,此单片机作为温、湿度智能监测系统的核心控件,以SHT11为温、湿度的测量装置,SHT11是一款当前比较先进的数字式的温湿度传感器,LM016L为显示元件,报警装置由蜂鸣器和LED灯组成。
当传感器检测到的温、湿度值不在预设范围内,可实现声、光实时报警,并控制相应继电器,使执行部分做出相应处理,让粮库中的温、湿度值维持在设置范围内。
系统设计了按键模块,当因一些现实存在的因素而需要改变系统控制的温、湿度范围时,可由按键修改,LCD显示模块可实时显示采集的温湿度值。
关键词:
单片机;智能;温度;湿度
BasedonMCUintelligentmonitoringsystemdesignofgraindepottemperatureandhumidity
Abstract
Grainstorageismeasurestoguardagainstsomeunexpectedevents,suchassomenaturaldisasters."Thefeedwithfoodfirst",fooditemsarenecessaryforhumansurvival,forus,theimportanceoffoodisself-evident.Wanttolivewithoutit.Soscientificandprotectionhasimportantsocialsignificanceandeconomicvalue.
Whenthereisaharvest,eachgrainmonitoringworkpressureisverybig,ifpoorlymanaged,thelossisverybig.Inthegraindepottemperatureandhumidityisoneoftheimportantfactorstoensurefoodsecuritystorage,therefore,themonitoringoftemperatureandhumidityisofgreatsignificancetoprotectthefood,sothedesignperformanceofgrainpricehighertemperatureandhumidityintelligentmonitoringsystemisimminent.
Thisdesignisintegratedthedetectionandcontrolofsingle-chipdesignofgraindepottemperatureandhumidity.SystemisadoptedbythesinglechipmicrocomputerAT89C52,thesinglechipmicrocomputerasthecoreoftheintelligenttemperatureandhumiditymonitoringsystemcontrols,withdigitaltemperatureandhumiditysensorSHT11temperatureandhumidityfordetectingelement,LM016Lfordisplaycomponents,alarmdeviceiscomposedofbuzzerandLEDwarninglights.Whenthesensordetectsthetemperatureandhumidityvalueisbeyondthescopeofthepreset,whichcanrealizereal-timesoundandlightalarm,andcontrolthecorrespondingrelay,makestheexecutivepartaccordingly,keepgraindepottemperatureandhumidityvalueintherangeofSettings.Thisdesigncanalsobethroughthethresholdbuttontochangethetemperatureandhumidity,LCDdisplaymodulecanbereal-timeacquisitionoftemperatureandhumidityvalues.
KeyWords:
MCU;Intelligence;Temperature;Humidity
目录
摘要I
AbstractII
1绪论1
1.1研究背景1
1.2粮库监控系统国内外现状以及发展趋势1
1.3本设计主要工作内容1
2系统总体设计3
2.1系统硬件电路设计5
2.1.1温湿度检测模块5
2.1.2单片机控制模块8
2.1.3报警电路模块11
2.1.4显示模块12
2.1.5继电器模块13
2.1.6按键模块14
2.2系统软件设计15
2.2.1主程序设计15
2.2.2温湿度子程序设计16
2.2.3报警子程序设计17
3PROTEUS仿真19
3.1本设计仿真结果19
3.2仿真案例19
4总结21
参考文献22
附录A系统电路图23
致谢24
1绪论
1.1研究背景
人类生存离不开粮食,温度和湿度是能否保护好粮食的关键因素,想要保护好粮食,就需加强粮库内温度与湿度的监测工作。
但传统的方法弊端很多,也是因为过去科技落后,在检测部分,我们只能使用温、湿度计来测量粮库的温度和湿度,这种做法不但精度低,实时性也很差;在控制部分也只能人为的进行一些操作来控制粮库内的温、湿度。
这样的做法费时、费力、效率还不高,而且检测的温、湿度误差很大。
随着科技越来越发达,我们可以使用造价低、控制方便并且检测准确的粮库温湿度智能监控系统,实现对粮食的储藏。
1.2粮库监控系统国内外现状以及发展趋势
随着科技的迅速发展,计算机技术、传感器技术也是越来越发达,粮库监控系统的应用也越来越广、越来越完善。
从1978年的电阻式温度传感器到1990年的应用了半导体、热电偶的传感器再到如今的集信号检测、变换和A/D转换于一体的数字式传感器;从测量精度低、速度慢到现在的测量精度高、更是做到了实时测量;从需要人为的操作到智能自动控制。
这一切都说明了粮库的监控系统是愈发的完美了。
近年来,随着单片机功能的壮大,人们对粮库监控系统的要求也是越来越高,寻找对粮库监控系统来说性价比高的单片机、传感器等元件成了研究的热点。
在国外的一些发达国家,高科技的数字式温、湿度传感器在粮库监控系统方面已经得到了广泛的应用,在这方面的取得的成就也比较理想。
由于此种传感器的输出是以数字式的形式,在传输过程中不必再担心会受到干扰,不必再担心远距离传输而导致检测精度会降低,从而很好解决了曾经普通的温、湿度传感器的弊端问题。
我们国家在温、湿度测控技术这方面的研究比较晚,但我国研究人员在学习发达国家温、湿度技术的基础上,也研究出了属于自己的温、湿度监控系统。
当今社会下,随着科学技术的越来越发达,单片机技术得到了迅速的发展,以致以单片机作为核心的控制系统也变得越来越完美,在各个领域也已经得到了广泛的应用。
1.3本设计主要工作内容
本次设计的目的是保护储存粮食的安全,系统的核心是单片机,它控制本系统的各种功能,所以它的选择是非常重要的,在这里我选用的是AT89C52单片机,这款单片机对本系统的性价比很高,其功能也满足本系统,在软、硬件方面的设计也比较简单其本身也是一款低功耗、高性能的单片机。
温、湿度传感器是本设计的检测装置,传感器的优劣关系到系统的优劣,为了解决远距离传输的情况和传输过程中受干扰而致使精度降低的情况,在这里我选择了数字式温湿度传感器SHT11,此传感器可以直接将所检测的温、湿度值转化为数字量的形式输出,送到AT89C52单片机中。
单片机对信号进行处理,当检测到的温、湿度值超过阈值时系统可以实现自动报警,并控制继电器做出对应的控制,使温、湿度值在设置范围内,达到自动控制的目的。
其中,控制的方法是采用设定报警阀值,当检测到的温度值过低时,系统启动报警装置,即指示灯亮、蜂鸣器响,单片机控制升温继电器吸合,加热装置开始自动工作;当测量到的温度过高时,单片机控制降温继电器吸合,风扇或者是其他的降温装置开始自动工作;当检测到的湿度值过低时,单片机控制加湿继电器吸合,加湿装置开始自动工作;当检测到湿度过高时,单片机控制除湿继电器吸合,除湿装置开始自动工作;当检测到的温、湿度值均在设置范围内时,继电器是处于断开状态。
本系统采用LM016L作为显示元件,这款液晶显示器在功能上满足本系统要求,本身具有低功耗、寿命长、无辐射等优点,在显示这个领域它已经是被广泛的应用。
显示部分会实时显示温、湿度值。
系统按键模块可根据需要更改阀值。
2系统总体设计
本系统的核心是单片机AT89C52,设计的目的的保护存储粮食的安全。
系统中的测量部分是将数字式的温湿度传感器SHT11置于粮库中,让其检测粮库中的温、湿度,此传感器可以直接将所检测的温、湿度值转化为数字量的形式输出,送到AT89C52单片机中;单片机对接收到的温、湿度值进行一系列的处理,即单片机把传感器采集到的温度和湿度值与所设阀值进行比较,对比较的结果进行处理,如果温度和湿度不在设定的范围内,系统先启动报警装置,使报警模块工作,并控制继电器,使相应设备调节粮库内的温、湿度,让其变化到设定的范围内。
LCD实时显示温、湿度值。
本设计的研究方法和思路如下:
1)预设控制范围:
考虑到地区的天气等原因对粮库内存储的粮食的影响,再根据粮库内粮食能维持安全所需的温、湿度,设置出系统控制的阀值。
2)信号的采集与处理:
传感器对粮库内温、湿度进行测量,将其所测得的温湿度值送入到单片机中,单片机对其进行一系列的处理,液晶显示器会显示当前的温、湿度值,供管理员检测。
3)单片机实现控制:
单片机将设置温湿度值的上、下限值与传感器所检测的粮库内的温湿度值进行比较,根据结果做出处理,吸合或断开各种继电器,进而控制空调等一些控制温湿度的设备,以此来调节粮库内温湿度,使其与设定值保持一致。
4)范围可调:
由于粮库所在地区不同,环境气候等因素也不同,对粮库内粮食正常保存所需的温、湿度也不尽相同,所以设计按键或者按钮模块,可手动调节系统对温、湿度的控制范围。
系统总体框图如图2.1所示:
否
是
图2.1系统总体框图
2.1系统硬件电路设计
2.1.1温湿度检测模块
(1)传感器的选择
随着科技的迅速发展,传感器方面的技术的发达,温、湿度传感器也从曾经的传统模拟式的传感器发展到了现在的数字式的、将温度检测和湿度检测合为一体的传感器。
在现在有的较先进的传感器就我所知道的就有DHT11数字式温湿度传感器和SHT1X系列的数字式温湿度传感器,它们的性价比高、应用方面也特别的广,在此我考虑到本设计对传感器的功能要求以及设计仿真的难易程度,我选择了数字式的温湿度传感器SHT11,此传感器集成度高,也满足本设计的全部要求,它除了是以数字式的形式输出信号外,还具有免外围电路等特点。
本系统采用数字式温湿度传感器SHT11作为测量的元件。
(2)传感器SHT11简介
1)SHT11的引脚功能
引脚图如图2.2所示。
图2.2SHT11引脚图
各引脚的功能如下:
GND--接地;
DATA--数据线;
SCK—时钟线;
VDD—电源线;
NC—未连接。
2)SHT11的工作原理
对于SHT11这个传感器,它是一总集成度很高的传感器,在信号的检测方面,它的内部包含了温度和湿度的检测,温度的检测是靠内部的温敏元件,湿度的检测是靠内部的湿敏元件;而且这个传感器会对本体检测到的温度和湿度进行一系列的处理,其过程是首先将两个敏感元件所检测到的以电信号形式存在的温度和湿度进行放大处理,放大处理是靠内部的放大器来完成的,放大后的以电信号存在的温度和湿度经过内部的A/D转换器转换成数字式的温度和湿度,最后再以二线串行的方式输出数字式的温度、湿度值。
在本系统中,AT89C52单片机对数字式传感器SHT11的控制是通过表2.1所示的代码实现的。
表2.1SHT11控制命令代码
命令代码
含义
00011
测量温度
00101
测量湿度
00110
写内部状态寄存器
00111
读内部状态寄存器
11110
复位命令
其他
保留
3)温度和湿度值的计算
湿度线性补偿和温度补偿
数字式温湿度传感器
在检测后对温湿度的输出过程中,是通过引脚
脚直接输出的数字量的湿度值,但这个值并不是粮库中准确的湿度值,我们称这个湿度值为“相对湿度”,为了得到更为准确的湿度值,需要通过式2.1进行修正,也称其为湿度值的补偿,公示如下式2.1:
(2.1)
式中:
_经过补偿后的湿度值,这个值就作为粮库中的湿度值,较为准确;
_相对湿度测量值;
_线性补偿系数;
_线性补偿系数;
_线性补偿系数;
式2.1中的一些取值的情况如表2.2所示。
在检测过程中,环境中的温度对湿度的影响是非常的明显的,并且在实际测量时,环境中的温度和测试时所参考的温度25摄氏度是有所不同的,故而需要对线性补偿后的湿度值再进行温度的补偿,补偿公式如下:
(2.2)
式中:
_经过线性补偿和温度补偿这两种补偿后的湿度值;
T_测试湿度值时的温度(单位是℃);
_温度补偿系数;
_温度补偿系数;
式2.2中的一些取值的情况如表2.3所列。
表2.2湿度线性补偿系数
12位
0.0405
8位
0.648
表2.3湿度值温度补偿系数
12位
0.01
0.00008
8位
0.01
0.00128
SHT11传感器的检测部分的电路图如图2.3所示:
图2.3SHT11检测部分电路图
2.1.2单片机控制模块
(1)AT89C52性能参数
单片机AT89C52的引脚图如图2.4所示:
图2.4AT89C52引脚图
其引脚功能简介:
1主电源引脚VCC和VSS
VCC(40脚)接+5V电压。
VSS(20脚)接地。
2引脚XTAL1和XTAL2
XTAL1(19脚):
接外部晶体。
XTAL2(18脚):
接外部晶体。
3控制与其它电源复用引脚RST/VPD、ALE/
、
和
/VPP。
RST/VPD(9脚):
复位脚。
ALE//
(30脚):
是否允许锁存脚。
其中
端是吸收或输出电流的驱动端,对于有EPROM时,此引脚用于输入编程脉冲(/
)。
(29脚):
此引脚的输出是单片机用到外部程序存储器时的读选信号端。
/VPP(31引脚):
这个引脚是单片机选用程序的存储器的引脚,当
端的信号为“1”时,它将访问内部的程序存储器,这个时候有一个特殊情况,就是在AT89C52内的值超过0FFFH的时候,单片机会自动转向于执行访问外部的程序存储器内的程序。
当
端的信号为“0”时,只执行访问外部的程序存储器。
4P0口、P1口、P2口和P3口引脚
口(32脚~39脚):
是8位的双向三态I/O口。
口(1脚~8脚):
是8位准双向I/O口。
口(28脚~21脚):
是8位的准双向I/O口。
口(17脚~10脚):
是8位的准双向I/O口。
(2)内部时钟电路设计
本系统采用外接晶体震荡器和两个电容:
电容C2和C3组成的并联的谐振电路,本系统两个电容都选择33pF,外接晶体振荡器选择的是12MHZ。
AT89C52单片机的引脚XTAL1接外接晶体振荡器的一端,具体连接如下图、XTAL2接外接晶体振荡器的另一端。
把串联后的电容C2和C3与晶振的两端分别相连,就简单的组成了单片机的时钟电路。
图2.5为本设计采用的时钟电路:
图2.5单片机时钟电路
(3)复位电路设计
本设计采用的复位方式是通过按按钮来实现的,复位电路的电路图如图2.6所示:
图2.6单片机复位电路
(4)单片机最小系统电路
由时钟电路和复位电路可设计出AT89C52单片机的最小系统如图2.7所示:
图2.7最小系统电路
(5)AT89C52内部结构
AT89C52单片机的结构组成如图2.8所示:
图2.8AT89C52内部结构
2.1.3报警电路模块
为了能及时的提示工作人员,本系统设计了报警模块,报警部分包括蜂鸣器和LED灯,采用声、光报警。
其具体电路图2.9如下
图2.9声、光报警电路
2.1.4显示模块
显示部分是用来显示SHT11传感器检测到的数据,本系统中是实时显示检测到的温、湿度值,显示部分选用LM016L字符型液晶显示模块。
LM016L液晶显示器的引脚图如图2.10所示:
图2.10LM016L引脚图
LM016L引脚功能简介如下:
VSS(1脚):
一般接地。
VDD(2脚):
接电源。
VEE(3脚):
对比度的调整端。
RS(4脚):
寄存器的选择端。
R/W(5脚):
读写信号线平。
E(6脚):
E端为使能端,下降沿使能。
DB0~DB7(7脚~14脚):
三态、双向数据总线;
其中DB0~DB3(7脚~10脚)为低4位;DB4~DB7(11脚~14脚)为高4位,具体介绍如下:
DB0(7脚):
第0位,这个位是最低位。
DB1(8脚):
第1位。
DB2(9脚):
第2位。
DB3(10脚):
第3位。
DB4(11脚):
第4位。
DB5(12脚):
第5位。
DB6(13脚):
第6位。
DB7(14脚):
第7位,这个位是最高位。
系统中显示部分的电路图如图2.11所示:
图2.11显示模块电路图
2.1.5继电器模块
因为本设计以单片机为中心控制模块,单片机的电源为+5V,然而风扇、除湿器等设备是+225V,为了保护单片机的安全,单片机不能直接与上述设备相连,故而系统采用继电器连接单片机和上述的那些能够控制粮库温湿度的设备,使其达到保护电路中元件的目的。
本系统是基于单片机的粮库温湿度智能监控系统,当传感器检测到的温、湿度值不在设置的范围内时,单片机通过程序来控制继电器工作:
接通或者断开,以达到控制相应设备,使其控制粮库中的温、湿度值,让其能够保持在系统控制的范围内的目的。
继电器具体工作如下:
当检测到的温度超过了系统控制的温度报警的上限值时:
蜂鸣器响、报警指示灯亮,降温继电器接通;
当检测到的温度低于了系统控制的温度报警的下限值时:
蜂鸣器响、报警指示灯亮,升温继电器接通;
当检测到的湿度超过了系统控制的湿度报警的上限值时:
蜂鸣器响、报警指示灯亮,除湿继电器接通;
当检测到的湿度低于了系统控制的湿度报警的下限值时:
蜂鸣器响、报警指示灯亮,加湿继电器接通;
并且继电器吸合时也有相应LED灯指示。
继电器模块电路如图
所示:
图2.12继电器模块电路图
2.1.6按键模块
为了保证现实生活中的自然环境和天气等因素对粮库中温、湿度造成巨大的影响,本系统设计了能通过手动按键的方法来改变系统控制的粮库中的温湿度,考虑到手动设置控制范围不会很频繁的使用,故而本设计仅采用了几个按键来完成控制温湿度范围的调节。
本设计采用4个按键,其中1个按键是单片机复位按键,另外3个按键实现对温度、湿度阈值的更改。
其按键更改阀值的方法是:
第一次按下设置键进入温度下限的设置,选择递增键增加,递减键减小;
第二次按下设置键进入温度上限的设置,选择递增键增加,递减键减小;
第三次按下设置键进入湿度下限的设置,选择递增键增加,递减键减小;
第四次按下设置键进入湿度上限的设置,选择递增键增加,递减键减小;
第五次按下设置键完成温、湿度阀值的设置。
按键部分的电路如图2.13所示:
图2.13按键模块电路
2.2系统软件设计
2.2.1主程序设计
系统主程序的大概流程是:
系统开始工作后调用传感器检测温湿度的程序,显示程序,然后与系统控制的范围相对比,根据结果的判断,是否调用报警子程序,继电器模块子程序。
大概流程图如图2.14所示:
否
是
图2.14主程序流程
2.2.2温湿度子程序设计
由于SHT11内部集成了A/D转换,因此在数据采集时存在一定的转换时间,当SHT11收到温度转换命令后,开始转换。
转换完成后发送给AT89C52单片机。
其流程图如图2.15所示:
图2.15检测部分的程序流程图
2.2.3报警子程序设计
当SHT11检测到的温、湿度值超过阀值时,单片机置位报警标志位,使报警电路工作,启动报警,即蜂鸣器响、LED报警灯亮。
其报警子程序流程图如图2.16所示:
图2.16报警子程序流程图
3PROTEUS仿真
3.1本设计仿真结果
本系统按照设计思路在Proteus软件上画出了电路图,并在
软件上编写程序,生成.hex文件添加到AT89C52芯片中,运行成功,系统初始运行情况如下:
其初始范围为:
温度:
10℃~40℃;
湿度:
40%RH~80%RH。
范围可由按键修改。
3.2仿真案例
温湿度范围
温度:
10℃~40℃;
湿度:
40%RH~80%RH。
(1)温度超限
①温度低于10℃:
检测温度为5℃,湿度50%RH;
仿真结果:
LCD显示结果:
温度5.570℃,湿度50.80%;
报警模块:
蜂鸣器响、报警灯亮;
继电器模块:
升温继电器吸合、加热指示灯亮。
②温度高于40℃:
检测温度为45℃,湿度为50%RH;
仿真结果:
LCD