文章目录

  • 1 简介
  • 2 绪论
    • 2.1 课题背景与目的
  • 3 系统设计
    • 3.1 系统架构
    • 3.2 关键硬件部分
      • 3.2.1 MAX301 00 心率血氧模块
    • 3.3 关键软件部分
      • 3.3.1 数据读取流程
    • 3.4 实现效果
    • 3.5 部分相关代码
  • 4 最后

1 简介

Hi,大家好,学长今天向大家介绍一个 单片机项目


大家可用于 课程设计 或 毕业设计

2 绪论

2.1 课题背景与目的

现代科学的发展, 导致越来越多人开始重视自己的身体健康, 他们往往会想在能力之余使用健身运动等方式来锻炼自身。 你会发现, 在健身房, 健身达人或者是教练都会叮嘱新手去关注自己的心率节奏。 一般来说, 人的激烈的锻炼会造成心脏血压的上升,心率变化从而加剧。 而心率恰恰就作为人们运动的警戒和灯塔, 运动状态下, 心率的平稳状态、 是否处于正常范围内都是健身人士应该注意的地方, 不管你健身的目的是为了什么, 而这更多的是与自身体重、 体制等的相关。 与此同时, 心率的表现也能让人们能及时发现身体的异样。 心率不定往往会造成。 心脏、 心血管等疾病。 但往往是如此致命的病, 检测其的方式就很简单。 而心率检测的作用, 就是作为一个实时监控并且在危急时刻能警报你的装置, 由此可得出心率检测仪对人们的作用十分重要。

在越来越智能化的现代社会中, 智能医疗已经开始慢慢步入寻常人家。 对于人们来说, 在越来越追求生活品质的现在, 身体健康的需求同样是他们的刚需。 在致力于解决现代医学看病容易预约难的情况下, 便携式的只能家用健康医疗设备就体现出了它存在的意义——足不出户就能轻松做到健康检测和疾病预防。

3 系统设计

3.1 系统架构

学长设计的这个在基于 STM32 控制板外, 另一个主要的板块就是做到如何去采集到心率数据的样本。

关于 MAX30100, 其在简易心率检测仪中使用量非常的大, 是一个优质的心率监测器传感器。 MAX30100 利用其本身含有的 LED 和光电检测端来检测信号的接收,以显示心率数据。

另外, 在该系统中 STM32 是主要微控制器和数据处理器; 利用 OLED 屏实现动态心率的实时监控, 即数据显示; 利用蓝牙串口可以将数据输出显示。 电源将设置一个 3. 5V-8V 的电源, 在选择合适电源电压供给的情况下输出电源给各模块进行使用。

3.2 关键硬件部分

3.2.1 MAX301 00 心率血氧模块

MAX30100 是一个经过多重优化的优秀传感器, 能测量心率等多样信息。在结构上,MAX30100 包含了检测模块和数据处理模块, 检测模块下拥有 LED、 数据接收器等部分,数据处理部分主要包含了寄存器、 数据传输等。 在该系统中, 便利用了 MAX30100 对样本进行心率检测并进行数据处理。

实物图:

电路图:

使用这个传感器的方式很简单, 手指接触传感器表面的玻璃层, 不能被吸收的红外线部分光会传达到接受处, 从而对样本的心率数据进行计算。 心率的信息在这个过程中从电信号转换为光信号, 又经过 MAX30100 转换成电信号, 从而将数据信息做成已采集样本储存起来。

3.3 关键软件部分

3.3.1 数据读取流程

数据读取基本是靠中断引脚触发主控芯片中断, 触发中断后由主控芯片进行读取MAX30100 的中断寄存器, 从而判断是由哪个触发。 例如温度中断就读取温度值, 过一段时间再发送采集温度指令然后过一段时间产生中断, 这样重复进行。 血氧不用发送指令, 当 FIFO 数据快满了后就会发出中断提醒单片机读取, 进入待机和省电模式将会关闭这些功能。

设法将 MAX30100 设置为 HR 模式并读取原始 IR 数据后, 绘制完成后, 其外观应如图

3.4 实现效果


3.5 部分相关代码


// 心率计算
struct fifo_t {uint16_t rawIR;
uint16_t rawRed;
};
dcFilter_t MAX30100::dcRemoval(float x, float prev_w, float alpha)
{dcFilter_t filtered;
filtered.w = x + alpha * prev_w;
filtered.result = filtered.w - prev_w;
return filtered;
}// 传感器数据滤波struct meanDiffFilter_t
{float values[MEAN_FILTER_SIZE];
byte index;
float sum;
byte count;
};
float MAX30100::meanDiff(float M, meanDiffFilter_t* filterValues)
{float avg = 0;
filterValues->sum -= filterValues->values[filterValues->index];
filterValues->values[filterValues->index] = M;
filterValues->sum += filterValues->values[filterValues->index];
filterValues->index++;
filterValues->index = filterValues->index % MEAN_FILTER_SIZE;
if(filterValues->count < MEAN_FILTER_SIZE)
filterValues->count++;
avg = filterValues->sum / filterValues->count;
return avg - M;
}struct butterworthFilter_t
{float v[2];
float result;
};
void MAX30100::lowPassButterworthFilter( float x, butterworthFilter_t * filterResult )
{filterResult->v[0] = filterResult->v[1];
//Fs = 100Hz and Fc = 10Hz
filterResult->v[1] = (2.452372752527856026e-1 * x) + (0.50952544949442879485 *
filterResult->v[0]);
filterResult->result = filterResult->v[0] + filterResult->v[1];
}

4 最后

毕业设计 嵌入式 Stm32人体心率脉搏无线监测系统 - 物联网相关推荐

  1. 单片机毕业设计 Stm32人体心率脉搏无线监测系统 - 嵌入式 物联网

    文章目录 1 简介 2 绪论 2.1 课题背景与目的 3 系统设计 3.1 系统架构 3.2 关键硬件部分 3.2.1 MAX301 00 心率血氧模块 3.3 关键软件部分 3.3.1 数据读取流程 ...

  2. 毕业设计 STM32单片机的地下矿场监测系统 - 物联网

    基于STM32单片机的地下矿场监测系统 系统上电后对单片机的初始化.超声波测位模块初始化,语音模块初始化,以及对各器件初始化等,之后启动上位机端就可以连接上系统 此时单片机会控制超声波测位传感器进行煤 ...

  3. 【毕业设计】stm32单片机酒精浓度酒驾检测系统 - 物联网 嵌入式

    文章目录 0 前言 1 简介 2 主要器件 3 实现效果 4 硬件设计 MQ-3酒精乙醇传感器模块 SIM800C模块 5 软件说明 系统框图 6 部分核心代码 7 最后 0 前言

  4. 工控设备 如何将数据发送到串口_嵌入式无风扇工控机在水质监测系统中的应用...

    行业背景: 随着城市人口的增加和工农业生产的发展,污水排放量也日益增加,水体污染相当严重,大量生活污水和生产废水对生态环境造成破坏,在未来很长一段时间内保护生态环境治理水污染仍是我国实现经济社会可持续 ...

  5. 基于STC89C52单片机的粮仓温湿度无线监测系统简易设计

    任务书,以及相关资料见附件,下载查看. 任务概述, 设计一个基于单片机的粮仓温湿度无线监测系统.该系统包括:单片机.无线通信模块.温湿度传感器模块.按键模块.显示模块等. 1.基本功能 (1)本设计以 ...

  6. STM32量产智能网络机柜监测系统开发方案

    STM32量产智能网络机柜监测系统开发方案,选用迪文串口屏,原理图PCB方案,对应源码,及迪文液晶配置.监控电压,电流功率温度湿度等 编号:46126634292920241Dota

  7. 计算机毕业设计Java纺织代加工车间生产状态监测系统(源码+系统+mysql数据库+lW文档)

    计算机毕业设计Java纺织代加工车间生产状态监测系统(源码+系统+mysql数据库+lW文档) 计算机毕业设计Java纺织代加工车间生产状态监测系统(源码+系统+mysql数据库+lW文档) 本源码技 ...

  8. 智能变电站无线监测系统

    1.概述  智能变电站无线监控系统结合先进的WDN(无线数据网),GPRS/3G,WIFI无线通信技术对变电站实现全方位的统一集中无线监控.该系统实现对监控范围内的电源设备.空调设备和系统内分布的各个 ...

  9. 基于51单片机的心率脉搏计检测系统

    1.功能原理 脉搏传感器采样脉搏信号,采用STC89C51单片机作为控制器,脉搏传感器输出方波传入单片机,触发单片机进去外部中断函数,每接收一个脉冲波形,显示屏就计数一次.如果脉搏次数超过设定值是,用 ...

最新文章

  1. 工业相机帧率与曝光时间的关系
  2. 对称加密DES和TripleDES
  3. Cesium - 转换obj模型为3D Tiles 并加载
  4. ESP8266编译脚本之二
  5. 【转】Asp.net控件开发学习笔记整理篇 - WebControl基类
  6. 小米与格力的10亿豪赌!
  7. mysql生产环境运维方案_[MySQL生产环境] Innodb存储引擎内存报警问题处理过程
  8. Day11多态部分-6 【1.4 多态的应用以及注意事项】
  9. 网页中嵌入JavaScript+事件触发程序
  10. [U3D Demo] 手机FPS射击游戏
  11. 第008讲 div css开山篇
  12. python中capitalize函数_python capitalize
  13. ubuntu 版mysql客户端工具_MySQL GUI工具
  14. SAP检验批次批量取消程序示例(备份)
  15. rtmp协议java实现_RTMP 协议的一个 Java 实现:Flazr
  16. 【LaTeX】公式书写工具 | LaTeX转MathML(Word适用)| 公式截图转LaTeX| LaTeX学习(偏公式输入方面)
  17. 保龄球计分c语言程序,求C语言代码解释(保龄球记分程序)
  18. Crash: ‘SQLiteDatabaseCorruptException: file is encrypted or is not a database‘的分析与解决
  19. 北大计算机系研究生宿舍地址,北京大学研究生宿舍
  20. 就算“千夫所指”也要为自己做的10件事

热门文章

  1. 物联网开发之4G通讯模块
  2. e3mall商城的归纳总结3之后台商品节点、认识nginx
  3. 路由器的基本配置(一)---路由器的简单连接
  4. 网站服务器间歇性打不开,网站打不开的常见原因之域名解析问题
  5. MPLAB X IDE 一直停在启动画面,进入不了。解决方案
  6. linux fork 函数,Linux的fork()系统调用
  7. 基于TCP网络通信的自动升级程序源码分析-客户端接收文件
  8. 职业能力测之类比推理
  9. ubuntu,查看lib库的版本
  10. html5加css3知识笔记