刘泽源,李来文,陈希明,裴永旭,黄楚俊,周 昕
(哈尔滨理工大学 计算机科学与技术学院,黑龙江 哈尔滨150080)
物联网(IoT,Internet of things)即“万物相连的互联网”,是互联网基础上的延伸和扩展的网络,将各种信息传感设备与互联网结合起来而形成的一个巨大网络,实现在任何时间、任何地点,人、机、物的互联互通[1]。物联网技术作为重要的第三信息技术,是在计算机技术和互联网技术后的一项重要技术,搭载计算机技术、感应技术以及智能化技术在各个经济发展领域发挥的作用越来越重要。在健康医疗领域、智能环境领域、个人和社会领域等,具有十分广阔的市场和应用前景[4]。在当今卧床病人数量持续增加、护工护理费用居高不下、病患家属难以随时贴身护理的现状下,借助物联网平台的便捷性、实时性和万物相连的特性,得以研究无需他人陪护的新型多功能护理床——基于OneNET 的多功能翻身床设计。
成年人皮肤正常的毛细血管压为2.1~4.4kPa,当局部组织承受超过此范围上限的压力时即可减少甚至阻断皮下毛细血管对组织的灌注,如果压迫时间超过2h,就可导致不可逆性损伤。患者因疾病原因被迫使身体处于某种固定的体位而无法自主变换,久而久之必然使该部位持续受压,从而出现局部皮肤组织坏死随即形成压疮[2]。本项目的研究成果,即多功能翻身床提供了病患、家属、医院三位一体的闭环管理。在传统护理床仅能为病人提供长期平躺支撑的基础上,通过床板的运动带动了病人身体的运动,通过改变身体与床的接触位置和角度来减小压强,以避免局部组织长时间承受过大的垂直压力,从根本上减少了压疮发生的可能性。本项目提供0~40 度的起背角度、0~45 度的屈腿角度和0~40 度的翻身角度,可以满足绝大多数患者的使用需求。
通过物联网技术和多种传感器的应用,病患家属使用手机App 即可远程控制病人的翻身和运动,实时查看病患的身体健康特征和病人的定时翻身等功能,大大减少了病患家属实时陪护的需求,缓解了病患家属的心理和生活负担。本翻身床还支持语音控制功能,方便行动不便但语言能力尚可的用户通过语音控制翻身床。
本项目在总体设计上分为四层,如图1 所示,其中,第一层为感知层,包括生命体征监控传感器和多个协同作用的电机,用以采集信息和实现功能;第二层为网络层,主要为OneNET 物联网平台;第三层为服务层,主体为运行于云服务器的后台管理系统和MySQL 数据库,存储用户信息和健康数据,以暴露接口及API 的方式屏蔽复杂的物联网平台操作,支撑客户端的实现;第四层为应用层,以网页、手机App 的方式为用户提供人性化的操作界面。
图1 系统总体结构图
OneNET 物联网云平台是中移物联网有限公司基于物联网技术和产业特点打造的开放平台和生态环境,适配多种网络环境和协议类型,支持各类传感器和智能硬件的快速接入和大数据服务,提供丰富的API、SDK 和开发手册以支持各类智能硬件设备和行业应用的开发,能够有效降低物联网应用开发和部署成本,满足物联网领域设备连接、协议适配、数据存储、数据安全、大数据分析等平台级服务需求[3]。
中移OneNET 物联网云平台提供了HTTP、TCP 穿透、EDP 和MQTT 等接入协议的支持,HTTP 接入方法使用成熟的HTTP 协议,将设备配对信息和安全授权信息存在HTTP 请求的head 内,将请求数据和消息存放在body 内,使用HTTP 协议典型的POST、GET 和PUT 等方法发送。由于本系统主要以硬件与后台服务器的信息传递为主要应用场景,故针对设备与设备间连通的MQTT协议和需要高自由度定制脚本的TCP 穿透不适用于本系统。而相比于复杂且主要针对长连接点对点控制的EDP 协议,HTTP 协议不仅简单易用,且拥有大量的开发工具和开发文档,易于项目开发与维护,故本系统使用HTTP 协议来处理硬件平台与云服务器的连接。
图2 硬件平台设计
OneNET 云平台以产品(product)表示整个项目,每个产品包括多个设备(device)、APIKey 和触发器(trigger),其中,设备是真实终端设备在项目中的映射,在本项目中,一张翻身床即注册为一个设备。每个设备可以配置多个数据流,一个数据流代表一个数据指标的数据记录,如温湿度、光强等。每个产品下还可以配置多个触发器,当触发器绑定的数据流达到阈值时,即可根据预设规则向后台服务器发送数据。
当涉及注册用户添加一个与多功能翻身床的关联需要在产品下新增设备的场景时,服务器向OneNET 平台提供的URL 为http://api.heclouds.com/devices 的接口发送POST 请求,并将设备相关信息添加到HTML 的body请求体中。由于在开发过程中已将项目需要的数据流以数据流模版的方法设定好,故添加设备时不需要再次手动添加数据流,提升了用户绑定翻身床时的速度和体验。在服务器查询指定设备当前的状态和生命体征信息或硬件平台向OneNET 云平台获取用户最新指定的电机转动角度,以实现用户需求等涉及到向OneNET 物联网云平台查询数据流信息的使用场景时,都使用URL 为http://api.heclouds.com/devices/device_id/datastreams 的API,该接口在使用时需通过GET 方法将需要请求的数据流名称以URL 请求参数的方式添加,并返回以JSON 形式封装的所有数据流指定时间段内的数据。
本项目硬件平台的设计如图2 所示,通过Arduino开发板控制机械结构来实现翻身护理功能,在此基础上再加上多种人体生命体征监测模块,多舵机协同工作来提供硬件层面的支持。Arduino 开发板根据从OneNET 平台获取到的调整位置和角度信息,让舵机转动特定角度控制相关操作。
网络通信方面,本项目选用ESP8286 芯片,具有较大的工作温度范围,能够为系统的运行提供稳定的通信服务,并提供了较高的集成度,芯片内集成了功率放大器、无线开关、射频巴伦和电源管理模块等,有效降低了外围电路的体积,减少了PCB 的空间占用。在网络连接上提供了家庭用户常见的WI-FI 连接方式,进一步降低了用户使用本系统的硬件要求。
温湿度监测模块采用DHT11,其测量范围为湿度20-90%RH,温度0~50℃,测量精度为湿度+-5%RH,温度+-2℃,传感器包括一个电阻式湿度传感器和一个NTC测温元件,该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。通过4 针单排引脚与STM32 开发板连接并传输单总线数字信号。
为了让患者自身也可以方便的控制翻身床,本项目增加了语音控制功能,语音控制模块采用科大讯飞XFS5152 芯片,该芯片支持30个命令词的识别,并支持用户的命令词定制需求。除此之外,该芯片还支持语音编码解码功能,用户可以使用芯片直接进行录音和播放。
基于对多用户管理、医院客户统一管理调控和数据记录分析的需求,服务层开发了运行于Cent OS7 系统的基于MVC 体系结构的后台管理程序,具有低耦合性、高重用性和高维护性的优势。在框架选择上使用了Spring+SpringMVC+MyBatis 框架整合。作为目前主流的Web 程序开发框架,SSM 框架整合使用为项目的开发和维护提供了更便捷的方式,其中,Spring 框架提供了IoC 控制反转和AOP 面向切面编程,利用控制翻转以降低类与类之间的依赖性并提高了类的重用性,并使用AOP 面向切面编程分离了核心业务代码和事物、日志等非核心业务代码,提高了代码的可维护性;SpringMVC 根据MVC 设计思想对web 业务解耦,简化了请求转发和视图管理代码的开发;MyBatis 作为数据对象的持久化引擎封装了传统JDBC,使代码对数据库的操作更为透明,并提供了类与SQL 语句的映射。
本项目在服务层添加了紧急提醒模块,在突发情况发生时,及时向指定的目标发送警报。首先针对病患家属和医院企业用户,在后台服务器开放一个接口,供OneNET 的触发器使用。当病患生命体征信息超过设置的阈值时,触发器向服务器指定的接口发送相关信息,服务器收到信息后使用简单邮件传输协议(SMTP)实现邮件发送,提醒有关用户和医院。紧急提醒模块使用观察者模式开发,将用户设置的紧急联系人和相关医护人员封装成实现观察者接口的类,加入本模块的观察者列表中,在需要通知相关人员时,遍历该列表,以实现逐个通知的目的。紧急提醒模块同样适用于本项目的开发运营与维护阶段,当系统硬件平台监测到异常或服务器信息获取失败时,同样通过紧急提醒模块向开发者和维护人员发送提醒信息。
为了提高本系统的安全性,通过使用firewalld 服务配置防火墙策略交由内核层面的nftables 包过滤框架过滤非法访问,由于本后台仅供多功能翻身床用户使用,故在端口方面通过firewall-cmd --zone=public --addport=portNum/tcp -permanent 命令仅开放HTTP 相关的80/8080/3128/8081/9098 端口,并禁止外部链接访问MySQL 使用的3306 端口,进一步提高安全性。
本项目在应用层面提供了包括手机App 多种操作方式,并向医院提供统一管理系统,良好满足绝大多数用户的使用需求。除此之外,本项目也提供了传统的安卓原生应用。应用层客户端同样通过HTTP 协议向服务器给出的接口,根据用户指令发送相关数据至服务层服务器,以完成操作。在程序的运行过程中定时向服务器获取病人周围环境情况,以更新主页的信息展示,后台服务器通过循环队列记录各项数据,供用户查看。
本项目基于OneNET 物联网云平台提供的万物互联互通、远程实时调控和互联网的方便快捷,为当今日益严重的压疮问题找到了一个低成本、便捷可行且节约人力物力的解决办法。通过较为成熟的物联网技术,结合软件开发、嵌入式开发和移动平台开发等技术,切实缓解了人们生活中的一些问题,是物联网技术走进普通民众生活的一次实践。