基于NB-IoT与STM32F103C8T6的智能家居环境监测系统设计

基于NB-IoT与STM32F103C8T6的智能家居环境监测系统设计

技术说明:本文围绕NB-IoT智能家居环境监测系统进行嵌入式开发复盘,重点整理STM32F103C8T6主控、温湿度与PM2.5和二氧化碳传感器、OLED显示、环境调节、NB-IoT通信及APP远程监控等技术要点。内容用于物联网终端、传感器采集和远程环境监测方法交流,不涉及产品推广或商业宣传。

摘 要:近年来人们对家居环境质量重视程度日益加深,全面、实时、准确地监测家居环境的需求变得愈发迫切。因此,深入探索家居智能环境监测系统的可行性,将为家居版智能环境监测系统的未来发展奠定坚实的基础。本论文介绍了一种基于STM32F103C8T6芯片的智能家居环境监测系统,该系统利用传感器采集家居环境中的温湿度、二氧化碳浓度、PM2.5浓度及光照强度数据;利用NB-IoT通信将数据输出到上机位;用户可随时在APP端监控家居环境状况,并可选择自动或手动方式进行调节。经过对系统软硬件的优化,家居环境监测系统实现了稳定运行,能够实时且精确地采集并上传家居环境相关数据,为用户提供了远程监测与调节家居环境的便利,确保了家居环境监测的可靠性。

关键词:环境监测;NB-IoT;传感器;实时监测;远程监控

Design and realization of intelligent monitoring system based on NB-IoT and microcontroller

Author: Huang Qiuying

Instructor: Huang Ran

Abstract:In recent years, people have been increasingly deepening the degree of home, and the demand for comprehensive, real-time and accurate monitoring of the home has become more and more urgent. Therefore, in-depth exploration of the feasibility of the home intelligent monitoring system will lay a solid foundation for the future of the home version of the intelligent monitoring system. This thesis introduces a smart home monitoring system based on STM32F103C8T6 chip, which utilizes sensors to collect temperature and humidity, carbon dioxide concentration, PM2.5 concentration, and light intensity data in the home; outputs the data to the uploading location using NB-IoT communication; and allows users to monitor the home conditions at any time on the APP side, and choose to make adjustments automatically or manually. After the optimization of the system hardware and software, the home monitoring system achieves stable operation, and is able to collect and upload home-related data in real time and accurately, providing users with the convenience of remote monitoring and adjusting their homes, and ensuring the reliability of home monitoring.

Translated with DeepL.com (free version)Keywords:monitoring; NB-IoT; sensor; real-time monitoring; remote monitoring

第一章 绪论

研究背景及意义

随着人们健康意识的提升和智能家居的普及,家居环境监测系统越来越受到欢迎,不但能为住户提供舒适的家居环境,而且能有效预防PM2.5浓度异常所带来的风险等。如今,智能家居系统已经从单一的设备控制扩展到环境监测和管理,家居环境监测系统能够实时地检测室内的温度、湿度、二氧化碳水平、PM2.5浓度以及光照强度。然而,传统的家居环境监测系统存在功耗高、通信距离有限、网络不稳定等问题[1],限制了其在智能家居系统中的应用。基于NB-IoT与单片机的智能环境监测系统的设计与实现,已成为近年来物联网技术迅猛发展背景下一个备受关注的研究领域。

NB-IoT技术作为一种新兴的窄带物联网通信技术,具有低功耗、广覆盖、大连接等优点[2],非常适用于智能家居环境监测系统。将NB-IoT技术应用到环境监测系统,可以有效提高系统的稳定性和可靠性,实现对家居环境的实时监测和智能控制。借助先进技术,环境监测系统得到更好的提升,变得越来越智能,能够更好地适应现代环境管理的需求,还可以减少成本,提高资源利用效率。此外NB-IoT技术正在以迅猛的速度发展,相比3G网络、4G网络、GPRS、Wifi技术、LoRa技术、Zigbee技术等[3],它覆盖广、连接多、速率低、成本低、功耗低、架构优的特点更为。因此,基于NB-IoT技术的环境监测系统也应运而生,从城市空气质量监测、农田环境信息监测、室内环境质量监控到楼宇环境管理,乃至输电线路环境气象监测,智能环境监测系统都能发挥重要作用。这些系统不仅提高了环境监测的自动化和智能化水平,也为人们提供了更加舒适、安全的生活和工作环境。环境监测系统在对环境质量进行监测、分析、治理和保护方面扮演着至关重要的角色。采用NB-IoT技术的智能家居环境监测系统有效克服了传统监测方法的局限性,如监测手段单一、布线过程复杂、数据传输能力不足以及操作耗时费力等问题。还可以促进NB-IoT和单片机在环境监测领域的应用探索新的途径和方法,推动物联网技术与环境监测技术的融合与发展。

国内外发展现状

1.2.1 国内发展现状

国内智能家居环境监测系统的发展现状表明,这一领域正处于快速发展阶段,技术不断进步和创新。物联网技术在家居环境监测系统中的应用已经成为主流,不仅提高了系统的智能化水平,还增强了监测的实时性和准确性。近几年来国内传感器技术不断进步,使得室内环境监测系统能够更加精准地检测各种污染物,如甲醛、苯、TVOC、PM2.5、CO₂等,并且检测精度和灵敏度不断提高。随着我国国家政策积极推动环境监测行业的技术发展和设备国产化,如《“十四五”生态环境领域科技创新专项规划》等政策文件,为行业发展提供了良好的政策环境。国内研究不仅关注理论和系统设计,还注重系统的实际应用和推广。例如,有研究基于NB-IoT的高原日光温室环境监测系统,针对高原地区的特殊环境进行了优化,提高了系统的适应性和实用性[4]。国内家居环境监测电器品牌有很多,比如:SHARP夏普、小米科技旗下品牌smartmi智米、绿之源等。

1.2.2 国外发展现状

国外在智能家居环境监测技术方面较为成熟,例如美国的X-10系统和德国的EIB系统等,这些系统功能强大,但由于价格昂贵和安装复杂,在国内应用较少。国外家居环境监测系统已经较为普及,许多产品和技术已经商业化并广泛应用于家庭、学校、医院等室内环境。国外研究则更加注重于技术的创新和优化,如在科技创新采用STM32L系列单片机等技术,设计并实现了一种新型的环境参数监测系统;应用实践通过优化软硬件,提高了环境监测系统的性能和稳定性,实现了远程实时监测。全球室内环境监测市场竞争激烈,主要厂商包括Agilent、Danaher、ThermoFisher、Shimadzu和PerkinElmer等,这些厂商在全球市场占有较大份额。

第二章 系统总体设计方案

2.1 系统设计要求

设计基于NB-IoT技术的智能家居环境监测系统,主要模块有STM32单片机、多种传感器(温湿度、二氧化碳、PM2.5、光照)、OLED显示、蜂鸣器报警、电机散热、加湿器、光照调节、电源和NB-IoT通信模块。该系统以STM32单片机为核心,通过传感器采集家居环境参数等,并通过NB-IoT无线通信模块将采集到的数据上传到上位机,实现自动调节或用户远程控制功能。设计任务如下:

(1)基于STM32微控制器,制定系统总体设计方案。

(2)设计并构建系统所需的硬件电路。

(3)完成系统的软件程序设计任务。

(4)实现环境数据的采集并上传至APP端。

(5)实现在APP端及OLED显示屏实时展示环境数据。

(6)通过APP实现远程监控与自动调节。

2.2 方案论证与选择

2.2.1 主控芯片的选择

方案一:选用STM32F103C8T6。STM32F103C8T6采用的是ARM Cortex-M3处理器,这是一个32位的RISC架构,能够提供高效的处理能力和低功耗操作。该芯片配备了高达192KB的闪存和32KB的SRAM,这为运行复杂的算法和存储大量数据提供了足够的空间[5]。这款芯片提供了多种外设接口,包括USART、SPI、I2C等,方便连接各种传感器和通信模块,如OLED显示屏和NB-IoT模块。

方案二:选用STC89C52。STC89C52单片机的主要结构包括一个ARM7TDMI处理器核心,该核心能够处理复杂的算法和数据[6]。STC89C52是基于8位的8051架构,具有4个8位通用I/O口,共有3个16位定时器/计数器,4个外部中断。

综上所述,选择STM32F103C8T6作为核心部件能够更好地满足智能环境监测系统的功能需求,更加高效地实现本设计各项要求。

2.2.2 显示模块的选择

方案一:选用LCD12864。LCD12864电路结构简单,无需额外的负压和片选信号,程序设计简洁,有效优化了软件。然而,LCD12864的液晶层无法完全密封,而且背光层易出现漏光问题,同时显示色彩较为单一。

方案二:选用OLED。OLED作为一种新型的显示技术,以其出色的对比度、视角宽、响应速度快等特点,成为理想的显示选择。OLED可以清晰地展示各种环境参数的实时数据,为用户提供直观的视觉体验。

综上所述,OLED在色彩表现、视角、响应时间和能效方面优于LCD,故选择OLED显示屏更能满足本设计的需求。

2.2.3 温湿度模块的选择

方案一:选择DHT11。DH11是一款低成本的数字温湿度传感器,它通过单线制串行接口进行通信,具有相对湿度和温度的测量功能,并且每个传感器都经过了精确的校准。该传感器集成了一个电阻式湿度感应元件和一个负温度系数(NTC)温度测量元件,并与一款高性能微控制器相连,从而确保了设备在运行过程中的可靠性和稳定性。

方案二:选择SHT11。SHT11是一款具备高精度、快速响应和出色抗干扰能力的数字式温湿度传感器。然而,它的成本相对较高。

选择DHT11是基于成本效益、足够的测量精度以及较低的功耗需求。

2.2.4 PM2.5模块的选择

PM2.5传感器模块是一种专门设计用于检测大气中悬浮颗粒物浓度的仪器,传感器模块采用光学技术,能够精确地检测到空气中PM2.5的浓度变化,可以实现对环境质量的实时监控。在本设计中选用PM2.5传感器,不仅可以实现对环境质量的实时、准确监测,还能提升系统的数据处理和分析能力,同时具有较好的成本效益比,对于促进环境保护和公共健康具有重要意义。

2.2.5 无线传输模块的选择

方案一:NB-IoT。NB-IoT是一种典型的物联网无线通信技术,因为其本身低功耗和覆盖范围广的特点,被广泛应用于物联网的各个领域。NB-IoT技术是建立在移动蜂窝网络基础之上的,其使用的频段通常为180 kHz。该技术能够无缝集成于UMTS、GSM、LTE等现有网络架构中,实现便捷部署,并且具有较低的成本效益[7]。NB-IoT技术因其设计用于低功耗广域网(LPWAN),具有更低的功耗,适合于电池供电的长期运行设备。

方案二:WiFi。WiFi是一种无线局域网(WLAN)技术,允许电子设备通过无线信号连接到互联网或彼此通信[8]。Wi-Fi技术运作于2.4 GHz或5 GHz的无线频段,其中5 GHz频段不仅提供更高速的数据传输,还减少了潜在的干扰。Wi-Fi常用于家庭、办公室、公共热点区域等,因此设备通常功耗较高,适合于需要高速数据传输且可接入电源的应用场景。

综上所述,选择NB-IoT更能满足本设计要求。

2.3 系统总体设计方案

设计一款基于NB-IoT与单片机的智能家居环境监测系统,该系统集成了NB-IoT BC26网络模块、传感器模块、OLED显示模块、调节模块、电源模块以及上机位。以STM32单片机作为核心,通过传感器采集家居环境的各项参数,并利用NB-IoT无线通信将数据上传至云服务器,从而实现自动调节或用户远程控制的功能。总体设计框图如图2-1所示。

系统的工作流程具体如下:

(1)传感器模块对温度、湿度、二氧化碳浓度、PM2.5浓度及光照强度进行实时监测;

(2)利用NB-IoT无线通信将采集到的数据发送至上位机;

(3)在APP端显示界面和OLED显示屏幕上实时呈现环境数据;

(4)若监测到的数据超出阈值范围,则系统启动蜂鸣器警报,并启动调节系统以维持环境平衡。

(5)APP端远程控制调节。

image_001.png

图2-1系统总体设计框图

第三章 硬件系统设计

3.1 硬件设计方案

基于NB-IoT与单片机的智能家居环境监测系统的硬件电路包括STM32单片机最小系统、OLED显示电路、电源电路、传感器采集电路(温湿度、二氧化碳浓度、PM2.5浓度和光照强度)、NB-IoT通信电路、蜂鸣报警电路、加湿器电路、电机风扇电路以及光照调节电路。硬件系统框图如图3-1所示。

image_002.png

图3-1硬件系统框图

3.2 最小单片机系统

3.2.1 STM32F103C8T6单片机

STM32F103C8T6微控制器集成了ARM Cortex-M3内核,拥有72 MHz的处理速度。该微控制器提供了高达192 KB的闪存和16 KB的SRAM,展现了卓越的计算性能。其性能稳定可靠,能够满足系统实时性需求,特别适合于处理和控制温湿度数据[9]。STM32F103C8T6提供了多种类型的I/O端口,包括通用输入输出端口、模拟输入端口、定时器接口等。单片机端口可以通过软件编程来实现不同的功能,如数据采集、信号处理、通信接口等。STM32F103C8T6单片机首先通过连接到系统中的各种传感器(如温湿度传感器、二氧化碳传感器等)来采集环境数据,采集到的数据被单片机读取并进行初步处理,然后通过内置的NB-IoT模块将数据发送到云平台或用户指定的接收设备[10]。此过程STM32F103C8T6单片机需要执行包括数据采集、数据处理、数据打包以及通过NB-IoT网络发送数据等一系列任务。STM32F103C8T6单片机内部结构如图3-2所示。

image_003.png

图3-2单片机最小系统图

3.2.2 晶振电路

晶振电路的主要功能是产生稳定的时钟信号,为数字电路提供同步的脉冲源。晶体振荡器通过石英晶体的压电效应产生振动,形成电路的振荡频率。单片机的外围器件需要时钟信号来运行,其频率决定了单片机的运行速度。本设计将内置一个X8型号的8MHz高速晶体振荡器,并配备两个20皮法拉德的电容器。同时,为了外部时钟供应,将采用一个X7型号的32.786KHz外部晶振,以及两个12pF的电容器。晶振电路如图3-3所示。

image_004.png

图3-3 晶振电路

3.2.3 复位电路

复位电路的主要作用是确保系统稳定运行,在系统启动时将微控制器重置到一个已知状态,以保证程序能够从正确的地址开始执行。此外,当系统检测到异常情况或需要恢复到初始状态时,复位电路也能提供必要的功能当按下硬件复位按钮时,按键闭合,C6电容器开始充电。随着NRST引脚电压的升高,单片机的电路状态发生改变,其内部时序重置至初始状态。单片机复位电路如图3-4所示。

image_005.png

图3-4复位电路

3.3 传感器模块

3.3.1 温湿度检测模块

温湿度检测模块是智能环境监测系统中的一个关键组成部分,用于实时监测和记录环境中的温湿度。本设计采用DHT11温湿度传感器,DHT11内部自含温湿度校准系数,在采集温湿度数据的过程中会自动进行校准,测试结果准确度极高[11]。温湿度模块由两种主要组件构成,一种是具备湿度感应特性的电阻式元件,另一种是NTC型热敏电阻。温湿度模块能够对环境的温度与湿度进行实时监控,并为系统提供持续的环境数据。DHT11传感器是单线串行接口和四针引脚,集成度高,且功耗低。在信号传输距离为0-20米的范围内,其传输极为稳定,非常适合长期进行室内外温湿度的监测工作[12]。通过与单片机和NB-IoT模块的集成,温湿度检测模块可以成为实现智能环境控制和远程监控的关键工具。温湿度检测电路如图3-5所示。

image_006.png

图3-5温湿度检测电路

3.3.2 PM2.5检测模块

PM2.5传感器是用于检测大气中PM2.5(细颗粒物)浓度的设备,能够输出数字信号,可以与微控制器或数据处理单元的连接。此外,该模块具备实时监测功能,能够持续追踪空气中的PM2.5浓度水平,并向用户提供即时的环境质量信息反馈。PM2.5检测模块如图3-6所示。

image_007.png

图3-6 PM2.5检测电路

3.3.3 二氧化碳监测模块

SGP30传感器能检测室内空气中的二氧化碳浓度,它通过总线与微控制器进行通信,具有4个引脚,分别是电源正VCC、电源地GND、串行地址和数据输入/输出以及串行时钟输入。二氧化碳采集电路如图3-7所示。

image_008.png

图3-7 二氧化碳监测电路

3.3.4 光照采集电路模块

光照采集电路模块的主要作用是测量和记录环境中的光照强度。利用光敏传感器对环境中的光照数据进行采集,并将采集到的数据通过NB-IoT无线通信模块传输至云平台,以便进行深入的分析与监控。该电路模块由一个1K电阻、一个光敏传感器、一个发光二极管和一个100nF电容组成,光照采集电路如图3-8所示。

image_009.png

图3-8 光照采集电路

3.4 环境调节模块

3.4.1 蜂鸣器报警模块

低电平驱动蜂鸣器意味着当控制信号为低电平时,蜂鸣器会发出声音。该设备能够在5毫安的电流下实现持续稳定的运行,即便是在大功率蜂鸣器的情况下,其电流消耗也不会超过30毫安。此外,尽管其体积小巧,却能发出大音量,便于安装使用。因其内部具有无电磁线圈和动圈,因此不必考虑绝缘和漏电的问题,非常安全,特别适合本设计使用[13]。由一个1K电阻、一个三极管和一个低电平驱动蜂鸣器组成报警电路,如图3-9所示。

image_010.png

图3-9 蜂鸣器报警电路

3.4.2 电机散热模块

电机散热模块通常包括电机、风扇。这些组件共同工作以提高电机的散热效率,确保电机在长时间运行或高负载下能够稳定工作。当环境温度超过阈值时,电机散热模块将会启动来帮助环境散热,降低温度。电机风扇模块电路由两个4.7K电阻、一个二极管、一个三极管和一个直流电机小风扇如图3-10所示。

image_011.png

图3-10 电机散热电路

3.4.3 加湿器模块

加湿器模块利用雾化片,雾化片(也称为超声波雾化片或振动雾化片)是加湿器中的一种常见部件,将水转化为极细的雾状颗粒,以增加空气的湿度。当环境湿度低于阈值时,将启动加湿器调节环境湿度。加湿器电路两个4.7K电阻、一个二极管、一个三极管、一个电机和雾化片如图3-11所示。

image_012.png

图3-11加湿器电路

3.4.4 光照调节模块

光照调节模块使用LED灯作为光源,LED灯具有很多优势,包括节能、长寿命、快速响应和可调光性。可以通过NB-IoT模块实现远程控制LED,确保光照强度在阈值范围内。光照调节电路由一个1K电阻和一个发光二极管组成,如图3-12所示。

image_013.png

图3-12光照调节电路

3.5 无线传输模块

NB-IoT BC26模块是一种基于窄带物联网(NB-IoT)技术的通信模块,其具有超低功耗、安全性强、稳定可靠、低成本的优势,使用MQTT协议与云端互传数据[14]。NB-IoT技术是3GPP为支持低功耗广域网(LPWAN)而引入的一种蜂窝式无线接入技术,旨在满足大规模机器类型通信(mMTC)的需求。BC26模块利用了NB-IoT的核心优势,低功耗、低成本和低数据速率传输,使其非常适合于需要长期运行在恶劣环境下的设备,如智能水表、电表、气表等。此外,该模块的运作流程涉及单片机通过串行端口向模块发送AT指令,模块在接收到指令后与云平台进行数据交换,从而实现数据的远程监控与管理。本设计将NB-IoT BC26模块集成到智能环境监测系统中,可以实现对环境参数的实时监测和远程管理,提高系统的智能化和自动化水平。NB-IoT BC26模块如图3-13所示。

image_014.png

图3-13 NB-IoT模块

3.6 OLED显示模块

基于NB-IoT与单片机的智能家居环境监测系统的显示模块采用0.96寸的OLED屏实时显示采集到的环境温湿度、二氧化碳浓度、PM2.5浓度和光照强度数值。OLED显示电路如图3-14所示。

image_015.png

图3-14 OLED显示电路

3.7 电源稳压模块

电源稳压模块的功能是将输入电源的电压转换并稳定为特定的输出电压值,确保单片机系统能够得到恒定的电压供应。该模块电路具有稳定电压功能、过载保护功能、短路保护功能和过热保护功能。在本设计中电源稳压模块是不可或缺的组件,它为系统提供了一个稳定、可靠和高效的电源环境,保障了整个系统的正常运行和长期稳定性。该电源稳压电路由一个输出电压为3.3V的正向低压降稳压器、两个10uF电容和两个100nF电容构成,如图3-15所示。

image_016.png

图3-15电源稳压电路

3.8 电源指示电路

电源指示电路通过LED显示系统是否接通电源,以及是否处于工作状态。当系统无法正常启动或运行时,电源指示灯的状态可以帮助用户快速判断问题是否与电源供应有关。在进行用户交互时,电源指示电路可以提供即时的视觉反馈,让用户知道他们的操作(如开关机)已被系统接受和执行。在进行远程监控时,电源指示电路可以作为系统健康状况的一个简单指示,帮助远程用户了解设备是否正常上电,提供更友好的用户体验。电源指示电路如图3-16所示。

image_017.png

图3-16电源指示电路

系统软件设计

软件总体设计方案是对软件系统进行规划和设计,包括系统的整体结构、功能模块、数据流程和交互界面设计等方面。智能环境监测系统利用NB-IoT技术实现远程环境数据的检测和管理,该系统包含智能环境监测设备和上位机两个主要部分。软件设计上,开发嵌入式固件,实现与NB-IoT模组的通信协议、传感器数据采集和处理、本地存储和数据传输等功能。上位机方面,实现数据接收与存储、数据处理与分析、可视化界面。在系统集成与测试阶段,确保数据传输和功能交互的稳定性与正确性,并进行系统级测试以确保性能、可靠性和安全性。该系统为用户提供便捷、智能的环境监测与调节服务。设计中的部分程序在附录中。

4.1 软件设计方案

软件程序初始化后,传感器模块采集温度、湿度、二氧化碳浓度、PM2.5浓度和光照强度数据。传感器模块通过数据传输引脚将数据传输至STM32单片机,单片机接收到数据后,通过NB-IoT通信将数据传送至APP端,并在OLED显示屏展示。采集到的数据将与设定阈值进行对比,当监测到的数据超出阈值范围,系统将自动启动调节功能,或用户通过APP端实现远程控制进行调节。用户可在APP端随时查看家居环境状况,鉴于环境质量持续变动,主控界面能够实时展示相关数据。本系统配置的传感器将每分钟采集一次数据,并执行一次数据传输与存储更新。本设计软件流程如下图4-1所示。

image_018.png

图4-1 设计软件流程图

4.2 模块程序设计

4.2.1 通信模块程序设计

NB-IoT通信模块负责与NB-IoT模块的通信,发送和接收数据,通过STM32单片机的串口向模块发送开关机控制指令。当工作启动时,NB-IoT模块会接收开机脉冲信号,通过串口接收来自单片机的数据传输。接收到数据后,NB-IoT模块负责将这些数据上传至上位机,等待并接收来自上位机的指令,通过串口将指令转发给单片机。完成指令的传递后,NB-IoT模块接收关机脉冲信号,随即结束其工作流程。NB-IoT网络模块的工作流程如图4-2所示。

image_019.png

图4-2 通信模块程序流程图

4.2.2 报警模块程序设计

报警电路模块的工作流程如图4-3中所示,程序启动时会初始化,传感器检测环境数据后发送给单片机处理。单片机分析数据并进行阈值判断,若数据超过阈值,将触发蜂鸣报警器,随即启动调节模块。若采集到的环境参数中没有超过阈值,则报警系统将不启动,结束本次程序。在整个过程中,传感器始终保持运行状态,不受报警系统启动或关闭的影响。报警模块程序流程如图4-3所示。

image_020.png

图4-3 报警模块程序流程图

4.2.3 温湿度采集与调节程序设计

系统首先进行初始化,DHT11传感器采集环境温湿度数据,将数据传送给单片机处理后,通过OLED屏显示当前环境温湿度。若检测的到温湿度超过阈值范围,则系统启动蜂鸣器报警,随即进行温湿度调节;若采集到的温湿度未超过阈值范围,则继续循环该程序。温湿度程序流程图如图4-4所示。

image_021.png

图4-4 温湿度采集程序流程图

4.2.4 二氧化碳浓度采集程序设计

在进行二氧化碳浓度的检测过程中,首先进行系统初始化,SGP30传感器采集家居环境中的二氧化碳浓度,随后将采集到的数据传输至单片机进行处理。处理后的数据将通过OLED液晶显示屏或APP界面直观地呈现给用户。在数据监控过程中,系统将持续监测当前的二氧化碳浓度,并与设定的阈值进行比较,当检测到的二氧化碳浓度未超过阈值,则系统将继续循环执行上述测量和显示过程,确保环境持续处于稳定状态。反之,检测到二氧化碳浓度超过设定阈值,系统将立即启动报警机制,并通过控制风扇等设备调节室内二氧化碳浓度。二氧化碳浓度采集程序流程图如图4-5所示。

image_022.png

图4-5二氧化碳浓度采集程序流程图

4.2.5 PM2.5浓度采集程序设计

在PM2.5浓度检测的过程中,首先要对系统进行初始化,再通过PM2.5传感器对当前环境的PM2.5浓度进行采集,将采集所得数据传送到单片机上进行数据处理,然后通过OLED液晶显示屏或APP采集界面显示当前PM2.5浓度,若PM2.5未超过设定阈值,则循环上一过程。若浓度超过设定阈值,则启动报警系统,开启风扇调节PM2.5浓度。PM2.5采集程序流程图如图4-6所示。

image_023.png

图4-6 PM2.5浓度采集程序流程图

4.2.6 光照强度采集与调节程序设计

在光照强度检测的过程中,首先要对系统进行初始化。之后通过光照传感器对当前的环境光照进行采集,将所得信号传送到单片机上进行数据处理,然后通过OLED液晶显示屏或APP采集界面显示当前光照强度,若光照强度在阈值范围,则循环上一过程。若光照强度超出阈值范围,则自动开灯调节光照强度。光照强度采集程序流程图如图4-7所示。

image_024.png

图4-7 光照强度采集程序流程图

4.3 APP端

使用电脑模拟器架构手机智能环境监测系统APP端,在电脑上下载并安装雷电模拟器9软件,启动雷电模拟器9,创建一个新的模拟器实例,选择适合的设备型号和Android版本。准备APP开发环境,设计用户界面,包括数据展示、设备控制等界面。使用MQTT协议与平台建立连接,实现数据的上报和命令的接收。编写智能环境监测系统APP的业务逻辑,包括用户交互、分析数据、数据展示、设备控制等。运行APP,测试其功能是否正常,包括能否与硬件连接、数据阈值设置、APP上实时数据与OLED显示是否一致、设备控制是否灵敏准确、历史数据查看等。

打开智能环境监测系统APP,首先是用户登录界面如图4-8所示。

image_025.png

图4-8 登录界面

APP首页界面会显示APP与硬件的连接情况,首页面有阈值配置、实时数据、控制中心和历史数据功能,如图4-9所示。

image_026.png

图4-9 首页界面

在首页界面点击选择阈值配置即可设置家居环境温度、湿度、二氧化碳、光照和PM2.5的最小值与最大值,如图4-10所示。

image_027.png

图4-10 阈值配置

在首页界面点击选择实时数据即可查看当前家居环境温度、湿度、二氧化碳、光照和PM2.5值,如图4-11所示。

image_028.jpeg

图4-11 实时数据

用户可在主页界面上点击以进入控制中心,可以选择自动模式或手动模式。若选择自动模式,当系统检测到超出阈值范围的环境数据时,将自动启动调节模块,进行调节;若选择手动模式时,可直接选择需要调节的功能,如:打开灯、打开风扇、打开加湿器或关闭等功能。如图4-12所示。

image_029.png

图4-12 控制中心

在首页界面点击选择历史数据,即可查看之前系统采集到的各环境参数数据,如图4-13所示为环境温度的历史数据。

image_030.jpeg

图4-13 历史数据

调试与测试

设计一款基于NB-IoT与单片机的智能环境监测系统,在进行了方案论证之后,进行了软硬件的设计调试。使用嘉立创软件进行硬件设计部分原理图(附录一)的绘制,并根据原理图生成PCB电路(附录一),再印刷电路板。对系统的模块功能进行调试,通过硬件调试判断电路原理图的合理性以及测试硬件元器件;系统以STM32芯片作为载体,使用keil 5软件进行程序编写。进入主程序时,单片机接收各种传感器数据并进行处理,将数据通过MQTT协议传到云平台。当全部测试修改完成后可查看实验结果。

5.1 硬件调试

基于NB-IoT技术与单片机的智能家居环境监测系统的硬件总体设计方案确定后,使用嘉立创软件进行原理图和PCB图的绘制。原理图绘制时,首先要确定元器件的型号和封装形式,再进行电路连接;原理图绘制完成后直接生成PCB图,将所有元器件按照封装要求放置后连接进行布线。注意电源走线粗细,合理选择焊盘和过孔,遵循布线规则。完成各部分焊接后进行调试,确保芯片和元器件正常工作,直至所有模块焊接完毕。在确保所有硬件电路连接无误后,给系统通电。通电时,仔细观察电路是否有烧毁的迹象,用手触摸芯片检查是否有异常高温,随后使用万用表检测电源输出电压以及各芯片的电压水平是否正常,确认一切正常后,再进行软件调试。智能环境监测系统的实物如图5-1所示。

image_031.jpeg

图5-1 硬件实物图

5.2 软件调试

智能环境监测系统的软件调试是实现其功能的关键步骤。该过程遵循模块化设计原则,将每个模块的功能细分为多个子程序,根据需求,实现温度、湿度、二氧化碳浓度、PM2.5浓度以及光照强度的采集、显示和NB-IoT传输功能,并对这些参数进行调节,构成了主程序、功能模块程序以及相应的头文件。若遇到编译错误,则返回至程序代码中定位相应的错误信息,修正完毕后继续进行编译和链接过程,直至编译过程无误。在完成每个模块的程序代码编写后,需检查模块间的信号传递是否正常,并确保数据传输无误。经过反复的修改与调试,编程代码达到了0错误、0警告的完美状态。如图5-1所示。

image_032.png

图5-1 程序编译结果

5.3 测试结果

通过电源供电运行后,用户可查看液晶显示屏(图5-2所示)或APP实时数据(图5-3所示)显示名称、温湿度、二氧化碳、PM2.5和光照值,APP端显示数据符合当前环境实际情况,说明系统能够正常工作。

image_033.jpeg

图5-2 液晶显示屏显示实时数据

image_034.jpeg

图5-3 APP界面显示实时数据

为了确保各个模块在监测和调节功能方面能够正常运作,对各项参数的阈值进行了细致的设定。设定的详细参数以及相应的测试结果已经在表5-1中进行了展示。在实际的测试过程中,观察到以下情况:当温度参数显示异常,而其他参数均处于正常范围时,风扇会正常启动,以降低当前环境的温度;当湿度参数显示异常,其他参数保持正常时,加湿器会正常启动,以增加当前环境的湿度;当二氧化碳浓度参数显示异常,其他参数正常时,风扇会正常启动,以改善当前环境的通风状况降低二氧化碳浓度;当光照强度参数显示异常,其他参数正常时,小灯会正常亮起,以提供所需的照明。经过一系列的测试,确认本系统中的各个监测与调节模块均能够满足设计要求,确保环境参数的稳定与适宜。

表5-1 参数设置及测试

测试项目环境参数正常阈值设置异常参数测试结果
温度监测与调节温度:0-16℃
湿度:40-60%
CO2浓度:400-800ppm
光照强度:20-300%
33.1℃电风扇正常启动进行降温
湿度监测与调节温度:18-36℃
湿度:70%-100%
CO2浓度:400-800ppm
光照强度:20-300%
65%加湿器正常启动进行加湿
CO2浓度监测与调节温度:18-36℃
湿度:40-60%
CO2浓度:0-500ppm
光照强度:20-300%
728ppm电风扇正常启动进行通风
光照监测与调节温度:18-36℃
湿度:40-60%
CO2浓度:400-800ppm
光照强度:10-100%
8%小灯正常亮起进行照明

总结

本论文提出了一种应用于家居的智能环境监测系统,实现对家居环境质量进行监测,通过NB-IoT网络将环境温湿度、二氧化碳浓度、PM2.5浓度、光照强度等信息上传到云平台,对环境监测进行实时监控与调节,为家居环境监测提供有力保障。绪论部分概述了智能家居环境监测系统的研究背景及其重要性,并回顾了该系统国内外的发展历程,为未来的发展提供参考。系统总体设计方案详细说明了系统设计要求和硬件选择,强调了硬件在满足功能需求时如何减少资源浪费。硬件系统设计部分解释了各模块的功能和电路组成。系统软件设计部分,分析了系统特点和功能,并用Keil uVision5编写程序。最后一个章节讨论了系统调试和测试,目的是优化和完善系统。本系统实现了以下功能:

(1)实现对家居环境中温湿度、二氧化碳浓度、PM2.5浓度和光照强度的实时监测;

(2)利用NB-IoT技术将采集到的数据进行远程传输;

(3)使用APP端实时查看家居监测数据,方便用户远程监测

(4)数据不在阈值范围时,启动报警功能

(5)实现系统自动调节或用户远程调节功能

在本次设计与实现的基于NB-IoT和单片机的智能家居环境监测系统项目中,我深刻领悟了物联网技术在环境监测领域的巨大应用潜力。在设计的过程中,我不仅掌握了NB-IoT通信原理及单片机编程技术,还提升了实践操作技能和问题解决技巧。面对项目设计和调试阶段出现的技术挑战,我学会了如何进行资料检索、问题分析,并探索出创新的解决策略。

参考文献

陈淡宁. 基于物联网的智能家居环境监测系统的研究[D]. 吉林大学, 2014.

周波,朱福顺.基于NB-IoT的城市环境综合监控系统的研究与设计[J].信息通信,2018,No.181(01):104-105..

聂珲,陈海峰,周豪.基于NB-IoT的环境监测系统[J].实验技术与管理,2020,37(05)

肖杨,严李强,宋赫等.基于NB-IoT的高原日光温室环境监测系统的设计与实现[J].机电工程技术,2022,51(03):155-160.

王勋,陶铭.基于STM32的车间环境质量监测系统设计与实现[J].计算机时代,2022,(02):36-38.DOI:10.16644/j.cnki.cn33-1094/tp.2022.02.010.

汤真福,潘运丹,王廷华.基于STM32单片机的环境监测仪的设计与研究[J].电气自动化,2019,41(01):85-87+98..

王静. 基于STC89C52单片机的智能家居监测器设计与实现方案. 2022-01-10

杨璐璐. 基于STM32的家庭环境监测与控制系统设计[D].天津科技大学,2019.

马博经,张慧玲,俞丙威,等. 基于STM32的高校电气实验室温湿度监测系统设计 [J]. 电子制作, 2024, 32 (04): 24-27. DOI:10.16589/j.cnki.cn11-3571/tn.2024.04.010.

王灿.基于云平台的物联网远程监控系统研究[D].华中科技大学,2015.

巩银苗,鲁西坤,景旭,宋继超. 基于单片机的仓库温湿度监控系统的设计[J]. 安阳工学院电子信息与电气工程学院, 2018.

陈维娜,杨忠,顾姗姗,唐玉娟,王逸之. 基于NBIoT技术的智能农业环境监测系统设计[J]. 中国农机化学报, 2023.

王洪生. 基于单片机与传感器的智能家居环境监测系统设计[J]. [1]硅湖职业技术学院机电工程学院, 2020.

谭汶易.基于NB-IoT的室内环境监测和报警系统[J].科技与创新,2021,(12):172-173.DOI:10.15913/j.cnki.kjycx.2021.12.072.

致 谢

花开花落万物道,聚散离别终有时。感谢学校感谢导师感谢自己,一路经历上终有学习,近二十年的校园学习生涯已经接近尾声,完成这篇论文就证明即将要踏入社会了。

首先感谢母校,给我学习的机会,不仅让我收获了扎实的知识且教会了我许多道理,祝母校越来越好。其次感谢我的导师在我论文中给予我很多的指导与建议,在我迷茫时指引我研究的方向给我肯定且耐心指导我,也在生活上教会我许多的道理,希望我的导师在未来的路上前途无量,职业道路一片光明,最后还要感谢学院的老师们一直以来的关心和教诲,让我成功完成了青春的蜕变,变成了更好的自己,感谢你们,你们辛苦了。

感谢我的同学们大学期间对我的帮助,有句话叫做“山河不足重,重在遇知己”,感谢舍友们和好朋友对我的包容,在我迷茫时开导我,何其有幸一起并进。在我低谷时总能给我一些温暖的力量,是她们让我从一位内向不善于表达的女孩变成了现在自信大方的我。是她们让我的大学生活变得丰富多彩,是她们让我觉得宿舍也有家的温暖。那就祝我们在未来的路上都会开满鲜花,奔赴热爱的人生。

最后感谢我的父母在我二十余年里对我的培养以及学业上的支持。遇到困难的时候总是第一个支持鼓励我的人,引导我前进的方向。父母是我学业路上最大的底气,是家给予了我安全感,生活的偏爱,学习路上的鼓励,父母把我保护得很好,让我相信世界是开满花的。

去读书去爬山,去看世间美好的风景,慢慢来慢慢相遇吧。感谢自己没有在安逸的生活中迷失了自我,感谢自己遇到困难时的勇敢,感谢自己愿意-步一步地进步,感谢自己愿意保持自己的热爱奔赴下一个山河,关关难过关关过,前路漫漫且灿灿。

未来无限可能,想要的靠自己去争取,奋勇前行,不忘初心!

附 录

附录一:硬件原理图和PCB

image_035.png

image_036.png

附录二:硬件实物图

image_037.jpeg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代论文网课招代理

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值