基于STM32的多功能家庭智能安防系统(支持资料参考_相关定制)
摘 要
随着经济飞速发展,科技水平不断创新提高,人工智能和物联网技术的越来越成熟,智能系统成为了人们的日常生活中的新选择。然而现代化的生活方式也注定了新的智能安防系统已经渐渐出现,为了加强家庭环境安全系数的智能安防系统。本文设计了一种基于STM32的家庭智能安防系统,方便人们家中常用。
本文首先对家庭安防系统在国内外的发展状况进行了比较,明确了本研究的主要内容和设计指标。本文提出了基于STM32的嵌入式系统,采用OV2640摄像头对实时家庭环境进行实时监控,采用火焰传感器、MQ-2烟雾传感器、红外传感器模块实现了实时烟雾浓度,可燃性气体浓度采集并显示、火焰检测、红外检测的功能,其次结合APP的设计实现远程显示监控出现异常报警提醒的功能。
本文通过阐明对家庭智能安防系统的硬件构成、软件设计、测试方案设计等,并自主搭建了系统的测试平台。测试结果表明:手机App可以远程获取摄像头采集的视频监控信息,接收室内传感器采集的各种信息,有异常情况可以实现报警提醒。经过测试系统的一系列测试,顺利的验证了本文基于STM32的多功能家庭智能安防系统设计的可行性和安全性。
关键词:嵌入式系统,物联网技术,传感器数据检测,实时远程监控,智能安防系统
ABSTRACT
With the rapid development of the economy, the level of technology continues to innovate and improve, artificial intelligence and Internet of Things technology is becoming more and more mature, intelligent systems have become a new choice in people's daily lives. However, the modern way of life is also destined to new intelligent security systems have gradually emerged, in order to strengthen the home environment security factor of the intelligent security system. This paper designs an STM32-based home intelligent security system to facilitate the common use of people at home.
This paper first compares the development status of home security systems at home and abroad, and clarifies the main content and design indicators of this study. This paper proposes an embedded system based on STM32, using OV2640 camera for real-time monitoring of real-time home environment, using flame sensor, MQ-2 smoke sensor, infrared sensor module to achieve real-time smoke concentration, combustible gas concentration collection and display, flame detection, infrared detection functions, followed by the combination of APP design to achieve remote display monitoring of abnormal alarm Reminder function.
This paper illustrates the hardware composition, software design and test program design of the home intelligent security system, and builds the test platform of the system independently. The test results show that: the cell phone app can remotely obtain the video monitoring information collected by the camera, receive a variety of information collected by the indoor sensors, and alarm alerts can be realized in case of abnormalities. After a series of tests on the test system, it successfully verifies the feasibility and safety of this paper's STM32-based multifunctional home intelligent security system design, which has a certain reference value in the intelligent security system industry.
KEY WORDS: Embedded systems, IoT technology, sensor data detection, real-time remote monitoring, intelligent security systems
目 录
3.2.1 STM32F103C8T6芯片的GPIO扩展接口电路
3.2.2 STM32F103C8T6与系统其它子模块的硬件电路连接
第1章 绪论
本章主要对基于STM32的多功能家庭智能安防系统设计的研究背景及意义、国内外研究现状进行了简单的阐述,同时对论文的主要研究内容和章节安排进行了概述。
1.1 研究背景及意义
当前社会中,物联网发展迅速。与互联网相比,物联网的解决问题的范围相对较小[1]。如果互联网的解决范围是一千米,那么物联网的解决范围只有一百米。然而,即使在这一百米的范围内,也有无数的“窥视者”在等待机会。 物联网行业已将家居市场作为主要渗透和发展对象,这已经成为各大物联网企业公司的热门关注点[2]。 随着物联网的加速发展和政府的互联网+政策引导[3],智能家庭将会越来越局域化,进一步变成家居生活环境的物联网。然而,智能家庭系统内部连接通信的问题仍然是现代智能家庭领域的难点之一。此外,中国智能家庭产品市场正在掀起一股未来智能家庭安防的发展潮流,因此,能否趁势而为,分得这块智能家庭安防市场的一杯羹,将成为智能家庭安防企业的首要考虑[4]。
目前建筑领域已经全面运用现代化科学技术,实现健康、智慧、可持续发展的同时,随着社会的发展,经济水平不断提高,生活水平也越来越好,人们对美好生活的向往使得对于住宅再也不像改革开放前[5-][6],只是局限于居住的需求,在安全性以及多功能性上也提出了更高的需求。在日常生活中,家庭是与要与外界社会进行交互、交流的单元,不是独立的个体。如何快速、有效构建一套防火、防盗的家庭安防系统便显得尤为关键[7]。通过在人们家居生活中运用该系统可以显著提升家居艺术性、安全性、个性化及智慧性等。而智能家居中比较关键内容便是能对家居设备进行远程监控[8],具有便捷性以及安全性等诸多优势。对比常规家居,智能家居拥有传统家居功能的而同时,还有智慧家电、网络通信及远程控制等功能[9-][10]。智能家居是当前一种新型产业,还处在摸索发展阶段,并未形成成熟的市场消费观念。然而在不断推广与普及智能家居市场下,消费者对于家居的操作习惯在逐渐培养,还需要很长一段时间去适应[4]2。
目前大多数家居安防系统受到技术的局限性造成功能不全面,仅能防护常见的一两种灾害,难以实现全面监控与防护[11]。报警系统作为传统安防系统的主要部分,各灾害报警系统间具有独立性,也时常会出现漏报、误报警现象,且大部分业主无法及时收到报警信息,导致最佳处危机时间被耽误,造成严重的经济损失,严重威胁人身安全。首先,在我国的学术研究领域内,关于传感器网络的学术研究内容众多,关于家庭安全防护的学术研究内容也繁多,但是将两者联系在一起进行研究的相对较少[12]。因此,该系统设计为设计与实现基于传感器网络的家庭安防系统,可以帮助人们无忧的解决家庭安防问题,并且,虽然我国社会整体治安环境良好,但是在家居方面还是存在一些安全隐患,一方面来自电器使用的不当,一方面也来自社会的不稳定,继而家庭安防系统开始兴起,诸如小米、美的、阿里巴巴等企业均开始涉及到家庭安防系统的设计,并取得了一定成果[13]。该系统设计以基于传感器网络的家庭安防系统的设计与实现为题,基于当前我国家庭安防的切实所需,从总体方案、硬件和软件三个方面进行了设计,具备火灾预警、手机远程控制、实时检测报警等家庭安全防护功能[14-][15]。因此,在提升我国居民家居安全防护水平,提升居民生活质量上具有一定给的现实意义[4]3。
1.2 国内外研究现状
目前国内外众多研究学者对家庭智能安防系统做了大量研究,并取得了一定研究成果,本节将从国外研究现状、国内研究现状两部分进行叙述。
1.2.1国外研究现状
家庭是构成社会的主要单元,未来家庭中各种各样的家用电器、数据采集模块成为组成家庭内部网络的核心,利用家居安防控制控制中心连接英特网,而现代化科学技术的发展也会直接影响家庭控制网络未来的发展趋势[16]。智能家居在不久的将来,发展趋势将分为以下几个方向,即集约化终端、智能化感知、无线化终端接入[17-][18]。Aguirre 学者在研究智能家居过程中提出,智能家居其最终的目的在于强化家居安全性、便利性、艺术性等,它是以住宅作为平台,构建一个功能完善的智能化住宅设施与家庭事务系统,在实现结果的过程中运用各种现代化网络技术集成人们家居生活中各种相关设施,而智能家居中,比较关键的结构便是对家居设备进行远程操控,具有便捷性以及安全性等多种优势[4]4。
智能安防在北美地区一直处于领先地位。其主要采用联网报警的方式进行系统开发,将整个安防产业纵向整合[19-][20]。该行业成功结合了许多高科技技术和产业化管理理念,成为一个强大的综合性产业。在北美市场,ADT公司是一颗耀眼的明珠,贯穿整个智能安防系统的发展历程。从30年代最简单的防盗报警,到70年代的联网报警,再到当前将众多先进技术融合的报警系统[21-][22],该公司推出了新一代智能安防平台。ADT公司在全球拥有大量用户,并且其营业额一直保持上升趋势。随着安防系统的不断成熟和壮大,ADT公司的地位也日益重要。保险业也积极推广安装安防系统,并提供最有竞争力的保险套餐[6]。
国外较多学者展开了对智能家居领域的探究[23]。研究指出,早在上世纪八十年代初期,智能家居建筑首次在美国被设计出来,是智能家居领域发展的领头羊[24--[25]。随着经济的发展,世界各国均结合自身国情角度,提出了与本国发展相适应的智能家居理念。其中,德国、日本和韩国等发展速度相对较快的国家,智能家居的普及率相对较高。自从上世纪九十年代末期的国外恐怖袭击事件时有发生后,安防产业受到了人们的普遍关注。安防产业的兴起,带动了家庭安防行业的快速发展。日本索尼公司也不针对家居只能够化的发展现状,推出应用变焦摄像机实现监控。该机器的智能化体现在通过 VISCA 协议命令集,变焦摄像机能够通过RS-485 接口实现所有功能,且新型的监控设备可以与 IP 解决方案进行混合,帮助用户实现远程式监控[4]4。
1.2.2国内研究现状
与美国、日本等一些发达国家相比,我国对于智能家居领域的研究起步较晚, 直到二十世纪末才开始从国外引进相关技术,用于国内智能家居产业的发展[26]。我国的智能建筑大致发展于上世纪90年代,北京发展大厦的建成标志着我国智能建筑初具雏形,该大厦集监控、消防等安防相关功能于一体,实现了建筑设计领域的智能化发展[27]。我国早期的安防产品占据价格低的优势,但也存在着功能单一的显著劣势,并且由于缺乏统一标准导致各个厂商生产的产品无法兼容,从而极大增加了智能安防系统的研发成本。此外,借助有线组网的安装方式也使得智能安防系统的安装变得更为复杂,需要依托更先进的技术并耗费较高的成本[28]。这些原因导致了智能家居安防系统无法在我国得到迅速推广,其早期的发展趋势较为缓慢。在智能手机未普及前,智能家居系统的终端都是个人计算机,通过多种传感器以及通信设备共同构建而成[29]。依托个人计算机实现的系统虽然能够对入室盗窃、火灾等异常情况做出反映并报警,基本满足用户的安防要求,但也明显存在着数据无法实时传输、用户使用不方便、需要投入的时间成本与技术成本较大等问题。2009 年,海尔推出我国早期的智能家居系统。并在2018年率先发布了首个全场景定制化的智能家居系统。系统允许用户自定义生活服务,包括对家中用水、空气、洗护等环境的设置[30]。智能家居被列入2012年我国“十二五”规划的发展战略,随后在政府多项政策的大力支持下,智能家居领域在我国取得了迅猛的发展。市场上逐渐出现了一些完整的智能家居产品,并朝着系统化的方向发展[31]。随着智能手机的流行,将智能手机本身的智能性同安防系统相结合后,能够取代传统的GSM网络实现通信[4]。2014年,我国的智能家居得到了迅猛的发展。这一年互联网和家电产业的各大巨头公司纷纷加入智能家居行业。例如长虹公司推出了智能电视。海尔U-Home、美的智慧、小米物联等公司也均增加了智能安防系统。2015年,华为进军智能家居市场。在2018年,华为推出“百亿计划”,利用华为先进的技术以及世界知名的影响力推动了我国在智能家居领域的发展[32]。
欧美等发达国家开发的防盗报警系统主要在智能化小区上应用。我国在设计开发家庭安防报警系统方面与国外发达国家对比相对落后。二十世纪八九十年代欧美等发达国家已经开始应用这种联网报警模式[33],近些年来我国 IP 网络发展迅速,一些防盗报警设备厂商也开始尝试这种报警方式。基于 TCP/IP 协议的联网报警模式优势显著,如:安装设备便捷性、灵活性强、运行稳定性安全性高等[34-][35],在该优势下受到大量设备厂商与用户的喜爱。然而,这种方法存在一些缺点。它只能在小区内部使用,因为在装修时已经接入了无线网络,不需要进行额外的布线。但是,当各子节点连接到IP网络后,会消耗大量电量。更重要的是,利用IP网络联网的报警系统在特定环境下容易受到病毒入侵或人为破坏,并可能受到泄漏报警信号的干扰[36-][37]。因此,在中国,目前小区内部使用的报警系统主要还是专用总线,而IP网络还没有完全普及和应用。伴随科学技术的提升与社会的发展,越来越多人安全意识也发生变化,尤其是认识到家庭安防的重要性,从而推动基于GSM网络的互联网报警系统快速发展[38]。“十一五”期间我国住宅产业呈现迅猛发展状态,家庭安防行业在该系统的推动下发展规模也逐步扩大。如今科技浪潮席卷人们生活,安防系统中有机的融合计算机技术、嵌入式技术、传感器技术及网络技术促进系统发展的更完善,在安防系统的作用下保证人们的生命财产安全,在维护社会安全稳定与保障公共安全领域发挥重要作用[39-][40]。
1.3 论文主要研究内容与章节安排
本文主要研究了在基于STM32单片机上实现了多功能家庭智能安防系统设计,以STM32芯片为基础,主要设计了传感器采集数据模块、WIFI物联网通信模块、视频监控模块等。该设计总体目标是采用STM32驱动ESP8266控制通过传感器采集所需要的环境数据,经网络将MCU采集到的数据上传到云端服务器,家庭人员能够通过手机APP端实时监测家庭内部环境状况以及实时视频监控图像。MCU能够及时的感知到家庭内部的安防预警信息,并进行声光报警以及在用户APP的安防消息接收窗口能够及时的收到突发的预警消息。形成一个实时性好、部署简单、低成本的家庭安防与环境监测系统。整体实现了随时警惕人们居家环境是否异常,有效保护家庭环境安全的功能。
本文基于嵌入式系统、传感器实时检测、物联网远程通讯等理论基础对基于STM32的多功能家庭智能安防系统设计展开研究,本文主要是以STM32F103芯片为基础,主要研究了传感器采集数据模块、WIFI物联网通信模块、视频监控模块等。从而实现下列功能:
- 通过火焰传感器监测家中是否有明火危险。
- 通过人体红外传感器进行人体红外检测。
- 通过烟雾传感器监测家中烟雾情况。
- 通过ESP8266WIFI模块MQTT协议连接物联网平台将接收到的监测数据发送至云平台,然后云平台将接收到的各种实时数据显示在物主手机上,实时警惕并且有异常情况发出警报,并且告知相关人员以达到防范目的。
- 通过摄像头视频监控模块拍摄实景显示在物主特制APP屏幕上观测家中是否有异常情况,并且判断家中发生异常情况是否发生错误报警等。
本文主要基于STM32的多功能家庭智能安防系统设计研究,将根据家庭智能安防系统功能及需求,通过选择相关的技术,对系统进行设计与实现,并对该系统进行相应的测试。本文在章节设置上主要分为以下6章。
第1章论述本文研究的背景、意义和国内外研究现状,并对课题研究内容安排。
第2章给出系统方案设计框图,分别介绍系统硬件方案设计、软件程序方案设计和测试方案设计。
第3章叙述系统的硬件设计与实现,主要包括:视频监控模块、传感器模块、WiFi通讯模块等子模块。
第4章论述系统的软件程序设计,包括:主程序设计、传感器采集信息设计、监控视频采集设计、远程数据传输设计、远程图像显示设计、APP用户端程序设计以及报警系统等程序设计。
第5章阐述基于STM32的多功能家庭智能安防系统设计的相关测试设计,明确测试目的和内容,对系统各模块的实现以及系统的整体运行进行测试验证,并对测试结果进行分析与总结。
第6章总结本文所设计的基于STM32的多功能家庭智能安防系统设计可以实现的功能,并分析系统中需要进一步完善和研究的问题,完成总结与展望。
本章首先对基于STM32的多功能家庭智能安防系统的各模块功能进行了定义,然后对系统设计方案进行了叙述,并分别从硬件方案设计、软件方案设计以及测试方案设计进行了详细的阐述。
2.1 家庭智能安防系统的功能定义与参数指标

图2-1 基于STM32的多功能家庭智能安防系统功能定义框图
本文设计的多功能家庭智能安防系统从人工智能,软硬件结合视觉角度对家庭内实时环境进行检测,结合传感器模块对实时环境实时数据进行采集,实现了对家庭环境检测以防出现异常的功能。除此之外,本系统还具有视频监控模块,配合各传感器模块进行实时监控;对周围环境的是否有明火危险、是否存在过大烟雾、是否有外来人员进入进行显示若出现异常及时报警的功能。该系统的具体功能定义和主要技术指标如下:
- 系统应能实现家中环境的实时视频采集;并且远程监控的视频画面分辨率可以自己设定调节,具有160×120、240×176、320×240、400×296、640×480、800×600、1024×768、1280×1024、1600×1200多种分辨率可供选择
- 系统可对火焰、烟雾、人体红外进行检测;
- 当系统检测明火、强光、超过阈值的烟雾浓度,可以采用APP声音报警进行提醒;
- 系统应可对所处环境的烟雾浓度、可燃性气体进行采集并显示,每隔1s更新一次数据,烟雾可燃性气体测量范围应为0-1000ppm,精度至少为±10ppm。
- 系统应可对可见明火、强光照射、人体红外热感应进行检测,测量范围至少大于100cm。
- 系统应可对摄像头监控的区域实时进行传输视频数据方便观测,并结合传感器数据进行判断是否发生异常情况。
2.2 多功能家庭智能安防系统的总体方案设计
根据系统的功能定义和参数指标要求,本文设计的基于STM32的多功能家庭智能安防系统方案框图如图2-2所示。

图2-2 基于STM32的多功能家庭智能安防系统方案设计框图
在图2-2中,该系统主要由基于STM32的系统传感检测模块以及基于ESP32-CAM的摄像监控模块两大部分组成。系统传感模块主要包括:火焰传感器模块、烟雾传感器模块、人体红外传感器模块,其中,火焰传感器模块、烟雾传感器模块、人体红外传感器模块通过GPIO接口直接与主控制器STM32103芯片相连。火焰传感器模块、烟雾传感器模块、人体红外传感器模块主要对环境数据进行实时采集,每隔1s采集一次,并利用OLED屏幕、APP用户端进行实时显示;烟雾传感器模块对可燃性气体以及烟雾浓度进行测量,通过AD转换模块将烟雾传感器模块所采集的烟雾浓度值数字化,并通过OLED显示屏、APP监控界面实时显示,当浓度大于所设置的阈值时,利用蜂鸣器和APP用户端进行报警提示;火焰传感器模块使用对可见明火、强光照射、热源进行实时检测,并实时显示在OLED屏幕、APP监控界面中,若出现异常进行报警,OLED和APP界面显示火焰情况异常。人体红外传感器模块对人体红外热源进行实时检测,若出现异常进行报警,OLED和APP界面显示红外情况异常。基于ESP32-CAM模块,首先通过自带的ESP8266进行联网采集摄像头拍摄视频数据,再通过MQTT协议物联网技术进行上传云端的过程,最后通过上位机APP用户端视频监控界面访问IP地址查看摄像头监控画面,并结合传感器采集的数据进行判断是否出现异常情况。
“基于STM32的多功能家庭智能安防系统”作为一种可在智能家居、智能安防等领域广泛应用的系统,其设计与应用势必受到社会、健康、安全、法律、文化及环境等多种因素的影响。
- 本次设计采用的ESP32-CAM涉及WiFi联网、物联网等,可能会出现家庭网络承受度增加、功耗增加,黑客攻击个人隐私泄露等安全隐患。
- 本次设计中的火焰传感器模块受光强影响较大。在设计过程中还应该注意避免在光强太大的环境中使用。
- 设计的传感器模块、视频监控模块系统硬件涉及高频电路,这些高频电路在工作中会消耗电能和电磁辐射,可能会对周边的环境及人的健康可能会造成一些影响,而国家法律法规、行业标准对电子产品的能耗、辐射等有相应的要求,因此本次系统设计受国家与行业相关能耗、辐射安全标准的制约。
- 设计的视频监控模块可能会采集周边环境与人员的图像、视频信息,而这些图像可能涉及个人隐私、公共安全等敏感信息,因此,系统设计时,必须考虑如何保护个人隐私、公共安全等涉密信息,避免系统应用时,给社会、安全、文化带来不利影响,甚至可能产生法律问题。
- 设计的基于STM32的多功能家庭智能安防系统对人们居家,家庭环境安全、人身安全、财产安全有积极作用,会对人们的身心健康、社会生产与生活方式、人工智能技术的发展产生直接有益影响。
2.2.1硬件方案设计
本文设计的基于STM32的多功能家庭智能安防系统硬件部分主要完成实时数据采集、实时数据显示、实时摄像监控的功能,主要有传感器采集采集模块、视频摄像监控模块、OLED显示模块,其设计方案框图如2-3所示。

图2-3 基于STM32的多功能家庭智能安防系统硬件方案设计框图
本文选用的硬件模块各部分应该具有处理能力强、可编程性强、成本低以及可外接摄像头的功能,对比多个系列的处理器性能、功耗和成本,考虑到社会、健康、安全、法律、文化及环境等多种因素的影响,最终本文选择基于STM32F103为主控的开发平台。该器件价格实惠,是一款基于ARM Cortex-M 内核STM32系列的32位的微控制器,程序存储器容量是64KB,频率为72MHz。包括多个UART、SPI、I2C接口以及USB2.0全速设备接口。12位ADC,转换速率为1Msps。需要电压2V~3.6V,工作温度为-40°C ~ 85°C。STM32F103C8T6具有强大的处理能力和丰富的外设资源,可以广泛应用于各种嵌入式系统中,如智能家居、工业自动化、机器人控制等领域[41]。同时,该芯片也有相对较低的价格和易于开发的特点,备受广大用户的喜爱和推崇。符合本次系统的设计要求以及成本预算。
- 火焰传感器模块:该模块可用于检测火焰或波长为760nm至1100nm的光源。在打火机测试中,该模块可以测出火焰距离为80cm。当火焰越大时,测试距离也会相应增加。此外,该模块的探测角度约为60度,对火焰光谱特别敏感。其工作电压在3.3V至5V之间,可输出数字开关量和模拟电压[42]。此外,小板输出接口可直接连接至单片机IO口。各综合数据功能良好符合本次设计的要求。
- 烟雾传感器模块需要实现用户所处环境的实时烟雾浓度、可燃性气体浓度的采集功能,本文采用MQ-2烟雾传感器获取环境中的烟雾浓度和可燃性气体浓度数据。经过查阅得到这种传感器对可燃性气体的浓度变化具有极其高的敏感度,尤其是对烷类烟雾浓度变化更为敏感,同时具有非常出色的抗干扰能力,这样以来就能够准确排除有刺激性但非可燃性的烟雾干扰信息。其检测范围可达100-10000ppm,适用于可燃气体和烟雾的检测。符合本次系统设计的功能定义。
- 人体红外传感器模块主要配合视频监控实现检测家中异常情况,是否有陌生人闯入的功能。人体红外传感器是一种能够检测人或动物身体所发射的红外线,并通过输出电信号进行反馈的传感器。该传感器的工作电压为3~5V,静态电流为50μA,工作温度范围为0℃~+70℃,电平输出为4V,感应角度为110度,感应距离为7米。它主要应用于红外线防盗报警器、高速公路车辆车流计数器、公共安防等场景中[43--[44],具有稳定性高、准确度高等优点。
- ESP8266是一种高性能的WIFI串口模块,内部集成了MCU,可以实现单片机之间的串口通信。它是目前使用最广泛的WIFI模块之一,支持单AP模式、单STA模式和混合模式(可以在两种模式之间切换)。在AP模式下,ESP8266可以产生热点,提供无线接入服务,允许其他无线设备连接并提供数据访问。一般的无线路由器/网桥工作在该模式下,对应TCP传输协议中的服务端(TCP Server)。在STA模式下,ESP8266作为连接到无线网络的终端(站点),可以连接到AP。一般的无线网卡工作在该模式下,对应TCP传输协议中的客户端(TCP Client)。简单的说,当ESP8266处于AP模式下,那么就可以将ESP8266作为热点,让其他设备连接上它;当处于STA模式时,就可以连接上当前环境下的WIFI热点。透传(透明传输)指的是不需要关心WIFI协议的实现方式,只需要通过串口发送和接收数据。ESP8266主要负责将传感器数据上传云端,并返回显示的功能。
- ESP-CAM模块主要实现远程实时摄像监控的功能,安信可公司推出的最新的ESP32-CAM摄像头模块,它是一款小型化的模组,可独立工作,并仅占据2740.54.5mm的空间,深度睡眠电流可低至6mA。该模块广泛适用于各种物联网场景,例如家庭智能设备、工业无线控制、无线监控、无线QR识别、定位系统和其他物联网应用。作为物联网应用的解决方案,ESP32-CAM采用低功耗双核32位CPU,主频率高达240MHz,运算能力达到600 DMIPS;内置520 KB SRAM和外置8MB PSRAM;还支持众多接口,例如UART、SPI、I2C、PWM、ADC和DAC,同时也支持OV2640和OV7670摄像头,以及内置闪光灯,并支持图片WiFI上传等功能。完全符合本次基于STM32的多功能家庭智能安防系统的设计要求。
2.2.2软件方案设计
本文设计的基于STM32的多功能家庭智能安防系统软件部分主要实现初始化配置、对硬件的程序驱动、传感器数据采集与显示、上位机APP制作和实时显示等功能,系统软件方案主要包括主程序、硬件驱动程序、传感器数据采集与显示程序、上位机APP制作和实时显示程序设计四个部分。设计框图如图2-4所示。

图2-4基于STM32的多功能家庭智能安防系统软件方案设计框图
为实现预期功能,本文的软件程序设计采用了C语言进行编程。C语言在现今社会仍然有着不可替代的广泛应用性。C语言广泛应用于底层开发,因为它可以用一种简单的方式编译,处理低级别内存。它还是一种高级语言,编写代码比汇编语言更加简单、易于理解和维护。那么在嵌入式系统这方面,采用C语言编程有很多缘由:C语言具有很强的可移植性,可以在不同的平台上编写和运行代码,这对于单片机的应用非常重要。它具有丰富的函数库,可以方便地调用各种常用的函数,比如数学库、字符串库等,这使得编程更加高效和便捷。C语言支持指针,可以直接访问内存中的数据,这对于单片机的应用非常重要,可以提高程序的运行效率。总之,C语言是一种功能强大、易于学习和使用的编程语言,非常适合用于单片机编程。因此,它既可以用于系统程序开发,也可以用于应用软件开发。
嵌入式系统是以单片机为核心的软硬件结合,旨在完成特定任务。单片机编程是一种电子技术,通过编写代码来控制单片机的行为。单片机是一种集成电路,可以控制电机、读取传感器数据和显示文本等。程序员使用特定的编程语言和软件工具编写代码,并将代码上传到单片机中,以满足特定需求。单片机编程广泛应用于现代电子设备,如家用电器、汽车和电脑等。在单片机编程中,需要考虑到单片机的程序空间和数据空间有限,因此需要编写尽可能短小精悍的代码,以节省存储空间。单片机编程的主要目标是对单片机的端口和内部寄存器进行操作和配置,需要精确的时序控制。在单片机算法运算中,应尽量使用加法、减法和移位运算,而避免使用乘法和除法运算,因为它们会消耗大量时间和存储空间。高级语言可以实现更优化的算法和更方便的执行方案,但是对程序存储空间的占用较大。C语言代码执行效率高,精简,易于移植,因此在现代单片机编程中占据主导地位[45]。
ESP32-CAM摄像监控模块采用Arduino IDE进行编写烧录,Arduino是一个开源的硬件开发平台。Arduino应用的场景众多。基本的idea是通过编写程序,与各类传感器交互、控制其他部件、与其它设备通信。
上位机APP制作这部分我采用了App Inventor制作平台。App Inventor是一款由Google开发的免费的应用程序开发工具,它可以帮助用户轻松地创建Android应用程序,无需编写复杂的代码。App Inventor还提供了一个可视化的界面,可以通过拖放图形化组件来构建应用程序,这样可以更好地理解应用程序的结构和功能。App inventor特点:
- 可视化编程:通过拖拽和连接各种组件,使编程变得直观易懂,降低了编程门槛。
- 适合初学者:App Inventor提供了丰富的教程和示例,使初学者能够快速上手。
- 跨平台:可以在Windows、Mac OS X和Linux等多个操作系统上运行。
- 支持多种组件:App Inventor支持多种组件,包括按钮、文本框、图片、音频、视频等,可以轻松实现各种功能。
- 云端编程:App Inventor可以在浏览器中进行编程,无需下载和安装任何软件。
- 实时预览:在编程过程中,可以实时预览应用程序的效果,方便调试和修改。自身提供强大调试功能,调试中任何代码的变更就会自动同步到进行调试的手机或模拟器当中,无需重装APP进行反复调试。
采用App inventor的目的就是App inventor采用图形化编程,不需要复杂的代码去支持,只需自己看懂逻辑,采用图形框图逻辑编程。这个Android编程环境完全在线,采用可视化图形模块语言。这款工具软件可将代码编写并封装成模块,使用者只需使用模块积木的拖拽堆叠方法,添加服务选项和调整相关参数,即可简单有趣地进行程序外观设计和程序运行行为与流程的设定,完成程序拼装。编程环境非常友好。这也是App inventor的一大优势。
2.2.3测试方案设计
系统测试是为了发现存在的错误而改进的一种过程,测试的目的是为了证明系统设计方案能够达到参数指标要求。为了验证本文设计的基于STM32的多功能家庭智能安防系统在家庭环境数据采集时的准确性以及发生异常后是否能惊醒主人,达到避免发生财产损失、威胁家庭安全环境和人身安全的目的。在系统设计结束后需要对各模块的功能进行测试,测试主要包含以下两个方面:
- 系统各模块单独测试
- ESP-CAM模块摄像头是否可以采集实时视频信息,采集到视频信息是否可以远程实时传输;
- 火焰传感器是否在可允许的误差范围内,检测出明火、强光、热源等;
- MQ-2烟雾传感器采集的数据是否准确,能否实现采集与显示的数据对应家庭环境中实时变换的环境数据;
- 人体红外传感器是否工作正常,能否检测到可检测范围内出现的物体,出现异常准确发出警报。
- APP是否能准备显示传感器检测的实时数据,当数据异常时是否能开启警报提醒物主;是否能顺畅显示实时监控画面配合传感器各项检测数据作出判断以防发生不必要的损失。
- 系统各模块综合测试
首先拼接好系统整体硬件架构,烧入写好的程序进行综合测试,测试多功能家庭智能安防系统的各传感器是否可以实时采集环境数据并上传,其次在不同的环境下测试传感器模块的数据采集是否正常,记录其采集的数据的正确率与大致区间;再其次测试视频监控模块是否能和传感器模块同时运行并能无误准备上传实时摄像信息且能在APP端正常显示,最后测试各个功能模块整体运行时,电压电流是否供电正常;各种环境影响和人为因素影响下系统是否会出现异常等情况。确保系统运行时,硬件软件APP整体可以同时运行,互不干扰。
2.3 本章小结
本章主要对多功能家庭智能安防系统的功能与参数指标及总体方案设计进行详细阐述,并对硬件设计方案、软件设计方案以及测试设计方案进行了详细规划,对系统搭建过程中的影响因素进行了分析。
本章主要阐述基于STM32的多功能家庭智能安防系统硬件平台搭建过程以及各个子模块的功能介绍,同时分模块叙述各个子模块的实现过程。
3.1 多功能家庭智能安防系统硬件概述
本文设计的基于STM32的多功能家庭智能安防系统硬件部分主要分为:ESP32-CAM视频监控采集模块、传感器信息采集模块以及ESP8266WiFi上传数据用于APP实时显示模块4个部分。其中,主要用到基于STM32F103c8t6芯片主控的单片机、OV246摄像头、火焰传感器、MQ-2烟雾传感器、人体红外传感器、ESP32-CAM、OLED显示屏、AD/DA转换器以及LED灯等元器件。其中各模块的硬件组成框图如图3-1所示。

图3-1 多功能家庭智能安防系统的硬件组成框图
在图3-1中,基于STM32F103c8t6芯片的单片机系统作为整个系统的主控器件,主要负责程序的运行、与各个扩展模块进行通信、实现各模块之间的宏观调配,多进程同时处理各模块运行结果;OV2460摄像头主要用于采集实时监控摄像画面数据,供后期处理;火焰传感器通过采集判断实验目标所处环境的是否存在明火、热源、强光等,实时显示至OLED液晶显示屏和APP用户端;显示异常并且声音报警提醒物主。MQ-2烟雾传感器则采集所处环境的烟雾浓度、可燃性气体浓度信息并显示在OLED屏和APP客户端上,当距浓度大于所设置的阈值时,APP显示异常并且声音报警提醒物主;人体红外传感器则负责检测所处环境是否出现发热源物体并显示在OLED屏幕和APP用户端画面上;若出现异常显示异常并且声音报警提醒物主。AD/DA转换器负责对MQ-2烟雾传感器采样的数据经过AD转换,将所采集的烟雾浓度、可燃性气体浓度值数字化,并通过OLED屏和APP用户端实时显示,并且可以通过修改代码来修改所设的阈值范围。
3.2 多功能家庭智能安防系统硬件电路
本节主要详细阐述多功能家庭智能安防系统的硬件电路,主要包括STM32F103c8t6芯片GPIO扩展接口电路设计以及系统其它子模块的硬件电路连接设计两大部分。
3.2.1 STM32F103C8T6芯片的GPIO扩展接口电路
基于STM32F103c8t6芯片的共有48针的GPIO口可供用户开发使用,通常的定义如图3-2所示。


图3-2 STM32F103c8t6芯片GPIO引脚定义图
从图3-2可以看出,STM32F103c8t6的GPIO主要分为5V、3.3V、接地以及通用GPIO口,GPIO可配置为8种输出输入模式,引脚电平:0~3.3V,部分引脚可容忍5V。如果是控制功率比较大的设备,只需要再加入驱动电路即可——比如驱动直流电机。STM32F103C8T6一共有48个引脚,其中包括电源引脚、晶振时钟引脚、复位
更多推荐
所有评论(0)