基于多种通信协议的医用无线网关的设计与实现

2018-03-03 05:43邢奕鹏王国静鲁亚磊王卫东
中国医疗器械杂志 2018年1期
关键词:IP地址网关蓝牙

【作 者】邢奕鹏,王国静,鲁亚磊,王卫东

1 中国人民解放军总医院,北京市,100853

2 上海大学,上海市,200444

0 引言

随着现代信息技术的发展与人们对保健质量的重视,医疗保健事业逐渐朝着无线、移动、便利的方向发展。在移动观察、跟踪治疗、远程医疗和患者数据管理等方面,无线技术都发挥了非常重要的作用[1]。采用无线技术的数据网关可以实现医疗数据的无线传输和管理,为医疗工作者和相关科研人员提供了便利。但是目前的无线网关[2]有两个方面的缺点:一方面,网关采用单一的无线技术,无法实现多网融合的通信功能。另一方面,目前医用无线网关的软件系统拓展性差、对硬件资源的利用效率低。因此需要设计出一款无线网关能够满足当前多重网络环境的需求,并且能够提供一种操作系统以满足无线网关对通用性和移植性的要求。

本设计的无线网关基于FreeRTOS实时操作系统,实现了Zigbee、WiFi和蓝牙三种通信协议间的互联互通,并集成了医学生理数据的存储及实时显示等功能。

1 系统基本原理与结构

本文设计的无线网关,混合采用Zigbee、WiFi和蓝牙技术,一端与各种形式的医学数字终端组成Zigbee星形网络,另一端通过蓝牙和WiFi与PDA或上位机连接。一方面实现网关功能,即解决了基于Zigbee的医学数字终端与现有具有蓝牙或WiFi功能的终端机之间的通信障碍;另一方面使用Micro SD卡实现了医疗数据的大量存储并且通过按键和OLED实现人机的交互功能。整体结构如图1所示。

图1 系统整体结构Fig.1 Whole system structure

2 硬件实现

硬件设计方面,本设计采用模块化的硬件设计思路,对应不同功能将整个电路分为若干个电路模块,在设计中首先确定了MCU的主体电路结构,然后逐步完成各模块的电路搭建,整体电路结构如图2所示。在电路性能方面,由于网关的实时通信能力是网关性能最重要的体现,所以各模块的通信效率便是首要考虑的技术指标。其次根据对网关便携性的要求,这里着重考虑了网关各模块的体积和续航能力,对各模块提出了小体积和低功耗的设计要求。

图2 医用无线网关硬件实现框图Fig.2 Hardware block diagram of medical wireless gateway

2.1 网关总体控制模块

网关总体控制模块采用意法半导体公司生产的STM32低功耗系列单片机(STM32151C6),该系列芯片具有低功耗、内存大、体积小、运算速度快、应用广泛等优点,采用了以ARM Cortex-M3为内核,工作频率32 MHz,集成了USB连接电源,存储器保护单元,高速嵌入存储器(512 kB闪存和80 kB RAM),以及连接到两个APB总线的增强I/O和外设。主要应用在医疗手持设备、PC外设、GPS和体育运动设备以及民用计量表上[3]。

在本设计中该款芯片作为主控芯片,其低功耗特性使得电池体积大大减小从而改善了网关的整体尺寸和重量,为网关的便携性打下坚实的基础。其次该款芯片极强的运算能力使得网关在收集数据、存储数据、传输数据、显示数据四大主要功能同时工作时也能应对自如。

2.2 通信模块

本设计中通信模块分为Zigbee、WiFi、蓝牙三个独立模块。Zigbee网络部分采用了德州仪器公司针对Zigbee推出的CC2530片上系统,该单片机采用了领先的RF收发器,增强型8051 CPU,系统内可编程闪存,8 kB RAM 和许多其它强大的功能[4],且其具有的优良电气特性使得整个Zigbee网络模块部分能够充分满足本设计对Zigbee网络部分的所有硬件要求。同时,这种设计方法能够方便灵活地应用CC2530丰富的片上功能,对于网关与各节点的灵活组网和后期Zigbee网络的改造升级提供了有力的硬件支持。由于在本设计中WiFi和蓝牙的通信方式相对固定且与常规的使用方法无差异,所以采用了市场上成熟的模块化产品。WiFi模块采用了济南有人物联网技术有限公司推出的USR-C322系列模块(图3),该模块基于德州仪器公司生产的CC3200芯片具有低功耗小体积等优良特性[5]。蓝牙模块采用了德国斯图曼科技技术有限公司推出的BlueMod+SR系列蓝牙4.0双模模块(图4),该模块具有小体积、低功耗、高速率等优良特性,最大可视距离通信范围可达200 m、在传统蓝牙BR和EDR工作模式下的平均传输速度便可达300 kB/s。这两款模块具有的小体积低功耗高速率的特性最大限度地满足了本款医用网关的设计要求,在需要实时传输大量数据时高速率的特点为网关的实时性提供了必要的技术支持,在常规工作模式下小体积和低功耗的特点极大地提高了网关的续航能力和便携性。

图3 WiFi模块Fig.3 WiFi module

图4 蓝牙模块Fig.4 Bluetooth module

3 软件实现

根据网关的硬件设计,软件实现主要包括三部分:系统任务调度设计、Zigbee组网通信和WiFi、蓝牙通信软件设计。

3.1 基于FreeRTOS的系统任务调度

网关的总体控制主要由STM32系列芯片实现,在软件上我们需要通过程序实现对每一个模块的实时控制以及数据的分发和传输。所以在传统非实时任务管理系统下,当网关全功能工作并且同时需要大量数据收发时往往会使STM32芯片堵塞造成整个网关的瘫痪。而对于硬件资源相对丰富的STM32系列芯片来说,RTOS(实时任务管理系统)占用的硬件资源几乎不会对性能造成任何影响。相反,RTOS提供的事件驱动型设计方式,能够更合理地利用CPU。在实际程序中,如果程序等待一个超时事件,在传统无实时任务管理系统的情况下,CPU会一直原地等待超时事件的响应而不能执行其它任务,这样便造成了硬件资源的浪费。如果使用RTOS,则可以很方便地将当前任务阻塞在该事件下,然后自动去执行别的任务,这显然能够更方便、更高效地利用了CPU。

本设计中采用的FreeRTOS实时操作系统具有以下几点优势:①免费、开源;②RAM占用极低;③大量开发者使用FreeRTOS稳定性强[6]。图5为FreeRTOS系统状态转移图。并上传数据,这使得整个系统的数据采集效率大大提高。Zigbee网络连接过程如图6所示。

图6 Zigbee网络连接过程Fig.6 Zigbee network connection process

图5 FreeRTOS系统状态转移图Fig.5 FreeRTOS system state transition diagram

3.2 基于Zstack的Zigbee网络软件系统

Zigbee无线网络的实现是建立在Zigbee协议栈基础上的,本设计采用了德州仪器公司开发的Z-Stack协议栈,完全符合Zigbee2006规范。在开发过程中我们只需要在Z-Stack协议栈的基础上在应用层修改添加自己需要的代码,以完成Zigbee无线网络的组建及后续的数据通信功能[7]。在组网设计上,由于网关需要与每一个医学数字终端达到实时数据传输的设计需求,我们为整个采集系统组建了以网关作为协调器的Zigbee星型网络。在节点判别和数据收集的设计上,我们发现老式的医疗数据采集系统相对僵化呆板,每一个节点只能通过节点程序中固定的标识符来区分同类型的节点,这样即便是同类型节点也需要烧写不同的程序,这便大大限制了采集系统的灵活性与可扩展性。根据这些问题,我们对通信机制进行了大胆地革新,把每一个节点永久烧存在芯片内部的物理地址作为设备的唯一标识符,但只有按正确格式上传物理地址和设备类型才能正确连接至网络,这样在节点设备方面,同类型的节点设备只需要烧写相同的程序,这样大大提高了系统的可扩展性。在网关方面,所有网关允许系统内任何节点加入自身网络,任何节点只要符合系统定义标准均可以加入通信范围内的任何网关

3.3 基于医用环境的WiFi和蓝牙通信软件

对于现有医院网关使用环境,网关最重要的功能便是将通过Zigbee网络收集的医学数据通过WiFi或蓝牙技术传输至上位机等设备,而在路由器普及的今天可以说WiFi网络已经遍布了医院的每一个角落[8],所以通过网关上的WiFi模块让网关加入指定WiFi网络并向网络内指定主机发送相应数据就是网关在医院环境下的重要工作。对此,我们专门设计了一种WiFi数据传输的工作模式。首先我们将指定WiFi网络的名称与密码写入模块内部,通过程序控制WiFi模块在上电后每30 s在当前电磁环境中查找并通过密码加入已定义网络。在常用的WiFi网络条件下,根据TCP/IP协议通信时我们需要知道对方的IP地址,但IP地址往往由路由器分配且并不固定,如果仅仅通过上位机查询的自身IP地址作为目标地址的话会大大降低整个系统的可靠性,所以这里要求上位机采用静态IP地址的方式加入网络[9]。这样,上位机的IP地址就变得确切可知且固定,所以我们将上位机的IP地址写入WiFi模块中,当需要传输数据时网关便可稳定准确地将数据传递至指定上位机。但同时我们仍注意到,如果上位机发生更迭,或需要多目标传输的工作环境下,需要更改上位机IP地址时我们只能一个个网关打开外观从新烧写程序,这无疑是我们不能接受的,所以我们设计了通过蓝牙向网关发送更改IP地址的指令,由STM32芯片通过串口以AT指令集的方式修改WiFi模块的目标IP地址的方法,并通过MCU对电源芯片的控制实现对WiFi模块的重启,以此来实现随时切换目标IP地址的设计。

4 实验结果及结论

按照前文的设计要求,本系统实现了对医学数字终端采集的生理数据的收集、存储、显示、上传的基本功能。以下为实验结果,图7为网关实物,图8为上位机将网关上传的数据通过LabVIEW[10]实时显示的结果,其中包括血氧检测仪采集的血氧饱和度和脉率以及当前实时的红光和红外光的波形与电子血压计采集的收缩压和舒张压以及血压实时AC/DC波形。

图7 医用无线网关实物Fig.7 Medical wireless gateway circuit

图8 LabVIEW实时显示的结果Fig.8 LabVIEW real time display results

5 结语

本设计混合Zigbee、蓝牙和WiFi三种无线技术,在FreeRTOS实时任务管理系统的基础上实现了Zigbee网络中的医学数字终端与上位机或手持设备之间的实时数据通信。与原有医用网关相比,本设计网关具有以下优势:①实现了Zigbee、WiFi和蓝牙三种通信协议之间的数据通信,使得网关的通信价值大大提高;②在WiFi通信方面采用蓝牙更改目标IP地址的方法,灵活利用TCP/IP协议巧妙实现了目标上位机的切换,从而提高了系统的灵活性;③在Zigbee组网方面采取了以物理地址作为节点唯一标识符的方法使得Zigbee网络更具灵活性和扩展性,在节点程序开发和系统对新型节点的扩展方面都有极大地帮助和重要意义。

[1] 谢俊祥. 远程医疗及其发展[J]. 中国医疗器械信息, 2015(3):6-10.

[2] 王国静. 混合Zigbee-Bluetooth无线网关记录仪系统的设计与实现[D]. 北京: 中国人民解放军医学院, 2013.

[3] 季力. 基于STM32芯片的电参数测量与数据传输[J]. 自动化与仪器仪表, 2010(3):137-139.

[4] 蔡利婷, 陈平华, 罗彬, 等. 基于CC2530的ZigBee数据采集系统设计[J]. 计算机技术与发展, 2012(11): 197-200.

[5] 曹源, 徐晓辉, 王停, 等. 面向多传感器接入的无线传感器节点的研究[J]. 电子设计工程, 2016, 24(15): 135-137.

[6] 张龙彪, 张果, 王剑平, 等. 嵌入式操作系统FreeRTOS的原理与移植实现[J]. 信息技术, 2012(11): 31-34.

[7] 张奇松, 尹航. Z-Stack剖析及其在无线测温网络中的应用[J]. 计算机系统应用, 2009, 18(2): 103-105.

[8] 李健, 陈伯勋, 曾光, 等. 基于WIFI技术的无线医院网络建设[J].数字技术与应用, 2011(11): 24-25.

[9] 李明, 康静秋. 嵌入式TCP/IP协议栈的研究与开发[J]. 计算机工程与应用, 2002, 38(16): 118-121.

[10] 王建群, 南金瑞, 孙逢春, 等. 基于LabVIEW的数据采集系统的实现[J]. 计算机工程与应用, 2003, 39(21): 122-125.

猜你喜欢
IP地址网关蓝牙
蓝牙音箱的直线之美
铁路远动系统几种组网方式IP地址的申请和设置
信号系统网关设备的优化
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
天地一体化网络地面软网关技术及其应用
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
基于ETC在线支付网关的停车场收费系统设计
公安网络中IP地址智能管理的研究与思考
基于Profibus-DP/Modbus网关的双阶挤出机组温度控制系统设计
《IP地址及其管理》教学设计