粮仓温湿度监测系统大学毕设论文.docx
《粮仓温湿度监测系统大学毕设论文.docx》由会员分享,可在线阅读,更多相关《粮仓温湿度监测系统大学毕设论文.docx(43页珍藏版)》请在冰豆网上搜索。
粮仓温湿度监测系统大学毕设论文
摘要
本毕业设计是基于单片机的温湿度监测系统设计方案,主要由温度、湿度采集、AD转换、单片机控制、数码管显示、USB连接器六部分组成。
本设计采用89c51单片机为控制中心,该芯片具有4KB的快擦写可编程/擦除只读存储器EEPROM、256KB片内RAM、3个16位定时计数器、5个中断源,无需进行系统扩展既可满足任务要求,能较大幅度提高系统的性价比。
而温湿度传感器我选用的是dht11传感器,他性价比高。
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。
传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。
因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。
另外该系统除了能显示温湿度以外,还能设置温湿度报警阈值。
关键词:
温湿度;89c51单片机;dht11传感器
Barntemperaturemonitoringsystem
Abstract
Thegraduationprojectisbasedonthesinglechipdesigntemperatureandhumiditymonitoringsystem,mainlybytemperature,humidityacquisition,ADconversion,microprocessorcontrol,digitaldisplay,usbconnectorcomposedofsixparts.
Thedesignofthecontrolcenterusing89c51microcontroller,thechiphas4KBofflashprogrammable/erasablereadonlymemoryEEPROM,256KBon-chipRAM,316-bittimercounters,sixinterruptsources,bothwithouttheneedforsystemexpansiontomeetmissionrequirements,cangreatlyimprovethesystem'scost.ThetemperatureandhumiditysensorIuseisdht11,hecosteffective.DHT11digitaltemperatureandhumiditysensorisacalibrateddigitalsignaloutputwiththetemperatureandhumiditycombinedsensor.Itsapplication-specificdigitalmodulesacquisitionandtemperatureandhumiditysensortechnology,toensurethatproductswithhighreliabilityandexcellentlong-termstability.SensorincludesaresistiveelementandasenseofwetNTCtemperaturecomponents,andwithahigh-performance8-bitmicrocontrollerconnected.Sotheproducthasexcellentquality,fastresponse,anti-interferenceability,highcostperformanceadvantages.
Inadditionthesysteminadditiontoshowingtheoutsidetemperatureandhumidity,butalsosetthetemperatureandhumidityalarmthreshold.
Keywords:
Temperatureandhumidity;89c51microcontroller;dht11Sensor
目录
1绪论
1.1选题背景
近几年据海关统计结果显示,我国粮食进出口同比均呈下降趋势,我国粮食供求开始进入紧平衡阶段。
在粮食供给能力逐渐弱化的情况下,我们必须注意到贮存粮食的科学性和有效性。
贮粮仓库的现代管理也是当前粮食系统改造的重大项目之一。
而在粮仓管理过程当中,最重要的是控制仓内的温度和湿度,温湿度会直接影响粮食的贮存量。
而温湿度检测传统的方法是用与湿度表、毛发湿度表、双金属式测量计和湿度试纸等测试器材,通过人工进行检测,对不符合温度和湿度要求的场所进行通风、去湿和降温等工作。
这种人工测试方法费时费力、效率低,且测试的温度及湿度误差大,随机性大,因此我们需要一种造价低廉、使用方便且测量准确的温湿度监测系统。
1.2设计目标
1.2.1基本功能
检测温度、湿度
显示温度、湿度
过限报警
1.2.2主要技术参数
温度检测范围:
-30℃-+55℃
测量精度:
2℃
湿度检测范围:
20%-90%RH
检测精度:
5%RH
显示方式:
温度:
四位显示湿度:
四位显示
报警方式:
三极管驱动的蜂鸣音报警
2设计方案
温湿度监测系统要满足以下条件:
温湿度监测系统能完成数据采集和处理、显示、串行通信、输出控制信号等多种功能。
由数据采集、数据调理、单片机、数据显示等4个大的部分组成。
该测控系统具有实时采集(检测粮库内的温湿度)、实时显示(对监测到的进行显示)、实时警报(根据监测的结果,超出预设定的值的进行蜂鸣警告)的功能。
传感器是实现测量首要环节,是监测系统的关键部件,如果没有传感器对原始被测信号进行准确可靠的捕捉和转换,一切准确的测量和控制都将无法实现。
工业生产过程的自动化测量和控制,几乎主要依靠各种传感器来检测和控制生产过程中的各种参量,使设备和系统正常运行在最佳状态,从而保证生产的高效率和高质量。
2.1温湿度传感器的选择
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高
的可靠性与卓越的长期稳定性。
传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。
因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。
每个DHT11传感器都在极为精确的湿度校验室中进行校准。
校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。
单线制串行接口,使系统集成变得简易快捷。
超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。
产品为4针单排引脚封装。
连接方便,特殊封装形式可根据用户需求而提供。
2.2信号采集通道的选择
在本设计系统中,温度输入信号为4路的模拟信号,这就需要多通道结构采用多路分时的模拟量输入通道。
这种结构的模拟量通道特点为:
对ADC、S/H要求高。
处理速度慢。
硬件简单,成本低。
软件比较复杂。
如图2-1所示。
图2-1多路分时的模拟量输入通道
2.3系统的总体框图
系统的总体设计框图如图3-1所示。
图3-1系统总体框图
本设计由信号采集、信号分析和信号处理三个部分组成的。
(一)信号采集由dht11温湿度传感器和多路模式选择开关组成;
(二)信号分析由A/D转换器和单片机80c51组成;
(三)信号处理由串行口LCD显示器和报警系统等组成。
2.4本章小结
在本章中,主要讲了温湿度传感器的硬件选择和信号采集通道的选择。
这些选择是在实用性和价格低廉方面考虑的,如果条件允许可以选择性能更加强大的传感器和一个专门的多路选择的的模块。
在下一章中,我们将开始讲系统的总体设计所用到主要芯片简介
3主要芯片简介
3.1DHT11数字传感器
数字温湿度传感DHT11是由广州奥松有限公司生产的一款温湿度一体化的数字传感器
3.1.1主要特性
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。
传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。
因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。
每个DHT11传感器都在极为精确的湿度校验室中进行校准。
校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。
单线制串行接口,使系统集成变得简易快捷。
超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。
产品为4针单排引脚封装。
连接方便,特殊封装形式可根据用户需求而提供。
3.1.2应用领域
该DHT11可以用于暖通空调、测试及检测设备、汽车、数据记录器、消费品、自动控制、湿度调节器及医疗等应用领域。
3.1.3接口说明
建议连接线长度短于20米时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻
图3-2dht11应用电路
3.1.4电源引脚
DHT11的供电电压为3-5.5V。
传感器上电后,要等待1s以越过不稳定状态在此期间无需发送任何指令。
电源引脚(VDD,GND)之间可增加一个100nF的电容,用以去耦滤波。
3.1.5封装信息
图3-3dht11封装图
3.1.6Dht11引脚图
图3-4引脚图
3.1.7注意事项
温度影响气体的相对湿度,在很大程度上依赖于温度。
因此在测量湿温时,应尽可能保证湿度传感器在同一温度下工作。
如果与释放热量的电子元件共用一个印刷线路板,在安装时应尽可能将DHT11远离电子元件,并安装在热源下方,同时保持外壳的良好通风。
为降低热传导,DHT11与印刷电路板其它部分的铜镀层应尽可能最小,并在两者之间留出一道缝隙。
光线长时间暴露在太阳光下或强烈的紫外线辐射中,会使性能降低。
配线注意事项DATA信号线材质量会影响通讯距离和通讯质量,推荐使用高质量屏蔽线。
3.2ADC0832与单片机89C51
3.2.1A/D转换
3.2.1.1A/D转换器的特点
ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换
芯片。
由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎,
其目前已经有很高的普及率。
学习并使用ADC0832可是使我们了解A/D转换器
的原理,有助于我们单片机技术水平的提高。
ADC0832具有以下特点:
8位分辨率;
双通道A/D转换;
输入输出电平与TTL/CMOS相兼容;
5V电源供电时输入电压在0~5V之间;
工作频率为250KHZ,转换时间为32μS;
一般功耗仅为15mW;
8P、14P—DIP(双列直插)、PICC多种封装;
商用级芯片温宽为0°Cto+70°C,工业级芯片温宽为−40°Cto+85°C;
3.2.1.2ADC0832元件说明
ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。
通过DI数据输入端,可以轻易的实现通道功能的选择。
3.2.1.3芯片顶视图
图3-5ADC0832芯片顶视图
芯片接口说明:
GND芯片参考0电位(地)。
DI数据信号输入,选择通道控制。
DO数据信号输出,转换数据输出。
CLK芯片时钟输入。
Vcc/REF输入及参考电压输入(复用)。
CS片选使能,低电平芯片使能。
CH0模拟输入通道0,或作为IN+/-使用。
CH1模拟输入通道1,或作为IN+/-使用。
3.2.1.4ADC0832与单片机的接口电路
ADC0832与单片机的接口电路如图3-7所示
图3-6接口电路图
3.2.1.5单片机对ADC0832的控制原理
正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。
但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。
(见图3-7)
当ADC0832未工作时其CS输入端应为高电平此时芯片禁用,CLK和DO/DI的电平可任意。
当要进行A/D转换时须先将CS使能端置于低电平并且保持低电平直到转换完全结束。
此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。
在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。
在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能,其功能项见表3-1。
表3-1Adc0832单端mux模式
Mux地址
频道
Sgl/dif
Odd/sign
0
1
1
0
+
1
1
+
表3-2Adc0832多端mux模式
Mux地址
频道
Sgl/dif
Odd/sign
0
1
0
0
+
-
0
1
-
+
如表3-1,表3-2所示,当此2位数据为“1”、“0”时,只对CH0进行单通道转换。
当2位数据为“1”、“1”时,只对CH1进行单通道转换。
当2位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。
当2位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1作为正输入端IN+进行输入。
到第3个脉冲的下沉之后DI端的输入电平就失去输入作用。
此后DO/DI端则开始利用数据输出DO进行转换数据的读取。
从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉DO端输出下一位数据。
直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。
也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATD0。
随后输出8位数据,到第19个脉冲时数据输出完成也标志着一次A/D转换的结束。
最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以了。
更详细的时序说明请见图3-7。
作为单通道模拟信号输入时ADC0832的输入电压是0~5V且8位分辨率时的电压精度为19.53mV。
如果作为由IN+与IN-输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。
但值得注意的是,在进行IN+与IN-的输入时如果IN-的电压大于IN+的电压则转换后的数据结果始终为00H。
图3-7ADC0832时序图
3.2.2单片机89c51
为了设计此系统,我们采用了80c51单片机作为控制芯片。
89C51是MCS-51系列单片机中CHMOS工艺的一个典型品种;其它厂商以8951为基核开发出的CMOS工艺单片机产品统称为89C51系列。
该系列单片机是采用高性能的静态89C51设计由先进CMOS工艺制造并带有非易失性Flash程序存储器全部支持12时钟和6时钟操作P89C51X2和P89C52X2/54X2/58X2分别包含128字节和256字节RAM32条I/O口线3个16位定时/计数器6输入4优先级嵌套中断结构1个串行I/O口可用于多机通信I/O扩展或全双工UART以及片内振荡器和时钟电路。
此外,由于器件采用了静态设计,可提供很宽的操作频率范围,频率可降至0。
可实现两个由软件选择的节电模式,空闲模式和掉电模式,空闲模式冻结CPU但RAM定时器,串口和中断系统仍然工作掉电模式保存RAM的内容但是冻结振荡器导致所有其它的片内功能停止工作。
由于设计是静态的时钟可停止而不会丢失用户数据运行可从时钟停止处恢复
3.2.2.189c51的基本结构
89C51的微处理器(CPU)
运算器
累加器ACC;
寄存器B;
程序状态字寄存器PSW。
控制器
程序计数器PC;
指令寄存器IR;
定时与控制逻辑。
89C51的片内存储器
内部ROM容量4K字节
内部RAM容量128字节
89C51的I/O口及功能单元
四个8位的并行口,即P0~P3。
它们均为双向口,既可作为输入,又可作为输出。
每个口各有8条I/O线。
有一个全双工的串行口(利用P3口的两个引脚P3.0和P3.1);
有2个16位的定时/计数器;
有1套完善的中断系统。
89C51的特殊功能寄存器(SFR)
低功耗的闲置和掉电模式
片内振荡器和时钟电路
图3-889c51结构图
3.2.2.289c51的引脚图
图3-989c51引脚图
89c51的制作工艺为CMOS,采用40管脚双列直插DIP封装,引脚说明如下:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
3.2.2.389c51的存储器配置
图3-1089C51存储器配置
程序存储器
与ROM密切相关的两个引脚
地址锁存允许信号端
外部程序存储器允许输出信号端
当ROM容量不够时,尽量选择高容量存储器空间的单片机,如89C52,89C54,89C58等,应避免外扩程序存储器,因为会增加硬件负担.
通过16位PC寻址,最大可寻址64kB地址空间
数据存储器
数据存储器用于存放运算中间的结果、数据暂存、缓冲、标志位、待测程序等功能。
片内的128B的RAM地址为00H~7FH,供用户做RAM用,但是在这中间的前32单元,00H~1FH即引用地址寻址做用户RAM用,常常做工作寄存器区,分做四组,每组由8个单元组成通用寄存器R0~R7,任何时候都由其中一组作为当前工作寄存器,通过RS0,RS1的内容来决定选择哪一个工作寄存器。
低128字节中的20H~2FH共16字节可用位寻址方式访问各位,共128个位地址,30H~7FH共80个单元为用户RAM区,作堆栈或数据缓冲用,片内RAM不够用时,须扩展片外数据存储器。
此时单片机通过P2口和P0口选出6位地址,使用ALE作低8位的锁存信号,再由P0口写入或读出数据。
写时用
,读时用
做外部数据存储器的选通信号
特殊功能寄存器SFR
表3-3特殊功能寄存器SFR的位置
3.2.2.489c51的工作模式
有四种工作模式:
模式0,模式1,模式2,模式3
模式0:
选择定时器的高8位和低5位组成一个13位定时器/计数器。
TL低5位溢出时向TH进位,TH溢出时向中断标志位TF进位,并申请中断。
定时时间t=(213-初值)×振荡周期×12;计数长度位213=8192个外部脉冲
模式1:
与模式0的唯一差别是寄存器TH和TL以全部16位参与操作。
定时时间t=(216-初值)×振荡周期×12;计数长度位216=65536个外部脉冲
模式2:
把TL0和TL1配置成一个自动重装载的8位定时器/计数器。
TL用作8位计数器,TH用以保存初值。
TL计数溢出时不仅使TF0置1,而且还自动将TH中的内容重新装载到TL中。
定时时间t=(28-初值)×振荡周期×12;计数长度位28=256个外部脉冲
模式3:
对T0和T1不大相同
若设T0位模式3,TL0和TH0被分为两个相互独立的8位计数器。
TL0为8位计