无线温湿度监控系统的设计 - 图文

更新时间:2024-05-05 07:30:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

哈 尔 滨 理 工 大 学

毕 业 设 计

题 目:院 、 系:姓 名:指导教师:系 主 任:年

月 日

- I -

哈尔滨理工大学学士学位论文 基于无线传感器网络的温湿度监控系统的设计

摘要

现代各种检测都离不开环境监控,温湿度测量及控制技术广泛应用于气象监测、食品仓储、工农业生产、工业控制、科学研究以及日常生活当中,本课题在对国内外各种温度湿度传感器检测进行调研的基础上,提出了基于无线传感器网络的温湿度传感检测系统设计方案。本系统主要应用于档案室、博物馆,通过不同节点实时监控环境的温湿度。本课题设计以STC89C52单片机为核心,以DS18B20温度传感器,HS1101湿度传感器作为测量元件,通过单片机进行控制,利用无线射频技术实现包括对数据的采集、处理、储存、显示、传输以及报警等功能,供工作人员浏览、记录和进行相关处理。本设计主要做了如下几个方面的工作:一是确定系统的总体设计方案;二是进行传感器和其它模块硬件电路设计;三是软件流程图的设计。本系统实现了对档案室环境不同采集点的温湿度实时监测和控制,在有线网络不通畅或由于现场环境因素的限制不便架设线路的档案室内,利用无线通信技术进行数据采集、传输显得更加高效,且具有抗干扰、低功耗、便于微处理器控制的特点,实现了环境温度检测的自动化和智能化。

关键词:STC89C52;DS18B20温度传感器;HS1101湿度传感器

- I -

哈尔滨理工大学学士学位论文 Design of temperature and humidity monitoring system based on Wireless Sensor

KeywordsNetwork Abstract

- II -

哈尔滨理工大学学士学位论文 目录

摘要 ...................................................................................................................... I Abstract ............................................................................................................... II

第1章 绪 论 .................................................................................................... 1 1.1 课题背景 ................................................................................................... 1 1.2 课题研究的意义 ....................................................................................... 1 1.3 温湿度传感器技术的现状及发展趋势 ................................................... 2 1.4 无线传感器网络的国内外发展现状 ....................................................... 3 1.5 本课题研究的主要内容 ........................................................................... 4 第2章 系统方案设计 ........................................................................................ 5 2.1 总体方案设计 ........................................................................................... 5 2.2 元器件的选择 ........................................................................................... 6 2.2.1 单片机的选择 .................................................................................... 6 2.2.2 温度传感器的选择 ............................................................................ 7 2.2.3 湿度传感器的选择 ............................................................................ 8 2.2.4 NRF24L01无线收发模块 .................................................................. 9 2.3 本章小结 ................................................................................................. 10 第3章 硬件电路的设计 .................................................................................. 11 3.1 微处理器 ................................................................................................. 11 3.1.1 STC89C52的引脚具体介绍 ............................................................ 11 3.1.2 晶振电路 .......................................................................................... 12 3.1.3 复位电路 .......................................................................................... 12 3.2 温度采集电路设计 ................................................................................. 13 3.3 湿度采集电路设计 ................................................................................. 16 3.4 液晶显示及报警电路 ............................................................................. 18 3.4.1 LCD1602液晶显示 .......................................................................... 18 3.4.2 报警电路 .......................................................................................... 19 3.5 电源模块 ................................................................................................. 20 3.6 无线模块 ................................................................................................. 20 3.7 本章小结 ................................................................................................. 21 第4章 软件设计 .............................................................................................. 22 4.1 主程序流程图 ......................................................................................... 22 4.2 温度模块程序设计 ................................................................................. 22 4.3 湿度模块程序设计 ................................................................................. 23

- III -

哈尔滨理工大学学士学位论文 4.4 显示子程序设计 ..................................................................................... 24 4.5 按键模块程序设计 ................................................................................. 25 4.6 无线收发模块程序设计 ......................................................................... 26 4.7 报警子程序 ............................................................................................. 27 4.8 本章小结 ................................................................................................. 28 结论 .................................................................................................................... 29 致谢 .................................................................................................................... 30 参考文献 ............................................................................................................ 31 附录A 程序 ...................................................................................................... 33 附录B 原理图和仿真图 .................................................................................. 41 附录C 英文原文 .............................................................................................. 43 附录D 中文翻译 .............................................................................................. 49

- IV -

哈尔滨理工大学学士学位论文 第1章 绪 论

1.1 课题背景

温度、湿度是非常重要的物理参数,与人们的生产生活密切相关。温湿度测量及控制技术广泛应用于气象监测、食品仓储、工农业生产、工业控制、科学研究以及日常生活当中。目前市场上的温湿度监测系统多采传统的有线方式,必须在采集现场铺设大量的线缆用于传感器供电、信号传输以及数据采集。近年来,无线通信、微电子技术、传感器技术以及嵌入式计算等技术的不断进步,推动了低成本、低功耗无线传感器网络的发展,促使无线传感器网络成为当今活跃的研究领域[1]。无线传感器网络由具有感知能力、计算能力和通信能力的大量微型传感器节点组成,强大的数据获取和处理能力使得其应用范围十分广泛。

基于需要监控的参数为温度、湿度两个物理量,因而设计低成本、低功耗、高可靠性、高安全性的无线传感器网络技术的检测系统是有必要的。无线传感器网络可监控室内不同点位的数据,通过传感器节点将环境监测所需的信息方便快捷的传到计算机。比如在档案室、图书馆等场所布置大量的传感器节点,并通过计算机监控和现实相关参数,同时实现上下限报警,控制空调等功能。这种监测系统有效地解决了传统有线方式的信号线,控制线,电源线混杂在一起,系统运行时,容易受到传输距离、电磁干扰等因素的影响而变的不稳定,尤其是在测量点数较多或通信距离较远时,系统的不稳定因素会变得更加严重等问题。

1.2 课题研究的意义

温、湿度是人们日常生活中接触最多的两个物理量,人们的日常生活、动植物的生存繁衍和周围环境的温湿度息息相关,石油、化工、冶金、纺织、机械制造、航空航天、制药、烟草、档案保管、粮食存储等领域对温、湿度也有着较高的要求[2]。例如:烟叶和纸张是吸湿性极高的材料,卷烟生产的每一个阶段对温、湿度都有非常特别的要求,以确保所使用材料的水分,保证生产的效率和产品质量;印刷车间的温、湿度控制水平对印刷质量有很大的影响;为防止库存武器弹药、金属材料等物品霉烂、生锈,必须保持环境温度不能过高和干燥;而水果、种子、肉类等的保存又需要保证一定的湿度;在矿山、棉麻、塑料、粉末金属、食品生产加工等企业的生产车间(环境)中往往会产生大量的可燃或易燃粉尘,如果空气湿度过低,在一定的能量下,极易发生粉尘爆炸。随着科学技术的

- 1 -

哈尔滨理工大学学士学位论文 发展,许多新兴产业对环境提出了更高的要求:制造大规模集成电路需要极高的空气洁净度,生物化学制药需要精确的温湿度控制。因此,对温、湿度的监测和控制已成为生产过程中非常重要的技术要求。温、湿度检测与控制技术被广泛应用于人们的日常生产和生活当中,传感器无疑是测量与控制系统中重要的组成部分。但是伴随传感器而来的是大量的数据线缆。众多的线缆不仅带来布线复杂的不便,而且存在着短路、断线隐患,成本高、易老化,错综复杂的线路还给系统的调试和维护增加了难度。同时对于一些临时使用的传感器,搭接线缆十分不便。因此,寻找一种便捷的、能够满足数据通信要求的无线通信技术,以解除线缆搭接复杂的困扰,成为一个亟需解决的问题。无线通信技术与有线通信技术相比,有成本低、携带方便、不必穿墙钻孔布线、搭建网络简单快捷等优点。特别是在有线网络不通畅或由于现场环境因素的限制不便架设线路的情况下,使用无线通信技术进行数据采集、传输显得更加实用、高效、快捷。随着微处理器以及微电子技术的发展,数字设备以其抗干扰、功耗低、便于微处理器控制的特点,逐渐成为测控系统中的主流。

本课题将传感器技术和新兴的无线通信技术结合,力图以现场设备的无线化来解决由线缆带来的诸多问题。

1.3 温湿度传感器技术的现状及发展趋势

在后工业化时代,信息技术对社会的发展及科技的进步起了决定性作用,传感器技术、通信技术、计算机技术构成了信息技术的三大支柱。传感器技术是2l世纪人们在高新技术发展方面争夺的一个制高点,各发达国家都将传感器技术视为现代高新技术发展的关键[3]。从20世纪80年代起,日本就将传感器技术列为优先发展的高新技术之首,美国等西方国家也将此技术列为国家科技和国防技术发展的重点内容。我国从20世纪80年代以来也已将传感器技术列入国家高新技术发展的重点。21世纪是人类全面进入信息电子化的时代,作为现代信息技术三大支柱之一的传感器技术必将得到较大的发展[4]。

传统的温度测量是从金属(物质)的热胀冷缩开始。水银温度计至今仍是各种温度测量的计量标准。可是它的缺点是只能近距离观测,而且有毒。代替它的有酒精温度计和金属簧片温度计,它们虽然没有毒性,但测量精度很低。在电气时代主要发展了金属热敏电阻。如铜电阻、镍电阻、铂电阻等,它们的特点是稳定性好、耐高温,如铂电阻有的可达六、七百度。但它们的缺点是灵敏度低,当传输线路长短不等时,需要进行温度补偿。近年发展起来的有PN结测温器件。这类器件的优点是在-50℃~+150℃范围内有良好的特性,体积小、响应时间快、价格低。但它的缺点是一致性差、不易做到互换,而且PN结易受外界幅射的影响,稳定性难以保证。石英晶体温度检测器的测量精度较高,一般可检测到0.001℃,可作标准检测

- 2 -

哈尔滨理工大学学士学位论文 之用。光纤传感器技术是本世纪70年代末发展起来的一门崭新的技术,已开发了开关式温度检测器、辐射式温度检测器等多种实用型的品种[5]。检测精度在±1℃以内,测温范围可以从绝对0~+2000℃。

国外在湿度传感器研制方面起步较早,目前日本、德国、美国处于国际领先地位,测量范围可实现全湿范围测量,且精度可达到±2%RH。近几年,国外湿度传感器有了较大的发展,特别是电阻式湿度传感器发展更快,人们不仅在电阻式陶瓷湿度传感器特性方面做了大量工作,而且在高分子电阻式湿度传感器上做出可喜的研究成果,这种传感器稳定性好、精度高、响应特性优,这是应当引以重视的技术动向[6]。根据工业自动化控制的需要,国内外正在开展新一代湿度传感器的研制与开发。

随着大规模集成电路技术和光通信技术的发展,信息的传输、处理技术有了突破性的进展,发展相对滞后的传感器技术业已得到全世界的普遍重视。因此,今后一个时期传感技术将成为人们研究的新热点,并有可能形成较大产业。传感器技术未来将向以下几个方面发展:

高精确度。为了提高测控精度,必须使传感器的精度尽可能地高;小型化。很多测试场合要求传感器具有尽可能小的尺寸;多功能集成化。研究多功能集成传感器是传感器发展的一个重要方向。有两种类型。一种是将传感器、放大器及温度补偿电路等集成在同一芯片上,减小体积,增强了抗干扰能力。另一种是在一个芯片上集成多种功能敏感元件或同一功能的多个敏感元件。例如温湿度一体化传感器,一个芯片可同时检测温度和湿度;数字化。为了使传感器与计算机直接接口,致力于数字式传感器研究是很重要的;智能化。这种传感器一般是计算机与传感器相结合的复杂系统。它兼有检测、信息处理、推理、联想和控制等各种功能,重点是具有逻辑功能,是传统传感器无法比拟的。智能传感器的出现将是传感技术中的一次飞跃。

1.4 无线传感器网络的国内外发展现状

Wi-Fi是基于IEEE 802.11标准的无线网路产品之间的互通性的无线网路通信技术,其特点为网络布置比较容易,数据传输速率高,应用范围非常广,功耗高,可靠性及安全性的相对较低,移动性差。蓝牙技术特点为传输距离较短,系统成本高,集成度大,节点少。超宽带技术的耗较低以及发射机和接收机的复杂度不高。红外线数据通信充分体现了移动终端所要求的小体积、低功耗、低成本等优势,其最大的缺点就是只能两台设备同时进行通信,限制了它的应用范围。Zigbee技术的低功耗,低传输速率,高连接设备数十分适合无线传感器网络的大规模组网,蓝牙技术虽然在传输速率上远高于Zigbee,但功耗和连接设备数的缺陷使得其并不适合应用于大规模的无线传感器网络中,而适合于个人设备的互联。UWB技术

- 3 -

哈尔滨理工大学学士学位论文 实现了低功耗条件下的高速率传输,但目前只能点对点传输,欠缺组网能力,而且其产品化还处于起步阶段,并没有得到大规模的实际应用。

在2.4GHz非授权频段上,目前已经云集了蓝牙、Wi-Fi、Zigbee等多个标准无线协议。具有带宽高(2Mbps),双向传输,抗干扰性强,传输距离远(短距离无线技术范围),耗电少的优点,用于无线键鼠等室内场合[7]。Nordic公司等公司已成功推出nRF24L01芯片,2.4G全球开发ISM频段免许可证使用。同时许多公司也相继推出基于nRF24L01的无线传输模块。nRF24.L01模块是一款新型单片射频收发器件,工作于2.4GHz~2.5GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。nRF24L01功耗低,在以-6dBm的功率发射时,工作电流也只有9mA;接收时,工作电流只有12.3mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。至此这种基于此频段的通信方式已日渐趋向成熟。

无线传感器网络可用于气象和地理研究,土壤空气变更监视、珍稀濒临野生动植物种群追踪研究、地质结构变化测量研究等。这些被密集布置在丛林中的传感器节点,能够在不破坏生态环境的同时,实时监测动植物生长复杂的微观环境因素,为科研人员研究生物行为提供科学准确的数据信息。无线传感器网络在军事科技及民防国防、自然生态环境观测、古建筑及文物保护、灾害预警及灾难救援、健康监测及医疗护理、工业自动控制与检测、空间探索、智能家居、智能交通流量监控、智能电力系统、精准农业及水利等诸多领域存在广泛的应用前景和潜在的市场研发价值。在现阶段成熟技术的基础上,以下系统已成功地得到应用[8]。其理论研究一直是国际信息领域的关注热点,其应用研究更是成为各大无线传感器产品生产厂商的竞争焦点。

1.5 本课题研究的主要内容

由于一般博物馆,档案室的空间相对比较大,布置大量的数据线监控环境数据影响美观的同时又会带来安全隐患,针对这样的特殊环境,综合整理的相关资料,提出设计一种无线温湿度监控系统,有效解决布线困难等问题,并可以实时监控数据。本设计中采用STC89C52单片机,利用温度传感器DS18B20、湿度传感器HS1101进行温湿度测量,并通过LCD1602显示,如若温湿度超过设定上下限利用蜂鸣器进行报警,并将数据通过无线模块发送到上位机进行监控。实现了以下功能:

(1) 档案室的温度、湿度实时测量功能。 (2) 将测量到的温、湿度通过液晶屏显示。 (3) 利用开关键设置温度、湿度的报警值。 (4) 实现温度、湿度超限报警功能。

- 4 -

哈尔滨理工大学学士学位论文 第2章 系统方案设计

2.1 总体方案设计

(1) 系统功能

实现对环境温度参数的实时采集;由单片机对各路数据进行循环检测,数据处理,储存并显示;实现超限的及时报警;检测系统应具有较高的灵敏度、可靠性、抗干扰能力。通过无线传输模块,实现在档案室不同地点的温度、湿度检测并将数据通过无线收发模块上传到上位机。

(2) 技术指标 测温范围:-20℃ ~100℃; 测湿范围:0~100%RH; 测温精度:±0.5℃; 测湿精度:±5.0%RH (3) 系统组成框图

系统主要有温度测量模块、湿度测量模块、显示模块、报警模块、无线收发模块,系统组成框图如图2-1所示。

DS18B20温度传感器Rnf24L01无线发送模块HS1011湿度传感器NE555AT89C52晶振电路LCD1602显示复位电路蜂鸣器报警图2-1 系统组成框图

将数字温度传感器DS18B20采集得到的数据和湿度传感器HS1101采集到的数据传输到单片机AT89S52的信号输入端口。单片机将数据传递到LCD1602屏上进行显示,并判断是否超过设置上下限(温度范围14-28℃,相对湿度范围45-60%RH)如超过则蜂鸣器报警,同时将温、湿度数据通过无线发射模块传到上位机进行监控。

- 5 -

哈尔滨理工大学学士学位论文 2.2 元器件的选择

2.2.1 单片机的选择

STC89S52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式[9]。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。单片机实物图如图2-1所示。单片机的主要特性如表2-2所示。

图2-2 单片机实物图

表2-1 STC89C52主要特性

主要功能特性 兼容MCS51指令系统 8K可反复擦写Flash ROM 32个双向I/O口 256x8bit内部RAM 3个16位可编程定时/计数器中断 时钟频率0-24MHz 2个串行中断 可编程UART串行通道 2个外部中断源 共6个中断源 2个读写中断口线 3级加密位 低功耗空闲和掉电模式 软件设置睡眠和唤醒功能 - 6 -

哈尔滨理工大学学士学位论文 2.2.2 温度传感器的选择

本设计中温度传感器之所以选择单线数字器件DS18B20,是在经过多方面比较和考虑后决定的,主要有以下几方面的原因:

测温范围为-55℃~+125℃,测温精度为士0.5℃;可以通过数据线供电,具有超低功耗工作方式。由于计算机技术和微电子技术的发展,新型大规模集成电路功能越来越强大,体积越来越小,而价格也越来越低。由于DS18B20是单总线器件,测温时无需任何外部元件,因此,与模拟传感器相比,可以大大减少接线的数量,降低系统的复杂度,减少工程的施工量。使测温系统的线路结构设计和硬件开销大为简化。由于引线的减少,使得系统接口大为简化,给系统的调试带来方便。同时因为DS18B20是全数字元器件,故障率很低,抗干扰性强,因此,减少了系统的日常维护工作。DS18B20相对于其他温度传感器有以下几方面特征。

独特的单引线接口仅需一个端口引脚进行通讯,每个期间有唯一的64位的序列号存储在内部存储器中,简单的多点分布式测温应用,无需外部器件,可通过数据线供电。供电范围3.0V到5.5V,测温范围为-55~+125℃,在-10~+85℃内精度为±5℃,温度计分辨率可以被使用者选择为9~12位,最多在750ms内将温度转化为12位数字,用户可定义的非易失性温度报警设置,报警命令识别并标志超过程序限定温度的器件。DS18B20芯片封装结构如图2-3所示。

图 2-3 DS18B20的芯片封装结构

- 7 -

哈尔滨理工大学学士学位论文 2.2.3 湿度传感器的选择

HS1101电容传感器,其工作原理是空气中的水分子透过多孔金电极被感湿膜吸附,使得两电极间的介电常数发生变化,环境湿度越大,感湿膜吸附的水分子就越多,使湿度传感器的电容量增加得越多,根据电容量的变化可测得空气的相对湿度。涉及如何将电容的变化量准确地转变为单片机易于接受的信号,采用将HS1101置于555振荡电路中,将电容值的变化转为与之呈反比的电压频率信号,可直接被单片机所采集。 HS1101电容传感器有以下几个显著特点[10]。

(1) 全互换性在标准环境下不需校正 (2) 长时间饱和下快速脱湿

(3) 可以自动化焊接,包括波峰焊或水浸 (4) 高可靠性与长时间稳定性 (5) 专利的固态聚合物结构

(6) 可用于线性电压或频率输出回路 (7) 快速反应时间

相对湿度在0%~100%RH范围内;电容量由162pF变到200pF,其误差不大于2%RH;响应时间小于5s;温度系统为0.04pF/℃。可见其精度是较高的。其湿度电容响应曲线如图2-4所示,湿度传感器的产品图片如图2-5所示,HS1101湿度传感器常用参数如表2-2所示。

20 40 60 80

相对湿度%RH

图2-4 HS1101 湿度—电容响应曲线

- 8 -

哈尔滨理工大学学士学位论文

图2-5 HS1101产品实物图 表2-2 HS1101常用参数 参数 工作温度 储存温度 供电电压 湿度范围 焊接时间@=260 符号 Ta Tstg Vs RH T 参数值 -40~100 -40~125 10 0~100 10

单位 ℃ ℃ Vac %RH S 2.2.4 NRF24L01无线收发模块

NRF24L01是一款新型单片射频收发器件,工作于2.4 GHz~2.5 GHz

ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。NRF24L01功耗低,在以-6 dBm的功率发射时,工作电流也只有9 mA;接收时,工作电流只有12.3 mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。实物图如图2-6所示。NRF24L01主要特性如下[11]:

(1) GFSK调制

(2) 硬件集成OSI链路层

(3) 具有自动应答和自动再发射功能 (4) 片内自动生成报头和CRC校验码 (5) 数据传输率为l Mb/s或2Mb/s (6) SPI速率为0 Mb/s~10 Mb/s (7) 125个频道

- 9 -

哈尔滨理工大学学士学位论文 (8) 与其他nRF24系列射频器件相兼容 (9) QFN20引脚4 mm×4 mm封装 (10) 供电电压为1.9 V~3.6 V

通过配置寄存器可将NRF241L01配置为发射、接收、空闲及掉电四种工作模式,如表2-3所示。

表2-3 NRF24L01四种工作模式 模式 接收模式 发射模式 发射模式 待机模式2 待机模式1 掉电 PWR_UP 1 1 1 1 1 0 PRIM_RX 1 0 0 0 - - CE 1 1 1→0 1 0 - FIFO寄存器状态 - 数据在TX FIFO 寄存器中 停在发送模式,直至数据发送完 TX FIFO 为空 无数据传输 - 2.3 本章小结

本章首先是介绍了总体方案的设计,包括系统要实现的功能,系统要达到的技术指标和系统的组成框图,系统的组成框图中明确的注明了系统各部分使用的传感器和实现系统功能所需的模块。针对系统方案的整体构思选择51单片机作为微处理器,DS18B20温度传感器为温度采集的感温元件,湿度采集则使用HS1101湿度传感器,并对传感器进行了相应的介绍,也对实现无线传感器网络的NRF24L01芯片进行了介绍和说明。

- 10 -

哈尔滨理工大学学士学位论文 第3章 硬件电路的设计

3.1 微处理器

单片机技术在各个领域正得到越来越广泛的应用,世界上许多集成电路生产厂家相继推出了各种类型的单片机。目前,可用于51系列单片机开发的硬件越来越多,与其配套的各类开发系统、各种软件也日趋完善,因此,可以极方便地利用现有资源,开发出用于不同目的的各类应用系统。单片机最小系统是在以AT89S52单片机为基础上扩展,使其能更方便地运用于测试系统中,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被测试的技术指标,从而能够大大提高产品的质量和数量。

3.1.1 STC89C52的引脚具体介绍

STC89C52系列单片机是新一代高速∕低功耗∕超强抗干扰的单片机,指令代码完全兼容传统8051单片机。STC89C52单片机的外形结构为40引脚双列直插式封装,其外部管脚如图3-1所示,STC89C52外部管脚如图3-1所示。

图3-1 STC89C51外部引脚图

STC89C52的引脚含义具体介绍如下:

- 11 -

哈尔滨理工大学学士学位论文 1. 主电源引脚(2根)

VCC(Pin40):电源输入,接+5V电源 GND(Pin20):接地线 2. 外接晶振引脚(2根)

XTAL1(Pin19):片内振荡电路的输入端 XTAL2(Pin20):片内振荡电路的输出端 3. 控制引脚(4根)

RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。

ALE/PROG(Pin30):地址锁存允许信号 PSEN(Pin29):外部存储器读选通信号

EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。

4. 可编程输入/输出引脚(32根)

STC89C51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。

PO口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7 P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7 P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7 P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7

3.1.2 晶振电路

MCS-51单片机片内有一个用于构成振荡器的高增益反相放大器, 引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。把放大器与作为反馈元件的晶体振荡器或陶瓷谐振器连接,就构成了内部自激振荡器并产生振荡时钟脉冲。

3.1.3 复位电路

单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC=0000H,使单片机从第一个单元取指令。MCS-51系列单片机的复位引脚RST上只要出现10ms以上的高电平,单片机就实现复位。硬件电路如图3-2所示。

- 12 -

哈尔滨理工大学学士学位论文 图3-2 单片机最小系统

3.2 温度采集电路设计

DS18B20的测温原理如图3-4所示。低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度[12]。斜率累加器用于补偿和修正测温过程中的非线性,提高测量准确制度。其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值。DS18B20的内部结构如图3-3所示:

- 13 -

哈尔滨理工大学学士学位论文 预置 斜率累加器 计数比较器 低温度系数振荡器 减法计数器 预置 减至0 温度寄存器 高温度系数振荡器 减法计数器 图3-3 DS18B20内部结构图

减至0

图3-4温度测量原理电路

DS18B20主要由4部分组成:64位ROM、温度传感器、非易失性温度报警触发器TH和TL、配置寄存器。DS18B20有4个主要的数据部件:

光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。

DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。表3-1为不同温度对应的二进制和十六进制数。

- 14 -

哈尔滨理工大学学士学位论文 温度 +125℃ +85℃ +25.0625℃ +10.125 +0.5℃ 0℃ -0.5℃ -10.125℃ -25.0625℃ -55℃ 表3-1 DS18B20温度数据表 DIGITAL OUTPUT (Binary) 0000 0111 1101 0000 0000 0101 0101 0000 0000 0001 1001 0001 0000 0000 1010 0010 0000 0000 0000 1000 0000 0000 0000 0000 1111 1111 1111 1000 1111 1111 0101 1110 1111 1110 0110 1111 1111 1100 1001 0000 DIGITAL OUTPUT (Hex) 07D0h 0550h 0191h 00A2h 0008h 0000h FFF8h FF5Eh FF6Eh FC90h DS18B20温度传感器的存储器:DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。

配置寄存器:该字节各位的意义如表3-2所示。

TM R1 R0 表3-2 配置寄存器结构 1 1 1 1 1 低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式

还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如表3-3所示(DS18B20出厂时被设置为12位):

R1 0 0 1 1 R0 0 1 0 1 表3-3 分辨率设置 分辨率 9位 10位 11位 12位 温度最大转换时间 93.75ms 187.5ms 375ms 750ms DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,单片机端口接单线总线。采用寄生电源供电方式是VDD和GND端接地。

DS18B20与单片机接口电路如图3-6所示,图中,DS18B20的I/O端口DQ通过一个4.7k的外部上拉电阻与单片机连接。本设计中DS18B20采用外部电源方式供电,故GND接地。

- 15 -

哈尔滨理工大学学士学位论文 图3-6 DS18B20与单片机接口电路

3.3 湿度采集电路设计

HS1100/HS1101电容传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。如何将电容的变化量准确地转变为计算机易于接受的信号,常有两种方法:一是将该湿敏电容置于运放与阻容组成的桥式振荡电路中,所产生的正弦波电压信号经整流、直流放大、再A/D转换为数字信号;另一种是将该湿敏电容置于555振荡电路中,将电容值的变化转为与之成反比的电压频率信号,可直接被计算机所采集。

NE555是一个能产生精确定时脉冲的高稳度控制器,其输出驱动电路可达200mA。在多谐振荡器工作方式时,其输出的脉冲占空比由两个外接电阻和一个外接电容确定;在单稳态工作方式时,其延时时间由一个外接电阻和一个外接电容确定,它可以延时数微妙到数小时。其工作电压范围为:4.5V≤VCC≤16V。硬件电路如图3-7所示。

- 16 -

哈尔滨理工大学学士学位论文 图3-7 HS1101和NE555连接电路

把HS1101和NE555同时接入电路中的电路设计原理图如图3-6所示。NE555电路功能的简单概括为:当6端和2端同时输入为“1”时,3端输出为“0”;当6端和2端同时输入为0时,3端输出为“1”时;在此电路中,555定时器正是根据这一功能用作多稳态触发器输出频率信号的[13]。

当电源接通时,由于6和2端的输入为“0”,则定时器3脚输出为“1”;又由于CX两端电压为0,故VCC通过R4和R5对CX充电,当CX两端电压达到2VCC/3时,定时电路翻转,输出变为“0”.此时555定时器内部的放电BJT的基极电压为“1”,放电BJT导通,从而使电容CX通过R3和内部放电BJT进行放电,当CX两端电压降低到VCC/3时,定时器又翻转,使输出变为“1”,内部放电BJT截止,VCC又开始通过R4和R5对CX充电,如此周而复始,形成振荡[14]。

其工作循环中的充电时间为:

Th?0.(7R4?R5)CX

放电时间为:

T1?0.7R5*CX

输出脉冲占空比为:

q?(R4?R5)/(R4?2R5)

式中:Th 表示一次循环输出高电平时间,单位(s)

Tl 表示一次循环输出低电平时间,单位(s) CX表示相对湿度下HS1101的容值,单位(F)

为了使输出脉冲占空比接近50%,R4应远远小于R5。当外界湿度变化时,HS1101两端电容值发生改变,从而改变定时电路的输出频率。因此只要测出555的输出频率,并根据湿度与输出频率的关系,即可求得环境的湿度。空气湿度通过555测量电路就转变为与之呈反比的频率信号,典

- 17 -

哈尔滨理工大学学士学位论文 型频率湿度关系如表3-3所示(参考点:25℃,相对湿度:55%,输出频率:6660Hz)[15]。由此可以看出,空气相对湿度与555芯片输出频率存在一定线性关系。可以通过微处理器采集555芯片的频率,经过数据处理可以直接以相对湿度的数据进行显示。相对湿度与频率的关系如表3-4所示

相对湿度值/% 0 10 20 30 40 50 表3-4 相对湿度与频率的关系 输出频率值/Hz 相对湿度值/% 7351 7224 7100 6976 6853 6728 60 70 80 90 100 输出频率值/Hz 6600 6468 6330 6186 6033 3.4 液晶显示及报警电路

本系统需要将测得的温度值和湿度值显示出来,并判断其是否超出温湿度的上下限,若超出,则需要报警。

3.4.1 LCD1602液晶显示

1602液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧、位数多、程序简单的诸多优点,颇受欢迎[16]。在本系统中使用的是字符型两行16字液晶显示器。在与单片机连接时使用接口电路(排针)相连,为并行通信。1602液晶显示采用标准的16脚接口,其中引脚功能如表3-5所示。

编号 1 2 3 4 5 6 7 8 符号 VSS VDD VL RS R/W E D0 D1 表3-5 1602引脚功能表 引脚说明 编号 符号 电源地 电源正极 液晶显示偏压信号 数据/命令选择(H/L) 读/写选择端(H/L) 使能信号 Data 1/0 Data 1/0 9 10 11 12 13 14 15 16 D2 D3 D4 D5 D6 D7 BLA BLK 引脚说明 Data 1/0 Data 1/0 Data 1/0 Data 1/0 Data 1/0 Data 1/0 背光源正极 背光源负极 - 18 -

哈尔滨理工大学学士学位论文 1602液晶模块内部的字符发生存储器(CGROM)已经存储了不同的点阵字符图形,这些字符有,阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,其中数字与字母同ASCII码兼容。1602与微处理器的连接电路如图3-8所示。

图3-8 LCD1602与单片机连接电路

3.4.2 报警电路

在微型计算机控制系统中,为了安全生产,对于一些重要的参数或系统部位,都设有紧急状态报警系统,以便提醒操作人员注意,或采取紧急措施。其方法就是把计算机采集的数据或记过计算机进行数据处理、数字滤波,标度变换之后,与该参数上下限给定值进行比较,如果高于上限值(或低于下限值)则进行报警,否则就作为采样的正常值,进行显示和控制。

本设计采用蜂鸣音报警电路。蜂鸣音报警接口电路的设计只需购买市售的压电式蜂鸣器,然后通过单片机的1根口线经驱动蜂鸣器发声。压电式蜂鸣器约需10mA的驱动电流,可以用一个晶体三极管驱动,在具体设计过程中,P2.5、P2.6口接晶体管基极输入端。当P2.5、P2.6输出高电平“1”时,晶体管导通,压电蜂鸣器两端获得约5V电压而发声;当P2.5、P2.6输出低电平“0”时,三极管截止,蜂鸣器停止发声。报警电路使用蜂鸣器声音报警,电路连接图如图3-9所示。

- 19 -

哈尔滨理工大学学士学位论文

图3-9 蜂鸣器报警电路

3.5 电源模块

系统单片机,温度采集,湿度采集,显示及报警各部分均采用+5V USB供电,无线收发模块采用3.3V电源供电。电源+5V到3.3V转换电路如图3-10所示。

图3-10 无线模块+3.3V电源供电电路

3.6 无线模块

发射数据时,首先将nRF24L01配置为发射模式:接着把接收节点地址TX_ADDR和有效数据TX_PLD按照时序由SPI口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号[17]。如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从TX FIFO中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数

- 20 -

哈尔滨理工大学学士学位论文 (ARC)达到上限,MAX_RT置高,TX FIFO中数据保留以便在次重发;MAX_RT或TX_DS置高时,使IRQ变低,产生中断,通知MCU。最后发射成功时,若CE为低则nRF24L01进入空闲模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入空闲模式2。

接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。当接收方检测到有效的地址和CRC时,就将数据包存储在RX FIFO中,同时中断标志位RX_DR置高,IRQ变低,产生中断,通知MCU去取数据[18]。若此时自动应答开启,接收方则同时进入发射状态回传应答信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。NRF24L10的原理图如3-11所示。

VDDC7C833nF10nF1nFCE1CECSN2CSN3SCKSCKMOSI4MOSIMISO5MISOIRQC9R222K2019181716VSSDVDDVDDVSSIREFU1C550omh,RFI/O3.9nH1.5pFC6L11.0pF8.2nHL22.7nHC3C42.2nF4.7pFL36IRQ7VDD8VSS9XC210XC1C122pF15VSS14ANT213ANT112VDD_PA11VDDNRF24L01X116MR11MC222pF图3-11NRF24L10原理图

3.7 本章小结

本章就系统的硬件电路进行了设计,在设计过程中采用模块化设计方法,即根据系统的要求对各传感器及单片机电路分别进行设计,最终再将其组合为一体。

主控电路采用以STC89C52为核心的单片机电路,温度传感器采用数字型温度传感器DS18B20,直接与单片机的P2.7口相连;湿度传感器为电容性传感器,通过与555振荡电路相结合得出频率信号输入到单片机内,由软件部分进行处理得到湿度值。最终测量结果显示在LCD1602显示屏上,并判断采集数据是否超出程序设定的上限报警值,如若超出报警上限则驱动蜂鸣器报警,并将数据通过无线收发模块和串口技术传到上位机以便进行对温湿度的控制。

- 21 -

哈尔滨理工大学学士学位论文 第4章 软件设计

4.1 主程序流程图

主程序的主要功能是负责读出并处理DS18B20的测量温度值,读出测湿电路的结果,并将温度及湿度进行实时显示,判断是否超出上下限,如若超出则报警并向上微机发送数据。程序流程图如图4-1所示。

开始显示温湿度初始化报警检测否是发送数据扫描键盘测量温湿度结束图4-1 主程序流程图

4.2 温度模块程序设计

温度模块主要包括DS18B20的初始化以及与单片机之间的数据处理, DS18B20的所有操作均从初始化开始,初始化过程如图4-3所示。初始化的过程是首先由CPU发出一个复位脉冲,复位脉冲的时间为480~960us,然后由从属器件发出应答脉冲[19]。初始化是主CPU发出一个复位信号,将数据总线上的DS18B20复位,然后释放总线,该总线位接收状态。由于接有上拉电阻,在释放总线是有15~60us的时间间隙,在此之后的60~240us时间内,如果CPU检测到总线为低电平的话,则说明DS18B20初始化完成。DS18B20中的温度传感器可完成对温度的测量,用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。12位转化后得到的12位数据,存储在DS18B20的两个8B的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1,程序中对于温度小于0的情况进行的适当的处理,并将在显示中显示所得温度为负[20]。整个温度采集过程如图4-2所示。

- 22 -

哈尔滨理工大学学士学位论文 开始N初始化DS18B20Y跳过读ROM启动温度转换N初始化DS18B20Y读取温度返回主菜单

图4-2 温度采集

开始DQ置高电平延时DQ复位延时大于480msDQ拉高电平延时15-60msNDQ为低电平Y结束

图4-3 DS18B20初始化

4.3 湿度模块程序设计

湿度模块主要是利用定时器T0和T1对555的输出频率进行测量,在该块程序设计中,我们选取T0做定时器,定时时间是50ms,而选择T1做计数器,每当T0定时时间到就读取T1的计数值,然后将T1的计数值乘以20就可得到555芯片的输出频率,可进行数据处理进而得到相对湿度值,湿度测量程序流程图如图4-4所示。

- 23 -

哈尔滨理工大学学士学位论文 开始开启T0,T1N计时满50msY关闭T0,读T1计算频率结束

图4-4 湿度测量

4.4 显示子程序设计

显示子程序包括1602的初始化,以及对温度和湿度值的显示。初始化时第一行显示“wend”,第二行显示“shid”,然后根据温度的测得值及其正负将测得温度值和设定温度值在第一行,并将测得的频率值转换为相对湿度值,并将其和湿度设定值显示在第二行,显示子程序流程图如图4-5所示。

- 24 -

哈尔滨理工大学学士学位论文 开始1602初始化设置初始化显示温度值转换ASC码显示温度符号加数值T1计数值*20将频率值转化为湿度值显示湿度值结束图4-5 显示子程序流程图

4.5 按键模块程序设计

本系统采用了四个按键,将加减设置按键接两个外部中断0和1上,当外部中断被触发(即存在设定值设置)时,判断是另外两个按键是否按下(即判断是温度值设定还是湿度值设定),然后根据判断的条件执行设定值的改变。分别设置温度的加减和湿度的加减,程序流程图如图4-6所示。

开始外部中断引脚复位外部中断0NP0.1=1YTsheding-1P0.0=1YTsheding+1N外部中断1P0.0=1YHsheding+1NP0.1=1NYHsheding-1结束图4-6 按键程序流程图

- 25 -

哈尔滨理工大学学士学位论文 4.6 无线收发模块程序设计

首先检测过程中判断蜂鸣器是否响起,即P2.5口或P2.6口若输出为高电平,则启动NRF24L01的发送模式,向上位机部分的接收模块发送温度或湿度数据。发送具体程序流程图如图4-7所示。

开始配置NRF24L01为发送模式复位DS18B20开始温度转换读取温度值T1计数值*20将频率值转化为湿度值数据经NRF24L01为发送Y发送成功N图4-7 发送模块程序流程图

本系统接收端用NRF24L01无线模块接收发送端传来的温度数据和湿度数据,经单片机STC89C52将数据转换成相应的温度值和湿度值。最后单片机把数据经串口传输给PC机,在PC机上显示温度值和湿度值。接受

模块程序流程图如图4-8所示。

- 26 -

哈尔滨理工大学学士学位论文 开始配置NRF24L01为接收模式接收温度数据读取温度值接收湿度数据读取湿度值把数据上传到PC机图4-8 接收模块程序流程图

4.7 报警子程序

首先判断所测得的温湿度值是否超过设定的上限,如若超过所设定的上限则输出高电平,驱动蜂鸣器报警,如若未超过设定上限则输出低电平不报警。报警部分程序流程图如4-9所示

开始N是否超限?Y延时结束图4-9 报警程序流程图

- 27 -

哈尔滨理工大学学士学位论文

4.8 本章小结

本章主要对系统的各个部分的程序流程图进行了设计和说明,首先是主程序部分实现了温湿度的采集,液晶形式蜂鸣器报警,数据的无线收发几个功能,温度采集部分主要对DS18B20温度传感器的初始化和数据采集过程详细设计,湿度采集部分利用555振荡器将电容质的改变转化为频率通过程序显示湿度,并将测得的数据通过LCD1602显示,对蜂鸣器部分采用高电平驱动,高电平同时为无线发送模块数据采集的启动命令实现数据发送功能。

- 28 -

哈尔滨理工大学学士学位论文 结论

温度、湿度测量广泛应用于气象监测、食品仓储、工农业生产、工业控制、科学研究以及日常生活当中。本课题的设计使用灵活、方便,功能强、精度高,既可完成高精度的温湿度标准表的功能,又能方便地应用于档案馆环境空间布点的温湿度测量。本课题主要完成了以下工作:

分析了国内外温湿度测量技术现状,提出了设计一种基于无线传感器网络的温湿度监控系统,系统以STC89C52单片机为核心,主要由LCD显示电路、键盘控制、DS18B20温度传感器、HS1101湿度传感器、报警系统、无线模块等组成。系统通过温度和湿度传感器采集温湿度,并将采集的数据送入单片机中。在STC89C52单片机中,对送过来的数据进行处理和分析,并将数据通过LCD显示电路显示。若测定值超过设定值,则蜂鸣器会发出“滴滴”声音报警,并实现单片机控制板对参数进行控制。在设计中,首先是电源模块选择USB5.0V供电,温湿度传感器选择了当前主流的数字温度传感器DS18B20和湿敏湿度传感器HS1101,经过多方面的查找资料,请教老师和同学,掌握对温湿度的采集的方法。

虽然整个设计已经完成,但是也存在许多不足之处,如设置报警时只能是超过上限或下限报警,因此需要在同一地点采用两个节点读取数据实现上下限报警。同时由于湿度传感器通过振荡器的频率计算湿度值会避免不了的产生误差。

从系统测量的温度值来看,整个系统达到了初期预想的效果,测量精度也达到要求。只是在控制方面显得不足,希望以后能够能有机会继续完善。

- 29 -

哈尔滨理工大学学士学位论文 致谢

经过这段时间的忙碌和工作,本次毕业设计已经接近尾声,作为一个本科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有导师的督促指导,以及同学们的支持和帮助,想要完成这个设计是难以想象的。

在这里首先要感谢我的导师冯老师。冯老师平日里工作繁多,但在我做毕业设计的每个阶段,从设计草案的确定和修改,中期检查,后期详细设计,原理图设计,程序流程图设计等整个过程中都给予了我悉心的指导。她的治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作。

然后还要感谢大学四年来所有的老师,为我们打下测控技术与仪器专业知识的基础,同时还要感谢所有的同学们,正是因为有了你们的支持和鼓励,此次毕业设计才会顺利完成。

最后感谢我的母校哈尔滨理工大学四年来对我的大力栽培。

- 30 -

哈尔滨理工大学学士学位论文 参考文献

1 袁易君.无线温度、湿度监测仪研究[J]. 现代企业文化,2008,(35):10. 2 M.Al-Harbawi, M.F.A.Rasid, N.K.Noordin. Improved Tree Routing Protocol

for ZigBee Network. International Journal of Computer Science and Network Security, 2009:15.

3 张翠荣.浅谈我国环境监测技术的现状及发展趋势[J].绿色科技,

2012(7):15.

4 高智富.温室环境控制技术的现状及发展趋势[J].中国市场.2007(35):106-108

5 王杰.基于无线传感器网络温湿度采集监测系统[J].软件,2011(17):42-44 .

6 M. Hawfke, and H. Ewald, \zigbee based smart sensing platform for

monitoring environmental parameters,\Instrumentation and Measurement Technology Conference (I2MTC),2011(6):121.

7 Bo Chang.Design of Indoor Temperature and Humidity Monitoring System

Based on CC2430 and Fuzzy-PID.2011 Cross Strait Quad-Regional Radio Science and Wireless Technology Conference,2011:59.

8 周雅琴.无线传感器网络应用及研究现状[J].传感器世界.2009.5:20-24. 9 Marijan Kuri. A Wireless Sensor Network based Environmental Monitoring

System.MIPRO,2011:150-155.

10 常君.湿度传感器 HS1101 在智能家居控制系统中的应用[J].电子测

试,2008,(02):77-80.

11 陆楠.基于 ZigBee 技术的无线大棚温湿监控系统[J].现代电子技术.2008

(15):98-101.

12 赵宏程.无线传感器网络的研究现状及发展趋势[J].科技广场,2011(9):22-25.

13 于正林.AVR单片机原理及应用[M]. 国防工业出版社:2009-01-01.

14 何祥宇.一种无线温湿度检测装置的设计与实现[J].自动化技术与应用,

2010(8):32.

15 刘宇静.基于无线传感器网络的智能粮仓监控系统[J].粮食储藏,

2008(3):63-65.

16 何利民.MCS-51 系列单片机应用系统设计系统配置与接口技术[M].北京:

北京航空航天大学出版社.2009.

17 董蕴华 ,石新峰.基于无线传感器网络的环境温度湿度监测系统[J].农机

化研究,2010(7):154.

18 黄小波.基于GPRS的无线传感器网络网关的设计与实现[J].自动化应

- 31 -

哈尔滨理工大学学士学位论文 用,2010.7:45-47.

19 Wang Fengyun, Zhao Yimin, Zhang Xiaoyan, et al. Intelligent measure-control system design based on sectional-control strategy in greenhouse[J]. Transactions of the Chinese Society for Agricultural Machinery, 2009, 40 (5): 178-181.

20 吕西午,刘开华,赵岩.基于Zigbee的无线监测系统设计与实现

[J].计算机工程,2010,36(5):243-244.

- 32 -

哈尔滨理工大学学士学位论文 附录A 程序

#include

#define uchar unsigned char #define uint unsigned int

sbit DQ=P2^7;//DS18B20与单片机连接口

sbit RS=P3^0;//LCD1602控制端与单片机的连接 sbit RW=P3^1; sbit EN=P3^7;

sbit ST=P0^0;//按键接口 sbit SH=P0^1; sbit Sjia=P3^2; sbit Sjian=P3^3;

sbit WBJ=P2^6;//温度报警接口 sbit HBJ=P2^5;//湿度报警接口 uchar code str1[]={%uchar code str2[]={%uchar data disdata1[6]; uchar data disdata2[4]; uint tvalue;//温度值

uchar tflag;//温度正负标志 uint tem0,tem1; uint temp0,temp1; uint f=0; int hhhh=0;

int tsheding=28;//设置温度值 int hsheding=60;//设置湿度值 void zhongd0() interrupt 0 //外部中断0 :加设置 {

if(ST==1) {

tsheding++; //温度值加1 }

if(SH==1) {

hsheding++; //湿度值加1 } }

void zhongd1() interrupt 2 //外部中断1 :减设置 {

if(ST==1) {

tsheding--; //温度值减1 }

- 33 -

哈尔滨理工大学学士学位论文 if(SH==1) {

hsheding--; //湿度值减1 } }

void timer0() interrupt 1 //T0定时中断 {

TR0=0; TR1=0;

TL0=0xB0;//重装值,定时50000us TH0=0x3C;

tem0=TL1;//读数 tem1=TH1;

TL1=0x00;//计数器1清零 TH1=0x00; TR0=1;

TR1=1; }

void timer1() interrupt 3 //T1计数中断 { TR0=0; TR1=0;

TL0=0xB0;//重装值,定时50000us TH0=0x3C;

TL1=0x00;//计数器1清零 TH1=0x00; TR0=1; TR1=1; }

void init_timer() {

TMOD=0x51;//0101 0001 定时器0在模式1下工作16位定时器,定时方式1在模式1下工作16位计数器,T1负跳变加1 TL0=0xB0;//定时器0初值 定时50000us TH0=0x3C; TL1=0x00;//定时器1清零 TH1=0x00;

TR0=1;//T0开始计时 TR1=1;//T1开始计数 }

void TPanDuan()//温度超范围判断 {

uint k= tvalue/(10); if(tflag==0) {

if((k>(tsheding*1.2))||(k<(tsheding*0.8))) { WBJ=1;

- 34 -

定时器 哈尔滨理工大学学士学位论文 } else { WBJ=0; } } else {

if((k>tsheding*(-1.2))||(k

void delay1ms(uint ms)//延时1毫秒 {

uint i,j;

for(i=0;i

void wr_com(uchar com)//1602写指令{

delay1ms(1); RS=0; RW=0; EN=0; P1=com; delay1ms(1); EN=1;

delay1ms(1); EN=0; }

void wr_dat(uchar dat)//1602写数据 {

delay1ms(1); RS=1; RW=0; EN=0; P1=dat;

delay1ms(1); EN=1;

delay1ms(1); EN=0; }

- 35 -

本文来源:https://www.bwwdw.com/article/9jfg.html

Top