基于Matlab模拟自动驾驶毫米波雷达

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信       无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机 

⛄ 内容介绍

从毫米波雷达技术和汽车自动驾驶的现状出发,总结了毫米波雷达在汽车自动驾驶中的应用现状,展望了发展趋势,分析了关键技术,以期为该行业相关人员提供参考.

⛄ 部分代码

%Assignment - 1 and 2

close all

clear all 

clc

load Assignment2.mat

% Collections in the form of [sensor X fast-time] 

c=299792458; %speed of light

%% Start writing your code ....

%Invoke names according to assignment 1 or 2

%name = ["CollectionA", "CollectionB", "CollectionC", "CollectionD"];

name = ["BS_TCR_0_10", "BS_TCR_0_15", "BS_TCR_0_20", "BS_TCR_0_5"];

NFFTA = 1024; % FFT length angle

NFFTR = 1024; % FFT length range

% Range axis

Ts  = Radar_settings.Chirp_time - Radar_settings.Reset_time - Radar_settings.DwellTime;    % Duration of the ramp section of the chirp in s (Sweep Time)

S = Radar_settings.BW/Ts;

Range  = c/(2*S)*linspace(0,Radar_settings.Fs,NFFTR);      % in meters

%Number of sensors

N = 12;

%Distance between the sensors

d = 2*c/Radar_settings.Fc;

rangeRes_Theory = c/(2*Radar_settings.BW);

for ind = 1:size(name, 2)

    data_to_process= eval(name(ind));  %change to CollectionB, CollectionC and CollectionD

    NSamp = size(data_to_process,2);    

    

    %Zero padding the data, 1st dim to improve the fft

    zero_matrix = zeros([3000-size(data_to_process, 1), size(data_to_process, 2)]); 

    

    %vertical concatenarion of the data

    zero_padded_data = [data_to_process; zero_matrix];

    

    %Doing 2D fft of the data will give me range/angle data

    FFT = fft2(zero_padded_data);

    

    %Shifting the FFT, to get the stationary data in the middle,

    FFT_Shift = fftshift(FFT, 1);

    

    %Defining angle, same dim as that of zero padded matrix

    AoA = linspace(-90, 90, 3000);

    

    %Plotting the data, Surface plot

    figure();

    surf(AoA, Range, db(abs(FFT_Shift)).'); view(2); shading flat;

    ylim([0 10]); 

    %Taking first 15 meters in the range data 

    %other wise the graph goes till 182 m

    xlabel('Angle (in degree)', 'FontSize', 12, 'FontWeight', 'bold');

    ylabel('Range (in meters)', 'FontSize', 12, 'FontWeight', 'bold');

    title('Range/Angle Graph', 'FontSize',12, 'FontWeight', 'bold');

    grid on;

    colorbar;

    caxis([-50 10]);

    

    %Ploting data in polar coordinates, used pudn.com's polarPcolor.m

    %Taking till R = 15m belyond that the data is mostly zero

    figure();

    [h, c]=polarPcolor(Range(:, 1:58),AoA, db(abs(FFT_Shift(:, 1:58))).');

    colorbar;

    caxis([-50 10]);

    

    %Range cuts to find the range resolution Broadside

    figure();

    plot(Range(:,1:58), db(abs(FFT_Shift(size(AoA,2)/2+1,1:58))).', 'LineWidth', 1.5);

    xlabel('Range (in m)');

    ylabel('Angle/Range data (in dB)');

    title('Range cut for AoA = 0 deg');

    ylim([-30, 30]);

    

    %Angle cut to find the angle resolution R = 10 m

    figure();

    plot(AoA(1,:), db(abs(FFT_Shift(:,39))).', 'LineWidth', 1.5);

    xlabel('AoA (in deg)');

    ylabel('Angle/Range data (in dB)');

    title('Angle cut for Range = 6.78 m');

    ylim([-30, 10]);

end

⛄ 运行结果

⛄ 参考文献

[1] 刘敏. 基于自动驾驶车载毫米波雷达间相互干扰的研究[D]. 重庆理工大学.

[2] 李赵, 刘心刚, 袁瑞廷,等. 一种基于毫米波雷达的自动驾驶车辆定位方法:, CN201911237088.8[P]. 2020.

[3] 单祥茹. 自动驾驶之外,毫米波雷达还有哪些潜力可挖?[J]. 中国电子商情:基础电子, 2019(5):3.

[4] 王向荣李韦良曹先彬王向华. 基于毫米波雷达和MATLAB的手势识别实验设计[J]. 实验技术与管理, 2022, 39(11):150-155.

[5] 李赵, 刘心刚, 袁瑞廷,等. 一种基于毫米波雷达的自动驾驶车辆定位方法:, CN110888125A[P]. 2020.

[6] 朱信鹏. 基于汽车毫米波雷达的目标跟踪算法研究[D]. 沈阳理工大学.

[7] 陆叶, 陈嘟, 何剑. 毫米波雷达在汽车自动驾驶中的应用与展望[J].  2020.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值