郑 健
(湄洲湾职业技术学院,福建 莆田 351254)
静脉输液是临床医学常用的一种经静脉注入大量无菌溶液或药物的治疗手段[1].它作为一种非常重要的给药途径广泛应用于医疗行业,但近年来由于种种原因,在输液过程中导致诸多问题,引发一些不必要的事故,给患者带来一些安全隐患.经过笔者深入我市2 家三甲医院及多家民营医院,做了近五百份调查问卷,发现了一些输液方面的主要问题:所调研医院未能提供输液计时服务;其使用的输液泵只具备手动滴速控制功能,医护人员无法远程监控输液情况;患者自行调快滴速引发事故无法较好杜绝;输液结束时血液回流甚至空气栓塞等不良的后果无法得到警示或监控预警.
根据上述调研情况,本文设计了一种结合物联网技术、微信公众号、云平台的智能输液实时监控系统.系统结构图如图1所示,该系统在输液终端实现输液计时、滴速监控、滴速控制、余量报警、回流监控等功能,并通过ESP8266 无线传输模块把实时数据传输到云服务器,实现微信公众号查询、服务端监控、数据溯源等功能,为医护人员提供详细的输液相关信息,解决输液过程出现的滴速设置不当、换药不及时、血液回流等问题,极大提高输液的安全性和可靠性,同时数据为医疗管理部门监管提供基础,这也为患者提供一个更安全可靠的医疗环境,实现安全、可靠、智能的输液.
图1 智能输液系统结构图
该系统硬件基本组成及计数算法的概念设计在早期的论文中有涉及[2],系统的主要特征有:滴速,输液量,输液时间和结束预警等,主要通过检测点滴速率来计算.部分论文[3]有涉及到使用一些机器学习的算法进行较为精确的计算方式,但在硬件的成本及对时间的精度上的综合考虑还是采用点滴参数设定的计算方式.
本文使用Dr来代表滴速(gtt/min),V 代表点滴总容量(ml),T 代表已经注射时间(min),Df代表在系统初始根据输液设备的滴管形状及大小情况由医护人员设定的点滴参数(gtt/ml,临床上,一般系统预置为10,15,20,30),其中gtt 为滴的缩写.因此,gtt/ml 表示每ml 的点滴数,gtt/min 表示每分钟滴数.滴速用如公式(1)表示:
已经注射的容积用Vi代表,用公式(2)进行计算
因此,在输液开始时,点滴参数Df、所需的滴注速率Dr和所需的输注体积参数V是存储在系统中.系统实时检测并及时进行预警,当检测值超出阈值时进行警报.
该终端硬件设计外观如图2所示,外形为水滴流线造型,液晶屏显示输液速度、结束时间及相关状态,外置有警报蜂鸣器,键盘供医护人员进行初始设定.
图2 输液监控终端外观设计
其硬件结构如图3所示,主要包括滴速检测模块、液位检测模块、滴速控制模块、血液回流检测模块、预警模块、通信模块.
图3 输液终端结构
其中滴速检测模块主要用红外对射装置进行检测;液位检测设置其液位阈值,利用红外发送接收方式判定液位是否低于警戒线,并通知预警模块响应;预警模块主要用于接收预警信号并发出输液现场的警示及通知医护人员控制室内的蜂鸣器、LED 灯、数码管显示器等做出响应;滴速控制模块主要通过利用点滴瓶与输液位置的高度差可控制滴速的原理,使用电机拉动点滴瓶进行调速,以确保滴速在设定的阈值内;血液回流检测模块主要采用颜色识别传感器TCS3200D,该传感器可以静态识别物体颜色,不同颜色输出不同频率[4],通过频率检测以识别回流的红色血液,并通知预警模块做出响应;通信模块主要使用MCU 中的ESP8266 模块,ESP8266 模块拥有高性能无线SOC;ESP8266 模块内部集成了 10 bit 高精度 ADC,TCP/IP 协议栈[5],GPIO、UART、SPI、I2C 等接口,用户只需在软件开发工具包(SDK)基础上进行芯片编程,即可利用内置功能单元控制外部电路,采集外部信号,经过逻辑运算后发送至服务器[6].由于篇幅有限重点介绍滴速检测模块的硬件设计.
滴速检测电路设计如图4所示,该模块包含一个红外发射管、一个三线红外接收器和分压电路,对射装置分别安装在滴管的两侧.红外发射管输出38 kHz 红外线作为载波.一个红色可见颜色的发光二极管(LED)用作灯源和光敏电阻(LDR)用作光探测器.LED 由控制器和LDR 供电与标准电阻一起形成分压器电路.当信号由红外线输出时发射管不被液滴阻挡,它将被处理由接收器产生高压信号到MCU.相反,如果光线被一个点滴阻止,LDR 的阻抗增加,接收器会产生低压信号,产生了一个高电压到低电压的脉冲信号,最后,MCU 使用其中断机制和过滤算法计算落下的液滴数量.
图4 滴速检测电路
分压电路由一个光敏电阻LDR 和一个2K 电阻组成.这个设计确保了到运算放大器的输入电压信号在光敏电阻LDR 的阻值范围内.比较器电路包括一个低通滤波器,其截止频率为1 Hz.当水滴滴落到管内,有可能落差反弹回来向上,导致错误的丢弃计数.低通滤波器将其视为噪声并消除相同的噪声,使用LM358 运算放大器作为该电路中的电压比较器.
输液终端数据流程如图5所示,系统初始化主要进行设备ID 设置、颜色识别传感器TCS3200D 白平衡测试、清除历史配置数据等操作,后进行SmartConfig 配置入网.系统通过SmartConfig 技术将Esp8266 模块快速通过WIFI 进行入网配置,其过程是将预置配置进行尝试连网.如果预置为空则需要进行手动配置模式,手机APP 或微信公众号发送包含WIFI 用户名和WIFI 密码的UDP 广播包或者组播包,智能终端的WIFI 芯片可以接收到该UDP 包,只需检测到UDP 的组织形式,系统通过接收到的UDP 包解密出现场环境的WIFI 用户名及密码,然后智能硬件配置收到的WIFI 用户名密码到指定WIFI 的AP 上.如果配置不成功超过2 次则在用户界面上进行提示,避免无效的死循环.
图5 数据传输流程
通信机制设计,采用消息队列系统.当传感器采集到相关数据后,终端通过ESP8266 模块尝试发送消息到云端服务器.终端成功连网后将现场的数据以HTTP 协议数据发送到远程服务器,服务器进行终端设备的安全校验,无误后写入数据库服务器.
设备终端根据设定的查询频率(或称心跳)向服务器进行数据状态查询,其数据包括该设备的ID、数据类型、有效性、相关返回信息及心跳包数据等,具体数据传输如下:
1)Id:xxx 代表其终端设备号,用于识别设备重要标识,避免丢包而进行2 次发送.ID 号用8 位表示,可通过服务系统配置软件对其进行初始设置,并进行患者关联及输液药品匹配;
2)Enabled 用于判断终端是否可用,是否结束输液处于注销状态;
3)Command=RequestData,用于标识是请求数据响应,而非采集数据;
4)ALT=*;BLOOD=*……用于查询如有预警信息或血液回流警示响应等,及预留医护人员下发信息等;
5)-+-=-+-心跳包数据.为保持终端的永久在线,在应用系统中过滤此数据包.
在接收端通过上传处理程序主要进行设备的ID 登记、Token 合法性的验证,并连接MySQL 数据库,将传感器的数据存储在相应的数据表中.在查询的状态下,它还负责进行设备状态的有效查询,并返回相应的状态值,如果既不是在接收或查询数据的状态,或所登记的ID、Token 不合法则关闭通讯.同时该程序这一个请求只能由设备终端发起,还杜绝直接访问,避免一些非法的入侵,确保数据的安全性.
如果数据发送不成功,终端会再次检测网络的有效性,并再次采集实时数据进行发送.发送数据包括内容和来源的标识,消息还包含生成内容时的时间戳,考虑到一定的延时性,这一个时间戳在写入数据服务器时产生.如因网络故障无法完成数据的传送则在系统内进行设置警报,提示及时联系医护人员进行人工操作.
终端通过ESP8266 模块将数据及开关信息及时发送到物联网云平台,进行写入MySQL 数据库.微信公众号作为与用户的交互进行查询MySQL 数据库数据获得现场数据,并与医护人员之间进行开关量的互动,将状态写入数据库,来实现开关量的控制.
在线服务器处理程序负责从微信平台接收用户消息中的HTTP 请求,并验证该请求是否来自微信平台.消息以指定的格式进行解析以获取参数值.最后,消息被封装为XML,并在指定的逻辑处理程序执行数据后返回.在线服务器处理程序需要获取并响应由提交的控制请求.WEB 应用程序接口中的用户请求数据根据指定的协议进行分解,控制指令由逻辑代码生成[3].
图6 微信数据处理流程图
在线服务器的主要功能框图处理程序如图6所示:在线服务器处理器需要维护Socket 通信连接池,用于在微信公众号客户端显示传感器数据和在输液系统中对滴速传输控制、预警信号响应等指令.在线服务器通过Socket 连接将传感节点的数据发送到客户端接口用于显示和转发来自客户端的控制消息指令.数据通过Socket 连接发送到该环境的WIFI 接收,然后通过接口转发到控制芯片或ESP8266 网关.
服务系统以C#、MySQL 开发,主要在应用层提供患者信息管理、输液过程的滴速、余量、结束时间,血液回流预警等服务,医护人员可以借助于平台进行数据监控与查询,并保障患者的安全.管理人员可有效进行数据的整合应用,提高效率及增强服务质量.
根据普遍认同的物联网平台应当遵守的一些重要的安全原则,及2018年中国信通院提出的《2018年物联网安全白皮书》,课题组在“引入网络节点的身份认证机制”、“强化终端数据完整性保护”及“加强数据传输加密操作”[8]方面进行设计:
网络节点的身份认证机制:设计了终端设备与服务器的TOKEN 认证,此外加强了ESP8266 接入的管理,对其MAC 地址进行采集比较,增加接入安全;
终端数据完整性保护:在查询和采集两个数据流中严格根据相关格式报文进行传输,格式错误或无序将以日志形式记录;
数据传输加密操作:数据采用HmacMD5 进行数据的加密操作,HmacMD5 是从MD5 哈希函数构造的一种键控哈希算法,其较MD5 的优势在于可以得到32 位的加密密文及加密密钥.
测试在常温(22 ℃)下进行,主要有滴速检测测试、剩余时间估算测试、回血测试、调速测试等.以下测试过程均选用生理盐水进行.
滴速 Df分别使用 4 种常见输液速度,10、15、20、30(gtt/min).测试开始后,每 5 分钟进行滴数计数,每个速度观察8 次.用实际观察到的每分钟滴数与设置滴数、滴速检测读取的作比较.输液速度实测及读数测试结果,见表1.
表1 滴速测试及剩余时间估算检验统计 (gtt/min)
测试使用输液装置参数1 ml 为15 滴,按100、200、300 ml 三种不同容量,按10、15、20、30(gtt/min)速度进行测试,测量实际输液时间与系统读数时间进行比较,测试结果,见表2.
表2 剩余时间统计表 (min)
本文采用的是颜色识别传感器TCS3200D,其主要根据检测物体的RGB 值进行颜色的识别,对于红色的检测,测试前在设备初始时进行了白平衡的校用,并在普通节能光下采用 RBG 取值:R(5-9),G(15-36),B(14-30)[7]下认定检测到的颜色为红色,认为是输液时的回血现象,实测结果符合要求.
本文介绍了一种基于物联网云平台的智能输液系统的开发,采用自主设计的物联网云平台,系统具备良好的扩展性可以无缝接入相关医疗系统,在后续可为病人提供大数据的信息服务.
在后期系统的改进提高上将在滴速检测上引入闭环反馈控制器,当流速在偏离预设的期望速率时可以自动进行以重新调整,使系统更智能化,进一步减少人为的干预,可以用于更严格临床环境当中.同时可以考虑增加RFID 进行点滴药品的二次校验确保药品的准确性.在回流检测精度方面可以考虑采用集成UV-IR 遮光滤光片可实现精准的环境光传感器,减少现场环境带来的一些干扰;在数据传输方面在NB-ITO 的模块及使用成本降低的情况下可以采用.