论文阅读2:基于毫米波雷达的生命体征检测

1.导言

针对接触式生命体征测量工具的局限性,提出了基于毫米波雷达的非接触式生命体征检测方法。 通过对混频得到的拍频信号进行距离维傅里叶变换,确定了被测目标所在的距离单元;提取被测目标所在距离单元的相位信息,对相位信号进行差分处理,去除了由于硬件条件导致的相位基线漂移;采用 IIR 数 字滤波器实现呼吸、心跳信号的分离,通过快速傅里叶变换算法对生命体征进行预估。对雷达实测数据的 处理结果表明,所提出的非接触式生命体征检测方法能够较准确地预估人体的心率和呼吸速率.

2.论文简介

论文题目: 基于毫米波雷达的生命体征检测
关键词:毫米波雷达;生命体征检测;心率;呼吸速率
论文作者: 张兰春,顾海潮
论文链接:知网节超时验证

3.基于毫米波雷达的生命体征检测算法原理

        人体生命体征信号主要包括心率、呼吸速率、 体温、血压等生理参数,它们可以衡量人体的健康状况。心率对应的是每分钟的心跳次数,呼吸速率指的是人在 1 min 内呼吸循环的次数,健康 成年人的标准呼吸速率和心跳速率分别为每分钟 12~20 次和 60~100 次,转换成频率如下图所示:

        图 2 显示了人体心跳和呼吸频率检测的整体流程。主要包括生命体征信号预处理、信号分离、 生命体征检测 3 个步骤。对拍频信号进行模数转换后,首先需要通过距离维 FFT,确定被测目标对应的距离范围,然后通过反正切函数计算目标当前的相位信息,该相位信息即可表示目标与雷达的距离变化,但在计算机运行中存在相位卷绕的问题,因此需要对相位进行解缠绕。在获得准 确的相位变化信息后,通过 IIR 数字滤波器对呼 吸和心跳信号进行分离。最后通过频域 FFT 算法 计算心率和呼吸速率。 相位变化和距离变化的关系为:

4.基于毫米波雷达的生命体征检测算法复现

(1)采集数据

设备:IWR1843毫米波雷达

软件:mmwavestudio

使用毫米波雷达采集数据,提取保存的mmwavestudio软件采集产生的原始数据bin文件。具体使用毫米波雷达请参考B站视频。adc_data.bin   文件位置:

(2)MATLAB复现

main.m

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%主题:TI AWR1843人体生命体征案例
%Author:Poulen
%Time:2022.9.22
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    clear
    close all
    clc;
    %%%数据大小说明  帧数 1200 样本点 200 采样率4000kHz 
    
    % Radar Parameter initialization
    Freq_start=77e9;    %Radar start frequency
    Numsample=200;      %number of sample
    Numchirp=1;         %per frame number of chirp
    slope=70e12;        %Ramp slope
    SampleRate=4000e3;  %Sample Rate
    c=3e8;              %light speed
    Numframe=2000;       %number of frame
    fs=20;              %
    second = 60;
    %Signal Processing Flaw
    if(Numsample >128 && Numsample <= 256)
        Numsample2=256;
    elseif(Numsample >64 && Numsample<=128)
        Numsample2=128;
    end
    %1.extract raw data and stored in Numsample ✖ (Numchirp*Numframe) matrix
    Rawdata=readDCA1000_1('adc_data_100s_2_73.bin');
    data=reshape(Rawdata(1,1:end),Numsample,Numchirp*Numframe);
    
    %2.1dfft processing 
    range=chirp1dfft(Numsample,Numsample2,Numchirp,Numframe,data);
    % figure(1)
    % [X,Y]=meshgrid(linspace(0,second,Numframe*Numchirp), ...
    %               (0:Numsample2-1-150));%%生成RD图的网格
    % % 17*SampleRate*c/2/Numsample2/slope
    % %*SampleRate*c/2/Numsample/slope
    % mesh(X,Y,db(range(1:Numsample2-1
### 关于毫米波雷达生命体征读取的仿真数据或方法 #### 毫米波雷达生命体征读取原理 毫米波雷达通过发射高频电磁波并接收反射回来的信号来检测目标物体的距离、速度和角度等信息。当用于生命体征监测时,主要利用的是人体呼吸和心跳引起的微小运动变化所造成的回波相位差[^1]。 #### MATLAB中的实现方式 在MATLAB环境中,可以构建模拟环境来进行此类研究工作。具体来说,可以通过定义雷达参数(如频率范围)、设置场景模型以及编写算法解析接收到的数据流完成整个过程。下面给出一段简单的代码片段展示如何初始化一个基本框架: ```matlab % 设置雷达配置参数 fc = 77e9; % 中心频率 (Hz) c = 3e8; % 光速 (m/s) lambda = c/fc; v_max = 20 / lambda; % 创建虚拟测试对象位置矩阵 positions = [randn(1, N_targets); randi([min_dist max_dist], 1, N_targets)]; % 构建ToF时间戳向量 t_toa = positions ./ v_max; % 添加噪声干扰项 noise_level = 0.05 * std(t_toa); noisy_t_toa = t_toa + noise_level .* randn(size(t_toa)); % 进行快速傅立叶变换FFT分析频域特性 Y = fftshift(abs(fft(noisy_t_toa))); f_axis = (-length(Y)/2:length(Y)/2-1)*(fs/length(Y)); figure(); plot(f_axis,Y,'LineWidth',2); xlabel('Frequency'); ylabel('|Y|'); title('Spectrum of Received Signal with Noise Added'); ``` 这段程序展示了创建一组随机分布的目标距离,并加入高斯白噪以模仿实际测量条件下的不确定性因素。接着运用离散傅里叶变换(DFT)转换到频谱空间观察其特征模式[^2]。 #### 实际应用案例分享 有研究表明,在农业装备与车辆工程领域内也存在对于基于毫米波雷达技术的生命体征探测的应用探索。这表明该类传感器不仅限于医疗健康行业内的用途,还能够拓展至更广泛的安全监控场合之中[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值