新闻中心

EEPW首页 > 医疗电子 > 设计应用 > 浅析基于以太网的病人体温远程自动检测系统设计方案

浅析基于以太网的病人体温远程自动检测系统设计方案

作者:时间:2018-09-10来源:网络收藏

医院病人体温等参数的是医院数字化建设中的一个重要项目。该设计主要是针对医院病人体温进行自动检测,采用分布式多点温度采集技术,并通过通信技术传输到医院监控中心,值班医生和护士通过监控中心可以实时了解病人的体温变化,监控中心可以对病人的体温异常进行报警和相应的记录,并且与病人数据库同步,方便医生对病人病情的分析。

本文引用地址:http://www.eepw.com.cn/article/201809/388760.htm

1 系统总体

该系统总体设计框图如图1所示。整个系统采用三级结构,即医院监控中心、病房主机和温度传感器。其中病房主机采用单片机AT89C52为主控单元,主要实现网络通信、温度采集和显示。网络通信是通过周立功公司开发的转串口模块ZNE-100T实现的,每台ZNE-100T都可以设定IP地址和服务器 IP地址,便于构成分布式测温网络。测温元件采用美国DALLAS半导体公司生产的数字温度传感器DS18B20,每个DS18 B20都有惟一的ID号,体积小,可以封装成普通温度计大小,其拉线最长距离可达80 m,便于分布式安放在病人身上。温度数据可以在病房主机的液晶上滚动显示。医院监控中心和各病房主机之间的网络通信,采用C-S架构,病房主机每分钟向医院监控中心发送各路温度数据。医院监控中心接收来自各病房主机的数据,可以以曲线或者数字的方式实时显示各病人温度变化情况,并进行异常处理和相应信息记录,并且与病人数据库同步,及时提醒值班医生和护士关注病人情况。

2 硬件设计

2.1 单片机主控单元设计

单片机AT89C52是一个低电压,高性能CMOS8位单片机,片内含8 KB的FLASH和256 B的RAM,片内置通用8位中央处理器,具备32个双向I/O口。其中单片机的P0口用于现场显示电路,采用点阵液晶显示模块LM6038D,可以滚动显示各个病人的体温;P1口用于接单总线数字温度传感器DS18B20;P2口用于现场控制电路,包括按键、指示灯等;P3口的P3.0(RXD)和 P3.1(TXD)用于和ZNE-100T的串口通信。系统采用5V供电。

2.2 单总线温度采集电路设计

DS18B20的测量范围为-55~+125℃;在-10~+85℃时,它的精度为±0.625℃,通过特殊处理,可以达到0.1℃。

单总线数字温度传感器DS18B20的电路连接方式主要有两种,如图2所示。该设计采用外接电源方式,如图2(b)所示。理论上单片机的每个端口可以接无数个DS18B20,但是单片机端口负载能力有限,P1口的每个端口(P1.0至P1.7)只能推动8个DS18B20。该设计中只用P1.0端口接了8 只DS18B20。

2.3 通信电路设计

ZNE-100T是采用RS 232接口(DB9接头)与单片机通信的,而单片机只能用TTL电平,因此,必须设计一个RS 232转换电路与之通信。RS 232转换芯片选用Maxim公司的MAX232E。其转换电路如图3所示。

2.4 液晶显示电路设计

液晶显示模块采用拓谱微公司生产的LM6038D点阵液晶模块,该模块有128(列)×64(行)个像素点,另外每列多设计了4个像素点,实际上是 132×64个像素点,分成9页。该设计充分利用了多出的4个像素点,做成了一个滚动条,通过按键可以操作滚动条,以便用户翻页查看显示的内容。

2.5 控制电路设计

该设计设计了两个按键,分别接在单片机的P2.0和P2.1引脚上,分别用于控制液晶显示屏滚动条的上下拉。还设计了两个指示灯,分别接在单片机的P2.2和P2.3引脚上,分别用于指示发送数据指示(红色发光二极管)和连网成功指示(绿色发光二极管)。

2.6 看门狗电路设计

为防止系统死循环,提高系统的可靠性,采用了MAX813L看门狗电路。其最大超时为1.6 s,高电平复位,即RESET脚保持状态1.6 s后就发一复位信号。因此,程序中必须每1.6 s内改变RESET状态1次。

3 单片机程序设计

该系统单片机程序采用C语言编写。程序首先对硬件进行初始化,包括对单片机AT89C52寄存器的初始化、DS18B20内部RAM的初始化、液晶显示模块LM6038D的初始化以及对以太网通信模块ZNE-100T的初始化。程序通过分时法轮流采集8只DS18B20的温度读数,并实时在液晶上显示,用户通过操作按键可以翻页查看8只DS18B20的温度数据,单片机每隔1min通过串口把8路温度数据打包后发送给以ZNE-100T,ZNE- 100T、实时把数据传输到医院监控中心。系统流程图如图4所示。主要的子程序有:DS18B20驱动程序、液晶显示驱动程序和串口和网络通信驱动程序。

3.1 DS18B20驱动程序设计

单总线通信时只需要1根信号线,并严格按照特定的时序要求逐位交换信息,主机和从机允许数据双向传输,但在同一时刻数据的传输只能是一个方向的。

(1)初始化时序

初始化时CPU首先发出一个复位信号将单线总线上所有DS18B20复位;然后释放总线,改成接收状态,单线被上拉电阻R拉成高电平。在检测到此上升沿后,DS18B20需要等待15~60μs才向CPU发出响应脉冲,此后便可对ROM,RAM进行操作。

(2)读/写时序

①写时序。CPU把I/O线从高电平拉至低电平时,作为一个写周期的开始。写时序包括2种类型即写1时序和写0时序。

②读时序。当CPU将I/O线从高电平拉成低电平时,就作为一个读周期的开始,并且I/O线保持低电平至少为1μs。DS18B20的输出数据至读时序下降沿后的15μs内有效。经过15μs后读时序结束,I/O线经外部上拉电阻又变成高电平。读/写1位数据至少需要60μs,并在两位数据之间至少要有 1μs的恢复期。读/写1位数据时序的波形如图5所示。

3.2 液晶显示驱动程序设计

利用点阵液晶显示模块LM6038D的串口模式,其时序图如图6所示。

LM6038D的显示驱动程序包含了字符库,由于系统只是简单地显示温度数据,所以字符库做的比较小,只有“0~9”,“.”,“:”,“℃”,“+”以及“-”的字符编码,采用16×16的字符大小。液晶每一页只显示4路DS18B20的数据,通过两个按键可以上下翻页查看其他DS18B20的数据。数据显示格式:“1:+36.7℃”。

3.3 串口和网络通信驱动程序设计

单片机和ZNE-100T‘模块之间通过RS 232接口通信,采用中断的方式进行串口通信。单片机串口初始化波特率为9 600 b/s,单片机在初始化时,就先通过串口对ZNE-100T进行初始化操作,包括设置服务器IP地址,本机IP地址、网关、掩码以及服务器端口号等,连网成功后,绿色发光二极管会亮起。单片机单元加上ZNE-100T模块,就构成了病房主机,它和医院监控中心之间的通信协议如下:

每个病房主机都有一个ID号。单片机每隔1 min把采集到的8路温度数据按照通信协议打包之后通过串口发送给ZNE-100T,ZNE-100T则通过网口把数据发送到医院监控中心,此时红色发光二极管会不断的闪,表示正在发送数据。

4 医院监控中心

医院监控中心包括数据库和监控平台。数据库记录从个病房主机发过来的病人的体温数据,并且与病人的其他数据库同步,便于医生分析病人的病情变化。监控平台则实时显示各床号病人的体温数据,并对体温变化异常的病床号进行预警,同时显示相应的编号和床位信息,提示医护人员注意检查病人身体状况。

5 测试结果和实际使用情况

(1)DS18B20温度测量精度

在测试过程中选用了水银体温计同时测量温度,以检验DS18B20的测量精度。在此测量20次体温,DS18B20的测量结果和水银体温记的测量结果基本一致。

(2)监控中心温度显示

在实际测试过程中,用5台病房主机和监控中心组成了一个测试网络,可以在监控中心实时看到各病房主机发送过来的温度数据,每路温度数据都可以以曲线或者数字的方式显示。

6 结语

实践表明,该系统可以稳定地测量多个人体温度,可以正常与监控中心通信,并且可以实时地在病房主机上显示测量的温度数据。该系统具备稳定性好,成本低廉,采用单总线测温技术和以太网通信技术,便于实现分布式温度测量,可以作为子系统模块在医院信息系统中应。



推荐阅读

评论

技术专区

关闭