毫米波雷达相位提取与精细化测量

毫米波雷达相位提取与精细化测量


毫米波 相位 数据处理

  IWR1642 是TI公司推出的自足式 FMCW 雷达传感器单芯片解决方案,其工作频段为76 GHz 至 81 GHz 范围,4 GHz 的可用带宽,可实现盲点探测、车道变换辅助、交叉交通警报、驻车辅助、人员检测、简单的手势识别、车门开启器应用等诸多应用。同时IWR1642也可以通过提取中频信号的相位信息实现精细化、高分辨率的测量,以达到微弱信号检测的目的。本文就IWR1642数据保存格式、中频信号相位提取等进行分析。

1.IWR1642 bin文件格式解析
2.IWR1642 中频信号相位提取
3.IWR1642 相位分析中的分辨率问题
4.微弱信号检测

1.IWR1642 bin文件格式解析
  IWR1642数据采集需要采集板配合进行,本文基于DCA1000采集板实现数据采集。通过DCA1000采集输出的文件格式为bin格式,数据的存储模式说明,TI公司官方的说明手册给出了详细的说明,在《Mmwave Radar Device ADC Raw Data Capture》文件中,根据所用的IWR1642和DCA1000的硬件组合,可以找到第一章第6部分的数据格式。
  本文项目测试使用的为2发4收复数的工作模式,所以根据说明文档里面的说明,数据的排列方式如图1所示。图中首先排列第一个天线Sample1的虚部数据,接下来是Sample2的虚部数据,再往后是第一个天线的Sample1的实部数据,Sample2的实部数据,一直排列到第一天线的最后一个采样点。第一个天线排列完成后再排列第二个天线的数据,直到排列到最后一个天线。

在这里插入图片描述

图1 数据存储格式

  说明文档中其实按照所选择的硬件组合,给出了数据解析的案例例程,按照我们所选择的IWR1648和DCA1000,说明书里给出的程序如下,原程序中有一处变量定义错误,已经进行了更改。
 %%% This script is used to read the binary file produced by the DCA1000
%%% and Mmwave Studio
%%% Command to run in Matlab GUI -readDCA1000('<ADC capture bin file>') 
function [retVal] = readDCA1000(fileName,numADCSamples)
%% global variables
% change based on sensor config
numADCBits = 16; % number of ADC bits per sample
numRX = 4; % number of receivers
numLanes = 2; % do not change. number of lanes is always 2
isReal = 0; % set to 1 if real only data, 0 if complex data0
%% read file
% read .bin file
fid = fopen(fileName,'r');
adcData = fread(fid, 'int16');
% if 12 or 14 bits ADC per sample compensate for sign extension
if numADCBits ~= 16
    l_max = 2^(numADCBits-1)-1;
    adcData(adcData > l_max) = adcData(adcData > l_max) - 2^numADCBits;
end
fclose(fid);
fileSize = size(adcData, 1);
% real data reshape, filesize = numADCSamples*numChirps
if isReal
    numChirps = fileSize/numADCSamples/numRX;
    LVDS = zeros(1, fileSize);
    %create column for each chirp
    LVDS = reshape(adcData, numADCSamples*numRX, numChirps);
    %each row is data from one chirp
    LVDS = LVDS.';
else
    % for complex data
    % filesize = 2 * numADCSamples*numChirps
    numChirps = fileSize/2/numADCSamples/numRX;
    LVDS = zeros(1, fileSize/2);
    %combine real and imaginary part into complex data
    %read in file: 2I is followed by 2Q
    counter = 1;
    for i=1:4:fileSize-1
        LVDS(1,counter) = adcData(i) + sqrt(-1)*adcData(i+2); LVDS(1,counter+1) = adcData(i+1)+sqrt(-1)*adcData(i+3); counter = counter + 2;
    end
    % create column for each chirp
    LVDS = reshape(LVDS, numADCSamples*numRX, numChirps);
    %each row is data from one chirp
    LVDS = LVDS.';
end
%organize data per RX
adcData = zeros(numRX,numChirps*numADCSamples);
for row = 1:numRX
    for i = 1: numChirps
        adcData(row, (i-1)*numADCSamples+1:i*numADCSamples) = LVDS(i, (row-1)*numADCSamples+1:row*numADCSamples);
    end
end
%return receiver data
retVal = adcData;
2.IWR1642 中频信号相位提取
  经过处理的信号经过FFT运算可以得到探测目标与雷达的距离、方向信息,并可以计算多普勒信息推算目标的运动信息。以上的计算都是基于FFT后极大值的频域信息来进行计算,但目标更加精确的位置信息则更多在于信号的相位中。
  对于采集信号可以先进行FFT,然后提取FFT后最大值位置处的相位信息,则可以根据公式计算得到信号的精细化测量。
  此处还需要注意一个地方:相位信息的范围应该在[-π π]之间,所以得到相位信息后在按照公式推算精细化距离之前,需要对相位进行解卷绕。解卷绕的计算程序如下:
function result = myunwrap(source)
    len = length(source);
    buffer = source;
    for ii = 2:1:len
        if(source(ii) - source(ii-1) > pi)
            buffer(ii) = buffer(ii) - 2*pi;
        end
        if(source(ii) - source(ii-1) < -pi)
            buffer(ii) = buffer(ii) + 2*pi;
        end
    end
    buffer(1) = source(1);
    result = source;
end
  经过解卷绕之后得到的相位信息,按照以下公式可以推算得到精细化的距离信息。

ϕ ∗ λ 4 ∗ π \frac{\phi * \lambda}{4* \pi} 4πϕλ

3.IWR1642 相位分析中的分辨率问题
  经过处理得到的距离数据,采样率不能再按照中频信号的采样频率或者程序中设置的采样频率进行计算。而需要重新按照设置参数进行推算,下面举例进行说明:
参数名称参数数值
chirp总周期50ms
采样点数256
每帧脉冲数250
调频周期60us
  按照以上的参数设置,则可以得到:频率分辨率为1s/50ms = 20Hz,因为每帧有250个脉冲,则最后的采样频率应该为:Fs = 20*250 = 5000Hz,时域中每个点之间的间隔为:ts = 1/Fs = 200us。

在这里插入图片描述

  但在实际应用中,实际采样频率需要除以以上的占空比参数才能使计算频率与发射参数对应。
4.微弱信号检测
  测试中我们使用音频信号作为发射源,声音使用单频1000Hz、400Hz等,测试结果如下所示。

/font>

  测试中我们使用音频信号作为发射源,声音使用单频1000Hz、400Hz等,测试结果如下所示。

在这里插入图片描述

在这里插入图片描述

在EURO NCAP 2025 Roadmap中,规划车内儿童存在检测的需求,促使汽车制造商在未来产品设计上须提供此功能。 借此帮助解决识别独自遗留在汽车中的儿童和警告驾驶员的问题,添加儿童存在检测功能可提高汽车的整体安全等级。 在此, 世平兴业特别介绍以TI IWR1642 雷达单芯片为主的模组,作为车内生命探测检测的推荐方案,其产品特点如下 1.其基于77GHz mmWave 射频互补金属氧化物半导体(RFCMOS)技术。调频连续波(FMCW)雷达可实现精确测量距离和相对速度。 2.可提供高达4 GHz的超宽频宽,能够以高于24-GHz窄带解决方案16倍的精度感测物体和运动。 3.雷达相对不受常见的环境条件的影响 如:灰尘,烟,光线….等。因为FMCW雷达传输特定信号并处理反射,它们可以在完全黑暗和明亮的日光下工作(雷达不受眩光影响)。 与超声波相比,雷达通常具有更长的距离和更快的传输时间信号。 此模组可结合3rd-party算法运作检测并安装于车内中,资讯可借由通讯协定(车厂规定或者T-Box所支援)透过UART/CAN Bus界面传递至车内T-Box。 T-Box端可接收模组所侦测到的生命迹象相关资料(人数/呼吸/心跳) ,进行资料采集以及监控的动作。 进一步更可以借此与车况资讯做判断,提供异常提醒或者通过CAN汇流排发送控制讯号对车辆控制。 其整理优点如下 1. 可稳定的用于车内之儿童存在检测,并进一步可让车辆在车内有生命迹象状况下无法上锁。 2. 另外可检测乘员生命特征,例如监控驾驶员健康状况,在发生车祸时部署安全气囊,提醒乘客使用安全带等,同时保持乘员身份不依赖相机进行存在检测的隐私 场景应用图产品实体图展示板照片方案方块图实车上测试示意图车内乘客呼吸心跳侦测示意图芯片功能核心技术优势IWR1642感测器的主要特性和优势包括: 1, 智能边缘自主运算: 整合的处理能力让感测器能减少误报并做出即时决策,免除了在许多系统中尚需使用额外微控制器或处理器的需求。 2, 最高分辨率感测: 超宽宽频毫米波感测器能侦测到物体、人以及非常细微的动作(如:呼吸和打字),且此感测器的分辨率为24GHz感测器的16倍。 3, 优化的感测功能: 毫米波技术实现了更智慧的人员计算、动作侦测、 机器人技术、安全防护和生命迹象监测等。 4, 强化的系统准确度: 77GHz毫米波感测器能操作在拥挤的空间,或各种照明和环境条件下, 且能穿透玻璃、塑胶和石膏板等材料进行运作,强化了现有系统的准确度。 5, 简化的产品设计: 设计师可以立即使用平台进行设计,此平台涵盖天线封装、可扩充的软体平台、特定应用算法和多种参考设计。方案规格1. 方案采用的 TI IWR1642 单片高集成 FMCW 雷达感测器芯片,尺寸小,集成度高 2. 芯片内含C674X DSP,可以实现客户特殊的雷达信号处理算法,同时片内 RAM 增加到 1.5MB。 3. 可以提供最大 4G Hz 的射频带宽以及0.01% 的线性度,可以实现更高的分辨率; 4. 因为 CMOS 工艺,将射频和和数位集成在单个雷达芯片上。可以更有效的实现线上即时监测和调试; 5. 方案精度高,测距精度可达 4cm。人体感测距离建议40M内 方案来源:大大通
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值