《电子技术应用》
您所在的位置:首页 > 模拟设计 > 设计应用 > 基于AT89C2051和InRF401的无线监测系统
基于AT89C2051和InRF401的无线监测系统
摘要: 设计了本套无线监测系统,本系统使用简单、基本不影响睡眠、价格低廉;适合在居家睡眠环境下做长期自测和与医生进行医疗远程互动,以达到帮助医生了解患者病情的目的。
Abstract:
Key words :
 

  引言

  目前医生在诊断睡眠呼吸暂停症时常使用夜间睡眠呼吸多项生理监测仪,记录一整夜的睡眠周期,其中包括呼吸暂停以及呼吸变浅的次数、型态、缺氧指数、次数、心电图的变化、口鼻腔气流、胸腹部呼吸运动、耳垂血氧等信号的记录、打鼾次数等情形。虽然这些仪器测量较准确,但需要在身上配戴多种仪器,也必须在特定的医院中由专业人士操作才能进行测量,非常不方便,并且也容易影响患者的睡眠,所以不适合做长期的监测。并且这样的仪器价格昂贵,患者更不会买来在家庭使用。针对上述缺点,设计了本套无线监测系统,本系统使用简单、基本不影响睡眠、价格低廉;适合在居家睡眠环境下做长期自测和与医生进行医疗远程互动,以达到帮助医生了解患者病情的目的。

  1 系统设计概述

  本系统采用433MHz的无线收发芯片。nRF401,外围电路很少,并且不需要对数据进行曼彻斯特编码,只需利用单片机来控制该收发芯片的工作过程。利用数字温度传感器DSl8820进行呼吸信号提取,然后利用由单片机控制的无线收发系统的发射部分将提取出的呼吸信号发射出去;经过接收模块,将接收到的呼吸信号传送到单片机中进行处理,从而将呼吸暂停出现的次数显示出来。原理框图如图1所示。

基于AT89C2051和InRF401的无线监测系统框图

  2 呼吸信号提取和无线收发

  2.1 呼吸信号提取电路的选择

  首先想到的是采用压力法,但由于口、鼻腔处的压力变化很微弱,并且弱压传感器的灵敏度很高,容易受各种因素的影响,造成误动作,故压力法不宜采用。我们知道人的呼吸是通过鼻子或嘴,所以在鼻子和嘴巴附近可以放置多个温度传感器,通过温度的变化将呼吸信号提取出来,而作为数字温度传感器的DSl8820就能满足此要求。

  DSl8B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DSl8820可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DSl8820通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路,其应用电路如图2所示。

DSl8B20应用电路

  2.2 呼吸信号的的发射部分

  采用的nRF401是一个433MHZ ISM频段设计的真正单片UHF无线收发芯片,它采用FSK调制解调技术,nRF401最高工作频率可以达到20k,发射功率可以调整,最大发射功率为+10dBm。利用单片机对发射部分进行设置,通过发射模块将承载呼吸信号的数字信号发射出去,其原理框图如图3所示。

呼吸信号的的发射框图

  2.3 接收部分和单片机的处理

  无线接收模块收到发射机发来的信号后,将其传送到另一单片机上进行信号的处理,对呼吸暂停持续时间进行定时测定,当呼吸暂停超过10s时计数,将结果利用数码管进行动态显示,从而实现监测呼吸暂停次数的目的。如图4所示。

无线接收部分框图

  2.4 对于单片机的软件设计

  本系统的工作主要是利用单片机来进行控制,包括呼吸信号的提取,无线收发模块的传输协议和收发方式的设置,以及显示和报警部分,都是利用单片机来进行的,其总体的程序设计流程图如图5所示。

基于AT89C2051和InRF401的无线监测系统流程图

  2.4.1对于DSl8B20的软件设计

  虽然数字传感器的硬件接法比较简单,但在测量温度时有严格的时序要求。一旦时序出现错误,那么温度的读取和显示就不能正确进行,在编写程序时这个问题需要着重考虑,例如我们采用中断时,就要考虑中断的执行对于单片机工作整个时序的影响。DSl8B20的一线工作协议流程是:初始化→ROM操作指令→存储器操作指令→数据传输。其工作时序包括初始化时序、写时序和读时序。寄存器R1、R0决定温度转换的精度位数:R1RO=“00”,9位精度,最大转换时间为93.75ms;RlR0=“01”,10位精度,最大转换时间为187.5ms;R1R0=“10”,11位精度,最大转换时间为375ms;R1R0=“1l”,12位精度,最大转换时间为750ms;未编程时默认为12位精度。我们采用器件默认的12位转化。

  2.4.2 对于nRF401的编程

 

  由于直接采用的点对点的收发,所以直接利用单片机将收发芯片设置为“收”或“发”模式。对于Standby与RX之间的切换,从待机模式到接收模式,当PWR_UP输入设成1时,经过近3ms时间后,DOUT脚输出数据才有效。从待机模式到发射模式,所需稳定的最大时间是也为3ms。Power Up与TX间的切换,从加电到发射模式过程中,为了避免开机时产生干扰和辐射,在上电过程中TXEN的输入脚必须保持为低,以便于频率合成器进入稳定工作状态。当由上电进入发射模式时,TXEN必须保持1ms以后才可以往DIN发送数据。在接收部分,同样利用单片机的P1口各管脚分别控制NRF401的DIN、DOUT、TXEN、PWRUP、CS这五个脚即可。

  2.4.3 对于呼吸信号处理的编程

  将接收到的呼吸信号接入接收部分单片机中,对温度值进行处理。我们知道,被传感器采集到的人体温度大约33℃,但如果利用温度的高低值来作为是否出现呼吸暂停的依据,这种方法会受周围温度的影响,若温度过高,该系统就会出现误判的情况。所以我们利用的是提取温度的变化量,尽管周围温度有影响,但由于人体呼吸而导致的呼吸变化总能准确地判断出来。经过调试,这种思想很好地解决了因周围温度变化所带来的干扰。

  2.4.4 对于显示电路的程序

  当温度在10s或lOs以上还没出现变化时,将计数器加一,如果存在呼吸暂停,但没有达到10s,则定时器清零,重新返回程序。

  3 结束语

  此系统不仅可以实现呼吸暂停的远距离监测,在监测上还具有很高的稳定性和准确性。我们利用此呼吸暂停监测系统进行实际的检测,取被测个体12人,其有效率和准确率达到90%,只有在附近环境电磁场强烈干扰时时才会造成。



 

此内容为AET网站原创,未经授权禁止转载。