【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843

1,毫米波雷达相关特性

主要研究:距离,速度,角度 3个维度。

特点:穿透塑料,干燥墙壁,玻璃等材料

适应雨,雾,灰层,关照,黑暗等环境。

2,距离方面4个问题

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第1张图片

  1. 毫米波如何测量距离
  2. 如果两个物体,是怎么被同时测量出来
  3. 两个距离多近的物体能被识别。
  4. 毫米波能检测的最大距离

3,FMCW 调频连续波的概念

由初始频率F1开始,以S的速率匀速递增至F2 结束,成为调频连续波

几个概念:

带宽B = F2-F1

TC:一次递增花费的时间

S:斜率

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第2张图片

4,混频器的概念

1)输入两个正弦波信号,输出的信号的频率是两个信号的差值。任意时间的频率都是两个输入信号的差值

2)输出信号的起始相位也是两个信号的起始差值

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第3张图片

5,距离计算

当混频器输出的中频信号的频率 称为中频信号IF = S*t = S*2d/c 得出,距离d = IF*c/2S

6,距离分辨率

由IF> 1/Tc

S*2dres/c>1/Tc

dres>c/(TC*2S) = c/2B

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第4张图片

7,最大距离

由ADC 采样的中频信号反映的是中频信号频率,幅度信息。

如果中频信号的频率过快,超过ADC的采样率,那么信号也会丢失。

故:IF = S2dmax/c < Fs(Fs为ADC的采样率)

得出。dmax = Fs*c/2S

8,思考题

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第5张图片

1,以上Chirps 具有相同的带宽B=》距离分辨率一致。

2,最大距离dmax = Fs*c/2S ,由于A的斜率S只有B的一半,当需要检测相同的最大距离时,A的采样率需求也只有B的一半

3,由于斜率更高,一次采样时间更短。

9,距离公式总结

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第6张图片

 

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第7张图片

中频信号经过ADC 反馈出,频率/ADC值,经过FFT后,得到距离和幅值的波形图

由混频器输出的不同距离的中频信号,他们的峰值也是不一样

10,IWR6843手册特性

  • 60Ghz~64Ghz 4G连续带宽
  • 3发4收
  • 内置ARM Cortex-R4F (MCU),ROM,C674x(DSP),硬件加速器(用于FFT,滤波,CFAR处理恒虚警检测)
  • 支持外部QSPI加载程序
  • IWR6843:内部存储,1.75MB = MSS(程序RAM 512KB)+MSS(数据RAM 192KB)+DSP (L1 RAM64KB)+DSP (L2 RAM 256KB)+L3雷达数据立方体RAM 768KB
  • 接口信息:6个ADC(低采样率监控),2个SPI,2个UART,1个CAN-FD,I2C GPIO
  • 双通道LVDS(用于接收原始ADC数据和调式仪表)
  • 电源管理:IO支持3.3V/1.8V
  • 时钟:内部40MHZ,外部40MHZ
  • 功能框图

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第8张图片

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第9张图片

  • 电源&功耗

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第10张图片

11,DCA1000数据解析

包含虚部

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第11张图片

%%% This script is used to read the binary file produced by the DCA1000
%%% and Mmwave Studio
%%% Command to run in Matlab GUI -readDCA1000('')
function [retVal] = readDCA1000(fileName)  %新建一个函数名为readDCA1000 的函数,输入fileName,输出retVal 表格
%% global variables
% change based on sensor config
numADCSamples = 256; % number of ADC samples per chirp  采样点数是256个
numADCBits = 16; % number of ADC bits per sample  ADC的采样位数
numRX = 4; % number of receivers 接收器数量
numLanes = 2; % do not change. number of lanes is always 2  LVDS的平台数
isReal = 0; % set to 1 if real only data, 0 if complex data0  0 是包含虚部
%% read file
% read .bin file
fid = fopen(fileName,'r');%获取二进制文件由文件标识符 fileID   
adcData = fread(fid, 'int16'); %返回一个列向量,每个元素以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;

【TI毫米波雷达入门-9】TI毫米波雷达基础概念及DCA1000数据解析IWR6843_第12张图片

你可能感兴趣的:(TI毫米波雷达,人工智能)