基于CC2510的输液监测无线终端的软件设计

2010-05-11 03:48温略钦李艳叶涛朱学峰
自动化与信息工程 2010年3期
关键词:滴速液滴数据包

温略钦 李艳 叶涛 朱学峰

1 引言

随着社会对医院现代化医疗要求的不断提高,自动化与信息化的医疗设备及管理体系受到了更多的关注。现阶段,医院在资金、物流等管理领域已经普及了信息化管理体系,在扫描、内窥等诊断领域亦普及了信息化医疗设备。但是在医疗辅助方面,例如静脉输液,依然以人力管理为主。静脉输液虽操作简单,但也因没有高效的辅助工具而耗费了医院大量的人力资源。因此,设计出一套准确、有效的输液监测系统具有重要意义。

本文首先简述输液监测系统的总体架构,在第3部分简述无线终端的目标功能及程序流程,并讨论终端滴速检测、报警判断和基于CC2510的2.4GHz无线网络的程序设计方法。最后,通过实测证明设计是有效的。

2 系统结构简介

系统由上位机(PC)、数据中心(Access Point,AP)及多台无线终端(Wireless End-Device,WED)构成,如图1所示。

图1 无线输液监测系统的组成

无线终端 WED准确、及时地检测输液速度并通过无线网络向数据中心 AP发送实时数据,当发现故障或意外时启动声光报警,并向AP发送报警信息。AP接收多台WED的实时数据并上传给上位机PC。PC为医护人员提供了一个集成监控的环境,从集成监控界面中,医护人员可以查看就医人员信息、输液速度等,并及时发现报警信息。

检测输液速度是本系统的基本功能。经实验,本文采用的对射型红外传感器能够准确地检测液滴速度。液滴会影响红外传感器对射的红外线,使传感器引脚电平发生变化。使用电压比较器处理变化的电平信号,可输出能被控制器所识别的标准信号[1]。

CC2510单片机在具备增强型 8051核心的基础上,集成了2.4GHz射频通讯功能。可保证多台WED工作情况下的通信速度[2,3]。利用CC2510能够轻松构建具备2.4GHz射频网络通讯能力的AP与WED。

3 无线终端WED程序设计

3.1 整体软件架构

WED的总体程序架构如图2所示。WED的固件程序由滴速检测、报警判断、数据打包和数据发送几个部分组成。

3.2 滴速检测程序

滴速检测程序的目的是实时地检测出输液速度,为后续的报警判断、数据打包和传送提供原始数据。对射型红外传感器及电压比较器组成的硬件电路将为控制器提供标准脉冲信号[4]。

图2 WED的总体程序架构

CC2510带有一个常规的16位计时器Timer1和两个8位计时器Timer3/4。选用16位Timer1,并将液滴脉冲以外部中断形式接入 MCU,可得到最精确的液滴间隔计数值D。设Timer1计数频率为f,通过式(1)可得到液滴间隔时长t,单位为秒(s)。

Timer1的计数频率f由系统时钟fSYS和分频因数N决定。

本程序期望得到每分钟的滴液次数,即滴速v,单位为滴每分钟,所以有

综合以上各式,可得滴速的计算公式

单位为滴每分钟。

CC2510支持高达26MHz的晶振,分频因数N可在1、8、32或128中选择。N的确定需要在相应寄存器设置。选定N之后,公式简化为

即使选择128分频,f也高达203125,需要存放于一个 longint型变量中。编写程序时应当注意各个变量的数据类型,防止运算错误。

3.3 报警判断程序

WED开始工作时将从AP获取当前输液过程的相关信息,包括允许的最高及最低输液速度。报警判断程序将判断滴速检测程序输出的每个速度值,当滴速越限(过高或过低)时启动声光报警,并在数据包中加入报警信息。用程序表示如下:

if(V>>Vmax||V<

alarm();

其中alarm()子程序管理声光报警,并选择需要上传的命令码类型,见表2。该子程序应根据硬件具体编写,在此不再赘述。

3.4 数据打包程序

数据打包程序包含了一个简单的通信协议。为了保证无线通信的质量,本文在CC2510具备的硬件通信协议基础上,另外制定了可满足使用需求的通信协议。由于本文所设计系统具有通信量较小、使用环境较复杂、活动性高等特点,本文所制定的协议应具备以下特点:简易、封装成帧、差错检测、固定的传输格式和透明性。

根据此需求,本文制定的无线通信协议的数据帧格式如表1所示[5],每单元格表示一个字节。

表1 无线通信协议数据帧格式

各字段的作用如下:

起始码:标志数据包合法开端。

地址码:标志数据包来源WED。

命令码:WED判断所得的处理方法。

数据段:存放滴速和报警信息等数据。

校验码:校验数据包有效性。

结束码:标志数据包合法结尾。

校验时取数据包前六个字节进行异或,即

设定命令码的目的在于减少 AP的工作强度。WED在报警判断程序中为当前数据判断出恰当处理方案,AP只需要根据命令码做出相应的处理。这使AP不需对现场状态进行进一步分析,也提高了整体系统的执行效率。

表2 命令码表

本文根据系统工作的各种状态,使用了如表2所示的命令码。表中命令码在AP与WED中是通用的,其中1和3仅为AP向WED发送有效。

3.5 数据发送程序

CC2510单片机集成2.4GHz射频收发模块,设置相应的寄存器就可激活射频收发功能。关于寄存器的设置可参考相应手册,本文只讨论组建网络中 WED的程序控制。

一台AP与多台WED构建成典型的星状网络拓扑。AP通过轮询方式访问每一台工作中的 WED。WED在开始工作时向 AP提出申请,AP根据使用WED输液病人的床号将对应的WED地址填入动态列表,作为轮询依据。工作中的WED接收到AP的访问请求时,将以中断方式调用无线数据发送子程序。图3是WED发送数据的程序流程。

图3 WED工作程序流程图

4 调试与测试

首先进行数据中心AP与无线终端WED的通信测试。测试时共有三台WED及一台AP。测试数据包出数值外,与实际应用无异。经过测试,三台WED均可与主机正常通信。AP轮询三台WED耗时约150毫秒。换算为50台WED,查询时间约为2.5秒。现场有障碍最大通信距离约20米,无遮挡通信距离约为50米。因此,工作环境对通信的影响比较大。

红外检测模块测试中发现,静止或小范围晃动时,液滴检测准确;移动或晃动剧烈时,检测则会出现较大误差。

最后测试的是报警模块。设置了报警阀值之后运行WED,调节输液速度,当滴速过快或过慢时,WED准确发出越限报警。

为了得到更进一步数据,笔者作了总体性能测试。在开启红外检测模块、报警模块和无线通信模块的情况下,AP轮询三台WED的时间延长为170毫秒,其他数据及参数均无变化。

5 结语

本文针对医院输液治疗耗费人力资源、管理繁琐复杂等具体情况,讨论了输液监测系统无线终端的程序设计。经过硬件设计,软件调试之后制出模型机,实现了期望的功能。但是,通过实测发现,此系统在轮询速度、对环境的适应能力等方面还存在一些缺点,若要投入实用,还需要加以研究和改进。希望本文所讨论的无线输液监测系统能够为医院输液治疗室的信息化管理与实时监控提供一定的技术参考,促进现代化医疗在我国的发展。

[1] 张宏建,蒙建波.自动检测技术与装置[M].北京:化学工业出版社,2006

[2] 李文仲,段朝玉.CC1110/CC2510无线单片机和无线自组织网络入门与实战[M].北京:北京航空航天大学出版社,2008

[3] 李彩虹,李贻斌.基于CC2510的无线传感器网络节点设计[J].微计算机信息:传感器与仪表,2007,23(1):159~161

[4] 胡汉才.单片机原理及其接口技术(第2版)[M].北京:清华大学出版社,2006

[5] 丸山修孝,王庆.通信协议技术[M].北京:科学出版社,2004

猜你喜欢
滴速液滴数据包
二维隐蔽时间信道构建的研究*
激光驱动液滴迁移的机理研究1)
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
一种基于微芯片快速生成双层乳化液滴的方法
C#串口高效可靠的接收方案设计
戴明环法在提高小儿头皮静脉输液滴速准确率中的作用
医用智能输液报警器的设计
超声衰减与光散射法蒸汽液滴粒径和含量对比测试
挂盐水滴速有讲究
气液旋流器内液滴破碎和碰撞的数值模拟