基于MQTT协议的智能医疗监控系统
摘要
物联网(IoT)是一种新兴的范式,包含大量智能设备和智能物体,它们连接到互联网以实现彼此之间的通信。物联网在众多领域中被广泛应用,使人类的日常生活更加便利。这些智能物体和设备可用于从传感器收集信息,例如体温、血压、血糖水平等,用于医疗保健中评估患者的健康状况。所收集的信息上传至云平台,以便医生做出准确判断,并通知看护人或护士。
本文中,测量了患者的脉率、体温、身体活动及其他参数,并将这些测量数据上传至MQTT服务器。该系统会向患者提示可能需要采取的预防措施,并建议相应的医疗护理以及在出现任何紧急情况时患者应采取的行动。该系统帮助医生随时随地监控患者状况,同时也使患者家属能够远程查看患者的健康状况。
Index Terms—MQTT,物联网,ESP32,spo2, HTTP,血糖水平。
一、引言
物联网(IoT)是一种新颖的方法,可将普通设备或物体连接到互联网,实现设备之间的通信,无论是否有人参与[1]。预计物联网设备总数到2020[1]将超过500亿台。物联网无处不在的传感器与设备相连,设备再连接到云。在未来的几年中,物联网拥有众多应用[1]领域,包括智能医疗、智慧城市、智能交通、智能电网、工业自动化、智能家居等[2],[3]。在物联网的各种市场领域中,智能医疗是领先的行业。
随着全球人口日益增长,老年人数量的增加也带来了社会上的诸多挑战[4],[5]。随着世界人口的增长,许多老年人同时遭受着越来越多健康问题的困扰。根据世界卫生组织(WHO)[6]预测,到2020年,近20亿人将达到六十岁,而发展中国家一半的人口将容易患上慢性疾病。随着年龄增长,人们可能更容易患上各种疾病,[3]例如糖尿病、痴呆症、心脏病、阿尔茨海默病和猪流感,这些疾病要求对患者进行持续监测和协助[4]。为如此庞大的人群提供医疗照护将变得更加昂贵,但他们需要得到充分的照顾连续监测。因此,解决所有这些问题的方法是采用智能医疗[3],[7],[8]。
A. 智能医疗功能
1) 患者相关健康数据
患者相关健康数据是指由患者或看护人生成或记录的任何与健康相关的信息。患者相关健康数据包括属于患者健康状况、治疗历史和症状等方面的数据,这些数据可通过可穿戴设备或联网医疗设备收集,或由患者自行上报[4],[1]。患者相关健康数据与医疗专业人员收集的普通数据的区别在于,此类数据以数字形式存储,易于共享[3]。
2) 远程监测患者
这对于居住在社区医疗机构或日托中心的人们来说是一种优势。物联网设备可以采集与患者相关的健康数据,供医疗专业人员和看护人员远程查看[4],[1]。这是一种有效监控患者健康状况的方法,并可在特定治疗无效时建议新的治疗方案。远程监测患者的其他优点还包括在急性疾病发展到非常复杂的阶段之前及时发现,以及检测患者的药物中毒情况[3]。
3) 预防性护理
物联网在医疗行业的应用也可用于没有患病但希望预防未来健康问题的健康人群[1]。可以每天生成健康相关信息,并与医生或医疗专业人员共享。这有助于及早发现轻微问题或疾病,并从长远角度预防疾病[3]。
4) 短期护理(STC)
短期护理(STC)可提供给因急性疾病接受治疗后出院的患者[8]。由于有短期护理(STC),患者在恢复期无需前往医院,同时还能在家中获得更好的医疗照护[4],[9]。
II. 所提系统的架构
图1展示了使用ESP32和MQTT协议的智能医疗系统的系统架构。该智能医疗系统采用心率传感器、spo2传感器、温度传感器、体动传感器或加速度计等传感器设计而成。心率传感器用于测量患者的心率,spo2传感器用于测量人体血液中的血氧含量(含氧血红蛋白)[1]。LM35传感器用于测量患者的体温,同时使用加速度传感器来监测患者身体活动。
所有这些传感器通过连接线连接到ESP32微控制器,该微控制器具有36个GPIO引脚,并支持Wi-Fi和蓝牙。然后ESP32微控制器连接到MQTT服务器[10],[11],该服务器用于在网页或移动应用中显示传感数据[4]。
基本上,所提出的系统分为两个部分。第一部分包括传感器和微控制器,第二部分包括MQTT代理以及评估数据的显示。在所提出系统的第一个部分中,作为网络网关使用的ESP32微控制器通过导线连接到传感器;在第二部分中,设计人员需要完成MQTT服务器安装的后台流程,并通过Wi-Fi或蓝牙将该服务器连接到ESP32。MQTT代理使用加密协议以实现安全目的。最后阶段涉及数据库管理,通过为用户创建用户名(每位用户的唯一用户ID)和密码来启动日志方法,以便访问所需信息。简而言之,通过使用此技术,我们可以增强整个MQTT协议系统,使其更适用于实际应用。最后,信息通过移动应用和网页[12],[13]进行展示。
III. 程序步骤
所提出的系统的目标是从传感器收集数据,并将这些数据发送给医生或护士,以实现对患者的连续监测。为了实现连续监测,医生需要获取患者的多种参数,例如体温、脉率、血氧饱和度百分比和患者的身体活动以及其他许多参数。ESP32微控制器作为网络服务器,通过Wi-Fi连接到互联网。它作为一个网络,控制着传感器,并接收来自所连接传感器的更新信息传感器的值。MQTT协议比HTTP协议更安全,因为它使用加密协议,且MQTT协议是轻量级、低延迟协议。传感数据被持续存储在MQTT服务器中。使用MQTT协议和加密协议的优点是,所需数据不会伴随模糊数据存储,同时也能保持安全[4],[14]。
IV. MQTT协议与HTTP协议的比较
| 功能 | MQTT协议 | HTTP协议 |
|---|---|---|
| 全称 | 消息队列遥测传输协议 | Hyper Text Transfer 协议 |
| 架构 | 它具有发布/订阅功能架构,这里设备可以发布任何主题,也可以订阅任何主题以获取任何更新。 | 它具有请求/响应架构。 |
| 消息 size | 较小,它是二进制的,具有2字节头部。 | 较大,它采用ASCII格式。 |
| Data 安全 | Yes | NO, 因此使用HTTPS是用于提供数据安全。 |
| 复杂性 | 简单 | 更复杂 |
五、组件信息
A. ESP32
ESP32微控制器包含功率放大器和内置天线开关。该微控制器具备蓝牙以及Wi-Fi功能[16]。ESP32微控制器特别适用于物联网应用和可穿戴设备。它能够在-40至125摄氏度的温度下运行。这是一种低成本设备,具有动态电源调节、滤波器、电源管理模块和低功耗运行等特点。
| 规格 | ESP32 |
|---|---|
| 传输功率 | +12 dBm |
| GPIO引脚数量 | 36个引脚 |
| ADC类型 | 12位SAR ADC |
| 工作温度 | -40°C 到 125°C |
| 电源电压 | 2.3V - 3.6V |
| ROM | 448 千字节 |
| 静态随机存取存储器 | 520 千字节 |
| Wi-Fi | IEEE 802.11b/g/n |
| 价格 | 10 美元 |
B. LM35
温度传感器是一种用于测量物体冷热程度的设备。LM35 是一种精密温度传感器,能够以摄氏度输出温度值,并且比普通热敏电阻[3]具有更高的测温精度。LM35 的工作温度范围为 -55 至 150 摄氏度。LM35 温度传感器无需放大器即可放大输出信号,且产生的输出电压高于热电偶。LM35 温度传感器有 3 个引脚:VCC、GND 和模拟输出[4]。
| 参数 | 值 |
|---|---|
| 工作温度范围 | -55 °C 到 150 °C |
| 工作电压 | 4V 到 30V |
| 电流消耗 | 60 微安 |
| 供电电流 | 10 mA |
| 模拟输出电压 | +6V 至 -1.0V |
| 输出引脚 | VCC, GND, A0 |
| 价格(印度卢比) | 40 卢比 |
C. 加速度传感器
加速度传感器主要用于测量静态加速度(由重力引起,用户可由此确定设备相对于地球的倾斜角度)和动态加速度(在此情况下,用户可分析设备的运动方式)。此外,它还可用于测量一个、两个或三个正交轴上的加速度。大多数加速度计为微机电系统(MEMS),其工作原理基于牛顿第二运动定律(F=ma)。当加速度施加到设备上时,会产生一个力,使质量[16]发生位移。
| 参数 | 值 |
|---|---|
| Chip | MPU-6050 |
| 工作电压 | 3V 至 5V |
| 通信模式 | 标准IIC通信协议 |
| 输出 | 模拟和数字 |
| 价格(印度卢比) | 150卢比 |
D. 心率传感器
心率传感器用于测量心跳次数,其工作原理基于光电容积脉搏波描记法。该传感器结合了两个发光二极管、一个光电探测器、优化的光学元件以及低噪声模拟信号处理电路,以检测心率信号[3]。此传感器可从5伏和3.3伏电源供电,并可通过软件关断,待机电流可忽略不计,允许电源始终连接[4]。
| 参数 | 值 |
|---|---|
| 工作温度范围 | -40 °C 至 +85 °C |
| LED 供电电压 | 3V 至 5V |
| LED 峰值波长 | 880 纳米 |
| 供电电流 | 600 到 1200 μA |
| 价格(印度卢比) | 250 卢比 |
Alere G1 血糖仪
Alere G1 血糖仪是一种用于测定血液中葡萄糖(C6H12O6)大致浓度的医疗器械。该设备对患有低血糖或糖尿病的患者非常有用。糖尿病是一种由血糖水平过低或过高引起的慢性疾病。为了计算血糖水平,需通过刺破皮肤采集一滴血液,然后将试纸连接到设备上,以测量血糖水平读数。
| Type | 正常人 | 糖尿病患者 |
|---|---|---|
| 空腹 | 70至99毫克/分升 | 80至130毫克/分升 |
| 2小时后进餐 | 低于140毫克/分升。 | 低于180毫克/分升。 |
| ## VI. 硬件和软件方面 | ||
|
图7显示了智能医疗系统的连接图。在该系统中,使用了LM35传感器(用于体温测量)、心率传感器、加速度传感器(用于患者身体活动)以及一种用于测量患者体内血糖的设备。所有这些传感器都连接到ESP32微控制器,该微控制器在MQTT协议中用作发布者。在所提出的系统中,血糖测量设备并未通过导线连接到ESP32,患者的血糖读数需每天手动发布到MQTT服务器。在该系统中,Adafruit.io被用作MQTT代理,因此用户需要在指定服务器上创建一个账户。
结果
智能医疗监控系统的结果部分如以下图所示。在网页中,显示患者的体温(使用LM35)、患者的身体活动(使用加速度计)、脉率和血糖水平。对于血糖水平的测量,采用Alere G1血糖仪进行。此处,测量读数需每天手动发布到MQTT服务器。
患者的身体活动也会被检查,在此过程中测量患者醒来和入睡的次数。如果测得的读数超过阈值,则医生和患者都会通过消息收到警报。
根据美国心脏协会(AHA)[17],成人正常的脉率范围为每分钟60到100次心跳,而训练有素的运动员在静息状态下的心率可能为每分钟40到60次[17]。测量脉率最方便的位置包括手腕、颈部侧面、肘部内侧和脚背[17]。正常人体体温为37°C。
VIII. 结论
本文提出了一种智能医疗系统,该系统允许医生通过移动应用和网页实时远程动态查看患者的生理参数,且无需在计算机上具备任何特殊要求,只需具备互联网接入即可。在患者端,使用智能医疗设备来测量心率、血氧水平、身体活动以及患者的体温。未来,所提出的系统可扩展用于多位患者,并根据收集的数据将患者分为普通护理和需要更多护理的患者。所提出的系统的成本为3000印度卢比。
43

被折叠的 条评论
为什么被折叠?



