面向独居老人的智慧居家养老系统设计与实现

2022-08-29 12:14刘海亮何雅琳陈坚豪锦标
物联网技术 2022年8期
关键词:手环居家语音

刘海亮,何雅琳,陈坚豪,锦标,彭 剑,李 丹

(韶关学院 信息工程学院,广东 韶关 512005)

0 引 言

第七次全国人口普查结果显示,中国人口老龄化趋势进一步加剧。随着人口老龄化的趋势加剧及社会经济的快速发展,绝大多数老年人由于情感、生理机能等原因优选居家养老。我国独居老人数量逐渐增多,甚至残障或失能的独居老人占到六成以上,他们的自理能力受损严重,健康状况不容乐观。我国的养老保障体系和养老设施建设仍然不够完善,且传统的养老模式已不足以满足现今社会的养老要求,智慧居家养老系统应运而生。武汉侨亚爱爸妈居家养老服务设施具有老人GPS定位、自动体检、子女及时查看家中监控等功能,但产品人性化服务方面还有待提升;国外产品大多针对养老院,如日本的“真心香里园”使用了大量智能家居设备,结合远程医疗终端和智能机器人,可以最大程度给老人提供贴心服务,但设备价格较为昂贵,并不适用于中国居家养老社会现状。针对我国家庭养老技术问题,本文设计了一种面向独居老人的智慧居家养老系统,旨在为解决家庭养老问题提供一种新的选择。

1 系统需求分析与方案设计

1.1 系统需求分析

为满足智慧居家养老需要,智慧养老系统在实现基本功能的基础上还应考虑人性化设计,使其满足老年人其他需求,需求分析如下:

(1)老人可以通过语音与家居网关交互,同时优化语音识别系统,使语言命令的设定符合老人的生活习惯;

(2)手环上设置一键呼救功能,老人面临危险时可及时呼救;

(3)子女可以通过APP和微信小程序端查看室内环境数据、健康参数和老人居家实时图像;

(4)医生可以通过Web网页及时了解老人的疾病信息;

(5)对老人的健康监测信息进行收集和分析,并进行疾病预测。

1.2 系统方案设计

文中设计的面向独居老人的智慧居家养老系统由家居网关、手环终端、客户端及服务器端组成。

家居网关采用Raspberry Pi 3B作为主控,实现视频传输、百度语音交互等功能;采用STM32F407芯片设计手环,通过WiFi将采集的心率和血压上传到服务器OneNET云平台,并设置一键呼救系统。客户端包括小程序、APP和Web端,可满足用户在不同场景下的需求,在客户端可以通过API接口实时获取云平台数据,以及远程控制家居网关和手环;服务器端采用OneNET云平台,实现数据的云存储、上传和下发,并通过GA-BP神经网络对健康信息进行疾病预测。项目结构如图1所示。

图1 系统方案设计

2 系统硬件设计

2.1 智慧家居网关设计

2.1.1 Raspberry Pi 3B主控设计

智慧家居采用64 位四核 ARM Cortex-A53架构的Raspberry Pi 3B主控板,其配备1 GB LPDDR2存储器,集成了以太网、摄像头、显示器等接口,还具有双频WiFi和低功耗蓝牙功能,强劲的配置与通信能力为智慧家居的设计与实现提供了良好的开发环境,其架构如图2所示。

图2 Raspberry Pi 3B硬件架构

2.1.2 环境、安全、健康一体化服务

利用空气传感器MQ-135监测室内是否存在有害气体;通过烟雾、可燃气体传感器MQ-2判断可燃气体以及烟雾的浓度,当其浓度高于安全阈值时,通过SIM900A自动向监护人拨号求救;配备BH1750和DHT22,分别监测室内光照强度和温湿度,并通过百度语音交互来询问开关灯及推送定时服药提醒、最适穿衣等信息。

2.1.3 视频采集与传输

采用USB摄像头高速捕获室内环境图像,将图像通过USB总线传输到Raspberry Pi 3B处理器中,再以MJPG的方式进行压缩处理,打包生成UDP包,最后通过WiFi接口将数据传输到MJPG-streamer视频流服务器,辅助监护人远程监察老人的生活情况。采集与传输过程如图3所示。

图3 USB摄像头采集与传输视频过程

2.1.4 百度语音交互

本设计引入百度智能云的语音识别技术,其采用了类似神经网络的深度学习算法,实现了更高的识别精度。首先在百度智能云进行语音识别和语音合成配置,然后添加健康讲座、新闻广播等语义技能;当唤醒词被MIC识别后,将运用Snowboy实现语音唤醒,然后开始录音,录音被转换为WAV音频流文件,通过调用百度API上传至云服务器,匹配相应的语义技能。百度语音交互原理如图4所示。

图4 百度语音交互原理

2.2 智慧手环网关设计

2.2.1 STM32F407主控芯片

智慧手环采用STM32F407作为主控芯片,相比STM32F1系列芯片,其具有更先进的内核、更高的性能和更低的功耗,它的高速性处理能力适用于健康检测对心电信号的本地处理分析。

2.2.2 健康检测

血压心率传感器采用MKB0805,它具有自动增益、稳定性高、自动佩戴识别和脱离无输出功能;其使用了MCU算法,植入了心率血压算法,直接输出串口UART信号,简化了编译的工作量,简单可靠,方便使用。

2.2.3 数据采集和上传

运用MKB0805监测老人的心率和血压,将数据发送至STM32,再通过MQTT协议将其以数据流的形式传送到OneNET云平台。图5所示为心率和血压上传至OneNET云平台的过程。

图5 心率和血压上传至OneNET云平台流程

3 客户终端软件设计

客户终端由Web网页端、Android软件开发和微信小程序组成。监护人通过APP和小程序获取老人和居住环境的参数;医生利用Web网页查看病人的健康数据并管理病人。

3.1 Web网页端

Web网页基于Vue.js技术开发,运用HTML、CSS、JS进行页面的基本布局,结合Ajax、Node.js等技术渲染页面。该网页主要包括登录界面、老人管理界面和实时数据界面,如图6所示。

图6 网页操作功能

3.1.1 登录界面

用户登录后可进入系统主页,该界面对用户登录进行验证,建立Session会话,采用Ajax技术为登录表单设置请求地址和请求方式,与数据库的账号信息进行对比,通过对比进入系统主界面,否则返回登录错误信息。

3.1.2 老人管理界面

该界面对用户负责的老人进行管理,用户可对管理的老人进行添加和删除操作,点击页面“添加”或“删除”按钮后,通过表单对数据双向绑定,对数据库进行插入并删除信息。

3.1.3 实时数据界面

该界面负责将获取的最大心率以及静息血压实时数据展示给用户,采用折线图和柱状图等形式对数据进行可视化处理。选用Ajax技术,通过XMLHttpRequest对象向OneNET云平台发送异步请求,调用相应的API获取数据,数据以JSON格式返回JavaScript代码区,处理获取的数据并填充到对应DOM区域。

3.2 Android软件开发

APP用于实现对室内监控及环境参数的实时获取、查看老人身体健康状况和远程服药提醒。

3.2.1 实时接收数据模块

该模块负责从OneNET获取数据并展示在界面,该界面主要包括上下两部分。下半部分为视频监控区域,其负责跳转到MJPG-streamer视频流服务器;上半部分为环境参数、老人健康监测区域,采用调用API的方法获取数据并显示到数据区域。

3.2.2 语音提醒模块

该模块负责对设备语音功能的控制,主要用来提醒老人按时服用药物。本界面使用了Button组件并对其设置了监听事件,当用户点击“提醒服药”按钮时,将调用API给OneNET云平台下达命令,从而提醒老人服药。

3.3 微信小程序

微信小程序的开发与实现,极大地便利了监护人查看环境参数,及时了解老人身体状况的需要。微信小程序具有如下功能:

(1)环境安全监测。在微信小程序端可以查看采集的环境参数,一旦有害气体超过阈值,立即提醒老人及监护人。

(2)老人健康监测。通过MKB0805血压心率测量方案实现采集老人血压、心率数据的功能,同时可利用小程序实时掌握老人的健康情况。

图7所示为微信小程序操作功能图。

图7 微信小程序操作功能图

4 GA-BP神经网络心脏病预测算法

先将心脏病数据集划分为训练样本和测试样本,然后组建网络,接着通过遗传算法求解最优的权值和阈值,将最优解代入BP神经网络,再运用训练样本进行多次试验,得出一个拟合效果良好、预测精度较高的GA-BP神经网络模型,最后利用测试样本进行仿真,分析模型的可行性。

4.1 实验数据集

选取阿里云天池开源数据集Heart Disease UCI,根据相关性分析,引用了其中的年龄、性别、胸痛类型等13个特征属性和1个类别标签,数据集经过清洗与转换后,得到303条有效数据。实验中随机抽取80%的数据作为训练样本,将剩余的20%数据作为测试样本。

4.2 数据归一化处理

由于Sigmoid函数的取值范围为[0,1],故BP神经网络对此范围内的数据最灵敏,同时又因为特征属性的数值之间存在量纲或量纲单位的差异,因而在对网络训练之前需要对输入、输出数据进行归一化处理。

程序如下:

4.3 GA-BP神经网络的设计

4.3.1 隐含层节点数的确定

隐含层节点数可由式(1)确定:

式中,、和分别为输入层、输出层和隐含层的节点数,实验中取13,取1,的值为4。

4.3.2 搭建BP神经网络

为增强网络的表达能力,论文中选用非线性函数logsig作为隐含层的激活函数,在输出层选用线性函数purelin,以trainlm作为训练函数,搭建三层BP神经网络。

程序如下:

4.3.3 遗传算法优化BP神经网络

以隐含层和输出层的权值及阈值4个变量形成一条基因链,通过实数编码法对其进行编码,然后结合选择(繁殖)、交叉(重组)、变异(突变)操作算子,评估个体适应度,最后通过演化求得最优解。优化过程如图8所示。

图8 遗传算法优化BP神经网络的过程

4.3.4 网络训练

获取最优权值阈值后,接着完成网络的训练。程序如下:

期望值与预测值间的线性回归结果如图9所示。

图9 预测值与期望值的线性回归曲线

预测值与期望值的相关系数高达0.886 48,训练结果表明,该模型的拟合效果良好,模型具有较高的预测精度。

5 系统测试

5.1 数据分析端

表1列出了部分测试样本的期望值和预测值,以及两者的误差值。

表1 预测值与期望值对照表

表1测试样本中的15条测试结果,实验中61个测试样本得到的平均误差为0.1620,倘若视误差低于平均误差0.1620的情况为预测准确,则有46个测试样本满足条件,高达75.41%。该GA-BP神经网络模型具有较高的预测精度,在中老年人心脏病预测中效果显著。

5.2 居家养老系统

手机远程实时观察树莓派采集的视频,如图10所示。

图10 手机远程实时观察树莓派采集的视频

5.3 智慧手环端

OneNET云平台存储的数据如图11所示。

图11 OneNET云平台存储的心率和血压值

5.4 Android端

APP首页、用户界面、用户登录界面、用户注册界面和手机登录界面如图12所示。

图12 APP各界面效果

5.5 微信小程序端

图13为微信小程序首页效果图。

图13 微信小程序首页效果

5.6 Web端

Web数据可视化效果如图14所示。

图14 Web数据可视化效果

6 结 语

本文通过介绍面向独居老人的智慧居家养老系统的设计与实现,体现了该系统在生活中的实用性及其可行性。通过智慧手环和GA-BP神经网络对老人日常健康检测及心脏病风险预估进行了算法分析,子女和医生可通过客户端实时了解老人状况并为其制定健康方案。该系统既有利于子女对老人居家环境的监管,又有助于医生对老人健康状况的检测,有效降低了老人患心脏病的风险,促进了医疗方案的精准化。

猜你喜欢
手环居家语音
爱心手环
为您的居家健康生活 撑起一把保护绿伞
魔力语音
基于MATLAB的语音信号处理
基于MQ3与MP3的价廉物美的酒驾语音提醒器
staycation居家假期
对方正在输入……
红手环志愿者服务团欢迎您的加入
学习监测手环
麦开:放弃智能手环