0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

程序中如何实现滤波、峰值检测和心率计算

通信工程师专辑 来源:通信工程师专辑 作者:通信工程师专辑 2021-11-01 15:45 次阅读

继续讲解心率算法!从大西北回到南京后,本人就一直在完善之前写的程序,终于在十月初完成一版了。本文将给出算法程序的全部内容!当然给出的只是浮点程序,如果要转为单片机中的C程序,首先要进行定点处理。先来看看程序中如何实现滤波、峰值检测和心率计算的!只有先完成性能仿真,符合了要求,才能进行下一阶段的工作。接着上篇文章的内容继续讲解,首先来看看算法程序!算法程序的主要功能是能够从PPG数据中得到准确的心率值!文章末尾给出数据的下载链接!

% PPG_25hz_dsp_6v2

% data:2021-10-8

%%% 程序说明

% 读取csv文件!

% 滤波采用差分算法!

% 采用峰值比较算法3

clc;clear all;close all;

%---------------- program main --------------------------%

%%%%%%%%%%%%% 数据读取

%%%%%%% 采集数据

%%% 文件名

PPG_filename = '20210814-2229.csv';

% PPG数据 文件已经上传到网盘!

%%% 读入数据

PPG_data = readmatrix(PPG_filename);

%%% 心率数据

% 采样频率 25Hz

Fs = 25 ;

heart_rate_data = PPG_data(:,2);

% time 959second

%%%%%%%%%%%%%%%%%% 单片机实现部分

%%%%%%%%%%% 数据滤波处理

%%% 差分

% hr_data1 = diff(heart_rate_data);

%%% 五点差分滤波 二阶导数

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真
    +关注

    关注

    50

    文章

    3873

    浏览量

    132205
  • 信号
    +关注

    关注

    11

    文章

    2644

    浏览量

    75462

原文标题:数字信号处理之信号处理仿真 第六章 智能手环之技术应用(6)—心率算法

文章出处:【微信号:gh_30373fc74387,微信公众号:通信工程师专辑】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    交流电压峰值检测电路相位滞后补偿方法探究

    峰值检测电路在AGC(自动增益控制)电路和传感器最值求取电路中广泛应用,自己平时一般作为程控增益放大器倍数选择的判断依据。
    发表于 04-19 10:59 113次阅读
    交流电压<b class='flag-5'>峰值检测</b>电路相位滞后补偿方法探究

    如何使用dsp库实现iir滤波器?

    使用定时器触发adc采集输入信号,使用定时器触发dac输出处理完的信号,adc与dac都使用dma。在adc中断调用dsp库滤波函数计算。发现输入输出波形一样。没有
    发表于 03-15 08:24

    软件功能码设置的的滤波原理

    在变频器软件功能码,经常看到一个滤波次数的功能码,比如说编码器检测滤波次数,个位,低速滤波
    发表于 02-25 08:20

    PLC和变频器的滤波在硬件或软件上是怎么实现的?

    PLC内部有针对输入高速脉冲的滤波参数设置,变频器内部也有相关针对输入端子的滤波参数设置,请问PLC和变频器是怎么对输入端子的脉冲实现滤波功能的?是通过硬件还是软件
    发表于 01-18 22:59

    信号峰值检波电路工作原理

    、工作过程、性能指标等方面。 一、信号峰值检波电路的组成 信号峰值检波电路主要由输入滤波器、峰值检测器、输出滤波器等部分组成。 输入
    的头像 发表于 12-13 11:21 1355次阅读

    sigmastudio中使用bandpass滤波计算参数与在matlab得到的参数不一致是为什么?

    参照sigmastudio帮助中使用bandpass滤波计算参数,如下链接的带通部分 Wiki.analog.com/./.../一般等同2顺序 我在Matlab尝试代码
    发表于 11-28 07:08

    数字滤波器的设计和实现

    滤波器设计是一个创建满足指定滤波要求的滤波器参数的过程。滤波器的实现包括滤波器结构选择和
    的头像 发表于 10-31 10:38 725次阅读
    数字<b class='flag-5'>滤波</b>器的设计和<b class='flag-5'>实现</b>

    介绍一种测量MEMS梳状驱动器微电容的方法

    本文介绍了一种测量MEMS梳状驱动器动、静态电容的方法。采用了的峰值检测方法对调制信号进行解调,提高了动态电容的精度。
    的头像 发表于 10-17 15:02 595次阅读
    介绍一种测量MEMS梳状驱动器微电容的方法

    基于uPSD3234的反射式红外心率检测仪设计

    电子发烧友网站提供《基于uPSD3234的反射式红外心率检测仪设计.pdf》资料免费下载
    发表于 10-11 09:31 0次下载
    基于uPSD3234的反射式红外<b class='flag-5'>心率</b><b class='flag-5'>检测</b>仪设计

    独立键盘的检测原理及程序实现的方法

    由于在单片机在应用系统中,更多的会用到独立键盘,加之两者的检测原理基本相似,所以这一节里我主要讲解独立键盘的检测原理及程序实现的方法。 1、 按键的
    的头像 发表于 09-11 10:44 1300次阅读
    独立键盘的<b class='flag-5'>检测</b>原理及<b class='flag-5'>程序</b><b class='flag-5'>实现</b>的方法

    11种滤波算法程序分享

    11种滤波算法程序分享
    的头像 发表于 07-24 15:57 1034次阅读

    实用电路分享-峰值检测

    峰值检测电路(Peak Detection Circuit)是一种用于测量信号中最大值(正峰值)或最小值(负峰值)的电子电路。
    的头像 发表于 06-13 14:52 4503次阅读
    实用电路分享-<b class='flag-5'>峰值检测</b>

    基于STC89C52单片机+PulseSensor完成心率检测显示

    当前基于STC89C52单片机和PCF8591、PulseSensor心率传感器、SSD1306 OLED显示屏等元件实现了一个心率检测仪。检测
    的头像 发表于 06-07 15:17 1423次阅读
    基于STC89C52单片机+PulseSensor完成<b class='flag-5'>心率</b><b class='flag-5'>检测</b>显示

    峰值检测电路的使用场景

    峰值检测电路(Peak Detection Circuit)是一种用于测量信号中最大值(正峰值)或最小值(负峰值)的电子电路。这种电路在很多领域都有广泛的应用,以下是峰值检测电路的一些
    的头像 发表于 06-06 17:22 1346次阅读
    <b class='flag-5'>峰值检测</b>电路的使用场景

    ADRF6518ACPZ-R7 1.1 GHz可变增益放大器和基带可编程滤波

    dB和15 dB,以及将差分输入阻抗设置为400Ω。过滤器提供具有0.5dB角频率的六极巴特沃斯响应宽带峰值检测器可用于监测滤波器输入。
    的头像 发表于 05-25 11:05 416次阅读