【《基于wifi的智能家居温湿度监控设计与实现》11000字】_第1页
【《基于wifi的智能家居温湿度监控设计与实现》11000字】_第2页
【《基于wifi的智能家居温湿度监控设计与实现》11000字】_第3页
【《基于wifi的智能家居温湿度监控设计与实现》11000字】_第4页
【《基于wifi的智能家居温湿度监控设计与实现》11000字】_第5页
已阅读5页,还剩27页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊毕业设计(论文)报告纸基于wifi的智能家居温湿度监控设计与实现摘要智能家居的概念已深入人心,人们对智能家居的要求也越来越高,智能家居的温湿度监控虽已有应用,但在性能上还不尽如人意。本次设计即设计一款新型的家庭用温湿度系统。基于STC89C52RC单片机和智能手机的智能家居系统。硬件部分包括温湿度传感器、51单片机、LCD1602液晶显示管、WiFi模块,蜂鸣器,智能手机和摄像头七个部分,软件部分分别有采集温湿度模块和液晶显示模块,在PE端基于Androidstudio平台而进行构建的app,较好的实现了人机交动。经过调试,此款温湿度监控系统可成功的通过WIFI模块和手机间实现通信、报警等功能,能够发送、接收信息,通过单片机获得想要的温湿度数据,也可以随时设置报警值并且通过摄像头观察环境情况。关键词:温湿度传感器;单片机;LCD1602;WIFI模块目录17868第1绪论 1209621.1研究背景 175871.2研究意义 17237第2章总体设计方案 394392.1单片机模块 4161252.2显示模块 5206262.3温湿度采集模块 6186792.3.1管脚情况 8126812.3.2样例数据 8140762.3.3信号的传输格式 930332.4通信模块 9137162.4.1Wifi模块 10306252.5报警模块 1128592.5.1蜂鸣器模块 11156542.6监控器模块 1213407第3章系统软件设计 13282673.1单片机软件系统设计 13193443.1.1主控模块 1448533.1.2温湿度采集模块 16241143.2PE端软件系统模块 177784第4章系统调试 1795854.1系统单元测试 17289354.1.1液晶显示测试 1813134.1.2ESP8266传送信息测试 19228984.1.3PE终端接收数据实现 1928394.1.4PE终端新阈值设置 2023204.2仿真测试 21149384.3系统实现 2214600第5章总结展望 25 共27页第28页1绪论简易智能家居系统是人类在当前所寻求的个性化,高品质的生活环境,主要是将住宅当做渠道,装置智能家居系统,进而提高日常生活的稳定,便利,智能,高效与节约性。在上述系统中,一般把住宅区域当做平台,使用整体性布线科技、网络智能通信科技、智能家居和系统研发计划和安全预防科技、自动性管控科技、音视频的科技把日常环境相关的设施都统筹起来,进而创建稳定的住宅设施与综合事务性的监管系统,进而提高家居稳定性、方便性、艺术性,此外营造和谐和环保的生活环境,让人们在家中感受到幸福和快乐。研究背景在进入二十世纪之后,伴随大众生活质量的提高,居住环境的质量要求慢慢成为人们关注的领域,“智能化”便引发很多科学工作者的更多思考,把它贯穿到小区住宅和建筑科技之中,使我们生活的环境更加人性化和便利性。家居智能化系统的概念起源于上世纪70年代的美国,随后,传播到欧洲、日本等国并且得到了很好的发展。在我国,智能家居这一概念推广较晚,约在90年代末家居智能化系统才得以进入国内,但发展速度惊人,至今已存在相当数量的智能化小区及住宅。智能系统不仅对我们常生活有着非常大的帮助。智能家居系统的实现方式可谓多姿多彩,一般情况下智能家居系统通常可以分为两类:总线性与无线性系统。前者一般表示包含RS485、KNX、LONWORKS等在内的少数设施,通过提早布线来设计不同设备之间互联的弱电性系统,其中后者一般将ZigBee技术当做重点,主要部分是无线组网性通讯技术,然而总线性系统在运作时期,出现通信速率较低,通常只有9.6Kbps,此外模块数目较少等众多问题,调查过后,使用ZigBee技术时,通信速率较高,但是成本还是较为昂贵,通信稳定性也存在很多问题,在本课题中要求很高的自组网能力中显现的不如WiFi技术灵活有效,因此将使用的是以无线WIFI模块为主的智能家居系统。1.2研究意义本文在研发智能家居系统时,首先考虑到的是如何把单片机的温湿度数据传送给智能手机的问题。经过调研和查询相关资料发现,传送数据可以有多种途径,但较为公认且可靠的技术为利用新兴发展的WIFI模块进行数据传送。因此,本课题既是利用传感器采集温湿度,单片机将使用WIFI将数据传给手机,当温湿度出现异常,报警的同时,可以远程查看具体情况进行解决。总体设计方案本设计为智能家居系统,其硬件由单片机模块、温湿度模块、显示模块、报警模块、摄像机模块等模块组成。以较低成本实现温湿度的采集、处理,显示,并可以通过串口将显示的数据传送到连接的PE终端,而终端则具备一定的设定新的温湿度阈值性功能,也可以通过摄像头查看实地情况。总框图如REF_Ref73384499\h图2.1所示。硬件部分分为单片机模块、显示模块、温湿度采集模块、通信模块、报警模块和监控器模块,本章分别介绍各个模块的硬件结构与功能设计。图STYLEREF1\s2.SEQ_图\*ARABIC\s11系统设计框图

单片机模块本模块中使用单片机作为核心控制芯片,进而达成控制目标。单片机在国内外的型号有很多,如MCS-51系列、51系列单片机、AVR系列单片机、MSP430系列单片机。由于本设计当中对低功耗、抗干扰性能有要求,现有两种方案供选择。(1)方案一可使用51系列的单片机当做主要控制器。51系列作为应用最为广泛的单片机,其产品硬件结构合理,指令系统规范。它从内部的硬件到软件都有一套完整的按位操作系统,称作位处理器。51系列的I/O脚的设置和使用非常简单,但高电平时无输出能力,可谓有利有弊。故其他系列的单片机(如PIC系列、AVR系列等)对I/O口进行了改进,增加了方向寄存器以确定输入或输出,但也变得复杂。51系列的另一个优点是乘法和除法指令,这给编程带来了便利。(2)方案二可采用凌阳系列单片机作为系统的处理器。其优点为功能强、效率高的μ’nSPTM的指令系统,指令格式紧凑,执行迅速,并且其指令结构提供了对高级语言的支持,这可以大大缩短产品的开发时间。低功耗、低电压:μ’nSPTM家族采用CMOS制造工艺,同时增加了软件激发的弱振方式,空闲方式和掉电方式,极大地降低了其功耗,另外,μ’nSPTM家族的工作电压范围大,能在低电压供电时正常工作,且能用电池供电。以上两种类型的单片机都可以实现我们所需要的控制功能。51系列单片机运算功能强并且技术成熟,开发较早。凌阳系列单片机对复杂的逻辑功能实现较好,体积小、稳定性高,器件集合程度较51系列较好。由于本系统对信号处理速度要求不高(s级),核心算法也不复杂,综合价格、操作复杂度、以及现有编程环境等多方面考虑,采用51单片机做嵌入式处理器最适于本课题。基于综合性的考虑,所以选择了方案1的STC89C52RC单片机。控制系统内使用STC89C52RC型号,这是一款开发了很久很稳定可靠的芯片,总体技术已经相对成熟了,利用其串口可以很快的访问数据,对模块进行初始化,将数据传送,以及接收。如REF_Ref73384772\h图2.1所示:图2.SEQ_图\*ARABIC\s11STC89C52原理图其中用到的关键几个串口引脚以及作用如REF_Ref73384899\h表3.1所示:表2.SEQ表\*ARABIC\s11单片机串口引脚引脚号功能特性P3.0RXD(串行输入口)数据输出线,串行数据接收端。P3.1TXD(串行输出口)移位时钟脉冲,串行数据发送端。P3.2INTD(串行输入口)外部中断0中断请求输入P2.0RSTOUT_LOW上电后输入低电平,访问外部存储器时,用做八位地址总线通过串口的P2.0口访问温湿度传感器所收集的环境信息,经过处理交给显示器,P3.2口对WIFI模块中断请求,进行初始化过程进行复位,经过P3.1口将温湿度数据通过此串口发送给APP,而P3.0口则负责将APP发送来的数据进行接收。显示模块现有三种方案可供选择,分别为采用静态、动态、LCD的显示方法。第一种具备损耗大,体积大、硬件众多,同时需要占用串口来用移位寄存器输出。而动态显示相比于静态的模块,其显示内容众多,,损耗少,费用低,硬件制作性也简单,但美中不足则需占用14个端口的输出。LCD的显示方法取有以上两种的优点显示信息较多,满足了设计的要求。所以采用LCD1602液晶显示模块来输出相关信息。1602液晶屏外观图如REF_Ref73505613\h图2.2所示。图2.SEQ_图\*ARABIC\s121602液晶屏外观图LCD1602液晶显示模块共有16个引脚,REF_Ref73505714\h表2.3做出了详细说明:表2.SEQ_图\*ARABIC\s13引脚说明温湿度采集模块物温湿度采集模块就是对温湿度这两个物理量的信号进行采集,然后通过相关一系列的程序,将信号转化为可直接读出来的数据,例如:将温湿度传感器放置于特殊的环境下,便可以立即感受出温度量以及相对湿度量。然而,首先要解决的问题就是如何选择合适的温湿度传感器。经过网上查询相关资料,实地去电子市场考察,发现相关产品有很多,如REF_Ref73505828\h图2.5所示,特点及功能指标差别相对不太大。结合自身的知识水平及实践能力,在老师的指导下进行了部分的筛选,经过实验最终确定了课题中使用的温湿度传感器的型号。图2.SEQ_图\*ARABIC\s15温湿度传感器当前选择的温湿度传感器是DHT11。DHT11的管脚如REF_Ref73505877\h图2.6所示。正面结构以及背面结构如图2.7所示:图2.SEQ_图\*ARABIC\s16DHT11管脚图图2.SEQ_图\*ARABIC\s17DHT11产品图数字温湿度传感器(DHT11)是涵盖已校准之后的数字性信号输出的温湿度复合性传感器,其中就涵盖电阻式感湿元件与NTC测温元件,此外也包含功能齐全的8位单片机彼此联系,所有DHT11传感器均利用在相对精准的温湿度校验室内经受校准,校准系数通过程序性方式存储在OTP内存中,其中内部部件在测试信号的处理时期需要调用上述准确的校准系数,精准度更高。单线制串行接口,提高系统集成便利性,提高综合效率,其体积不大、损耗较少,因此可以在传感器内普遍使用,显然,其通常使用数字性模块采集和温湿度传感技术,上述重要技术来可以保证产品具备较高的稳定性和长期性。总而言之,此产品效率高、性价比高,质量高、抗干扰性水平高等诸多优势,因此其逐渐变成恶劣环境中的首要选择。产品是三针单排引脚封装,连接相对便利。本设计使用DHT11模块,下面从DHT11模块的属性、控制参数、数据信息流等方面做简单介绍。2.3.1管脚情况DHT11模块的管脚情况如REF_Ref73385005\h表2.2所示:表2.SEQ表\*ARABIC\s12DHT11模块管脚情况Pin名称注释1VDD供电3-5.5VDC2DATA串行数据,单总线3GND接地,电源负极2.4通信模块可用于通信的模块国内外有很多种,如

GPS模块、北斗模块、蓝牙模块、wifi模块等,现根据性能要求对其中的三种通信模块进行分析选用。(1)方案一蓝牙通信不容易受到干扰,并且可行性高,易于开发,但是蓝牙一般都工作在2.4GHz的频段所以距离不能太远,并且市面上常见的蓝牙模块也只是视距10米内,同时蓝牙协议的功耗也是很高的,专利费要求高,。(2)方案二zigbee技术通信,掉线率不高,损耗少,组网水平高,费用少,安全稳定,工作频段相对自由,但是价格相对要昂贵很多,其协议占用的带宽对信道要求高,同时通讯距离短,环境适应性差,以及通信数据速率低。(3)方案三wifi模块具有更宽的带宽,更强的射频信号,功耗更低,安全性强,具有一定的移动性,同类设备连接很方便,通信距离最长,速率快。综上所述,本设计选取了esp8266串口wifi模块。2.4.1Wifi模块Wifi模块选用的是ESP8266模块,上述WIFI模块价格不高,基本上是功能齐全的WIFI芯片,在多种智能硬件内被普遍使用,特别是依照其datasheet,支持SPI的时候,也能利用I2C,UART等形式开展通信,特别是对UART来说,就能支持目前所采用的AT指令,在一定程度上减少开发任务量,便于初学者进行操作,AT模式的ESP8266引脚如REF_Ref73385322\h表3.9所示:表STYLEREF1\s3.SEQ_图\*ARABIC\s19ESP8266引脚其是具有超低性损耗的UART-WiFi透传模块,凭借自身封装尺寸与超低损耗科技而被普遍使用,此外有为移动设备和物联网彼此通讯使用的单独设计,能把用户的物理设施联系到Wi-Fi上,在互联网或局域网内彼此交流,进而完成联网目标。另外ESP8266的封装形式具有多元性,上述天线也支持邮票孔接口,板载PCB天线与IPEX接口三类;在生活,ESP8266就普遍使用在智能性家具、交通、手持性设施、工业控制与相关电网等行业。2.5报警模块由于本设计有需要,便利用单片机的自带蜂鸣器模块进行编程,设定一定阈值,在筹集的温湿度超出所设定正常阈值就会报警。报警器模块选用51单片机中自带的蜂鸣器,在蜂鸣器电路中主要包括一个220欧的电阻,三极管8550和蜂鸣器,电路使用了单片机的I/0口P3.4来控制蜂鸣器。但是,通过三极管8550间接控制。这是因为单片机的I/0口能够流进流出的电流有限,有的蜂鸣器鸣响需要比较大的电流,单片机的I/0无法满足。而三极管8550最大可以提供1A以上的电流,足以驱动蜂鸣器,所以使用P3.4控制三极管8550的导通和截止,达到控制蜂鸣器的目的。向P3.4写出逻辑“1”时,P3.4输出+5V,三极管8550的基极电流为0,三极管处于截止状态,电源+5V不能加到蜂鸣器的正极,蜂鸣器不鸣响;向P3.4写出逻辑“0”时,P3.4输出OV,三极管8550的发射极和基极之间产生电流,限流电阻R1取合适的值,可以使三极管处于饱和导通状态,电源+5V通过三极管的发射极和集电极加到蜂鸣器的正极,有电流流过蜂鸣器的正极和负极,有源蜂鸣器就开始鸣响使用SH69P43为控制芯片,使用4MIHz晶振作为主振荡器。PORTC.3/TO作为I/0口通过三极管Q2来驱动蜂鸣器LSI,而PORTC.2/PMI10则作为PIN输出口通过三极管Q1来驱动蜂鸣器LS2。另外在PORTA.3和PORTA.2分别接了两个按键,一个是PIL按键,是用来控制PI输出口驱动蜂鸣器使用的:另一个是PORT按键,是用来控制I/0口驱动蜂鸣器使用的。连接按键的I/0口开内部上拉电阻,如REF_Ref73506011\h图3.10所示:图2.SEQ_图\*ARABIC\s110蜂鸣器电路图2.6监控器模块出于经济实惠的需要,选择WIFI网络眼摄像头,如图2.11。这种摄像头一般由镜头、图像传感器、声音传感器、A/D转换器、图像、声音、控制器网络服务器、外部报警、控制接口等部分组成。不需要布数据线,只要电源线,安装简单。可以很方便的实现手机远程监控,可以通过语音交流。夜晚观察,使用红外线确保高清不模糊,通过插卡换卡,进行360度旋转录像,还可以移动报警。图2.11WiFi网络眼摄像头无线摄像头即用电磁波代替电线达到无线传输视频信号。而WIFI摄像头的构成通常有两种,一种是在无线摄像头的基础上,内置无线发射器或者是路由网络桥接器,即可像一般有线网络的交换机或路由器一般,其他设备可以快速且轻易地与此网络相连,接通使用。第二种是摄像头内置网络模块接入厂商自带的云服务,用户注册云服务,关联摄像头,在有互联网的情况下,登陆云服务即可远程监控。如果没有云服务,就需要通过公网IP,直接访问摄像头。该方式需要网络有独享公网IP,部分宽带网无法实现。现在市面上的无线监控基本都是

P2P技术,也就是点对点的,穿透连接快、流畅、实现了人与物、物与物之间的通信。wifi网络摄像机特点:画质清晰、即插即用、可实现远程监控、支持多平台、多终端、多网络设备远程实时监控,支持多用户访问,多设备管理。网络摄像头可以通过USB接口和PC端进行视频传输,也可以通过wifi直接传输。如图2.12。图2.12WIFI摄像头原理图系统软件设计本系统的软件设计包括单片机软件系统设计和PE端APP的设计开发两个部分。其中单片机软件系统基于KeilC开发实现,PE端软件选择Androidstudio为开发平台,编程语言选择C++。软件系统设计本部分使用KeiluVision软件编程实现,以下简称Keil。系统中硬件部分的各个模块的运行程序的设计思路均基于Keil。Keil的语言环境为C语言,由于在前面几学期中有涉及此种语言环境,所以在编程中应该相对比较简单、好上手。在经过编辑程序、编译、连接、调试的流程之后。将生成的.hex文件通过stc-isp-15xx-v6.82E软件烧录进所选择的单片机,就可以实现程序到具体功能的控制。具体的系统调试还需要将整体的功能实现与所编写的程序的预想结果比较调整来不断改正。如REF_Ref73506120\h图3.1为Keil软件编译界面。图3.SEQ_图\*ARABIC\s11编译界面软件设计包括主控模块、温湿度采集、PE端软件系统模块共3个模块。主控模块图3.SEQ_图\*ARABIC\s12主程序流程图本模块要实现的功能主要有:(1)各个模块的初始化:温湿度采集模块初始化、LCD1602液晶显示模块初始化、蜂鸣器报警初始化,ESP8266传输初始化,终端APP初始化。(2)温湿度采集:扫描周围的环境,根据环境中的物理量,利用热力工程学理论计算出温度,此外依照气体内包含的水蒸气量和空气内相似条件下饱和水蒸气量的比值计算出湿度。(3)液晶显示:将采集的温湿度显示在液晶上(4)蜂鸣器报警:发现异常情况,即刻发出蜂鸣声,进行报警。(5)ESP8266传输:将采集的温湿度转化为字符串和TA指令,经过处理解析,以及包装在进行传送。(6)APP接收,设置:接收传来的温湿度,并可以根据需要随时更改报警阈值。(7)摄像头:查看环境的实际情况。其中各个模块的初始化,键盘扫描对周期要求不高,把他们按照模块化设计的思想放在main函数中,剩下的温湿度采集需要周期不停运行,把他们归到中断子函数中。插上电源,打开开关,程序进入main函数,最先开展DHT11、LCD1602、ESP8266的初始化,即让他们处于准备工作的状态下,当初始化完成后,立即进入主循环中。在主循环中,始终对周围的环境进行检测,且把信息传送到LCD1602液晶上,立即呈现出来,通过蜂鸣器时,将所测数值与阈值进行比较,超出阈值则立刻报警,然后,通过ESP8266将数据字符进行处理、包装,用WIFI,将数据发送到连接的PE终端。到此,单片机部分的功能基本结束。REF_Ref73505789\h图3.4为LCD1602液晶显示模块的初始化过程。图3.4复位过程在以上描述的工作中,都是有关于main函数下的,与此同时,中断这部分程序也在紧锣密鼓地运行着,本系统用到的是单片机的串口终端,串口中断是此单片机五个中断当中的一个。中断调用过程如REF_Ref73385598\h图4.3所示:图3.SEQ_图\*ARABIC\s13中断调用在ESP8266接收数据功能出现异常时,接收信号到即进入中断,调用ATCOM程序使接收信号归零,复位后,刷新,以此再重新接收数据这样不仅可以减少程序运行中的CPU使用率,还可以使程序在执行中不会出错、不会一直在一个地方等待,方便后期的程序优化与调试,其程序如下所示。温湿度采集模块图3.SEQ_图\*ARABIC\s14DHT11温湿度数据采集图3-3为DHT11模块的温湿度数据采集流程,在串行的接口中,此处DATA通常是使用在单片机和DHT11间的同步和通信,一般使用单总线数据的格式,此处要求格式是:8bit温度的整数数据+8bit温度的小数数据+8bit湿度的整数数据+8bit湿度的小数数据+8bit校验和,其中在传输前,判断是一次正确的传输依据为:8bit校验和是否等于其他四位数据之和。单次通讯时间是4ms,要进行一次数据传输需要40bit,此外传输时期高位优先输出。在main函数中的定时器0的中断中,DHT11会每隔一段时间进行温湿度采集,对数据进行更新,在得到开始指令之后,DHT11就可以从低损耗性状态转变成高速状态,在静待主机开始信号结束以后,其也会马上反馈相应的指令信号,之后随之出现40bit的数据内容,此外也触发一次信息筹集,进而可利用上述选择性的读取少数信息,在DHT11得到开始信号之后,就触发温湿度信息的筹集,然而假如并未出现主机发送的开始信息,DHT11也无法自主筹集温湿度信息采集,在筹集到信息之后会随之变成低速模式。在总线闲置状态为高电平时,主机需要将总线拉低进而等待DHT11响应,然而上述拉低需要超过18毫秒,进而确保DHT11可以测试起始性指令。在DHT11得到主机发放开始指令之后,在等待上述开始指令完结后,随之发送80us的低电平响应信号。在开始指令完结之后,会延时20-40us,读取DHT11回馈信号,之后主机发送开始指令之后,随之转换到输入模式,或者输出高电平,最终总线提高上拉电阻。在总线为低电平时,此时表示DHT11发送响应信号,在DHT11发送响应指令之后,将总线提高80us,进而准备发放数据内容,每个bit信息全部是以50us的低电平时隙开始,其中高电平长短影响数据位是1或0.假如读取响应指令为高电平,此刻代表DHT11并未响应,要充电查看检查线路连接是否出现问题,在这儿曾经就出过问题。在最终bit数据信息传播结束之后,DHT11随之拉低总线50us,然后让其进入上拉电阻的拉高状态进而转入空闲局面,其程序如下图所示。PE端软件系统模块PE终端软件部分的编撰在AndroidStudio环境中开展。AndroidStudio是当前技术中,相对便利的开发环境,本系统设计中运用到的语言为JAVA,与前面所掌握的C语言有很大的相通之处,比较容易上手,编程逻辑易于理解,非常便于开发和调试。在PE上的运行过程是先打开终端APP,之后系统会初始化屏幕,如果初始化过程完成则会显示初始化的列表选择框,若初始化未完成则会重复初始化过程,直到初始化屏幕完成。在初始化列表选择框中可以选中需要点击的列表,列表包涵了之前收集到的数据。此时屏幕会感应选择框是否被点击,感应到被点击则会触发连接程序检测连接是否成功,如果未成功则回到初始化的列表选择框。通常情况下初始化和选项的连接过程在Android

studio部署时多次测试,确保正式应用时不会出现反复循环问题。当选项连接成功时系统会启动计时器同时判断计时器是否溢出,当计时器溢出时则会初始化报警提示框,同时检测温湿度数据是否超过设定的阈值,若超过阈值则触发蜂鸣器报警,未超过阈值则会重新检测计时器是否溢出从而决定是否触发蜂鸣器报警。整个过程通过屏幕感知、选择列表框初始化和报警框初始化、以及计时器程序来完成在PE上的运行。如图3.5PE端软件流程图。图3.5PE端软件流程图PE终端系统设有三大功能,首先是串口通信,收取硬件部分发送过来的温湿度数据,其次为设置温湿度阈值,最后为反馈回单片机,设定新阈值,以此达到随时监测好环境的温湿度状况,其程序如图所示。系统调试系统单元测试首先进行的是系统硬件部分的信息搜集与选定,将所需的硬件部分的器件购买回来,检查分类后,按照系统原理图进行各个器件的连接,REF_Ref73385679\h图4.1为系统的原理图。在连接中要注意串口的分类,管脚的具体作用以及实现的功能.图4.SEQ_图\*ARABIC\s11系统原理图在系统设计好后,按照系统原理图中的器件连接方式将硬件连接好,硬件部分的整体实物图如REF_Ref73385772\h图4.2所示:图4.SEQ_图\*ARABIC\s12实物连接图在DHT11模块运行起来后,会接收到周围环境的温湿度情况。为DHT11模块在采集温湿度过程中,通过串口调试得到的一些原始的样例数据。如REF_Ref73505949\h图3.8所示:图STYLEREF1\s3.SEQ_图\*ARABIC\s18温湿度采集样例数据液晶显示测试在温湿度数据读取出来后,即刻送给液晶显示。LCD1602显示原理主要使用液晶具备的物理属性,利用电压对其显示区域实施管控,有电就会出现显示,显然在本人使用的液晶模块内部的字符发生存储器(CGROM)之前储存160个点阵字符图形,包括阿拉伯数字等,上述字符都存在固定代码,在得到代码之后,会马上呈现所筹集的信息。如REF_Ref73385794\h图4.3所示:图STYLEREF1\s5.SEQ_图\*ARABIC\s13液晶屏幕显示样式在显示中运用不断更新的温湿度来动态刷新屏幕,使得数据不断更新,由于人眼的视觉会有一定的视觉暂留现象,所以只要屏幕的刷新频率大于人体的视觉残留情况,那么人们看到的就是静止显示跳动数字的温湿度。图4-4为实际操作中液晶屏幕上显示的温湿度格式样式。ESP8266传送信息测试在整个通信过程中,esp8266是WIFI热点,AT指令在互联互通中充当快递员,过程时期遵循TCP/IP协议,手机作为客户端,在之前通过电脑,设置好申请端口即IP地址,打开电源后,执行TA指令,在此之前选好了WIFI的应用模式是AP模式,在单片机采集好温湿度后,便给ESP8266信号,ESP8266便对数据用TA指令进行处理,包装传送给手机APP。PE终端接收数据实现基于intelliJIDEA语言,在Linux,MacOSX,Windows软件工具上,读取JAVA语言程序,通过WLAN的连接,打开APP,接受TA指令,数据进行解析,将BCD二进制码转化为我们所熟知的十进制码,然后在系统框体中显示,显示实时的温湿度,同时在第一次连接时,会自动回馈预设温湿度阈值,温度40,湿度80.其中新接收来的数据不断更新代替原来的数据。如REF_Ref73385889\h图4.4所示:图4.SEQ_图\*ARABIC\s14获取时间PE终端新阈值设置通过ESP8266这个热点使单片机和手机进行通信,通过手机APP可以设置新的温湿度阈值,把阈值信息转化为TA指令,利用热点ESP8266传送给单片机,在将其转化为数据代码则会使得LCD1602显示新阈值,在温湿度过高时,随之出现警报,APP所显示的实际温度会显示红色进行提示。如REF_Ref73386003\h图4.5所示:图4.SEQ_图\*ARABIC\s15变化图然后是硬件部分的编程,将各个器件、模块的功能提前统一设计好,进行逐个功能模块的编程,最后再结合手机APP,看整体系统的实现情况。理论与现实总是拥有一定差距的,设想的部分可能在实现中会有所变化,这就需要进行系统测试。如图4.8软件界面调试,在在完成软件的编写之后要进行测试,需要将程序下载到单片机上。在WIFI串口调试助手的帮助下,将通信接口进行合理设置,同时也要对服务器IP与协议类型等进行合理设置。这时在WIF串口调试助手的应用下,将温度信息进行发送、显示。当温度与LCD液晶显示器上的值一样时,说明在该系统能够正常运行,温度传感器上的数据能够正常显示。通过测试,对相关数据信息的分析发现,本文的设计符合相关要求,在对温度进行采集过程中,能保持良好的稳定性与精准度。图4.SEQ_图\*ARABIC\s18软件界面调试截图硬件仿真测试系统通过DHT11温湿度传感器感应周围的环境的温度和湿度,通过单片机对采集到的数据进行读取处理,经过LCD1602显示模块实时显示温湿度数据,同时可以通过按键模块对温湿度报警上、下限值进行设定。当DHT11读取的温湿度值不再设定范围内时,报警模块LED灯指示故障信息,同时蜂鸣器报警;当温湿度读取数据正常后,LED灯熄灭,蜂鸣器关闭。如REF_Ref73506220\h图4.6所示。图4.SEQ_图\*ARABIC\s16电路仿真图系统实现在连接后,需要对一些关键器件进行提前调试,避免接触不良导致短路或器件坏掉等情况。对传感器,蜂鸣器、变压器,ESP8266进提前检查,对液晶、单片机,APP进行调试,检测是否可以正常运行。然后在程序编写中,对逐个器件的功能进行编程时,一个一个功能进行调试,在编好一个功能的程序后就先烧录进单片机进行检查,可以借用万用表进行电压的检测,也可以用串口助手接收字节检查发送、接收功能是否正常。在调试APP与单片机的通信是最为重要的,是本毕设中顺利进行的重点,仅仅用android开发平台上面的模拟器来测试,运行速度经过测试太缓慢,同时容易出现数据丢失,因此我直接选择在真实的手机上进行所有程序的调试,第一设定本人android手机是USB调试的模式,然后用USB连接好手机和计算机,当然在这一步就要安装手机得出驱动程序,在确定了连接成功即检测到达手机设备,此后设定应用程序是对应的调试状态,再执行真机的调试操作,在调试时,我们可以通过计算机Androidstudio的DDMS,搭建起IDE与其测试终端的链接,然而不同应用具有单独的端口监听调试数据,此刻DDMS能高效的监测测试终端的所有连接状况,所以,在出现新测试终端连接之后,其会查找到终端ID信息,此外利用abd创建调试器,在这过程中,如果出现错误就注意要重启abd工具,我之前就遇到过这样的情况,进而发射指令随之完成预期测试目标,在监听时期,查看首个终端APP进程的端口是8200,此时APP进程会分配8201,后面一次顺序类推,在硬件部分整体测试接收时间情况良好时,打开手机WLAN,手动连接ESP8266的热点与我们平时连接的差不多,后面打开APP就会通过手机反馈回温湿度阈值,温度40,湿度80,当然可以更改设置新的阈值,但是传输时会发现有最多两秒的延时,出现温湿度超过阈值,手机收到的值会变红报警,此时即可通过热点连接监控器,观察周围具体实际情况。在整体硬件部分连接,编程结束后,进行整体的系统调试,检测硬件部分是否正常。随后再对PE终端的软件进行调试合格后,将整体的系统运行起来,记录时间,观察整体现象,来调试功能。测试情况良好,硬件部分可以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论