智慧家居物联系统开发

(整期优先)网络出版时间:2023-12-09
/ 2

智慧家居物联系统开发

王卓、雷静、李星星、王梓轩、万子毅、尹雯萱、唐傲远、高唐韵、唐浩

重庆交通大学信息科学与工程学院  重庆市 400074

摘要:随着信息技术与传统住宅设计相结合的全新住宅模式逐渐进入人们的视野,智慧家居开始被越来越多的家庭选择。本文旨在介绍一个以STM32F103C8T6芯片为核心,融合语音识别技术与蓝牙通讯技术,实现语音和APP控制、监控的智慧家居系统。文章在介绍系统组成原理和实现效果的同时,为其他智慧家居开发者提供了一定的经验参考。

一、概述

随着科学技术的发展与人们生活水平的普遍提高,愈来愈多的科技产品进入大众视野,智能家居便是其中具有代表性的产品之一。本文从家居实际功能入手,利用电子电路、传感器、无线通信等技术,完成一套基于STM32单片机的智能家居系统设计与制作。该设计实施以STM32微处理器为核心的控制系统,融合电子电路、传感器、无线通信等技术,完成对室温调节模块、光线强度检测模块、火警报警模块和红外安防模块四个部分的设计与制作,形成一套模拟实际家居生活的智慧家居系统样品,达到了研发、配置和维修成本低,操作简单的目的,展现了更具便捷性、舒适性、安全性和节能性的家庭生活环境。

二、功能设计

2.1整体结构

项目设计的总体架构图如图1所示,主要以STM32单片机为主控控制器,蓝牙模块和手机APP作为前端,光敏传感器、温湿度传感器、红外传感器等模块数据作为系统的为智能家居判断与决策的重要依据,OLED显示模块作为人机交互的显示。

图1整体架构图

2.2硬件设计

2.2.1主控制器

STM32F103C8T6是一款基于Cortex-M3内核的32位微控制器,负责处理智能家居设备各传感器采集的数据,其高速的数据处理能力提高了数据的采集和语音识别能力。[1]STM32单片机最小系统原理图如图2所示。

图2单片机微机系统结构

2.2.2光敏传感模块

该模块设计以BH1750传感器集成电路为主,内部由光敏二极管、运算放大器、ADC采集、晶振等组成,利用它的高分辨率可以探测较大范围的光强度变化。[1]这种集成电路可以根据收集的光线强度数据通过ADC转化输出不同大小的信号,再通过控制器内设定的阙值来调整室内灯光强度。BH1750传感器电路基本结构图如图3所示

图3BH1750传感器电路结构图

2.2.3温湿度控制模块

该模块采用的是DHT11温湿度传感器,主要用于检测家居温湿度,并且可以根据得到的数据作为控制系统(空调、加湿器等)的判断基础。该传感器是一款含有校准位的数字信号输出的温湿度一体传感器。它具有响应超快、抗干扰能力极强、品质卓越等性价比高的优点。[5]它内部集成专用的温湿度传感技术和数字模块采集技术,保证产品可靠性与稳定性极高。主要借助电路设计来实现空调的开关以及室温的调节。该模块是由stm32单片机提供3.3v电压工作,以单总线形式进行连接,并且湿度测量范围在20~90%RH,温度测量范围是0~50℃。

图4DH1750传感器结构图

2.2.4烟雾控制模块

该模块选用MQ-2烟雾气体传感器,用来检测室内的烟雾浓度。根据传感器的电导率随空气中可燃气体浓度增加而增大的特性检测空气中可燃气体的浓度,然后将电导率的变化转换成相应的电信号,[2]需要接入单片机的ADC模块进行数模转化,再通过控制器内设置好的警告数值可以判断是否开启报警模式。

图5MQ-2烟雾气体传感器结构图

2.2.5蜂鸣器控制模块

该模块主要用于报警设计,通过各个传感器中收集到的数据与用户设定的阙值比较判断是否开启该模块。

2.2.6语音识别模块

该模块使用SU-03T模组,运用32bitRISC内核,与STM32通过串口通信,对芯片内部进行唤醒词和标志词设定,通过语音指令传达完成控制。该模组原理图如图6所示。

图6SU-03T结构图

2.2.7OLED显示模块

该模块是在STM32完成对温湿度模块数据的读取并进行转换处理后,驱动OLED屏在相应位置显示相关数据,蓝牙通信模块会自动将相关数据上传到APP上。其主要结构如图7所示。

图7OLED显示结构图

三、软件设计

3.1 app 设计

本项目中使用Android Studios设计了一款简洁的app界面,让用户能够轻松操作智能家居设备。app通过连接蓝牙模块,实现对智能家居设备的控制和监测。使用app实现智能网联设备的自动化控制,使得本智慧家居系统更具便捷性、更加智能化。

3.1.1 app蓝牙权限及相关配置

为了使app能够使用蓝牙蓝牙功能与智能家居设备进行连接和通信,首先要在清单文件中申明相关权限。要申明的权限有BLUETOOTH、BLUETOOTH_ADMIN和ACCESS_FINE_LOCATION,只有在获取到BLUETOOTH权限后,才能使用本地蓝牙适配器;BLUETOOTH_ADMIN权限的作用是管理蓝牙适配器,例如开启或关闭蓝牙、扫描蓝牙设备、连接蓝牙设备等操作;ACCESS_FINE_LOCATION权限用于扫描并收集本设备和其他蓝牙设备的位置信息。

3.1.2 app的蓝牙使用

在android.bluetooth包中提供了使用蓝牙功能的相关类和接口。BluetoothAdapter类是本设备蓝牙版适配器对象,借助该类,可以获取到蓝牙设备列表、开关蓝牙、扫描蓝牙设备、设置并获取蓝牙信息。[6] BluetoothDevice类是对其他蓝牙设备的描述,可以通过该类查询蓝牙设备的名称和地址。BluetoothSocket类中有建立和关闭蓝牙socket的连接,获取输socket连接的入输出流对象。通过以上类和对应的方法与本项目中硬件设备通过蓝牙进行连接,实现app与智能家居设备之间的通讯。

3.1.3 蓝牙模块模式及信息配置

硬件部分中蓝牙模块采用HC-05蓝牙串口通讯模块,其无线工作频段为2.4GHz,采用CSR的BC417芯片,支持AT指令,用户可根据需要求在命令响应模式和自动连接工作模式之间自由切换。[7]同时还可以设置该模块的串口波特率和设备名称等参数。该模块连接使用原理如图11所示。

图11HC-05模块使用原理图8

在用户没有与智能家居设备建立连接之前,硬件设备会进行蓝牙模块的初始信息置,

包括起始状态、蓝牙名称、蓝牙模块密码等信息。完成信息初始化之后,HC-05蓝牙串口通讯模块处于从机状态(命令响应模式),只能被其他蓝牙设备请求连接。待用户使用app建立蓝牙连接后,使用AT命令集对智能设备进行蓝牙名称、蓝牙密码、主机名称及地址等信息设置,即可完成绑定。成功绑定后蓝牙通讯模块立即切换为主机模式(自动连接工作模式),此时蓝牙通信模块根据主机名称及地址向app请求建立蓝牙连接,实现app与智能家居设备之间的通讯,以达到通过app向各个模块发送命令的目的。

3.1.4 app控制家居设备流程

图12 app控制流程图

3.1.4 app可视化界面设计

App主界面如图12所示,该界面主要分为设备选择、设备调试、家居实时状态、设备控制四个区域。通过选择蓝牙设备进行与智能家居设备的连接;在数据接收区可以分析家中各个传感器模块工作情况;在环境实时状况部分可以远程查看家中的温度、湿度、光照强度和烟雾情况;在设备控制区域可以进行窗帘位置控制和各个房间电灯的开关。

图12app主界面

图13所示是app的阈值设定界面,可以设置在不同环境下窗帘、电灯、警报器的触发条件。主控制器通过传感器测量到的数值与阈值进行比较,实现自动控制窗帘的移动,灯光的调节和蜂鸣器的警报。

图13阈值设定界面

四、结语

智能家居系统的设计和制作旨在为用户提供更加便捷、舒适和智能化的家庭生活体验。本项目通过整合STM32微处理器、电子电路、传感器和无线通信技术,成功实现了窗帘模块控制、烟雾控制模块、温湿度模块、蜂鸣器控制模块和语音识别模块等硬件部分。同时,通过开发手机app与蓝牙模块的连接,用户可以通过智能终端设备轻松地远程操控和监测家居中的设备。

参考文献:

[1]李素.基于Stm32的智能家居系统[J].电子制作,2022,30(09):31-33.

[2]林玩杰,李水峰,毛立夫等.基于STM32智能家居控制系统的设计[J].电子设计工程,2019,27(24):176-180.

[3]李晓红,付江豪.基于物联网的STM32单片机智能家居系统设计[J].电子制作,2023,31(17):23-25.

[4]黄晓斌. 一种基于STM32单片机的多功能智能家居控制系统[D].西安电子科技大学,2022.

[5]管小明,王孚贵,李士龙.基于STM32的智能家居管理系统设计[J].电子制作,2023,31(19):40-42+66.

[6]博客园.白少木丿.Android系统编程入门系列之硬件交互——通信硬件Bluetooth[z].[2022-01-30].https://www.cnblogs.com/BobGo/p/15844444.html

[7]田卫坤.基于MCU的智能家居设计系统[J].长江信息通信,2022,35(06):86-88.

[8]  CSDN.Yngz_Miao.[常用模块]HC-05蓝牙串口通信模块使用详解(实例:手机蓝牙控制STM32单片机)[z].[ 2018-05-19].https://blog.csdn.net/qq_38410730/article/details/80368485

项目资助:重庆市中小学创新人才培养工程研究项目(CY230703)