资讯详情

STM32开发板+机智云IoT+智能远程健康监护仪

本设计的总体框架如图1所示 所示。

图1中, 采用监护仪 ARM Cortex-M3 为内核 STM32 单片机作为核心处理单元, 数字集成心率血氧采集模块 红外传感器模块获得的心率信号,非接触测量温度 通过通用通信协议将血氧信号和温度信号传输到核心处理单元进行具体算法和处理, 得到当前测试者的心率值、 血氧值,体温值, 这些参数同时存在LCD 实时显示和更新显示屏。测试人员还可以通过无线通信模块实时将生理参数发送到智能手机、计算机等终端设备,通过独立按钮配置生理参数的阈值提醒, 这些生理参数的远程监测可以在云中实现。

设计中使用的微控制单元是STM32F103VET6 主控芯片, 其内核 Cortex-m3 是 ARM 公司在满足相对高性能市场产品的同时,对成本和功耗敏感。 ST 公司基于 Cortex-m 内核推出了STM32 多系列版, 有基本型、增强型、互补型和 USB 基本型等, 其主流产品STM32F103 增强系列微控器广泛应用于电子电力系统、电机驱动、手持设备、空调系统、医疗电子等领域。
STM32F103VET6 最高工作频率可达72 MHz , 512 KB 的 Flash 容量作为 程序存 储器 , 64 KB 的 SRAM 存储器静态随机存取, 同时, 丰富的外设集成在片中, 如: USB 、ADC 、CAN 、I2C 、UART 、TIMER 等。 开发者可以通过库函数、寄存器、STM32CUBEMX 提高编程效率等多种开发方法。
MAX30102 是美信半导体公司于 2016 数字集成心率血氧传感器模块是专门为可穿戴设备和健康医疗辅助设备设计的。 该模块主要集成了双波长红光和红外光 LED 、光电探测器、环境光消除器件、高精度分辨率可调 18 位 ADC 、数字噪声消除器件,FIFO 存储器和 I2C 通信接口。 可通过单片机 I2C 通信对 MAX30102 心率模式、血氧模式或共用模式单独设置, 配置内部 ADC 采集分辨率、红光和红外光样本的速率,FIFO 中样本溢出的中断模式、低功耗待机模式等操作。美信官网有 MAX30102 系统图和数据手册, MAX30102 如图所示 2 所示。

传感器测量心率和血氧的方法是光电容积法(PPG)。心率测量的基本原理[5-6]是利用动脉血液中的脉动成分随心脏跳动定期改变红外光的吸光率(红外光波长通常为900nm附近),反射后的红外光强被光电探测器转换为数字信号,然后通过算法处理获得心率。测量血氧需要两种不同波长的红光(通常是660nm附近)和红外光。血红蛋白在脉动血液中恢复(Hb)和氧合血红蛋白(HbO2)对660nm(Hb对红外光的消光系数),aHbO2(HbO血氧饱和度值可以通过算法从原始样本中分离的交流信号的以下公式获得。

由于温度的变化,一些晶体会导致晶体表面电荷, 辐射红外线。 红外非接触传感器的工作原理是检测物体表面的红外辐射能量, 并将其转换为易于测量的电信号或其他形式的量。 MLX90614 模块集成了用于探测目标温度和环境温度的热电偶 MLX81101 专用集成芯片,用于处理热电偶输出模拟信号 MLX90302 , 由迈来芯公司研发生产。

该传感器系列有多种型号和包装方法,适用于不同领域的测量。专门用于人体温度监测的医疗应用版精度可达0.1℃。存储在传感器开发中MLX90302RAM目标温度和环境温度数据可以由两条线组成SMBus通信协议模式10位PWM模式输出。
GY-如图3所示,90614模块的电路。

由于本监护仪设计的循环流程运行所需的时间为 3 ~ 4 s , 因此,主函数中通常的按键扫描算法无法准确识别测试者的按键操作, 因此,采用外部中断嵌套定时器中断扫描按钮的方法来检测试验者的按键动作。 该方法可以大大降低单片机配置所需的按键数量, 降低产品成本, 同时提高了单片机运行程序的效率, 提高硬件资源利用率。 按键扫描算法的具体思路如下: 按下配置按钮, 单片机扫描边缘信号, 开启定时器的外部中断服务函数进入程序, 单片机处于扫描按键状态, 此时,测试人员可以配置各种生理参数的阈值( 当阈值大于或小于测试者配置的值时, 单片机会实时响应并提醒测试者) , 或选择关闭定时器的中断开关, 使单片机退出配置模式, 按键算法流程如图所示 4 所示。 从 MAX30102 获取的数据号为原始信号, 需经过算法处理才能得到测试者的心率值与血氧值。 对于从该模块采集出来的数据信号进行处理的方法, 常用的有两种: 一种是时域分析, 即算出脉搏数据信号( PPG) 的平均波峰距, 再用一分钟除以这个波峰距即可得到心率值; 另一种是通过对 PPG 信号进行 FFT 变换得到频域中脉搏波信号的频段, 再将这个频率值乘以一分钟得到心率值。 首先是第二种方法, 经过了在 STM32VET6 使用FFT ( 快速傅里叶变换) 算法对 PPG 信号的处理后, 发现这种方法计算心率值存在时间和精度相矛盾的问题, 由以下公式可得出: heartrate=60×Samples_per_second×s2_max_index×FFT_N ( 5 )其中, Samples_per_second 为每秒从 MAX30102 中采集的红 外 光 样 本 数 量 , s2_max_index × FFT_N 为 脉 搏 信 号 中交流成分信号的频率, FFT_N 为快速傅里叶变换的点数长度。 若 Samples_per_second 设置为 100 , FFT_N 设置为1 024 , 从 FFT 填满数据到计算出心率值需要花 费 5 s , 但得到的各心率值间隔为 3 。 从监测测试者的心率的实时性和准确性来看, 这都是没有参考价值的。 若提高FFT 的点数长度, 虽然能提高测试心率值的精度, 但这将大大增加了监测出心率的时间, 同时加大了微控单元的负担。  本文设计心率算法使用的是第一种, 计算心率血氧的算法流程如图 5 所示。 从下位机监护仪采集的测试者生理参数( 如:心率、血氧和体温) 在 LCD 模块实时显示, 同时, 还能将监护仪进行联网后在手机客户端和官方的网页界面监测到这 些生理参数。 物联网平台选择的是机智云, 而联网设备选择的是乐鑫的esp8266 。 ESP8266 广泛应用于各种物联网智能硬件的开发, 如: 传感器网络、智能家居设计和无线医疗电子设备等。其常用的固件 AT 指令作为微控单元和 WiFi 模组之间配置功能, 连接与通信的底层指令。 相应地, 机智云物联网开发平台使用 GAgent 固件作为其与WiFi 模组的桥梁。 在 MCU 代码开发方面, 机智云有官方的代码自动生成工具, 该工具帮助开发者完成了 MCU与 WiFi 模组通信连接的底层协议工作, 适用于独立 MCU 方案和 SoC 方案, 使开发者更专注于软硬件的功能开发。机智云数据点设置如表1所示, 云端网页生理参数远程监测如图6所示, 记录了测试者某天21时一段时间内生理参数随时间变化情况。 为了测试验证本次设计的监护仪的准确性, 以同一测试者 10 个不同时间点的生理参数作为测试样本, 每个时间点分别用参考监护仪和本监护仪进行 5 次采集,最后求平均值。  测试者心率、血氧和体温的测试结果如表 2 所示。 智能远程多生理参数健康监护仪为社会上的一些特定人群提供了日常居家健康监护的可行性, 监护仪采用数字集成心率血氧模块等采集人体的心率、血氧和体温等, 通过下位机实时显示数据和波形, 使用独立按键配置阈值提醒和配置联网, 同时可通过云端网页监测记录。 本设计具有操作简单、成本低、便携性好、扩展性丰富、测量较为准确等特点。  

 

 

 

 

 

 

标签: 体温枪用到的传感器高精度的体温传感器模块

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台