当前位置:首页 > 用于测量体温的无线实时监测系统的设计与实现
用于测量体温的无线实时监测系统的设计与实现
彭祖林1 邓罗根1 刘细华2 (1. 北京理工大学, 北京 100081) (2. 北京同力视创科技有限公司, 北京 100086)
摘 要:介绍了一种基于无线数字传输芯片和单片机构成的病人体温监护系统的设计,讨论了系统的硬件电路设计和软件设计。在该系统中,单片机对温度传感器进行控制和数据传输,借助串行通信实现了人机交互控制。运行表明,该系统控制方便、工作稳定,能实现可靠的无线数据传输。
关键词:无线传输;体温监测;数字温度传感器;nRF2401芯片
Design and Implementation of a Wireless System for Measuring
Patient Temperature on Real-time
Peng Zulin1 Deng Luogen1 Liu Xihua2
(1. Beijing Institute of Technology,Beijing,100081)
(2. Beijing Tongli shichuang technology Corp. Ltd.,Beijing,100086,China)
Abstract: This paper introduces a wireless system completed with digital transmission chip and single chip microcomputer using for measuring the patient temperature. The hardware and software designs of the system are also discussed. We use single chip microcomputer to control the temperature sensor and communicate the data, thus, man–machine conversation comes into true in virtue of serial communication. The running of system shows that it is easy to control and it works stably to perform reliable wireless data transmission.
Key words: wireless communication, temperature measured, digital temperature sensor, nRF2401 1 引 言
对体温等生命指征参数的监测是临床上对病人监测比较频繁的项目,它有利于对病人进行及时有效的治疗处理,但目前大部分监护系统都是有线监护或者床头监护,对处于恢复期可以自由活动的患者或者传染病患者(如SARS患者)有一定的局限性,限制了康复期病人的活动范围,而且加大了医护人员的工作强度和接触患者的次数,这就使得对于无线监护系统的研究显得尤为重要,为此设计了一种体温实时无线监测系统,对病人进行实时跟踪监护。 2 系统框图
本系统利用ADuC812高性能单片机及其外围电路完成对DS18B20单总线数字温度传感器的控制和数据转换,利用nRF2401单片无线收发芯片为核心构建的无线收发器完成数据的远程传输,借助单片机和计算机之间的串行通信完成人机交互控制,并用VB语言开发了系统的交互界面。图1所示就是体温实时无线监测系统的原理图。
温度传感器无线收发模块单片机系统 50~100m 无线收发模块单片机系统计算机
图1 体温实时无线监测系统的原理图
3 硬件实现
按照系统原理图的设计,整个系统中需要用到的硬件芯片主要包括DS18B20单总线数
第 1 页 共 5 页
字温度传感器、nRF2401无线收发芯片、ADuC812单片机、MAX3221E等,这些芯片配以相应的外围电路就构成系统的基本硬件结构。下面对各硬件的特点及其在本系统中使用的相应电路分别进行介绍。
3.1 DS18B20单总线数字温度传感器
DALLAS公司的DS18B20单总线数字传感器工作温度是-55℃~125℃,在-30℃~85℃范围内温度测量精度为±0.5℃;具有设置报警功能,用户可以设置最高和最低报警温度,且设置值掉电不丢失;采用DALLAS公司所特有的单总线通信协议,只用一条数据线就可实现与MCU的通信;此外,DS18B20能够直接从数据线获得电源,无需外部电源供电[1]。
DS18B20与单片机的接口电路如图2所示,DQ为数字信号输入/输出端,GND为电源地,VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
3~5.5V3~5.5V
DS18B20DS18B20ADuC812 ADuC812GNDVDDP3.4VDQDQDD
P3.5I/OP3.5 GNDI/OGND (a) 三线制方式(b) 寄生电源方式
图2 DS18B20与单片机的接口电路
DS18B20主要有四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。光刻ROM的64位序列号是出厂前被光刻好的,相当于给每个DS18B20分配了一个独一无二的64比特地址序列码,这就允许多个DS18B20工作在同一条一线总线上,从而大大简化了分布式温度传感系统的应用。温度传感器完成对温度的测量,温度报警触发器TH和TL以及配置寄存器的设置值都以一个字节的形式存储在E2PROM中,在编程时使用一个存储器功能命令可对其写入。 3.2 nRF2401无线收发一体芯片
nRF2401是挪威Nordic公司推出的单片2.4GHz无线收发一体芯片,芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块。工作于2.4~2.5GHz ISM自由频段,能够在全球无线市场畅通无阻。nRF2401支持多点间通信,最高传输速率达到1Mbit/s。它采用SoC方法设计,只需少量外围元件便可组成射频收发电路。nRF2401没有复杂的通信协议,它完全对用户透明,同种产品之间可以自由通信。nRF2401是业界体积最小、功耗最低、外围元件最少的低成本射频芯片。
它的主要特点如下[2]:
(1) 采用全球开放的2.4GHz频段,有125个频道,可满足多频及跳频需要。 (2) 速率(0~1Mbps)、发射功率和工作频率等所有工作参数可编程设置。 (3) 电源电压范围为1.9~3.6V,功耗很低,以-5dBm的功率发射时,工作电流只有10.5mA,接收时只有18mA。
(4) 每个芯片可以通过软件设置最多40bit地址,而且只有收到本机地址时才会输出数据。 (5) 内置CRC纠检错硬件电路和协议。
(6) 采用DuoCeiverTM技术可使用同一天线同时接收两个不同频道的数据。 (7) 采用ShockBurstTM模式时,能适用极低的功率和适应多种MCU的操作。 (8) 无需外部SAW滤波器。
(9) 可100%RF检验,并且带有数据时隙和数据时钟恢复功能。
图3是nRF2401在本系统中应用的原理图。由图可知,该芯片外围元件非常少,一共只需要15个。在实际设计中可使用单鞭天线或环形天线。在使用不同的天线时,为了得到
第 2 页 共 5 页
尽可能大的收发距离,电感电容的参数应适当调整,电感需要采用高Q高精度的贴片绕线高频电感,晶体需采用高稳定晶体,电容应选用高稳定贴片元件等[3]。
图3 无线收发模块电路原理图
3.3 ADuC812高性能单片机
ADuC812是Analog Device公司最新推出高性能单片机,由与8051/8052兼容的内核、片内外围设备、电源单元和模拟单元组成。8051兼容的内核额定的工作频率是12MHz(最大可达16MHz),功能包括看门狗定时器WDG、电源监视器PSM、高速ADC以及DMA控制器。片内有8kB的闪速/电可擦除程序存储器,640B的闪速/电可擦除数据存储器和256B的片内数据SRAM,支持16MB的外部数据存储空间和64kB的外部数据寻址空间,为多处理器接口和I/O扩展提供了32条可编程的I/O口线,同时具有标准的UART接口和可配置的I2C端口或SPI端口。模拟单元包括一个8通道高速(200kb/s)自校准12位ADC、2个电压输出DAC、片内具有4×10-5/℃电压基准和温度传感器等[4]。采用这种高性能单片机对于实现快速采集数据十分有利,而且ADuC812的内核是国内技术人员比较熟悉的Intel8051,应用开发比较方便,在硬件上也方便以后的功能扩展。因此,本系统中选用它对温度传感器进行控制和与计算机进行串口数据通信。 3.4 串口通信
EIA-RS-232C对电器特性、逻辑电平和各种信号线功能都作了规定。因此为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS-232C与TTL电路之间进行电平和逻辑关系的转换。由于本系统采用3.3V设计,因此选用MAX3221E芯片完成双向电平的转换。 4 软件实现 4.1 单片机程序
由于DS18B20和nRF2401对读写时序要求比较严格,因此本系统使用单片机的汇编语言进行编写控制程序,程序保存为A51文件类型,用Keil C51进行编译和调试[5]。
该控制程序主要是对温度传感器、无线收发模块以及两个输入按钮(换药按钮和紧急呼叫按钮)进行控制,并采集温度传感器测量的人体温度数据,同时控制无线收发模块传送
第 3 页 共 5 页
采集到的命令和数据。在本系统中的固件程序采用中心端和体温数据采集端一体化设计,整个系统的程序流程图如图4。
根据硬件电路设计,软件编程的基本思路是在系统上电后,首先对nRF2401和DS18B20初始化,由标志位FLAG1来判断程序运行在中心端还是在体温数据采集端,然后进入激活方式。同时,单片机循环监控换药和紧急呼叫两个输入、串口数据和nRF2401的DR1管脚,判断是否有新命令的发送和新数据到来。
对于nRF2401,本系统只需对状态字后的144bit进行配置,其值从高到低分别为8EH, 08H, 1CH, 20H, 50H, 0AH, 0BH, 0CH, 0DH, 0EH, 0AAH, 28H, 0AH, 0BH, 0CH, 0A3H, 6FH, 65H。配置后nRF2401的通道1数据段长度80bit(其中nRF2401的序列号8byte + 2byte温度数据),地址段长度40bit,通道1硬件地址0AAH, 28H, 0AH, 0BH, 0CH,使能16位片上校验,单通道接收,突发传递模式,通信速率1Mbit/s,晶振频率16MHz,输出功率0dBm,工作频段2.450GHz,开始处于接收状态。
开 始串口数据收发和输 N发送请求标志入按钮处理子程序位FLAG2=1?ADuC812初始化子
程序 YN接收就绪信号 是换药或YYDR1是否为1?N标志位FLAG1=1?nRF2401初始配置紧急呼叫?
子程序YN
进入接收状态 DS18B20初始化子DS18B20控制程序并设置存在和读数子程序 发送命令控标志位FLAG1制码准备 接收1位数据数据转换子程序 N标志位FLAG1=1?N 数据接收完否?进入发送状态Y 发送数据准备Y 读DS18B20的NY序列号子程序标志位FLAG1=1?发送1位数据设置标志位:
FLAG2=1
N清除标志位:Y 进入激活方式数据发送完否?FLAG2=0 图4 程序流程图
在系统中我们用DS18B20出厂前光刻好的序列号区分每个体温数据采集端,因为
DS18B20的序列号(64比特地址序列码)是一个独一无二的。因此,在监控计算机的数据库中只要用序列号与病人的姓名进行关联即可。 4.2 监控计算机用户界面和数据处理
使用VB6.0对系统用户界面和数据库部分进行编程,主界面如图5所示。作为性能测试的演示系统,只设计了8个用户,系统默认设定为每隔10分钟循环轮询测量一次,也可直接点击界面上的病人姓名进行有针对性测量,测得的数据能实时显示和存储在数据库中,系统也能对测得的数据进行分析,从而达到研究分析病人体温变化状况的目的。
由于DS18B20的测量精度为±0.5℃,而系统要求对病人的测温精度为±0.1℃,因此必须对测量数据进行校正。由于DS18B20是基于带隙结构的数字式温度传感器,PN结增量电压正比于IC绝对温度(PTAT)的感温器件,带隙电路PTAT的特性具有轻微的高阶曲率特性,它的非线性误差是稳定的、并且时变性很小[6]。因此,充分利用监控计算机的处理能力,在监控计算机上用线性插补的数学方法对其进行误差校正补偿,能轻易地将其精度提高10倍。
第 4 页 共 5 页
经过实际运行证明:在-25~+90℃的温度测量范围内,精度达到了±0.04℃。图5中右边是温度传感器测量的数据(包括序列号+温度),中间显示为经过校正后的实际温度(只精确和显示到小数点后一位)。
图5 监控计算机主界面
5 总结
本文介绍了利用ADuC812、DS18B20和nRF2401等芯片设计的病人体温无线监测传输系统,通过试验证明,系统很好地实现了各参数信号的有效传输,同时,佩戴发射盒的病人在距离监控计算机100m范围内可以自由活动。在数据处理上,充分利用了计算机的处理能力,在监控计算机上用线性插补的方法对温度传感器采集到的温度数据进行误差校正补偿,因此测量精度达到了预期的效果。当然,由于测量的是人体手腕上的体表温度,与实际的人体的体内温度还有一定的差别,因此需要进一步进行修正。另外,温度传感器的安置和固定也是一个很有技术性的工作,需要保证与外界空气隔绝且与体表紧密接触。
本系统成本低,体积小,应用灵活,具有良好的通用性和可靠性,下一步的工作主要是针对医院需求进行功能扩展,并且把整个系统纳入医院的HIS系统中。
参考文献
[1] Datasheet for DS18B20. http://www.maxim-ic.com, MAXIM, 2002.
[2] Product Specification, nRF2401 Single Chip 2.4GHz Radio Transceiver. Nordic Cooperation. [3] nRF240x Configurator User Guide. Nordic VLSI document, Nordic Cooperation. [4] 李刚. ADuC812原理与应用手册[M ]. 北京: 北京航空航天大学出版社, 2001.
[5] 徐爱钧,彭绣华. 单片机高级语言C51应用程序设计[M ]. 北京: 电子工业出版社,.1998. [6] Curve Fitting the Error of a Bandgap-Based Digital Temperature Sensor,
http://www.maxim-ic.com, MAXIM, 2002.
作者简介:
彭祖林(1969-),男,硕士,讲师,主要从事嵌入式系统、多媒体通信等方面的研究工作。邓罗根,教授。 联系方式:彭祖林 通信地址:北京理工大学理学院物理系 邮政编码:100081
电 话:010-68912634, 13701197071 电子邮箱:pclin@bit.edu.cn
第 5 页 共 5 页
共分享92篇相关文档