智能居家养老健康助手系统设计

                      2019-11-06 06:11:49 物联网技术 2019年9期

                      燕丽红 王安斌 陈莲琴

                      摘 要:中国老龄化问题日趋严重,“70”后、“80”后面对“4-2-1”的中国模式,如何更好工作的同时又能够更好的尽孝,这是一个问题。为了解决这个矛盾,利用嵌入式技术和Java技术设计了一款智能居家养老健康助手系统。该系统采用STM32F4作为控制中心,利用不同的传感器组成传感器组,分模块对老人居家生理特征,如心率、体温等方面的数据进行采集、分析和设计。最后采用软硬联调对老人居家的健康数据特征进行了测试。结果表明,该系统能及时、有效记录老人的健康数据,帮助子女对老人的健康状况进行分析,有效提升了居家老人的生活幸福指数,也为老人和子女的和谐生活提供了条件。

                      关键词:养老健康助手;智能居家;生理特征;心率传感器;健康数据特征;Java技术

                      中图分类号:TP387;G642文献标识码:A文章编号:2095-1302(2019)09-00-02

                      0 引 言

                      人口统计数据显示,我国从1999年进入人口老龄化社会到2017年的18年间,老年人口净增1.1亿。截至2018年底[1-2],我国60岁及以上老年人口有2.49亿人,占总人口的17.9%,预计到2050年前后,我国老年人口数将达到峰值4.87亿,占总人口的34.9%。随着老人年数量的日益增长,作为中国正值中青年的“70”后、“80”后,一边要为家庭生活和子女的教育努力拼搏,一边又要为生育养育自己的父母尽孝,面对“4-2-1”的中国生活模式[3-4],中青年的生活压力和尽孝的矛盾越来越突出。那么如何让年轻人既可以很好的工作,又能及时对老人的生活进行关照,并对突发情况能尽早掌握和及时处理?本文基于嵌入式技术和Java技术设计了一款居家老人生理健康数据记录和监控的系统,可以及时记录居家老人与健康有关的指数,包括血压、体重、心率等,这样就可以让子女对父母的身体状况进行监控,如遇问题可尽早做出处理,有效提高了居家老人生活的幸福指数。

                      1 系统的总体设计

                      1.1 系统设计方案

                      本系统主要采用STM32作为主控芯片以及模块化的设计结构,采用人体红外体温传感器(GY-MCU90615传感器)对体温检测,同时选用心率传感器(PulseSensor)进行心率检测。通过主控芯片处理后,将检测的人体健康数据及时传输到显示屏(OLED)中,并对居家老人的健康状态进行及时记录,同时采用Java技术进行界面设计,为子女的实时监护提供一定的有效依据。系统总体设计结构如图1所示。

                      1.2 系统设计环境分析

                      (1)系统软件采用Keil编译环境,该软件易于进行系统集成并具有强大的调试功能。

                      (2)硬件仿真软件采用Proteus环境,并通过OLED显示实时分析数据等。

                      (3)利用Java技术进行人机界面设计,可有效对人体生理参数进行显示和分析。

                      2 基于Java的智能居家养老健康助手系统设计

                      2.1 系统的硬件设计

                      (1)STM32F4开发板原理说明

                      本系统采用STM32F407VET6作为主控芯片,该芯片具有高性能、低功耗、实时性强、开发成本低、外设丰富、模型丰富、开发容易等特点。其以ARM CORTEX-M4 32位TISC为内核,额定工作频率为168 MHz,210 DMIPS/1.25 DMIPS,额定工作电压[5-6]为1.8~3.6 V。

                      (2)心率传感器原理说明

                      心率与脉搏是一样的,因此测心率就相当于测脉搏。脉搏传感器指的是用于检测脉搏相关信号的传感器。本设计采用静态心率检测,采用的传感器为心率传感器(PulseSensor) [7-8]。PulseSensor是一款用于脉搏心率测量的光电反射式模拟传感器,其基本原理是利用人体组织在血管搏动时造成透光率不同来进行脉搏测量的。

                      (3)红外温度传感器

                      GY-MCU90615是一种低成本的红外温度模块[9-10]。其工作原理是通过单片机读取红外温度数据,输出方式为串口通信。串口波特率有9 600 b/s和115 200 b/s,有连续输出和查询输出两种方式,可以适应不同的工作环境。其温度计算方法为:温度=高8位<<8|低8位。

                      ①发送指令A5,45,EA,接收到一帧数据:<5A- 5A- 45- 04- 0C- 78- 0D- 19- A7 >;

                      ②表示 TO(有符号16 bit,表示目标温度):TO= 0x0C78/100=31.92 ℃;

                      ③表示TA(有符号16 bit,表示环境温度):TA= 0x0D19/100=33.53 ℃。

                      2.2 基于ARM/Java的居家养老生理健康平台设计

                      2.3 系统测试

                      使用J-Link下载线将STM32开发板与计算机相连。老人手指放在与STM32开发板相连的心率传感器(PulseSensor)和温度传感器上,就可以看到OLED显示屏上分别显示出测得单位时间内的心率值、实时温度值和健康状态。系统经过调试,测试结果如图2所示。通过显示屏可以及时记录和监测居家老人的生理参数,有效提升老人的居家幸福指数。

                      3 结 语

                      本文利用嵌入式技术和Java技术设计了一款智能居家养老健康助手系统。该系统利用嵌入式技术和Java技术,结合人体生理需求,采用STM32F4为控制核心,进行生理参数检测模块和体温检测模块的设计,重点分析心率和体温模块的设计并进行了系统测试。结果表明,该系统具有实时、及时反馈的特点,可以实时监控居家老人的基本生理特征,有效帮助子女对老人的身体状况进行掌握,以便做出及时的处理,有效提升了家庭的和谐幸福指数。

                      参 考 文 献

                      [1]蔡丽娜.基于物联网的养老管理系统设计与实现[D].杭州:浙江工业大学,2015.

                      [2]苗素贞,彭平.基于物联网技术的社区养老管理系统的研究[J].广东技术师范学院学报,2014,35(3):15-20.

                      [3]燕麗红.基于物联网的智能居家养老系统的分析与研究[J].电脑知识与技术,2017,13(11):247-248.

                      [4]燕丽红.物联网智能居家养老系统与服务云平台的设计[J].科技视界,2018(28):131-132.

                      [5]仉长娟.面向养老院的健康管理服务设计研究[D].无锡:江南大学,2017.

                      [6]蔡金芷,皮喜田,刘洪英,等.个人健康管理系统数据库的设计与实现[J].计算机测量与控制,2017,25(7):222-224.

                      [7]朱雯.基于移动互联网的个人健康管理软件设计与实现[D].成都:电子科技大学,2017.

                      [8]谢志刚.基于智能设备的个人云健康系统的设计与实现[D].沈阳:东北大学,2016.

                      [9]陈可,皮喜田,刘洪英,等.个人健康信息采集终端系统设计[J].医疗卫生装备,2017,38(3):11-13.

                      [10]孟维君.用于老人健康监护的无线数据传输技术研究与个人终端应用设计[D].苏州:苏州大学,2016.

                      (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();