多生理参数的无线实时监护系统设计
扫描二维码
随时随地手机看文章
摘要:基于ZigBee PRO无线传感网络技术,以SoC芯片CC2530为核心控制元件,采用脉搏传感器、温度传感器等传感技术,设计了一个无线实时监护系统。实现了人体的体温、脉率以及脉搏信号等生理参数的采集、实时定位等功能,采集到的数据通过ZigBee网状网络传输到监护系统终端。
关键词:ZigBee PRO;CC2530;无线传感网络;生理参数;定位
1 ZigBee PRO技术及其优势
ZigBee PRO在网络可靠性、网络容量以及抗干扰性等多方面均有所改善。设计的目标是商业和工业环境,支持大型网络,1000个以上网络节点。
1.1 随机地址分配机制
ZigBee PRO用随机地址分配机制取代了原有的树地址分配机制,使其更加适合于大规模的网络。随机地址分配机制的网络地址是随机选取配置的,并通过不断监控和达到“管理”流量将地址冲突挑选出来。因此,所有节点的位置与其在整个系统网络拓扑中实际相对位置完全没有关系,并且不需要事先根据网络分布情况配置最多路由器节点、最长深度等网络参数。
1.2 路由算法改进
ZigBee PRO新增了一对多路由、多对一路由和源节点路由。在无线监护系统中,如果每个节点鄙做到一对一路由,将产生大量的广播信息,容易造成网络堵塞和路由表中的路由信息溢出。多对一路由,就是一个单一的广播传输形成所有设备到发送广播的设备的反向路由,可解决上述问题,并能快速地建立路由路径。
1.3 频率跳变
ZigBee协议通常工作在ISM 2.4G频段,该频段常用于工业、科学与医疗,如Wi-Fi和Bluetooth,因此数据传输的抗干扰能力十分重要。ZigBee PRO具有频率跳变的功能,当受到外界的强干扰时会自动搜索一条新的空闲信道,然后将整个网络快速且无缝地转移到该信道上运行。
1.4 数据包分割/重组传输机制
ZigBee的PHY层定义的最大数据包长度为127字节,除去各协议层的帧头开销,实际一帧的有效数据载荷一般不超过90个字节。在无线监护系统中,终端没备每次发送的数据量达到几百字节,ZigBee PRO提供的数据包分割/重组传输机制解决了大数据包的问题。发送节点自动将大数据包分割成小数据包后进行传输,接收节点后再将小数据包重组还原成大数据包。
2 系统总体设计方案
2.1 网络架构
无线监护系统采用ZigBee PRO协议构成网状网,具有很高的传输可靠性和自修复能力。无线监护系统的网络拓扑结构如图1所示。其中,协调器负责建立和维护网络,并通过USB与监护终端进行双向通信;路由器负责最佳路由路径的搜寻以及数据的转发,并协助终端设备进行定位;终端设备佩戴在被监护人身上,负责生理参数和定位信息的采集,只具备数据发送而无转发功能。
2.2 终端设备电路框图
本系统的硬件电路包括协调器、路由器和终端设备。其中,协调器和路由器的电路大部分相同,只是协调器增加了USB转UART的模块。终端设备电路框图如图2所示。
3 系统硬件设计
3.1 协调器硬件设计
协调器的功能相当于网关,在本系统中负责收集终端设备的生理和定位信息,然后通过USB传送到与之相连的监护终端。协调器的主控芯片CC2530的主要外围电路参考TI公司给出的设计方案,天线采用50Ω鞭状天线。
USB转UART电路如图3所示。其中,引脚RXD和TXD分别连接到CC2530的端口P0.2和P0.3。同时,需要设置CC2530的寄存器PERCFG.U0CFG位为1,将USART0的RX和TX选择到位置1,即P0.2和P0.3。C1、C2、C3和C4为滤波电容。
3.2 终端设备硬件设计
3.2.1 射频电路
由于终端设备佩戴在被监护者身上,体积应尽量最小化,所以射频电路的设计不适合采用与协调器、路由器相同的鞭状天线和阻抗匹配电路。本系统中终端设备的射频电路如图4所示。2450BMl5A0002是一个集成的阻抗匹配——巴仑——低通滤波器(Matched-Balun-Low Pass Filter),体积只有2.0 mm×1.25 mm×0.7mm。在设计电路时,CC2530的引脚RF_P和RF_N到匹配平衡器的连线必须是对称的,即具有同样的长度和宽度,并且连线应尽可能短,否则将会降低射频的输出功率。2450BM15A0002电路的电容C1、电感L1和L2构成陶瓷天线的匹配电路,使得射频电路在频率为2.4GHz左右时,回波损耗达到最小值-18.5dB。
3.2.2 电源稳压电路
终端设备使用3 V的纽扣电池作为供电电源。为了保证CC2530的工作电压稳定,采用具有超低操作电流的3.3 V稳压芯片TPS60212进行控制。电源稳压电路如图5所示。输入电压范围为1.6~3.6 V,输出稳定的3.3 V工作电压。CC2530的P1_2引脚用于设置TPS60212的工作模式,当设备进入睡眠状态时,置P1_2为0,使稳压芯片也进入睡眠模式,此时稳压电路输出电压仍为3.3 V,而工作电流仅为2 mA。LBI和LBO引脚分别为低电压检测的输入和输出端。当输入电压低于1.6V时,LBO的输出由高电平转为低电平,进行低电压报警。
3.2.3 体温采集电路
体温采集电路如图6所示。温度传感器采用NTC热敏电阻MF52E-103F3950FA,标称阻值10 kΩ,允许偏差±1%,具有测量精度高、体积小以及反应灵敏的特点,在图6中用Rth表示。非平衡电桥的设计,可以降低电压信号不稳定等原因带来的误差。为提高测量精度,电阻R1、R2和R3需要选择精度为1%的阻值。电压差信号接到CC2530的ADC差分输入通道P0_0和P0_1进行A/D转换。为了降低功耗,使用CC2530的引脚P1_4控制体温采集电路的开关。
3.2.4 脉率采集电路
人体脉象信号具有阻抗高、信号弱、频率低等特点,而且处于严重的背景噪声之中。基于这些特殊性,设计的脉率采集电路由传感器、滤波电路、放大电路以及比较电路4部分组成,如图7所示。根据脉搏测量原理,压力式脉搏传感器用于感测静压力和脉搏波的混合信号,并将其转化为电压信号。本系统采用PVDF压电薄膜式压力传感器。电阻R1、R2和电容C1、C2构成有源二阶低通滤波器,截止频率为10 Hz,可有效滤除50Hz 工频干扰信号。放大和比较电路采用一个芯片TLV2702实现,该芯片集成了一个运算放大器和一个推拉比较器,可节省PCB空间。其中,R4/R3决定增益为100倍,比较器的基准电压设为570mV。为了进一步降低功耗,使用CC2530的引脚P1_1选通电路。
3.2.5 脉搏波采集电路
脉搏波的波形特征与心血管疾病有着密切的关系。因此,脉搏波采集电路的输出信号应尽可能保持4个主要的脉搏波特征点(主波、潮波、重搏波峰以及重搏波谷)不失真。本系统采用HK-2000B+型脉搏传感器,该传感器的主要特点是:灵敏度高、抗干扰能力强。并且,传感器电路模块集成了信号放大、信号调理、幅度调整以及基线调整等电路。因此,输出的脉搏模拟信号可直接接到CC2530的A/D转换通道。
4 系统软件设计
系统软件设计主要包括上位机(监护系统终端)和下位机(ZigBee无线传感网络)设计两部分。下位机软件基于TI公司最新的ZStack-CC25 30-2.4.0-1.4.0协议栈,使得组网相对更为稳定可靠。下位机的软件包括3个部分:协调器软件、路由器软件以及终端设备软件。
4.1 协调器与路由器软件设计
协调器软件处理流程如图8所示。协调器一方面要处理各个节点发送过来的有效数据,包括节点的网络地址、有效数据长度、串ID、定位坐标数据以及生理参数等,另一方面要处理并转发PC机发送给节点的数据包命令,如终端节点查找请求以及路由器坐标配置等。
路由器是一种已知静态节点,其坐标位置是固定的,可以提供坐标和RSSI值的信息包给终端设备。路由器软件处理流程如图9所示。
4.2 终端设备软件设计
终端设备的软件设计主要包括电源管理、体温采集、脉率采集、脉搏波采集以及定位实现。为了降低终端设备的功耗,采用休眠一唤醒的机制。每隔10 s自动采集一次生理参数和定位信息,采集成功后通过CC2530的控制引脚关闭生理参数采集模块。然后发送数据包给监护系统终端,并使设备进入休眠,等待下一次采集事件的唤醒。终端设备软件处理流程如图10所示。
4.2.1 体温采集程序
NTC热敏电阻的特性方程为:
式中,RT和R0分别表示NTC在热力学温度为T和T0时的电阻值,单位为Ω;T0和T分别为介质的起始热力学温度和变化热力学温度,单位为K;B称作B值,NTC热敏电阻特定的材料常数。
由于B值同样是随温度而变化的,因此这种方法只能以一定的精度描述额定温度或电阻值附近的有限范围。基于电阻/温度关系表,由图6体温采集电路可得输出电压值V和NTC阻值的关系为:
式中,Vrel为ADC基准电压,选择为CC2530的AVDD5引脚值;ADC的分辨率设置为12位。结合式(2),可得到各温度点对应的A/D转换后的数字量为:
程序中,首先根据式(3)和电阻/温度关系,制定ADC值一温度转换表,为接下来的数据处理提供参考依据。体温采集流程如图11所示。其中,采用折半查找法可以提高查表的效率,基于分段的线性捅值是用直线段来拟合温度曲线。在处理中,分段越细,拟合的曲线就越接近实际的温度曲线,精度也就越高。
4.2.2 脉率采集程序
采用CC2530的16位定时器1的通道2进行脉率的采集,设置为输入捕获模式,上升沿触发。同时,需要设置寄存器CLKCONCMD和T1CTL,使得定时器1的计数频率为最小的1 953.125 Hz,避免计数器溢出。每次脉率信号的上升沿到来时,都将触发一个捕获事件,16位计数器的内容将被捕获到相关的捕获寄存器T1CC2L和T1CC2H中。将两个连续的脉率信号对应的捕获寄存器值相减,获得脉率信号的时间间隔,再转换为脉率。为了减小外部干扰造成的误差,程序中连续采集3次脉率,然后剔除奇异值,最终计算出平均脉率值。
4.2.3 脉搏波采集程序
为了采集到连续的脉搏波形,使用ADC的序列转换模式以及最高的12位分辨率。采样周期由定时器1的通道0控制,根据所需的采样周期设置定时器1的定时时间,每隔这个时间,定时器1的通道0就会触发一次A/D采样。本文中设置定时时间为5 ms,即采样频率为200 Hz。为了提高CC2530的工作效率,A/D转换的结果采用DMA传输,每完成一个序列转换,ADC都将产生一个DMA触发。设置系统在两个相邻的采样间隔内处于休眠状态,等待定时器1触发一次序列A/D转换并进行相关操作,处理完后又再次进入休眠。
4.2.4 定位实现
设计中采用非基于距离的算法,利用固定点定位,终端设备首先发出请求坐标的广播信息,然后将收到最大LQI值的那个路由节点的位置坐标,作为终端设备的位置。经测试,使用该方法定位可靠,定位性能稳定,适合于室内定位。但是,也应该注意到,该定位法精度较低,如果想提高定位精度,必须提高路由节点的密度,这不利于控制监护系统的成本。
结语
本文设计了一种基于ZigBee PRO和CC2530的无线多生理参数实时监护系统。实验结果表明,该系统具有组网灵活、网路容量大、测量实时准确以及可扩展性强等优点。它可以作为一个解决方案应用于社区、养老院或福利院等的日常监护中。