基于NB-IoT 的智慧医疗远程监控系统的研究与设计
2022-07-11叶晓晶
叶晓晶
(福建警察学院计算机与信息安全管理系 福建省福州市 350000)
随着互联网技术的飞速进步,延伸出了物联网技术这一信息承载体,使得所有可以寻址的普通物理对象变得互联互通,并且这种互联互通实现了任何时间、任何地点相连。基于这样的特点,其在工业领域得到了广泛应用,可以说有工业的地方就有物联网。5G 技术的成熟推广、康复与养老需求的锐增,让智慧医疗、远程医疗在大型医院逐渐普及,诞生了医疗健康与物联网技术融合的健康IoT 行业,因贴近消费者且应用场景高频次从而受到各国政府的关注与资本的青睐。后疫情时代,智能健康IoT 成为体征监测数据及健康管理服务的入口。据Markets and Markets 分析,2020 年全球IoMT 市场规模为725 亿美元,医疗物联网设备安装量在1.61亿,单从市场产值和连接设备来看,健康IoT 在万亿物联网行业中仍然处于新生阶段。专家预测2025 年全球医疗物联网市场规模有望达到1882 亿美元。中国信通院认为,未来医疗物联网有望成为我国仅次于工业物联网的第二大物联网应用领域。根据IDC 统计,当前医疗健康物联网的硬件组件数目庞大(30.6%),智慧医疗设备也是IoMT 市场中规模最大的细分领域(33%)。2020年10月国务院三部委发布的《智慧健康养老产品及服务推广目录》中,明确展示了可穿戴健康管理设备、便携式健康监测设备、自助式健康检测设备、智能养老监护设备、家庭服务机器人五大品类共118 项健康IoT 产品。健康监测设备通常用来提高诊断治疗的效率和精度,通过实时监控患者的行为与健康状况,来简化医疗工作者在临床处理信息的流程,并作出及时干预。
NB-IoT 作为IoT 领域基于蜂窝的窄带物联网的一种新兴技术,支持低功耗设备进行数据连接,NB-IoT 作为低功耗广域网络中的突出技术,支持待机时间短、对网络连接要求较高设备的高效连接广泛应用于各种垂直行业,为物联网行业的发展带来了巨大动力,并且其独特的优势能够满足智慧医疗设备的要求。
1 智慧医疗远程监控系统的硬件设计
1.1 系统总体硬件设计
如图1 所示,系统的硬件系统主要由传感器模块,包含血氧传感器,用来测血氧功能,事实上是通过测量人体动脉血氧饱和度来判断是否健康,血氧饱和度具体是指血液中与氧气结合的血红蛋白含量占比,即血液中血氧的浓度。传统的血氧测量方法,需要先采血,在经过血气分析仪进行电化学分析,最终得出血样饱和度,如今采用无创式血氧测量,血氧测量模块选用的是MAX30102 传感器,它的工作原理是根据血液中氧合血红蛋白和脱氧合血红蛋白对红光和红外光的吸收率不同的特点,进行分析处理。红外体温传感器选用的是MLX90614 系列测温模块,具有非接触和精度高的特点,测温原理是物体表面温度对红外辐射能量的大小和波长的分布有影响。电容式输液传感器是由555 定时器电路及其周围电路组成,原理是液体的流动会改变电压值,收集从ANA OUT 引脚和地线引脚之间传输过来的电压差,将变化值传入处理器分析可判断有无液体流动。通过这些传感器源源不断的采集数据,将数据传入微控制器中,使用的是STM32 为主控制器,所有的控制指令都是从MCU 电路发出去执行的,其有着片上资源丰富、性价比超高的特点,比如具有休眠、待机功能,使得功耗降低。本系统使用的电源系统是多功能的,既可以进行充电使用,也为了避免突然断电而准备的备用电池,使用的是3.7V 的锂电池,NB-IoT 电路设计使用的是LDO 作为供电电源,通过LDO 来调配出各个元器件所需的5V 和3.3V 的电压。显示屏可以将重要的信息进行显示,方便操作员进行观察,能够直观的将系统状况进行展示。
图1: 系统硬件电路设计图
1.2 温度测量模块硬件设计
传统的测温方式采用的是接触式,典型的就是温度计,通过温度计里面的液体在于物体接触后,将物体的温度进行热传递,利用固体、液体、气体受温度的影响而热胀冷缩等的现象,就可以计算出所接触的物体温度。传统的测温方式最大的问题就是时间问题,当温度需要达到稳定时才能准去读出数据,于是本系统采用非接触式测温方式,测温原理是利用物体表面温度对红外辐射能量的大小和波长分布的影响,因此通过对物体自身辐射的红外能量的测量,便能准确地测定它的表面温度,并且有很多优点,由于本系统是面向医学领域的,在测量时优势在于不用直接接触到患者,这就一定程度上避免传染危险,保障医疗工作者自身安全,而且可以快速测温、准确读数,用于快速排查大批量的人群。另外,利用激光定位,能够准确测量目标部位的温度,可测额头、腋下、体表等各处体温。
1.3 功能设计
1.3.1 数据采集与传输
该系统的数据采集由血压、体温心电血氧二合一传感器组成,分别采集人体的收缩压/舒张压、体温、心电频率和血氧饱和度,在准确的心电频率和血氧饱和度下,通过算法计算出呼吸频率的值。
1.3.2 手机APP
该移动应用程序作为远程医疗检测系统的终端设备。监控终端通过连接蓝牙设备接收传感器发送的数据,并对数据进行分析处理,将数据界面化,同时可进行实时数据分享,远程交互,数据存储以及信息云端管理等。
1.3.3 生理信号采集
本系统体温传感器采用DS18B20 数字传感模块,采集人体腋下温度,在检测体温时,应将体温传感器的金属探头置于腋下,待检测到的温度稳定后,读取体温值。
心电图和血氧二合一传感器采集人体的心率和血氧饱和度。该传感器采用三级导线设计来采集心率。结果数据包括心率和5 个心电图波形值。血氧饱和度由数字血氧探头测量。探头发出的红外光照射手指红细胞,由探头射出的红外光照射手指血红细胞,从而计算血氧饱和度。血压传感器采用KB-08B 模块,主要通过气泵的充气和放气,检测被通气管挤压的手臂血管的压力变化,计算收缩压和舒张压的具体值。与其他传感器不同,血压传感器不需要4 小时连续监测。通过智能终端发送的命令启动码来决定是否启动测量。
2 智慧医疗远程监控系统的软件设计
2.1 系统总体软件设计
系统的软件设计主要完成各个硬件的驱动和LiteOS 任务,这两个部分通过main.c 文件进行有机连接,在主函数文件中,HardWare_Init()函数实现的功能是要对硬件设备的进行初始化操作,目的是将一些参数进行设定,为系统的循环运转做好准备。LOS_KernelInit()函数实现的功能是对物联网操作系统开始初始化,将系统内核进行预设;LOS_Start()函数实现的功能是开始执行任务,使系统一直循环运转,不断地驱动硬件系统对数据进行采集、分析和执行。
硬件驱动的程序放在Hardware 文件夹中,里面存放的是体温传感器的Temp 文件夹,输液传感器Infusion 文件夹和血氧传感器的BloodO2 文件夹,作为硬件的接口,操作系统通过这个接口控制各种传感器工作,使得计算机能够和硬件设备进行相互通信。系统的主要数据是传感器采集而来的血氧、体温和输液状态三种数据,为了更好的传输,先定义好一个存放数据的结构体变量,然后经过修饰符将此结构体变量传递到采集函数中,形成与采集函数之间的信息通道。
本系统的任务代码存放在工程目录Demos 文件夹下的HealthTask 文件夹,名为HealthTask.c,其作用是驱动系统的硬件系统,即传感器对数据进行采集,然后将信息送到处理器中进行分析处理,最后将需要显示的信息通过硬件显示模块进行展示。
2.2 NB-IoT模组软件设计
对NB-IoT 模组的调控通过AT 指令完成。AT 指令是用来控制TE 和MT 之间的通信规则的。在本模组中,USER就代表着使用者,TE 使用的是PC 端的串口调试工具,MT为该模组BC 35G,对NB-IoT 模组的调试与控制示意图如图2 所示。使用AT 指令来实现NB-IoT 模组的各项功能并对其行为进行操控,还可以将终端设备与PC 应用之间的进行交互。
图2: AT 命令控制示意图
2.3 智慧医疗远程监控系统的数据采集模块
数据采集模块是本系统的核心模块,其作用是通过各种传感器对患者实时进行信息采集,然后控制器再将传感器的信息读取,接着将采集的信息传递到后台,存储在数据库中,使得患者家属或医护工作者能够对患者情况有及时的了解;同时也可以接收到服务器传来的指令,然后进行信息的反馈,真正的实现远程操控。
控制器对生命体征传感器的数据读取都是通过RS485 通信方式实现的,采用RS485 通信带来很多优势,不仅稳定性高、可靠性强,而且采用的是主从通信模式,可实现多机并联,控制器作为主机通过广播地址的方式获取相应地址的传感器应答。数据采集终端的控制器通过RS485 总线接口电路与患者生命体征传感器连接,通过发送RS485 指令读取相应地址的传感器的数据,读取生命体征部分代码如下:
数据采集模块可以通过远程服务器存储患者的各项监测数据,监测中心可以从数据库中调取最近一周的数据,并通过一定的算法处理使数据可视化,从而更好地观察患者观察体温、血氧、输液情况在一段时间内的变化趋势。
2.4 终端驱动程序设计
监控终端驱动程序流程如图3 所示。系统初始化并通电后,首先执行启动检查,主要是网络连接。如果上位机平台此时未接收到来自NB-IoT 终端的数据,则网络连接失败,终端进入休眠状态。五分钟后再次尝试身份验证。如果启动成功,上位机平台将向NB-IoT 终端发送预置的配置指令。配置完成后,终端将认证信息和报警阈值、检测周期、定位数据等初始化参数发送到上位机平台。如果没有异常发生,系统会定期收集和上报该检查期间的数据。
图3: 终端驱动程序流程
3 智慧医疗远程监控系统的系统测试
系统测试在实验室完成,每次屏幕更新数据的时间间隔平均为7.136 秒,这个时间为硬件终端完成所有任务所需要的一轮时间。传感器的测试分为三个部分:血氧传感器、体温传感器和输液传感器的测量测试。
3.1 温度模块测试
本设计在温度数据比对上选用腋窝电子体温计和电子额温枪对比。记录如表1 所示。
表1: 体温测试数据表
由表1 中的数据可知,本系统体温计测试结果与腋窝温度计的读数较为接近,误差控制在0.2±0.1℃,如果以腋窝温度计为测量基准,则能够达到误差在±0.2℃的要求;而额温枪的测量数值普遍偏小1 至2℃,与腋窝温度计偏差较大。因此本系统体温计有更好的数据表现,更加接近腋窝温度计的测量数据。
3.2 血氧模块测试
本设计选用指夹式脉搏血氧仪和某公司生产的运动手环,经过实验发现,由于指夹式脉搏血氧仪要同时测量显示脉搏和血氧数据,在反应时间上会慢于本设计中的血氧测量设备。在系统上电稳定的状态下,从被测者手指就位到第一条血氧数据显示在屏幕上,指夹式脉搏血氧仪需要12 秒左右,本系统设备仅需要6 秒左右。运动手环所需时间与本设计设备相近。表2 是实验过程中测得的一组血氧数据。
表2: 血氧测试数据表
由于对比设备指夹式脉搏血氧仪和运动手环只显示整数型血氧数据,而本设计中使用的血氧算法可以达到小数点后两位的精度,因此只能将测量结果作为一个参考。指夹式血氧仪与本系统血氧设备数据组之间的差别范围在0.51%-1.89%之间;运动手环与本系统血氧设备数据组之间的差别范围在0.11%-0.95%之间。整体来说,三者的测量结果较为接近,本设计的测量结果与运动手环测得的血氧数据更加接近,本设计的血氧测量结果较为准确。
3.3 输液监测模块测试
在输液监测上,选择将电容传感器贴近被测输液管滴壶上部长度7cm 范围内的输液管。对ADC 采样阈值做测试,并将ADC的采样数据3200作为判断输液是否完毕的临界点,在测试过程中,发现输液监测器可以及时检测到输液完毕,并在12 秒内将输液完成的消息上报到物联网云平台,同时显示在NB-IoT 终端屏幕上。
4 结语
由监测需求和远程同步数据需求,本文设计了一种基于NB-IoT 的智慧医疗远程监控系统,并对系统主要功能进行测试,测试结果显示本设计不仅能够满足所提出的需求,较为精确地监测出了人体的体表温度、血氧含量以及输液状态,并且降低了硬件终端的功耗。该系统整体操作简单,通信准确可靠,使用方法简便。该智慧医疗远程监控系统能有效地改善医疗资源匮乏等问题,对提高社会医疗服务水平有积极的作用。