基于人体运动信息采集系统的设计

2021-12-17 09:08费维科
电子制作 2021年22期
关键词:框图心电串口

费维科

(西安汽车职业大学,陕西西安,710038)

1 设计方案

设计采用STM32F103R开发板为主控制器,结合芯片ADS1292、ESP8266WiFi串口通信模块、串口屏以及供电装置等构成心电图信号的采集及监控。使用STC15W4k48S4为主控制器,结合温度传感器LMT70、模拟芯片ADS1115、加速度计传感器mpu6050等结合Esp8266WiFi无线传输芯片、OLED显示屏以及供电装置等构成用户体表温度、运行等信息的采集以及监控。通过Mpu6050监测人体运动过程中的周期性变化,结合相关算法进行数据处理,实现计步和距离的统计,并转换成串口数据通过Esp8266进行远程传输监测实时显示。使用采用ESP8266wifi通信模块为主控制器搭建服务器,“MERCURY”路由器搭建网关以及服务显示端PC和供电装置组成一套完整的物联网服务端设备,接收节点数据,上传到路由器并转发到服务器接收端,再结合算法处理数据以实现被测者身体信息的远程监测,并通过TTL转USB串口输出到电脑实时显示。

■1.1 物联网传输系统

本设计物联网传输系统控制框图如图1所示。

图1 系统控制框图

■1.2 运动信息节点方案设计

为实现基于加速度计等传感器检测使用者运动信息,实现运动步数和运动距离的统计分析。通过STC15W4k48S4处理器IIC协议对于mpu6050加速计/陀螺仪传感器信号的采集和处理,得到了3轴6向方位信息的原始数据,并根据人体运动过程中陀螺仪进行的周期性的数据变化,对数据进行处理和运算得到平稳的运动周期脉冲输出,并结合判断算法进行步频和步数的计算,再通过运动周期的变化角度值计算每一步的距离。通过STC15W4k48S4主控制器内部自带的TTL电平输出,将数据进行2路输出,一路数据通过OLED显示屏显示在副屏上实现交互界面。另一路数据通过TTL串口传输至Esp8266WiFi无线传输模块进行TTL转WiFi信号,上传至路由器网关。运动信息节点框图如图2所示。

图2 运动信息节点框图

■1.3 体表温度节点方案设计

为实现基于LMT70传感器检测被测者体表温度信息的统计分析,本设计中对LMT70输出的模拟信号采用外部24位模数转换ADS1115芯片来处理,以实现信息的准确性。STC15W4k48S4处理器使用IIC协议对于ADS1115转换过来的信号的进行采集和处理,得到了原始的电压数据信号,LMT70基于环境温度的变化会呈现负比例的增长,基于此特性对数据进行处理和运算,得到平稳的电压信号输出,体表温度节点框图如图3所示。

图3 体表温度节点框图

■1.4 心电监测节点方案设计

受疫情影响,人们越来越重视医疗健康,相对应的产品也随之推出。设计ADS1292芯片时把模拟信号转换成SPI协议信号输出并加入滤波Stm32f103rct6处理器使用SPI协议对ADS1292转换过来的信号的进行采集和处理,得到了原始的电压数据信号,由于次数据的准确性无必要高,因此在程序设计时使用了卡尔曼滤波算法进行处理和计算,得到平稳的电压信号输出,再次校准调试,结合电压转换心率的算法最终输出心电信息。心电监控节点框图如图4所示。

图4 心电监控节点框图

2 系统理论分析与计算

■2.1 心电信号的测量与分析处理

心电信号的测量是此项目最难的一个节点。关键在于ADS1292模拟前端芯片(医疗级别ADC)的使用,结合电路原理图,其中IN1P/IN1N IN2P/IN2N 是两对模拟输入,采用差分输入以减小共模干扰,在它们输入到MUX之前,还经过了EMI滤波器。

程序中使用了DMA传输,CS片选信号需要在DMA传输完成之后置1,保证数据传输完成,若使用轮询读数据的方式则选用注释掉的代码。读取到的数据是一补码的形式存储的,需要经过处理再传给上位机,为了数据的更加准确与严谨,使用了卡尔曼滤波算法。同时为避免上位机不好处理24位的数据,在单片机程序中做了数据处理,简单来说就是3字节的数据最高位(数据的24位)做了异或(^)处理。最终通过串口发送到屏幕以及Esp8266上。

■2.2 心电信号的测量方法

采用STM32系列单片机对于ADS1292模拟前端芯片的信号进行读取和处理,利用三对差分放大电路作为输入,采集人体心肌收缩过程中释放的生物电信号,配合医用电极片进行数据的采集,在心跳那一点,电流最大,是个脉冲信号,测量心电图时用电极接在胸口,加滤波器去掉杂波,再加放大器发大电流信号,最终进行处理进行心电信号的读取,并且结合算法输出平稳的心电波形信号显示在串口屏幕上。

测试滤波后心电波形如图5所示。

图5

■2.3 体表温度的测量与分析处理

基于LMT70对于使用者体表温度信息的监控,由于LMT70对于环境温度是有着电压变化的特性,并且呈负比例系数变化,基于此特性,使用了一块24位高精度ADS1115芯片对于测量温度,加滤波器去掉杂波,再加放大器发大电流信号,最终进行处理进行温度信号的读取,并且结合算法输出平稳的温度信号。

德州仪器推出出的由于其出色的性能和稳定的输出及IIC方式的通信协议成为读取LMT70模拟信号的不二之选,通过差分放大的方式读取模拟电压后进行24位的数据转换,再结合算法和标准温度进行数据的校准。结合手册提供的转换的公式,“(-0.0000084515)*模拟电压*模拟电压+(-0.176928)*模拟电压+204.393”处理器通过IIC协议接收到来之ADS1115的信号后对其进行运算处理,从而输出高精度的温度信号,通过TTL电平传输到Esp8266以及oled屏幕进行显示。

■2.4 运动量的统计

基于MPU6050加速度计对于使用者运动信息的监控,基于人体运动时候是呈现一个周期性变化的规律,因此对于采取一个周期性的变化量来计算运动的过程,也就是计步的实现,而对于不同步伐的速率以及开合角度不同的话,那么对于加速度计传感器输出信号也是有所不同的,因此可以达到计算距离的一个量的估计,最终进行处理进行运动信息的读取。并且结合算法输出平稳的运动信息,从而对数据进行加工和处理同时以Esp8266进行数据传输到服务器端和显示在OLED屏幕上。如图6所示。

图6 计步和距离实时显示

■2.5 电源

系统分体采用18650单节锂电池供电,电路加滤波电路以及过充过放保护电路最大可输出3A电流,电源可满足需求。再通过线性降压芯片AMS1117-3.3V 线性降压模块对于3.8V的电池电压转换成3.3V电压信号以供给MPU6050等设备供电。

3 程序设计流程图

系统采用四套独立的处理器进行信号的采集发送以及接收处理显示,其中温度节点、运动信息节点、心电监控节点分别由三个处理器以及三个独立的WiFi模块进行数据的发送,由路由器网关进行数据的转发,再由一套Esp8266模块进行数据的接收处理并通过串口显示在PC端。

各模块数据采集主流程图如图7所示。

图7 各传感器数据采集流程图

(1)STM32心电波形显示心率计算

包括心率信号收集的硬件部分采用了ADS1292模块、心电仪产生的心电信号收集与显示以及IIR滤波处理与简单平滑处理的效果展示等。

(2)人体运动信息的采集

通过对非电量的测量,即把传感器或传感元件固定在被测物体上,将被测物体的力学参数通过传感器转换为模拟电量,然后放大器再将转换的微弱的模拟电量放大并调理,A/D转换器转换后进行计算处理。原理框图如图8所示。

图8 人体运动信息采集

4 测试方案和测试条件

■4.1 测试方案

(1)由心电基准源输出的心电波形与本项目方案的波形进行比对和稳定性测试,重复N次,记录数据,在程序中进行调试和校准。

(2)人为干扰波形的显示以及乱码之后能否重新得到平稳的心电信号测试,多次进行测试,更换电极片之后数据能否平滑的输出。

(3)由体温计测量的体温与本项目方案的体表信息进行比对和稳定性测试,重复N次,记录数据,在程序中进行调试和校准。

(4)人为干扰温度的显示以及乱码之后能否重新得到平稳的温度信号测试,多次进行测试,更换测温探头之后数据能否平滑的输出。

(5)由智能手环测量的体温与本项目方案的运动信息进行比对和稳定性测试,重复N次,记录数据,在程序中进行调试和校准。

(6)人为干扰运动的显示以及乱码之后能否重新得到平稳的运动信息测试,多次进行测试,重新上电之后数据能否平滑的输出。

■4.2 测试条件

体温计、示波器、基准源信号发生器、智能手环、TPC调试助手,串口调试助手。

图9

猜你喜欢
框图心电串口
基于融合模糊聚类算法的异常心电多频段弱信号快速捕捉方法
分式复习指导
卡片式智能心电采集仪
“声名大噪”的跑步神器?
算法框图的补全
MCS—51单片机中的多串口通讯技术的应用
2016浙江省心电生理与起搏学术年会隆重举办
基于图表法构建《万有引力定律与航天》知识网络
全国计算机等级考试机房准备工作探讨
微机串口的测试诊断