智慧掌上家居系统研究与设计
2023-10-20谢晋阳李明亮谢桂芳
谢晋阳, 李明亮,谢桂芳*
(1.湘南学院资产与实验室建设管理处,郴州 423000;2.湘南学院计算机与人工智能学院,郴州 423000)
0 引言
随着社会经济的飞速发展、科学技术的不断提高,以及国家政策对人工智能领域的大力扶持和推动,“智能化”“自动化”“便捷化”的生活已成为每个人的期待和向往。当前,智能家居行业的发展处在一个上升阶段,智能家居这条“赛道”前景可观,有较为充裕的市场空间,各种品牌、各种类型的智能设备也在不断地涌现[1]。
面对不断发展的智能家居市场与不断涌现的智能家居产品,我国绝大多数消费者对此持乐观态度。根据有关调查和数据显示,在智能家居设备的使用习惯方面,我国消费者主要偏好语音交互,其次是手机平台控制;在智能产品消费过程中,我国消费者对于智能家居隐私安全性有着较高要求。此外,大部分消费者认为市面上现有的智能家居设备存在系统造价贵、使用方法复杂、不同品牌兼容性差、系统安全没有保障等问题[1],这些问题成为阻碍消费者使用智能家居产品的主要因素。因此,本文针对这些问题展开研究,设计一款集安全、便捷、低成本于一体的掌上智慧家居系统。
1 智慧掌上家居系统研究
1.1 已有的相关研究
随着科学技术的不断进步,计算机控制技术和电子通信技术的发展以及消费者对生活环境的高效便捷需求的提高,传统家居行业的智能化是发展的必然结果。因此,对智能家居的研究已成为国内外关注的重点。国内学者,陈明忠等[2]设计了基于STM32 和云平台的智能家居控制系统。于浩等[3]研究了基于GPRS 的智能门锁系统的设计,他们认为,由于GPRS技术性能稳定、覆盖范围广、不需要重建网络,因此操作简单。刘文林等[4]设计的基于GPRS 短信通信的低功耗智能家居系统,能将各模块结合起来,高效便捷地管理家庭,且大大降低系统功耗。国外对智能家居系统的研究主要分为两部分。首先,对智能家居系统的设计进行了研究,如意大利的Sinico[5]讨论了视觉设计因素对系统防盗门感知安全性的影响,并通过实验验证了不同防盗门模型对感知安全性的影响。其次,对智能家居系统的实现技术进行了研究,如Poddar等[6]采用基于图像处理的人脸识别家庭安防系统得到了广泛的发展。系统中的人脸检测采用Haar-Cascade 方法。此外,还采用精密度测试、距离测试、面部表情测试和光照条件测试。
国内外学者的相关研究已经满足了人们对智能家居和舒适家居生活的基本要求,但仍存在功能单一、防盗能力差、智能化程度低、使用繁琐等问题,因此开展智慧家居系统的研究与设计势在必行。
1.2 本文研究的主要内容
针对已有的相关研究所存在的不足,论文将重点从以下六个方面展开研究:
(1)智能解锁。系统不具备实体钥匙,门本身没有“钥匙孔”,唯一的“钥匙”是授权微信账号,用户可通过指纹解锁、人脸识别、密码解锁等方式进行解锁[7]。
(2)安防监控。用户可使用微信小程序中的视频监控实时查看监视区域内的家居状况。当系统监测到家居存在安全隐患时,会立刻发出警报并发送短信提醒用户,让用户第一时间发现并处理安全隐患。
(3)环境调节。用户可根据系统感应器接收到的感应信号选择是否开启相关设备进行环境调控,如降低或增加室内温度和湿度,或者光线过量是否需要打开窗帘,下雨了将晾衣杆收回等。
(4)家电控制。用户既可单个地控制家电的开和关,也可一次性控制多个家电开关,比如出门场景,用户点击开启后,家中所有电器如电灯、加湿器等将全部关闭,避免出现用户出门忘关电器出现的不可预测的危险。
(5)语音助手。用户通过语音助手可以更快速、更方便地实现家电控制、语音闲聊、天气查询等。
(6)扩展功能。系统除了具有上述主要功能外,还具有家庭管理、天气预报、系统日志等可扩展的功能。
2 智慧掌上家居系统设计
系统设计分硬件、软件、系统集成三部分,其系统架构如图1所示。
2.1 硬件设计
系统硬件部分使用树莓派作为核心部件,各类传感器以及各种应用类器件作为扩展部分,通过GPIO 口与树莓派连接起来。系统硬件部分主要负责实现智能开锁、安防监控、环境调节、家电控制四个模块,给硬件部分写入程序前需先将Raspbian 系统烧入TF 卡中,接着启动系统,便能开始使用XShell进行编程。由于树莓派自带的GPIO 口不足以实现系统全部功能,故给树莓派添加一块GPIO 口扩展板,并使用fritzing 工具设计好树莓派连接模型,最后根据如图2所示的硬件组装模型将实物连接上。
图2 硬件组装模型
2.2 软件设计
软件部分以微信小程序实现用户控制界面,SpringBoo 框架实现微信小程序后台服务器的开发,两者结合类似前后端分离项目,通过后台提供的接口,来实现各种功能,系统功能框架如图3所示。
图3 系统功能框架
2.3 系统集成
使用Wi-Fi协议将软硬件连接起来。在同一局域网下用户使用手机时,用户的任何操作都会以信号的形式发送到微信小程序后台,后台接收到这些信号后还要进行逻辑处理。系统控制原理如图4所示。
图4 系统控制原理
3 智慧掌上家居系统实现
3.1 智能开锁实现
使用SG90 舵机模拟防盗门,舵机的控制需要一个20 ms左右的时基脉冲,该脉冲的高电平部分一般为0.5~2.5 ms[8]。树莓派通过GPIO 引脚连接触摸传感器,触摸传感器收到高电平信号,可向MQTT 服务器touch 主题发送“访客通知”消息,用户接收到消息后,可使用微信小程序实时监控功能查看情况,核实访客身份,进行远程开门。
3.2 安防监控实现
树莓派通过扩展板GPIO 引脚连接传感器,其中包括振动传感器、MQ-2 烟雾气体传感器、热释电人体红外传感器。当门身受到剧烈破坏时,振动传感器发出高电平信号,蜂鸣器报警,树莓派MQTT客户端向invade主题发送“入侵警告”消息,手机MQTT 客户端订阅主题并接收到消息后向用户微信推送报警信息。对于震动传感器感应到门身受到破坏的程度,可通过设置能量阈值的方式,如果采集信号的能量过小,比如只是有人简单的敲了下门,对于这类能量过小的阈值信号直接抛弃掉。一旦能量超过阈值所设定的范围,便立刻报警[9]。MQ-2 烟雾气体传感器则用于预防火焰危险,当周围烟雾浓度过高时,可发出报警信号,提醒用户做出相应预防措施。热释电人体红外传感器则可以通过输出电平的方式感应到附近是否有人长时间逗留,当有人经过时,感应器收到感应后系统拍下路人样貌,如果有人长时间逗留,则系统发送报警信号到用户手机。
视频监控功能则使用到MJPG-Streamer 技术,涉及硬件设备为摄像头,安装好摄像头后在终端模式下输入“lsusb”查看树莓派USB 接口连接情况。当摄像头安装成功后,接着需要安装MJPG-Streamer,最后启动MJPG-Streamer便可实现实时监控功能[10]。
3.3 环境调节实现
通过温湿度传感器模块、雨滴传感器模块、声音传感器模块、人体红外传感器模块等传感器实现家居环境参数的收集,并发送给用户端,用户使用微信小程序可以查看收集到的数据,调节室内环境。环境调节模块涉及的硬件器件除了加湿器模块必须通过树莓派开发板USB 口供电以外,其它器件都是直接连接在树莓派扩展板的GPIO 口上的。故为使用加湿器对室内湿度进行控制,必须在树莓派系统中安装uhubctrl以控制USB接口,安装命令如下:
安装成功则会提示“success”信息,否则安装失败,需根据报错信息重新安装。安装uhubctl 后便可实现对树莓派USB 接口的控制,以下是控制USB口关闭和打开的命令。
3.4 语音助手实现
使用微信小程序的一个小插件“微信同声传译”,在微信公众平台添加,添加后需在根目录app.json 文件中配置,同时还需为系统编写接口,用来对应用户输入和系统输出。
3.5 家电控制实现
微信小程序将收到的用户点击事件信号发送到系统SpringBoot 后台,后台根据写入程序处理信号后上传至云服务器中等待树莓派端服务器接收,树莓派端服务器接收后同样将信号处理后再对相应器件进行控制,整个过程用时在5 ms 内,从而保证用户体验。一键场景控制则需要用户提前设置好,之后点击该控制开关便能一次性控制多个家电开关。
初次使用家电控制模块前需在Linux 环境下配置MQTT 服务器,之后再使用只需打开服务器即可。配置MQTT服务器步骤及命令如下:
(1)解压EMQ X zip文件;
(2)启动以控制台调试模式emqx,检查EMQ X是否可以正常启动;
(3)安装成功,会出现如图5 输出,否则安装失败,需重新安装。
图5 EMQ X安装成功控制台输出
(4)安装成功后,使用时打开服务器即可(系统启动时自动开启)。
3.6 扩展工具实现
扩展工具所有功能都需使用到MySQL 数据库,通过微信小程序与SpringBoot 后台传递数据,如记账功能则是将用户记录的账单信息保存到MySQL 数据库中,并在用户查看时调用数据库内容渲染出来。
4 结语
当前,智能家居行业的发展虽处在上升阶段且前景可观,但当前市场上大部分的同类型产品价格都偏高,并且由于不同品牌之间的差异性,导致不同产品之间的互联程度较差,部分产品对于使用者的隐私保护也没有引起足够的重视。本文设计的掌上家居系统是采用树莓派作为核心硬件,以微信小程序作为开发平台,在具体开发过程中,采用嵌入式、云处理、物联网、人工智能、边缘计算等先进技术,实现物与物、物与人的泛在连接,为用户提供更便捷、更高效、更安全的智慧家居生活。