基于stc89c52单片机的粮仓温湿度的系统设计毕设论文.docx
《基于stc89c52单片机的粮仓温湿度的系统设计毕设论文.docx》由会员分享,可在线阅读,更多相关《基于stc89c52单片机的粮仓温湿度的系统设计毕设论文.docx(51页珍藏版)》请在冰豆网上搜索。
基于stc89c52单片机的粮仓温湿度的系统设计毕设论文
学号:
常州大学
毕业设计(论文)
(2012届)
题目
学生
学院专业班级
校内指导教师专业技术职务
校外指导老师专业技术职务
二○一二年六月
基于STC89C52单片机的粮仓温湿度的系统设计
摘要:
温湿度作为一个重要的物理量,是粮食仓库中最普遍、最重要的工艺参数之一。
随着科学技术的不断更新,对温湿度测量的准确性要求不断提高,因此温湿度检测也成为一个重要的研究课题。
本设计是基于单片机对数字信号的高敏感性和可控性以及数字温湿度传感器可以产生数字信号的性能,设计了以STC89C52为核心的一套控制系统,其中包括单片机、温湿度检测、键盘及显示、报警电路、系统软件等部分的设计。
STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K可编程Flash存储控器。
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。
关键词:
温湿度;STC89C52;DHT11传感器;
TemperatureandHumidityofGranarySystemdesignbasedonSTC89C52Microcontroller
Abstract:
Temperatureandhumidityasanimportantphysicalquantity,isoneofthemostcommonfoodwarehouse,themostimportantprocessparameters.Asthetimesprogress,socialdevelopment,scienceandtechnologyconstantlyupdated,theaccuracyofmeasurementoftemperatureandhumidityrequirementscontinuetoimprove,sothetemperatureandhumiditytestinghasalsobecomeanimportantresearchtopic.
Thedesignisbasedonsingle-chipdigitalsignalhighsensitivityandcontrollability,aswellasdigitaltemperatureandhumiditysensorscanproducetheperformanceofdigitalsignal,designacontrolsystemSTC89C52asthecore,Includingthemicrocontroller,temperatureandhumiditytesting,keyboardanddisplay,thealarmcircuit,systemsoftware,andotherpartsofthedesign.
STC89C52alow-power,highperformanceCMOS8bitmicrocontrollerwith8KprogrammableFlashstoragecontroller.DHT11digitaltemperatureandhumiditysensorisacompositeSensorcontainsacalibrateddigitalsignaloutputofthetemperatureandhumidity.Applicationofadedicateddigitalmodulescollectiontechnologyandthetemperatureandhumiditysensingtechnology,toensurethatproductswithhighreliabilityandexcellentlong-termstability
Keywords:
TemperatureandHumidity;STC89C52;DHT11sensor;
1绪论
1.1课题开发的意义
“国以民为本,民以食为天”,“兵马未动,粮草先行”,这些都充分说明粮食对国家的重要性。
储粮是为了防备战争、保证非农业人口的粮食消费需求、调节国内粮食供求平衡、稳定粮食市场价格、应对重大自然灾害及其它突发性事件而采取的有效措施,因此,粮食的科学储藏具有重要的战略意义和经济意义。
一般来说,粮食存放在粮仓中,大型的粮仓可存放数以万计的粮食,而且这些粮食存放的时间有长有短。
目前,我国地方及垦区的各种大型粮仓都还存在着不同程度的粮食储存变质问题。
根据国家粮食保护法规定,必须定期抽样检查粮仓各点的粮食温度和湿度,以便及时采取相应的措施,防止粮食的变质。
但大部分粮仓目前还是采取人工测量温度和湿度的方法,这不仅使粮仓工作人员工作量增大,且工作效率低,尤其是大型粮仓的温度和湿度检测任务如不能及时彻底完成,则有可能会造成粮食大面积变质。
据有关资料统计,我国每年因粮食变质而损失的粮食达数亿千克,直接造成的经济损失是惊人的。
影响储粮安全的最主要因素是粮堆内的大气条件,即温度和相对湿度的日变和季节变化,而温度和湿度两者之间又是相互关联的。
为了保证存放在粮仓中的粮食不致腐烂变质,就必须使粮仓内的温度和湿度保持在一定的范围以内。
1.2课题开发的背景
随着传感器技术、计算机应用技术、超大规模集成电路技术和网络通信技术的发展,监控系统广泛应用于工农业生产等领域,在此同时,粮仓温湿度监控技术的研究在软、硬件等方面都有了一定的进展。
初期,以热敏电阻,湿敏电阻作为传感器件,通过检测电阻的变化来反映粮食温湿度的变化,为粮食保管提供参考依据。
采用人工测量与人工抄录、管理相结合的传统方法,并且用人工的办法对粮食进行晾晒,通风,喷洒药剂防止因存储不当引起的温湿度异常及虫害,消耗了大量的人力和财力,效率较低,然而往往由于判断失误和管理不力,效果不佳,发霉变质等现象大量存在。
广大科技工作者近30年的共同努力下,粮情检测技术不断完善、提高、并日趋成熟,逐步形成了样式繁多的粮情检测系统,为安全、科学储粮起到了积极作用。
目前,国内生产的粮仓温湿度监控系统品种繁多,系统结构各异,在粮仓内外温湿度检测、粮食内部温湿度检测及分析、通风机械的控制等方面,比之前有了不少进步但仍有进步空间。
现场检测电路和上位机的通讯大多采用RS-485,使整个系统抗干扰能力差,实时性和纠错能力不强,增加了节点困难。
当某一通信节点出现故障时,还会影响整个系统。
国外的温湿度监控系统相对比较先进,主要体现在以下三个方面:
(1)无论是传感器的测量精度、反应速度、稳定性、功能多样性还是使用环境方面,国外的传感器都比较先进。
(2)构成系统整体的测控技术和管理,无论是硬件还是软件,都已普遍采用相应的标准模块集成,并且早已实现组态。
(3)系统结构已经普遍采用网络连接的现场总线技术(FCS),有些需要的场合,则连接到Internet上,实现远程控制、远程诊断。
温湿度监控系统主要应用于控制环境空间的温度和相对湿度,从系统控制的角度来看,属于纯滞后控制,而这一技术已经相当成熟。
目前研制高精度,高性能,多功能的温湿度监控系统是主流,提高可靠性、灵活性和降低成本也是其考虑的重点,并且系统在报警、记录、控制、通信等方面的自动化和智能化也将逐步完善。
1.3课题开发的目标
利用STC89C52单片机及温湿度传感器DHT11采集粮仓的温湿度,实现温湿度的实时显示、报警等功能。
2系统总体分析
2.1总体方案设计
粮仓温湿度监测系统需要满足以下条件:
温湿度监测系统能完成数据采集、处理、显示、串行通信、输出信号控制等多种功能。
本设计是基于单片机对数字信号的高敏感性和可控性以及数字温湿度传感器可以产生数字信号的性能,设计了以STC89C52为核心的一套控制系统,其中包括单片机、温湿度检测、键盘及显示、报警电路、系统软件等部分的设计。
图2.1系统总体框图
2.2硬件选择
(1)微控制器选择
STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
具有以下标准功能:
8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。
另外STC89X52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
最高运作频率35Mhz,6T/12T可选。
(2)传感器选择
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高
的可靠性与卓越的长期稳定性。
传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。
因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。
每个DHT11传感器都在极为精确的湿度校验室中进行校准。
校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。
单线制串行接口,使系统集成变得简易快捷。
超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。
(3)显示器选择
在单片机的人机交流界面中,一般的输出方式有以下几种:
发光管、LED数码管、液晶显示器。
在单片机系统中应用液晶显示器作为输出器件有以下几个优点:
①显示质量高:
由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点,因此,液晶显示器画质高且不会闪烁。
②数字式接口:
液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。
③体积小、重量轻
④功耗低:
相对而言,液晶显示器的功耗主
要消耗在其内部的电极和驱动IC上,因而耗电量比其它显示器要少得多。
本设计中选用LCD1602液晶显示器。
(4)存储芯片选择
AT24C02是一个2K位串行CMOSE2PROM,内部含有256个8位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗。
AT24C02有一个16字节页写缓冲器。
该器件通过IIC总线接口进行操作,有一个专门的写保护功能。
AT24C02支持I2C,总线数据传送协议I2C,总线协议规定任何将数据传送到总线的器件作为发送器。
任何从总线接收数据的器件为接收器。
数据传送是由产生串行时钟和所有起始停止信号的主器件控制的。
主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据(发送或接收)的模式,通过器件地址输入端A0、A1和A2可以实现将最多8个AT24C02器件连接到总线上。
2.3系统仿真
(1)Proteus软件简介
Proteus软件是来自英国Labcenterelectronics公司的EDA工具软件,Proteus软件有近20年的历史,在全球广泛使用,除了其具有和其它EDA工具一样的原理布图、PCB自动或人工布线及电路仿真的功能外,其革命性的功能是,他的电路仿真是互动的,针对微处理器的应用,还可以直接在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出,还能看到运行后输入输出的效果,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,Proteus能够很容易的为用户建立了完备的电子设计开发环境。
Proteus组合了高级原理布图、混合模式SPICE仿真,PCB设计以及自动布线来实现一个完整的电子设计系统。
此系统受益于15年来的持续开发,被《电子世界》在其对PCB设计系统的比较文章中评为最好产品—“TheRoutetoPCBCAD”。
Proteus产品系列也包含了我们革命性的VSM技术,用户可以对基于微控制器的设计连同所有的周围电子器件一起仿真。
用户甚至可以实时采用诸如LED/LCD、键盘、RS232终端等动态外设模型来对设计进行交互仿真。
其功能模块:
—个易用而又功能强大的ISIS原理布图工具;PROSPICE混合模型SPICE仿真;ARESPCB设计.
PROSPICE仿真器的一个扩展PROTEUSVSM:
便于包括所有相关的器件的基于微处理器设计的协同仿真。
此外,还可以结合微控制器软件使用动态的键盘,开关,按钮,LEDs甚至LCD显示CPU模型支持许多通用的微控制器,如PIC,***R,HC11以及8051。
Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。
因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。
对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。
(2)系统仿真结果
图2.2系统仿真结果
该温湿度检测系统利用Proteus仿真软件进行仿真,基本实现课题设计要实现的功能。
硬件部分设置了四个按键:
TH+、TH-、HH+、HH-。
通过TH+、TH-按键设置温度的上限,HH+、HH-按键设置湿度上限。
通过三个LED灯实现温湿度超限报警。
图2.3系统仿真结果
3硬件设计
3.1Protel硬件开发软件
Protel是目前国内最流行的通用EDA软件,它是将电路原理图设计、PCB板图设计、电路仿真和PLD设计等多个实用工具软件组合后构成的EDA工作平台,是第一个将EDA软件设计成基于Windows的普及型产品。
它集成了软件界面、仿真功能和PLD设计和信号完整性分析,在此基础上Protel99SE又增加了一些新的功能,用户使用更加方便灵活。
Protel的功能十分强大,在电子电路设计领域占有极其重要的地位。
它以其强大功能和实用性,逐渐获得广大硬件设计人员的青睐,是目前众多EDA设计软件中用户最多的产品之一。
Protel软件主要由电路原理图设计模块、印制电路板设计模块(PCB设计模块)、电路信号仿真模块和PLD逻辑器件设计模块等组成,各模块具有强大的功能,可以很好的实现电路设计与分析。
(1)原理图设计模块(Schematic模块)
电路原理图是表示电气产品或电路工作原理的重要技术文件,电路原理图主要由代表各种电子器件的图形符号、线路和结点组成。
图4.1所示为一张电路原理图。
该原理图是由Schematic模块设计完成的。
Schematic模块具有如下功能:
丰富而灵活的编辑功能、在线库编辑及完善的库管理功能、强大的设计自动化功能、支持层次化设计功能等。
(2)印制电路板设计模块(PCB设计模块)
印制电路板(PCB)制板图是由电路原理图到制作电路板的桥梁。
设计了电路原理图后,需要根据原理图生设计成印制电路板的制板图,然后在根据制板图制作具体的电路板。
印制电路板设计模块具有如下主要功能和特点:
可完成复杂印制电路板(PCB)的设计;方便而又灵活的编辑功能;强大的设计自动化功能;在线式库编辑及完善的库管理;完备的输出系统等。
3.2单片机系统模块
3.21STC89C2单片机的基本结构
图3.1STC89C52引脚图
VCC:
电源电压
VSS:
接地
P0端口:
P0口是一个漏极开路的8位双向I/O口。
P1端口:
P1口是一个带内部上拉电阻的8位双向I/O口。
表3.1引脚复用功能
引脚号
功能特性
P1.0
T2(定时器/计数器2外部计数输入),时钟输出
P1.1
T2EX(定时器/计数器2捕获/重装触发和方向控制)
P2端口:
P2口是一个带内部上拉电阻的8位双向I/O端口。
在访问外部程序存储器和16位地址的外部数据存储器时,P2送出高8位地址。
在访问8位地址的外部数据存储器时,P2口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容),在整个访问期间不会改变。
P3端口:
P3是一个带内部上拉电阻的8位双向I/O端口。
P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。
P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流(IIL)。
P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如下表
所示。
表3.2口第二功能
引脚号
复用功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
(外部中断0)
P3.3
(外部中断1)
P3.4
T0(定时器0的外部输入)
P3.5
T1(定时器1的外部输入)
P3.6
(外部数据存储器写选通)
P3.7
T1(定时器1的外部输入)
XTAL1:
振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:
振荡器反相放大器的输出端。
3.12时钟振荡器电路
STC89C52中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。
这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。
外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。
对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,如果使用石英晶体,我们推荐电容使用30pF±10pF,而如使用陶瓷谐振器建议选择40pF±10F。
用户也可以采用外部时钟。
采用外部时钟的电路如图3.2所示。
这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。
图3.2外部时钟电路
3.23开关及报警电路
(1)开关的分类
对于键盘来说,它实际上就是一组开关。
在通常的单片机外设电路的设计过程中,常用的按键就是弹性机械开关。
闭合开关即可导通线路。
断开开关线路就被断开。
如下图所示,为几种单片机系统常用按键开关示意图。
图3.3弹性按键
图3.4自锁按键
图3.3为弹性按键示意图。
该按键被按下时闭合,接通电路,当被松开时自动断开,电路断开;图3.4为自锁按键示意图。
当被按下时,该按键可以锁定,保持闭合状态,即使松手,也不会复位,此时电路接通,当再次被按下后,自锁解除,按键弹起,断开电路。
通常,把自锁按键作为整个电路的电源开关按键。
而当涉及到外围电路的信号控制时,则选用弹性按键比较好。
(2)开关连接电路
图3.5按键连接电路
(3)报警电路
图3.6报警电路
3.24单片机系统电路
图3.7单片机系统原理图
3.3温湿度检测模块
3.31DHT11封装及引脚、性能说明
图3.8DHT11外形及引脚
DHT11温湿度传感器为4针单排引脚封装,传感器管脚方向识别:
正面(有通气孔的一面)看过去,从左到右依次为1、2、3、4脚。
表3.3引脚说明
引脚号
引脚名称
类型
引脚说明
1
VCC
电源
正电源输3V-5.5VDC
2
Dout
输出
单总线。
数据输入/输出引脚
3
NC
空
空脚。
扩展未用
4
GND
地
电源地
DHT11的供电电压为3.5~5.5V。
传感器上电后,要等待1s以越过不稳定状态在此期间不要发送任何指令。
电源引脚(VDD,GND)之间可增加一个100nF的电容,用以去耦滤波。
表3.4传感器性能说明
3.32数据格式及处理
(1)格式
数字湿温度传感器采用单总线数据格式。
即,单个数据引脚端口完成输入输出双向传输。
其数据包由5Byte(40Bit)组成。
一次通讯时间最大3ms,数据分小数部分和整数部分,具体格式在下面说明。
DATA用于微处理器与DHT11之间的通讯和同步,采用单总线数据格式,当前小数部分用于以后扩展,现读出为0。
操作流程如下:
一次完整的数据传输为40bit,高位先出
数据格式:
8bit湿度整数数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据+8bit校验和校验和数据为前四个字节相加。
表3.5数据格式
湿度
温度
校验
整数
小数
整数
小数
8Bit
8Bit
8Bit
8Bit
8Bit
(2)数据编码及处理
传感器数据输出的是未编码的二进制数据。
数据(湿度、温度、整数、小数)之间应该分开处理。
如果,某次从传感器中读取如下5Byte数据:
byte4byte3byte2byte1byte0
0010110100000000000111000000000001001001
整数小数整数小数校验和
湿度温度校验和
3.33时序
DHT11传感器是通过单总线协议和上位机(控制器)进行数据通信。
DHT11传感器需要严格的读写协议来确保数据的完整性。
整个读写分为,上位机发送起始信号,上位机接收下位机发来的握手响应信号,读‘0’,和读‘1’四个步骤。
所有的信号除主机启动复位信号外,全部都由DHT11产生。
通过单总线访问DHT11顺序归纳如下:
(1)主机发开始信号
(2)主机等待接收DHT11响应信号
(3)主机连续接收40Bit的数据和校验和数据处理
3.34连接接口说明
DHT11数字湿温度传感器连接电路简单,只需要占用控制器一个I/O口即可完成上下位的连接。
典型应用电路如下图所示。
另外,当连接线长度短于20时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻,如图3.9所示。
图3.9DHT11典型应用电路
3.4显示模块
3.41LCD1602主要技术参数及引脚说明
(1)主要技术参数
显示容量:
16×2个字符
芯片工作电压:
4.5——5.5V
工作电流:
2.0mA(5.0V)
模块最佳工作电压:
5.0V
(2)引脚功能说明
LCD1602采用标准的16脚(带背光)接口,各引脚说明如表3.41所示。
表3.6引脚说明
编号
符号
引脚说明
编号
符号
引脚说明
1
VSS
电源地
9
D2
DataI/O
2
VDD
电源正极
10
D3
DataI/O
3
VL
液晶显示偏压信号
11
D4
DataI/O
4
RS
数据/命令选择端(H/L)
12
D5
DataI/O
5
R/W
读/写选择端(H/L)
13
D6
DataI