郝 刚,覃争鸣,梁 鹏,齐建阳,吴光鸿
(1.广东技术师范大学计算机科学学院,广东 广州 510665;2.广州映博智能科技有限公司,广东 广州 510620)
根据联合国的人口测算数据显示,从2012年开始,中国进入了人口老龄化快速发展阶段。60岁以上老人将由最初的1.78亿逐步增加到2.21亿,且老年人口比例也从原先的13.3%增加到16%。预计到2025年,中国的老年人口将会增加到2.84亿,占全国总人口的19.3%,这将会使中国的养老服务面临巨大的挑战[1]。
心血管疾病死亡率一直居高不下,而老龄人作为心血管疾病高发人群,随着中国老龄化社会来临,势必会加重这一情况。但由于心血管疾病的突发性,心血管病人只能借助于传统的疾病诊断方式,在医院住院并随身佩戴专业监测设备,结合医学专家的专业知识,进行心血管疾病的监控及治疗[2]。虽然该方式科学且精确,但整个过程极其烦琐、复杂,不便实施。而且,人们常常觉得自己身体健康,因此疏于体检,于是便提高了患高发疾病的潜在风险。倘若能利用无障碍的穿戴式设备,在用户的日常生活中对其进行监测分析,则可尽可能地降低这一风险。面对老龄化社会带来的大量空巢老人,对老龄人心血管疾病进行实时监控,并在疾病发生的第一时间获取预警进行治疗将变得极其重要[3-4]。传统的心血管传感器由于精度和用户佩戴习惯的原因,难以确保其精确度和准确性能满足临床医学的要求[5]。目前国内出现了一部分养老陪伴机器人[6-8],但主要面向的是老年人的情感诉求,解决空巢老人的心理问题。
为此,本文通过将智能手环和服务机器人进行结合,对服务机器人的特殊情况预警、室内定位及精确导航技术进行研究,与现有机器人本体及相关技术结合,开发基于物联网及大数据分析的智能机器人家庭监护预警系统。利用智能机器人实现对独居老人的监护,为大量的空巢老人提供健康保证,不但能够满足当前空巢老人看护市场的急切需求,而且还有利于提高空巢老人的晚年生活质量,对于促进社会健康和谐发展有着重要意义。
为实现上述目标,本系统主要分为数据采集层、数据传输控制层、数据处理层和应用层4个层次,如图1所示。
图1 基于物联网的智能机器人家庭监护预警系统
数据采集层包括用户个体、可穿戴式设备(含基于光电容积脉搏波描记法PPG技术的心律传感器、基于蓝牙4.0的通信设备)以及基于蓝牙协议的iBeacon三点室内定位技术对可佩带设备进行定位;数据传输控制层包括基于智能移动终端APP;数据处理层包括基于JSP技术的后台服务处理程序以及疾病数据监测深度学习网络模型;应用层包括智能机器人本体(配备500万像素数字摄像头和Ⅴ段频无线麦克风等)。以下将对具体的实现部分进行详细说明。
可佩戴设备:利用搭载了Ti CC2541蓝牙通信模块以及Pulse Sensor心律传感器的开发板,并采用基于蓝牙Beacon的室内三点定位技术实现对可佩戴设备的定位。
数据传输:通过在支持蓝牙4.0及能上网的智能手机上开发的APP提供数据交互。
后台服务器程序:部署在大数据分布式云计算平台上,通过HTTP通讯协议进行数据通讯。
疾病检测模型:基于深度置信网络预测方法对RRI序列进行异常检测。
智能机器人:使用激光雷达进行室内地图构建,采用基于D*算法实现机器人动态路径规划,并利用人脸识别技术实现用户查找。
用户正确佩戴健康手环,非特殊情况不要摘下,手环中的心律传感器将采集到的用户心跳序列通过蓝牙通讯实时传递给匹配的智能手机,手机端APP将收集到的心跳序列通过HTTP协议实时转发给后台云服务器,后台程序通过疾病检测模型对收到的心跳序列进行实时检测,并将异常检测结果连同心跳序列及采集时间一同存入数据库中,与此同时,绘制动态心跳曲线图,以供管理者查询。当用户心跳数据异常时,心跳曲线图将会产生明显异样(曲线变红色),后台将通过HTTP协议向智能手机发送预警信息,手机收到预警信息后,将通知手环进行定位,并将手环的位置坐标发送至智能机器人,智能机器人根据提前构建的室内地图以及手环的坐标,自主动态规划最优路线,并尽快移动到用户旁边,对用户进行询问,根据用户的回答采取相应操作。例如,若用户回答“不需要”等同义字样,智能机器人则回答“好的”,然后停在那里,等候用户指令;若用户回答“需要”等同义字样,或是机器人3次询问后仍无响应,则智能机器人立刻视频呼叫预设紧急联系人,并移交智能机器人的控制权限,由紧急联系人决定后续操作。
数据采集层需要实现利用智能手环采集佩戴者心律数据、将采集的数据通过手机作为中转传送至后台数据库以及实现对手环的定位。所以智能手环主要包括采集用户心律数据、定位手环、传输蓝牙数据3种功能。
使用基于光电容积脉搏波描记法(PPG)技术的心率传感器Pulse Sensor实现对手环佩戴者心律数据的采集;采用基于蓝牙Beacon的室内三点定位方案,实现对手环的定位;针对数据传输,本文采用CC2451芯片搭载CC2451蓝牙模块实现对采集数据的传输。
此处选用的基于蓝牙Beacon的室内三点定位技术,主要是利用蓝牙BLE4.0的beacon广播功能,在室内定点布置3个Beacon基站,Beacon基站将不断发送Beacon广播报文(报文内含发射功率),当搭载蓝牙4.0模块的可佩戴设备收到Beacon广播报文后,测量出接收功率,带入到功率衰减与距离关系的函数中,测算出距离该Beacon基站的距离。然后利用距离3个Beacon基站的距离,即可实现多点定位的功能。考虑到信号传输过程中受到的干扰,比如墙壁阻隔、同频干涉、信道问题等,本项目采用K近邻算法来对接收到的坐标进行预测,从而获取手环位置坐标。
K近邻算法提前获取室内数据,通过训练,将室内划分成多个区域,进而后续对手环位置做出预测,其定位原理如图2所示。
图2 基于蓝牙beacon定位原理图
数据传输控制层需要以智能手机为中转,将采集到的数据传送至后台,将后台预警数据以及手环位置传送给机器人,与此同时,手机用户界面还可根据需要实时显示中转数据。所以数据传输控制层主要包含以下2种功能,即图形化手机APP和数据交互。
使用基于移动平台实现的图形化手机APP,此APP实现用户BPM数据显示,同时能够连接后台、可佩戴设备和智能机器人,实现数据交互。
数据处理层需要实现根据接收到病人的实时心律数据进行疾病预测、保存并将其以图形化显示。所以针对后台数据,数据处理层主要包括后台服务框架的搭建、用户心律数据的存取、疾病预测以及数据可视化3种功能。
后台服务端采用JavaWeb技术实现,部署在Tomcat8.0服务器上,运行于云端,采用SQLSever 2015作为数据库。后台服务程序将接收到的心律数据保存至数据库之前,会先利用基于深度置信网络构建的疾病预测模型对该数据进行疾病预测,预测结果会随心率数据一同保存,与此同时,后台会根据预测结果进行图形化异常显示。
采用Socket技术来实现后端通讯服务,在TCP/UDP协议基础上构筑应用,且后台程序直接采用JSP的基础技术进行设计。这样做的好处是可以支持长连接、网络流量小、设计简单。
使用tensorflow深度学习框架搭建基于深度置信网络的疾病检测模型,主要包括1个输入层、2个RBM、1个输出层。
输入层:从1个RRI序列中采样100个采样点以及1个BPM信号作为输入层的输入。
隐藏层:每层隐层为1个玻尔兹曼机,其中计算得出隐含层节点数量m为:
式(1)中:n为输入层节点数;l为输出层节点数;a为1~10之间的常数。经计算及实验参数调优,设置隐层节点数m为30。
输出层:输出预测结果。
以心梗病人为例,事先将收集的心梗病人与非心梗病人的心跳数据(RRI序列集)及血压数据用于模型的训练,将训练的模型保存并嵌入数据处理层。
经训练的预测模型的输入层通过实时对输入的心跳RRI序列进行预测。以心梗病人为例,当预测结果为0时表示正常,当预测结果为1时表示手环佩戴者存在心梗发作风险,数据处理层产生一个预警信号。
应用层以智能机器人作为实现硬件。智能机器人获得手环定位后,根据位置坐标进行室内自主导航,移动到手环佩戴者位置并做出语音交互。所以机器人端主要包括室内空间建模、机器人动态路经规划、人机交互3种功能。
室内空间建模实现机器人初次使用时,根据用户室内布局,使用激光雷达作为外部传感器对室内进行地图建模,形成一个栅格静态地图;机器人动态路径规划实现智能机器人根据已知手环坐标以及室内地图采用D*算法实现机器人动态路径规划移动到手环佩戴者身边;当机器人来到手环佩戴者身边时,会开启语音交互功能,对用户做出询问,根据用户反馈结果做出相应动作。
本项目采用D*算法,先用Dijstra算法从目标节点G向起始节点进行搜索,计算路网中目标点到各个节点的最短路径h以及该位置到目标点的实际值k,并存储各个节点到目标节点最短路径的父节点信息。当原始路径上各个节点未发生堵塞时,行进路径为Dijstra计算得到的最优路径即h等于k。
根据保存的节点信息,机器人沿最短路开始移动,在移动的下一节点没有变化时,无需计算,利用上一步Dijstra计算出的最短路信息从出发点向后追述即可,当在Y点探测到下一节点X状态发生改变,如堵塞。机器人首先调整自己在当前位置Y到目标点G的实际值h(Y),h(Y)=X到Y的新权值c(X,Y)+X的原实际值h(X),X为下一节点(到目标点方向Y→X→G),Y是当前点。k值取h值变化前后的最小值。
本文通过研发面向老年看护的健康手环室内定位及智能机器人精准导航技术,通过在智能机器人本体上的适配工作,实现基于物联网的智能机器人家庭监护预警系统。满足当前独居老人看护市场的迫切需求,促进社会和谐发展。尤其对于老年人群,通过大量人体监测的系列数据,发现心脑血管疾病等高发性疾病的潜在特征,并给出提醒及建议。