远程医疗监测智能硬件BB-Black的设计

发布时间:2015-08-20 阅读量:932 来源: 我爱方案网 作者:

【导读】我爱方案网小编为大家介绍远程医疗监测智能硬件BB-Black的设计,BB-Black开发板以其价格便宜、功能强大等优点广泛应用于各种场景,怎样利用BB-Black设计一个更智能、功能更齐全的实时远程医疗监测系统,将是一个有市场前景的研究课题。

本文以BeagleBone Black为核心,挂接ZigBee无线传感节点和GSM/GPRS模块;建立web服务器和SQLite数据库,接收、解析和存储ZigBee节点采集的生理数据,控制GSM/GPRS进行紧急呼救和发短信;让硬件智能化,提供自动生理监测功能,为人们的生活提供便利。

目前,医疗设备的主要缺陷是价格昂贵、体积庞大和非智能;随着技术的发展,近年来涌现了不少优化的智能医疗设备,给人们的生活带了极大便利。但仍存在功能单一,不可远程访问等缺陷。

1. 应用系统总体结构设计描述

1.1 硬件平台相关介绍


设计共涉及BB-black、ZigBee和GSM/GPRS三个硬件模块。其中BB-black开发板为核心模块,是一款基于AM3359处理器的开发套件,其实物图如图1所示。处理器集成了高达 1GHz 的 ARM Cortex-A8 内核,并提供了丰富的外设接口和两个扩展接口,可扩展LCD、UART、eMMC、ADC、I2C、SPI和PWM等接口。其系统框图如图2所示。

AM3359 是基于 ARM Cortex-A8 内核的微处理器,在图像、图形处理、外设和诸如etherCAT 和 PROFIBUS 的工业接口选项方面进行了增强,并支持Linux、 WinCE 和Android 等高级操作系统。该处理器包含了多个子系统。微处理器单元(MPU)子系统基于 ARM Cortex-A8 微处理器; POWERVR SGX 图形加速子系统用于 3D 图形加速以支持显示和游戏效果;可编程实时单元子系统(PRUSS)使用户可以创建各种超越本地外设的数字资源。此外,PRUSS 独立于 ARM 内核,这就允许设备有独立的操作和时钟,从而在复杂系统解决方案中有更大的灵活性。

远程医疗监测智能硬件BB-Black的设计

图1 BB-black实物图背面(左),正面(右)

远程医疗监测智能硬件BB-Black的设计

图2 BB-Black系统框图

1.2 系统功能模块及信息处理过程


系统的功能模块如下图3所示,主要由数据采集模块、GSM模块、远程登录模块和BB-Black模块四部分组成。其中生理数据模块采用ZigBee无线传感节点实时采集用户生理数据;GSM模块采用四频 GSM/GPRS ,实现紧急报警和定位;远程登录模块是指手机或其它上网设备,供用户远程访问和监控;BB-Black模块是本系统的核心模块,该模块又可分为数据处理、Boa服务器和SQLite数据库三部分。数据处理模块实现对数据的接收、解析、向SQLite数据库插入数据和向GSM模块下达紧急报警命令;SQLite数据库主要用于存储生理数据;Boa服务器则实现用户的远程访问查询SQLite数据中存储的生理数据。

远程医疗监测智能硬件BB-Black的设计

图3 系统功能模块框图

正如上图所示系统的信息处理过程如下:

1. 生理数据采集模块实时采集生理数据。

用户可根据需要随身携带相应的生理数据检测模块(如:血压、血糖、脉搏等检测模块),在BB-black建立的无线传感网络覆盖范围内移动、实时生理数据采集,按IEEE 802.15.4的通讯标准,通过无线网络将生理数据包传送出去;在BB-black开发板上连接的ZigBee终端节点将数据包接收。

2. BB-black模块接收、分析和处理生理数据。

AM335x处理器定时的读取终端节点接收的数据包,通过解析得到数据包中的生理数据,并存储到SQLite数据库,同时根据健康指标对数据进行分析,若遇紧急情况,则向GSM/GPRS模块

发AT控制命令,进行紧急呼救。

3. 监护人或医生可随时随地访问服务器查看、管理被监护人近期生理数据。

用户通过上网设备打开浏览器登陆Boa服务器,提交查询表单,即可访问SQLite上存储的被监护人的生理数据,实现远程了解被监护人近期身体状况,实现远程监控。

本系统应用场景可如图4所示。

远程医疗监测智能硬件BB-Black的设计

图4 系统应用场景图

 

2. 远程监控功能实现


系统以BB-black为平台,提供用户远程登录访问嵌入式Web服务器Boa,查看该服务器上的被监护人近期生理数据功能;为了实现数据存放功能,作者针对嵌入式设备,采用开销小、可移植性强、便使用且高效的嵌入式SQLite数据库。而CGI(Common Gateway Interface)通用网关接口,则是Web服务器和SQLite数据库之间的桥梁,作为客户端与Web服务器交互的标准接口,可按照该标准编写应用程序实现静态HTML网页无法实现的数据库访问和搜索功能,实现客户端与服务器的交互操作。其工作原理如下图5所示。

远程医疗监测智能硬件BB-Black的设计

图5 远程监控模块软件构成与工作原理

首先,由客户端通过浏览器向服务器发起请求,嵌入式Web服务器端收到请求后触发指定的脚本程序对请求进行解析,并执行相应的CGI应用程序。

其次,CGI应用程序根据请求信息调用相应的SQLite数据库操作程序,并把数据库操作程序的执行结果以HTML文档形式传递给Web服务器;嵌入式Web服务器分析、处理HTML文档信息,并将最终数据内容传送给客户端浏览器。

最后,由客户端浏览器对数据内容进行解析,并以网页形式显示给客户。

2.1 嵌入式Web服务器Boa

2.1.1 嵌入式服务器Boa的选用


ARM Linux开发环境下支持httpd、thttpd和Boa三种嵌入式Web服务器。作者选用的是可执行文件小、运行过程中需要的资源小的嵌入式Web服务器Boa。

Boa作为一种单任务的HTTP服务器,通过建立HTTP请求列表来处理多路HTTP连接请求,同时在处理请求过程只为CGI程序创建新进程,在最大程度上节省了系统资源,对嵌入式系统来说至关重要。同时它还具有自动解压文件、生成目录等功能。

2.1.2 Boa功能实现


设计中Boa服务器需实现接收客户端请求、分析请求、响应请求和向客户端返回请求结果等任务。其工作流程如下图5所示。

远程医疗监测智能硬件BB-Black的设计

图6 Boa服务器工作流程

Boa服务器初始化工作代码实现:

远程医疗监测智能硬件BB-Black的设计

上述代码首先创建一个无阻塞的流式套接字描述符socktfd,提供面向连接的可靠传输。然后利用bind()函数将指定端口与套接字描述符关联,最后利用listen()函数在指定端口监听,等待Request请求。

当监听到连接请求,服务器调用get_request()函数获取请求信息,利用accept()函数建立连接,接收请求、分析信息,进行HTTP认证确认,处理请求信息,并将结果发送、显示到Web浏览器;当有CGI请求时,创建CGI处理进程,并将处理结果发送、显示到Web浏览器。

 

2.1.3 Boa在ARM上的移植


首先,针对BB-Black和实际应用场景对Boa服务器源代码作以下修改:(1)根据监护人数量指定HTTP请求列表限制参数;将服务器的输入输出缓存空间设为最大值,以加快生理数据传输速度;(2)通过编写实现一些简单函数,来精简Linux操作系统库函数,节约资源。

其次,利用arm-linux-gcc交叉编译环境,配置生成大小为175.8KB的boa可执行程序。通过bin.arm-linux-strip boa指令剥去附带的编译信息,得到仅59.4KB的ARM平台可执行文件。

最后,通过修改Web服务器的配置文件boa.conf:监听端口为80,注释掉绑定IP地址设置栏,KeepAliveMax值为50,KeepAliveTimeout值为10,服务器名字为www. RemoteMedicalMonitoringSystem.com;以及CGI路径,访问日志和错误日志的存放路径等运行参数;将该配置文件和可执行文件boa放到BB-Block平台的/home/www目录下;执行genromfs-f romfs.img-d romdisk命令生成一个含有Boa服务器的根文件系统,通过bootloader烧写到存储器。完成Boa到ARM平台的移植。

2.2 CGI与SQLite数据库移植

BB-Black开发板在运行CGI和SQLite程序前,需要将相应的库移植到开发板。设计通过交叉编译之后将CGI的libcgic.a和capture拷贝到BB-black开发板的/home/www/cgi-bin目录下,完成移植工作(可通过网页访问该目录,若在网页上显示cgic test的字样,则表明cgi库移植成功);将SQLite的sqlite3和libsqlite3.so.0.8.6分别下载到BB-black开发板的/usr/bin和/usr/lib目录中并通过ln –s /usr/lib/libsqlite3.so.0.8.6 /usr/lib/libsqlite3.so.0命令,建立软连接(因为可执行程序sqlite3在运行的时候搜寻libsqlite3.so.0动态库),完成移植工作。

2.3 远程监控功能实现

2.3.1 HTML设计

远程医疗监控界面主要有监护人登录界面和被监护人生理数据监测界面。其中脉搏和心跳监测HTML页面首行代码

用action=“pluse_heart_monitor.cgi”将表单指向pluse_heart_monitor.cgi处理程序,method=“get”指定获取环境变量的方式为get;程序的最后几行用type=“submit”或type=“reset”指定点击这两个按钮时提交表单;其他生理数据监测页面与此相似。

2.3.2 CGI和SQLite数据库互动设计


CGI与SQLite数据的互动主要包括CGI程序在SQLite数据库上建立生理数据表,插入生理数据;CGI按照表单提交内容对数据表进行增删改查询操作;其主要的控制函数代码如下:

远程医疗监测智能硬件BB-Black的设计

其中getcgidata()实现GET和POST两种方式从网页获取字符串函数;若为””“GET”方式,则通过getenv(“QUERY_STRING”)函数获取字符串函数;若为“POST”方式,首先用atoi(getenv(“CONTENT_LENGTH”))函数获取字符串长度,再利用(char)fgetc(stdin)函数依次获取单个字符。

通过getcgidata()函数从网页获取的字符串中各数据项由‘&’符号隔开,getstringdata()函数则是去掉‘&’符号,提取有效信息,为select_pluse_spo2()函数对SQLite数据库执行查询操作提供参数。

select_pluse_spo2()函数以getstringdata()函数得到的有效信息为参数,执行打开数据库、查询数据、向网页打印数据操作。部分功能实现代码:

远程医疗监测智能硬件BB-Black的设计

3 参数发送和接受功能的设计

3.1 数据采集模块功能实现


生理数据采集模块,由数据监测模块和无线传感节点ZigBee组成。数据监测模块负责采集数据,ZigBee节点负责接收、解析和传输数据;解析过程根据监测项目调用相应的子程序(如:测血氧、脉搏、体温等);传输数据时终端节点和非终端节点分别调用向串口发送子程序和发射子程序。具体的实现程序流程如下图7所示。

远程医疗监测智能硬件BB-Black的设计

图7 ZigBee节点参数接收和发送流程图

3.2 ARM板上生理数据接收功能实现


在ARM板上首先打开串口,然后配置发短信所需的串口参数,并初始化接收缓冲区,开始循环读串口数据包;当读取到数据,就对数据包进行分析,获取包中隐含的血氧饱和度和脉搏值;并进行健康监测(按照健康生理指标监测),如果获取的生理数据不正常就会向监护人手机发送短信(包含相应的生理数据和健康状况说明);最后将生理数据包转化为16进制数存入文档。具体的处理流程如下图8所示。

远程医疗监测智能硬件BB-Black的设计

图8 ARM板接收和处理生理数据的流程图

4. 系统功能测试


测试前,需通过开发板上的USB和UART接口,将生理数据接收模块和GSM/GPRS模块连接;通过RJ45接口将开发板接入网络;同时用户根据需要佩戴数据采集模块。完成硬件连接后各模块上电,待系统会自动启动各项服务完成后,进行测试。

以脉搏和血氧浓度为例,测试的登录界面;查询生理数据结果显示,以及手机接收短信如下图所示。

远程医疗监测智能硬件BB-Black的设计

图9 用户登录界面

远程医疗监测智能硬件BB-Black的设计

图10 用户查询生理数据结果显示

远程医疗监测智能硬件BB-Black的设计

图11 手机接收生理监测的生理数据短信

经功能测试表明:

1. 在无线传感网络覆盖范围内,测试者可以携带监测设备,随意走动;系统自动进行生理监测,数据传输和存储。

2. 系统能够智能的分析生理数据并将结果以短信形式发送到测试者手机上,同时能够智能紧急呼叫测试者。

3. 测试者可以使用电脑或手机等其它上网设备,通过浏览器访问Boa服务器,查看存储的生理数据信息。

通过性能测试表明:

测试者穿戴完毕上电后,设备智能工作。测试者可以实时收到生理数据短信提示,同时也可以通过网页快速的访问、修改生理数据。但受传感器信号覆盖范围的影响(据测试,两个传感节点间可传递数据包的间隔距离上限为1.5米),测试者的自有度有限。同时嵌入式设备存储空间有限,存储在SQLite数据中的数据会每隔一个小时以数据包的形式通过GSM发送给测试者。

总体来说该系统与传统的医疗监测设备相比,具有易携带、低功耗、低成本等优点,在未来的家庭子女远程监护老人和提高人们生活质量方面,有很大的市场前景。但系统仍存在不足,今后的工作主要是户外无线传感网络环境的搭建研究,实现更大范围、更实用的远程医疗监控。

相关文章

一款选择性激光微观熔化技术创造新型医疗植入材料

实现医疗3D打印人体组织

介绍国内普及3D打印医疗器械面临挑战

相关资讯
“中国芯”逆袭时刻:新唐携7大新品打造全场景AIoT解决方案矩阵

在万物互联与智能化浪潮席卷全球的今天,新唐科技以颠覆性创新奏响行业强音。4月25日,这场历时10天、横跨七城的科技盛宴在深圳迎来高潮,以"创新驱动AI、新能源与车用科技"为主题,汇聚全球顶尖行业领袖,首次公开七大核心产品矩阵,展现从芯片设计到智能生态的全链条创新能力,为半导体产业转型升级注入新动能。

半导体先进制程技术博弈:台积电、英特尔与三星的差异化路径

在2025年北美技术研讨会上,台积电正式宣布其A14(1.4nm)工艺将于2028年量产,并明确表示无需依赖ASML最新一代High NA EUV光刻机。这一决策背后,折射出全球半导体巨头在技术路线、成本控制和市场竞争中的深层博弈。

嵌入式主板EMB-3128:轻量级边缘计算的工业级解决方案

随着AIoT技术的快速落地,智能设备对高性能、低功耗嵌入式硬件的需求持续攀升。华北工控推出的EMB-3128嵌入式主板,搭载Intel® Alder Lake-N系列及Core™ i3-N305处理器,以高能效比设计、工业级可靠性及丰富的接口配置,成为轻量级边缘AI计算的理想选择。该主板支持DDR5内存、多模态扩展接口及宽温运行环境,可广泛应用于智能家居、工业自动化、智慧零售等场景,助力产业智能化升级。

从ASMI财报看行业趋势:AI芯片需求爆发如何重塑半导体设备市场?

作为全球半导体沉积设备领域的龙头企业,荷兰ASM国际(ASMI)近日发布2024年第一季度财报,展现强劲增长动能。财报显示,公司当季新增订单额达8.34亿欧元(按固定汇率计算),同比增长14%,显著超出市场预期的8.08亿欧元。这一表现主要受益于人工智能芯片制造设备需求激增与中国市场的战略性突破,同时反映出半导体产业技术迭代与地缘经济博弈的双重影响。

车规级SerDes国产替代提速:解析纳芯微NLS9116/NLS9246技术优势与市场潜力

随着汽车智能化加速,车载摄像头、激光雷达、显示屏等传感器数量激增,数据传输带宽需求呈指数级增长。传统国际厂商基于私有协议(如TI的FPD-Link、ADI的GMSL)垄断车载SerDes市场,导致车企供应链弹性不足、成本高企。2025年4月,纳芯微电子发布基于HSMT公有协议的全链路国产化SerDes芯片组(NLS9116加串器与NLS9246解串器),通过协议解耦、性能优化与供应链自主可控,为ADAS、智能座舱等场景提供高性价比解决方案,标志着国产车规级芯片从“跟跑”迈向“并跑” 。