基于Arduino的网络集成智能家庭系统设计

2022-12-23 03:15赵炜华谭锦元李沛敏邱一峰卢巨科
物联网技术 2022年12期
关键词:温湿度人脸串口

赵炜华,谭锦元,李沛敏,邱一峰,卢巨科

(广西民族师范学院 数理与电子信息工程学院,广西 崇左 532200)

0 引 言

伴随物联网产业的源起与计算机技术、人工智能技术、网络传输技术、传感器技术的飞速发展,人们的生活已离不开智能化带来的便利。目前,家居智能化已成为当今的主流发展趋势[1]。智能家居控制系统的主要目的是优化家庭居住环境,满足人们对家居越来越高的要求。通过控制家具电器、住宅设施,利用无线通信、自动控制、单片机、传感器等技术对与家居生活相关的设备、家电等进行检测、传输、处理、控制,实现人们对住宅设施及家庭日常实物控制管理的综合智能家居控制系统[2]。自新冠疫情爆发以来,智能家庭设备可有效帮助人们进行科学防疫。保持“严格筛选”的基础防线尤为重要,以确保家庭人员降低潜在的感染风险。

本文所描述的基于Arduino的网络集成智能家庭系统设计,主要由硬件系统、软件系统两部分组成,硬件系统包括Arduino控制模块、传感器、K210 Maix Bit、通用家电设备等,Arduino控制模块作为该系统的核心,通过对家庭环境中各项相关参数进行检测,完成对当前家居环境状态的综合判断,并据此做出预判处理。K210 Maix Bit与MAG8833红外热像仪传感器组成的身份识别安防系统,可实现非接触式温度测量与身份识别功能。软件系统部分为手机Android系统APP软件,可通过网络连接实现家庭实时数据的监控以及对家庭用电器的远程控制。基于以上相关技术以及控制要求,实现监控家庭环境,远程控制家庭设备,对当前家庭环境状态进行综合判断并进行家庭设备联动,以优化家庭环境、家庭安防,提升居住舒适性。

1 基于Arduino的网络集成智能家庭系统总体设计

本系统是基于Arduino的网络集成智能家庭系统,分为硬件、软件两部分。系统的总体设计如图1所示。以Arduino UNO R3为核心模块,利用Arduino多处理器实现数据的分布处理,结合ESP8266 WiFi通信模块、CH-SR501人体红外感应模块、K210 Maix Bit人脸识别模块、AMG8833红外热像仪模块、LD3320语言识别模块、雨滴感应模块、MQ-2烟雾气敏传感器模块、DHT11温湿度传感器模块、光照电阻模块组成了无接触式温度测量身份识别安防分系统、室内温湿度自动调节分系统、室内智能照明分系统、易燃气体检测防火分系统、智能晾衣杆分系统、移动控制终端APP等。

图1 系统总体设计

无接触式体温测量身份识别安防分系统由K210 Maix Bit人脸识别模块和AMG8833红外热像仪模块组成,通过控制芯片预存的人像面容ID、判断条件、程序处理,实现了身份识别自动开门与无接触式人体体温测量,且可通过移动终端APP实时查看来客体温是否异常。

室内温湿度自动调节分系统由DHT11温湿度传感模块实时监测室内温湿度值,当室内温湿度值低于设置的标准值阈值时,自动开启空调,提高室内的温湿度。当室内的温湿度高于设置的标准阈值时,自动进行通风操作。系统还可以通过移动终端APP实时查看数据,远程控制温湿度,自动调节分系统。

室内智能照明分系统由光照电阻模块和CH-SR501人体红外感应模块检测室内外光线的强度以及是否有人过往,当感知到室内光线较暗以及屋主经过时,自动根据光线强度开启室内照明灯的亮度,为屋主提供合适的照明亮度,以达到智能控制以及节能的目的。系统还可以通过移动终端APP对照明系统进行远程控制。

易燃气体检测防火分系统MQ-2烟雾气敏传感器模块实时检测室内的易燃气体,当燃烧产生的固体小颗粒超过设定的阈值时,灭火系统被触发,通过覆盖式喷水进行灭火,并提示屋主留意煤气是否泄漏或者出现火灾等。

智能晾衣杆分系统由雨滴感应模块实时感知屋外天气变化,自动驱动舵机回收或伸出晾衣杆。

2 基于Arduino的网络集成智能家庭系统硬件设计方案

2.1 基于Arduino的数据采集

2.1.1 Arduino UNO R3控制器

Arduino 起源于意大利,是一款基于开放原始代码的Simple I/O平台。Arduino UNO R3控制器采用Atmel公司出品的ATmega328P-PU单片机作为微处理控制器。它由基于单片机并且开放源码,具备简单输入接口的硬件平台,以及一套专为Arduino编写程序代码的开发环境组成。

2.1.2 DHT11数字温湿度传感器

DHT11数字温湿度传感器是温湿度复合传感器,经过严格校准后将数字信号输出传感器。它应用专用的数字模块采集技术和温湿度传感技术,传感器内部包含一个电阻式感湿元件和一个NTC测温元件[3],并与一个高性能8位单片机相连接。湿度测量范围为20%RH~95%RH,误差为+5%~-5%;温度测量范围为0~50 ℃,误差为+2~-5 ℃;工作电压范围为3.3~5 V DC,供电具有功耗低、数字化精确输出、抗干扰能力强、极高的可靠性与长期稳定性等特点,因此被广泛应用于智能家庭系统。

2.1.3 MQ-2烟雾传感器模块

MQ-2烟雾传感器模块采用在清洁空气中导电率较低的气敏材料二氧化锡(SnO2)[4]。其工作原理是当传感器所处环境中存在可燃气体时,传感器的电导率随空气中可燃气体浓度的增加而增大,经过自身电路即可将电导率的变化转换为与该气体浓度相对应的输出信号[5]。MQ-2烟雾传感器对丙烷、丁烷有较高的灵敏度,可检测多种可燃气体,具有可靠性高、响应速度快等特点。

2.1.4 CH-SR501人体红外感应模块

CH-SR501人体红外感应模块是一块采用LHI 778探头,基于红外线技术设计的自动控制模块。工作原理:当传感器接收到人体红外辐射之后,传感器温度升高,表面释放一部分电荷,并将释放的电荷经放大器转换为电压输出[6]。CHSR501人体红外感应模块拥有不可重复触发、可重复触发两种触发方式,具有全自动感应、超高灵敏度和可靠性高等特点。

2.2 基于ESP8266 的数据通信

ATK-ESP8266 是一款高性能UART-WiFi模块,ATKESP8266模块搭载了ATK-ESP-01模块[7]。ATK-ESP8266 模块采用串口(LVTTL)与 MCU(或其他串口设备)通信,在该模块中自身包含可实现串口和WiFi转换的TCP/IP协议栈[8],可以实现WiFi和通信串口间的转换。利用ATKESP8266模块,仅需简单的串口配置就能实现传统串口设备通过网络(WiFi)传输自身数据的目的。模块支持串口转WiFi STA、串口转AP和WiFi以及STA+WiFi AP模式,从而快速构建串口-WiFi数据传输方案,方便设备使用互联网传输数据。智能控制系统涉及的传感器较多,其软件子系统流程也较为复杂。工作流程:当载有多种传感器模块电路的Arduino控制板采集到环境变量参数后,通过ESP8266 WiFi模块实时上传。智能家庭系统根据用户的实际需要,由系统主控制板进行实时信号处理,完成无线信号与串口信号之间的转换。用户在手机Android移动终端可以清晰了解当前房屋信息。

2.3 基于K210 Maix Bit的无接触式体温测量与身份识别

2.3.1 K210 Maix Bit人脸识别模块

Maix Bit开发板搭载了带有独立FPU的双核处理器和RISC-V内核的K210 AI芯片,拥有64位CPU位宽,8 MB片内SRAM,400 MHz可调标称频率,支持乘法、除法和平方根运算等。利用图像处理技术运行人脸识别模块,识别出人脸并且框出人脸的位置,将框出的人脸模型转换成可接收的FPU格式,运行人脸5点关键点模型,获取左眼、右眼、鼻子、左嘴角、右嘴角的位置,对原始人脸图片进行仿射变换,变换为正脸图像,将正脸图像转为FPU格式。使用人脸196维特征值模型计算正脸图片的196维特征值,计算得到最终的人脸特征feature。然后将得到的人脸模型与储存的人脸模型进行对比,得到一组对比分值,在对比分值中选择其中最大的一个对比分值,如果该分值超过90分就可以判断为是该人。

2.3.2 AMG8833红外热像仪模块

AMG8833是基于高级MEMS技术的高精度红外阵列传感器,传感器芯片经过高增益放大与内部热敏电阻通过ADC转换器存储到ROM中[9]。每个像素观看中央角度传感器的光学中心间隙在±5.6°内(水平和垂直方向)。通过128个Temperature寄存器一次性读取64个像素点的温度,存储在自定义数组中,64个温度值中有部分受环境影响而导致测温不准确。由于环境温度低于人体温度,所以在本次设计中采取设置阈值比较算法,取64个温度值中最大温度的10个温度取平均代表人体体温[10]。

3 基于Arduino的网络集成智能家庭系统软件设计方案

采用Android Studio开发工具进行远程访问智能家庭系统的手机客户端APP开发,智能控制UI界面是本系统应用程序与屋主直接进行信息交互的可视化界面,通过Java语言实现软件开发,网络通信协议是网络通信中极其重要的核心。现如今的网络协议有许多种,在局域网中经常使用的有3种网 络 协 议:MICROSOFT的NETBEUI、NOVELL的IPX/SPX和TCP/IP协议。项目中应用的网络协议是TCP/IP协议。利用Arduino控制器和ATK-ESP8266 WiFi模块,结合模拟智能家居设备,将实时采集的数据上传至云服务器,利用SQLite作为数据库,作为系统的数据支持。用户点击控制界面开关、查询等控件后,后台程序按照设定好的程序指令传输到Arduino控制器,再由Arduino控制器下发给系统的分系统,由此实现家庭室内环境的实时监测以及对智能家居的控制。软件系统流程如图2所示。手机客户端APP软件与Arduino硬件板块可通过搭建好的局域网进行网络端口相连,从而两者可进行通信交互(发送信号与接收信号);采用手机客户端APP软件发送指令给Arduino,再通过Arduino发送指令给手机客户端APP软件,使手机客户端APP软件可以对智能家居当前环境下的检测数值进行实时监控。

图2 软件系统流程

4 结 语

本文主要提出了基于Arduino的网络集成智能家庭系统设计。通过对多种传感器采集的数据进行处理,实现感知和实时监测家庭环境;同时,通过手机的移动终端实现对在线设备的实时控制。在系统开启运行后,Arduino开发板将通过传感器实时监测数据,通过ATK-SEP8266的数据通信模块负责完成Arduino开发板和手机移动终端的数据交互,实现了数据经由互联网在各个终端上的流动。结合K210 Maix Bit人脸识别系统,实现有体温异常来客的筛选、未戴口罩的识别以及预警,降低人们的感染风险。通过实现智能化、安全化、人性化的智能家庭系统,提高人们的生活质量。

猜你喜欢
温湿度人脸串口
有特点的人脸
温湿度控制器在回收砂冷却系统中的应用
浅谈AB PLC串口跟RFID传感器的通讯应用
基于DSP的多路温湿度监测系统
三国漫——人脸解锁
基于温湿度控制的天气预测装置
蒸发冷却温湿度独立控制空调系统的应用
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
马面部与人脸相似度惊人