APP下载

基于nRF2401的人体生命体征监测系统设计

2021-12-22

天津职业院校联合学报 2021年10期
关键词:体温计脉搏病房

谭 亮

(天津市仪表无线电工业学校,天津 300350)

人体生命体征对于了解一个人的身体状况具有重要的参考意义,特别是体温和脉搏这些生命迹象对于临床医学具有诊断价值。了解和治疗疾病是一个周期性的过程,那么测量体温和脉搏就要长期反复,这就给医护工作者带来繁重的工作任务,特别是在临时组建的医院和隔离病房。因此,为了保护医护人员和患者家属不被传染、降低医护人员的工作强度、满足突发情况下临时组网要求,研究并设计非接触人体生命体征采集系统势在必行。

在物联网技术逐渐成熟的时代,有线方式传输人体生命体征信息已经过时;短距离、高速无线传输优点明显。但是现在好多医院隔离病房监护系统中,人体生命体征采集主要采用有线传输方式把病房的采集信息传送到医院的主控制台。在紧急事件情况下,特别是在疫情高发时期,争分夺秒的建好隔离病房显得尤为重要,这对于有线传输来说,要穿墙布线就费时费力了。此外,因为有线通信,线缆和节点相对固定,对于移动性要求比较高的临时救治医院不太适用。从以上列出的有线通信的弊端,进而就给本文设计的系统应用提供了合适场合,同时本文的设计也是未来的发展趋势。该系统采用性能稳定、价格低廉的STC89C52单片机担当MCU,搭配射频模块nRF2401作为无线传输单元,完成患者体温和脉搏的实时采集、无线传输和动态显示。

一、 系统总体设计

生命体征监测无线传输系统采用多点对单点的传输协议,数据采集点的病房数量较多,健康监测数据汇聚点只有护士站一个,系统设计图如图1所示。对于病房采集节点有与病床数量相同的电子体温计,一个病房采集节点只有一个脉搏采集器。体温数据和脉搏数据不能同时采集;测体温时,患者按照病床号依次在病房采集节点进行温度采集,采集后自己也可以从显示单元看见温度值。采集后数据通过射频模块nRF2401以无线的方式发送到护士站节点,护士站节点与电脑相连,被采集的数据清晰地显示在电脑屏幕上,如果患者的测量数据异常,护士站节点还有报警功能,这样医护人员不出护士站就可存储和分析患者的体温和脉搏,进而做出初步诊断。医护人员也不用担心不同患者测量的数据混淆,因为每个电子体温计和射频模块只有唯一的地址ID。

图1 系统总体设计框图

在本系统结构中,硬件设计的难点:因为没有设计电源方案,那么芯片选型时要使用同一供电电压,还要选择对于上电时序没有特殊要求的芯片,高低频PCB布线时注意信号延迟的处理和信号干扰处理;软件的设计难点:多线程的客户端程序和服务器程序;上位机的显示程序注意多次采集数据后的死循环处理。

二、 监测传输系统的硬件设计

(一)病房采集节点

病房采集节点电路以单片机为核心,包括基带电路和射频电路。基带电路由数据采集单元和显示单元组成;射频电路主要集成在射频模块上,通过双排插针插在母板。数据采集单元包括电子体温计和脉搏采集器,其中体温计采用数字输出的DS18b20,脉搏采集器为HKG-07A。

患者在测温时,把含有金属壳的一头放在腋下,体温计将采集的模拟信号转换成数字信号通过INT1中断传到单片机。体温采集中单片机和体温计是C/S模式,通过单片机中断引脚INT1完成主从模式的一个单片机对多个体温计的控制。主从设备之间的数据交换通过一个三态门引脚信号线DQ实现。单总线协议主要定义了以下三种信号:分别为复位和存在脉冲、二进制的读写。病房采集节点的单片机负责发出复位脉冲和读写信号。总线上有一个温度传感器DS18b20和多个温度传感器DS18b20,这两种情况节点的系统处理方式是不一样的,可以选择单线程或者多线程访问。

温度传感器DS18b20器件具有模拟信号与数字信号的转换功能,还可以小数据存储,使用时需要配置,配置好才能正常工作,地址是唯一的,使用者不可随意更改,是出厂前写入。假如用2个字节存储测得的温度值,以12位转化为例,前5位是符号位,其余11位足以存储(-55-125摄氏度)测得的数据。温度计的分辨率为0.0625摄氏度。DS18b20把采集温度模拟值转换成数字二进制存储的排列顺序,其中bit0到bit10存储无符号数的值,温度的正负存储在bit11到bit15是符号位S,人体的温度大于0的,默认值全是“1”,从bit0到bit10的二进制值换算成是十进制后乘以0.0625就能得到实际测量的人体温度。

脉搏采集采用透射式光电传感器,当患者将手指放入测试平台时,平台上方的发光二极管将红外线透射手指后,由下方的光敏三极管接收,随着心脏的跳动,手指内的血液饱和度会发生变化,红外三极管通过感知手指血液饱和度变化来改变电流大小,这个模拟信号经过脉搏采集器模数转换后传递给单片机的中断引脚INT0。

(二)护士站节点设计

护士站节点电路以单片机为核心,包括基带电路和射频电路。基带电路由窗口显示单元和报警单元组成。窗口显示单元采用共阴极四位七段数码设计,可以显示三位数字和一位小数点;正常成人的脉搏是(60-100)次/分,体温是(36-37)℃,当患者有任何一项值超出该范围时护士站就报警。射频电路与病房采集节点的相同。

(三)nRF2401模块

nRF2401具有小巧,功耗低,速率快,占用带宽窄,性能稳定的优点,特别适用于病房患者集中分布,环境布线不便,传输距离较短的医院病房,能满足于量小的数据采集传输手段。可根据不同的应用场景,选择内置天线和外置天线。而且它和基带板卡连接接口设计灵活,对于PCB布线的走线长度要求不高,PCB布线初学者就可胜任。外置天线传输距离远,天线长度和高度都影响传输距离。nRF2401模块与单片机硬件连接原理图设计如图2所示:

nRF2401在正常工作时有四种模式:1)配置;2)收发;3)空闲;4)关机。本设计使用ShockBurst突发通信的收发模式,这种收发模式功耗低,速率快更适合医院的应用场景,器件配置字决定选用哪种工作模式,配置字的用处是使nRF2401能够处理RF协议,nRF2401的配置字通过三线接口CS,CLK1,DATA送给配置寄存器。设计过程中选用突发通信技术收发模式,除了功耗低和速率快的优点外,更为关键的是这种工作模式可以有效避免数据冲突,但是前提是进行多线程通信时,要按照突发通信模式指定的通信格式封装数据。

ShockBurst模式下的nRF2401数据格式包括数据头、目的地址、数据和校正码组成。ShockBurst 的数据包不能超过32个字节。ShockBurst 工作模式如下:

1.发送过程为:数据采集完毕,准备要发送时,单片机控制CE引脚先置高再拉低,在将引脚置高时,单片机将接收节点地址和有效数据的脉冲信号传递到nRF2401的存储器中;接下来单片机将控制使能端CE下拉,nRF2401的收发模式会被激活。发送之前会给RF前端上电,目的是对收到的数据进行封装(加上前缀位和CRC校验位),数据发送完成后处于待机状态。

2.接收过程为:接收数据前要先配置好本机的地址和设置接收数据包的阈值;单片机把CE置高,激活接收模式,200μs后,触发子系统监听收到的数据脉冲;直到获得一个正确的数据包(地址和校验位正确),接收子系统自动解开封装,提取数据。然后通过调高DR1告知单片机有效数据已收到,然后再将CE拉低,把射频模块调节为低功耗模式,这时单片机会以合适的时钟频率读取出射频模块中的有效数据。数据的接收过程中,CE的电平状态至关重要。本次传输的是下个数据包,或是开始新一轮的接收是由CE的电平高低来决定。如果说是要接收下一个数据包,在保证CE持续高电平的前提下,还要满足把DR1拉低。

三、系统软件设计

生命体征监测传输系统的软件程序设计采用C/S模式:病房客户端程序和护士站服务程序。护士站判断患者的信息主要依据有两个方面:一方面是电子体温计出厂前的唯一地址信息(体温计号与病床号对应);另一方面是射频模块的唯一地址序列码(每个病房是唯一的)。只要把病房号和病床号锁定了,那么找到患者的信息就不是难事了。程序设计包括病房节点客户端和护士站服务器端两套程序,节点上电后先进行程序初始化配置。系统软件结构如图3所示。

图3 系统结构图

(一)病房和护士站节点主程序

单片机内部程序系统首先要进行初始化设置,病房采集节点上电后,单片机先进行初始化配置,之后再向电子体温计和脉搏采集器发送起始配置命令;紧接着发送跳过 ROM命令,这一步的目的是将全部在线响应的DS18b20地址序列号存入采集节点单片机存储器中。此时nRF2401处于待命模式,直到接到护士站通过nRF2401发来中断请求即转入采集程序进程,完成温度和脉搏的数据读取及脉搏数据的显示。当护士站与病房取得联系后,就将测得的生命体征数据无线发送给护士站,护士站进行下一步的处理,复位等待,准备响应下一次中断请求。

设置串口通信参数、设备初始配置和控制命令的发送这些工作都由护士站节点完成。基本通信命令有两个:1)病房初始化命令;2)病房通信指令。病房收到初始化脉冲命令后,就回复给护士站,返回一个可以建立连接的口令,这样两者就建立了连接,下一步采集节点响应护士站发送的控制命令,护士站开始处于待机状态,下一个几百微秒的持续高电平后,护士站节点再次转入数据接收状态,继续接收返回的数据。护士站对收到的数据进行比较,一旦超过安全阈值,接收节点就报警;护士站节点的单片机会将测得的数据上传给电脑,接收节点之后处于待命状态。

(二)病房体温测试子程序

首先将所有采集节点单片机引脚SM2位拉高,为了使他们保持接收地址数据的状态,下一步护士站节点通过无线的方式发出查询有效DS18b20信号的命令,只要碰到与护士站查询地址相一致的DS18b20,这个DS18b20在做出响应后,马上回传本机地址给护士站监控中心,与此同时将病房单片机的多机通信位引脚SM2拉低,地址不符的采集点丢弃,SM2引脚持续保持高电平。病房节点的DS18b20采集完温度数据后,通过nRF2401与护士站节点建立通信链路,同一个时间多个采集节点在线时,护士站节点以查询的方式仅能读取一个病房节点的地址,并完成数据的采集,读取多个会引起数据竞争。所有病房采集节点的DS18b20地址序列号信息在护士站节点的初始化过程中存入RAM中。在护士站发出查询命令后,病房节点开始读取在线的DS18b20地址序列号,只有序列号匹配的DS18b20回传温度数据,以无线的方式传输,放入接收节点单片机指定的RAM地址中。

四、实验结果

本系统在实际的楼道和房间里进行测试,房间的拓扑结构如图4所示,点对点的最远传输距离是90米,这个距离是在钢筋混凝土的房子测试的结果,要是换到空旷信号衰减不强的环境中传输距离可大大增加,这个半径范围内节点可灵活移动,无需中继设备,无需布线穿墙,硬件架构搭建方便快捷,成本低,效率高,本系统特别适合小范围临时组网,这种无线采集系统大大的降低医患交叉感染概率的同时还节省人力的配置,这个设计方案通过更换采集传感器类型还可应用到其他场景,性能稳定,未来可期。

图4 实验环境示意图

图5为用VC++编写护士站体温显示控制界面,序号对应病床号;脉搏的显示在节点的LED数码管上;软件控制界面可以筛选最高温度和最低温度,并能计算出平均值,可以刷新界面和停止采集,管理员坐在电脑前就能了解每个患者的身体状况并做出最快的处理,达到系统设计的初衷。经过多个环境现场的实地测试,无线通信系统在障碍较多的环境下传输距离也能满足,特别是在空旷的环境中传输距离大大增加;另外nRF2401采用2.4GHZ传输,抗干扰能力强,误码率低,可靠性高,完全可以满足紧急或者特定情况下迅速组网中的数据传输要求,特别适合应用在临时组建的战地医院、被隔离的传染病区等,本系统稍微改动就可应用到其它监测系统,应用场景广泛。

图5 显示控制界面

五、 结语

实验结果表明:通过nRF2401模块可以实现病房节点和护士站监控中心的无线数据通信,监控终端可以正确显示患者的体温和脉搏信息。本文设计了nRF2401模块电路、阈值报警电路、脉搏采集电路和体温采集电路。设计成本低、功耗小、具有很好的通用性,但系统也有以下两个问题未解决:一是本次设计完成了星型的一级组网传输,对于更为复杂的多级传输问题还未解决。二是由于单片机性能的限制不能满足同时多点对一点通信,因此检测时要进行分时间段检测。

下一步技术改进:本设计中有待提高的地方可以总结为两点:一是节点的中央处理单元STC89C52性能不够强大,太过复杂的程序处理速度太慢,后续升级可选用stm32代替。二是采集节点的生命体征监测项目不够全面,目前身体参数采集传感器种类多样,后续开发要增加监测项目,完善采集功能。

猜你喜欢

体温计脉搏病房
水银体温计打碎了别慌
整建制接管改造COVID-19重症监护病房的实践与探讨
用心感受狗狗的脉搏
《今日评说》评今日浙江 说时代脉搏
基于51系列单片机的穿戴式脉搏仪的设计
咬破了体温计怎么办
小小体温计 内藏大秘密
近红外可穿戴设备中脉搏波的呼吸率检测
便宜的病房
红外额式体温计与水银体温计在临床使用中的效果观察