【雷达通信】振动雷达反向散射 (VRBC) 仿真(Matlab代码实现)

 👨‍🎓个人主页:研学社的博客 

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🌈3 Matlab代码实现

🎉4 参考文献


💥1 概述

振动雷达反向散射通信理论与边界,在顶层,可以生成

(1) 给定应答器和激励符号集的脉冲响应的 VRBC 位移集的可视化,

(2) VRBC 应答器场景的频谱,

(3) 两个 VRBC 场景的理论边界和蒙特卡罗结果之间的速率比较图,其中关键变量变化是 VRBC 转发器的共振量,

(4) 两个 VRBC 场景的理论边界和蒙特卡罗结果之间的速率比较图,其中更改的关键变量是生成 VRBC 消息序列的编码约束。我们还提供了一个注释过多的脚本,允许用户修改VRBC场景(更改雷达参数,消息传递参数,转发器参数等),并评估通信速率方面的预期性能。

📚2 运行结果

 部分代码:

%% Radar Parameters
lambda = 3e8/77e9;              % wavelength [m]
PRF = 4000;                     % pulse repetition frequency [Hz]
PRI = 1/PRF;                    % pulse repetition interval [sec]
fs = 1e6;                       % sampling frequency [samples per second]
f0 = 77e9;                      % chirp start frequency [Hz]
BW = 4e9;                       % chirp bandwidth [Hz]
T = 200e-6;                     % chirp length [sec]
beta = BW/T;                    % chirp slope [Hz/sec]
time_obs = 0.5;                 % total observation time [sec]
obs_time = 1/fs:1/fs:time_obs;  % full observation time vector [sec]
num_chirps = time_obs/PRI;      % number of chirps [#]
samps_per_chirp = round(T*fs);  % samples within a chirp [#]
samps_per_PRI = round(PRI*fs);  % samples within a PRI [#]

%% Coding Parameters
T_sym = 0.005;                      % symbol length [seconds]
L_sym = T_sym*fs;                   % [samples per symbol]   
num_sym = time_obs/T_sym;           % number of symbols in a sequence
chirps_per_sym = round(T_sym/PRI);  % number of chirps per symbol interval

%% Symbol Excitations
% [Modify this section to change the excitation signals.]
M = 3;                              % number of signals not including H0
x_freqs = [800, 600, 400];          % M-FSK frequencies
x = zeros(L_sym,M);   
for m=1:M
    x(:,m) = sin(2*pi*x_freqs(m).*(1/fs:1/fs:T_sym));
end
% Symbol Plot Colors
M_colors = [0,0.6,.1; 0.7,0.1,0; 0.5,0,0.8];

%% Impulse Response
% [Modify this section to change the impulse respone.]
% Frequency response of plate
locs = [8,20,34,48,77,95,123,155];
gamma_locs = [0.35186,0.112368,0.081374,0.128354,0.08959,0.03327,0.017749,0.0179354];
gammas = zeros(1,201);
gammas(locs) = 2e-3*gamma_locs;
f_int = 0:10:2000;
% Decay factor per resoannt freqneucy of the plate
decays = 4e8*gammas(locs)./(f_int(locs)+1);
% Impulse response of the surface based on fintie frequencies with set
% decays and amplitudes.
h = impulseResponse(f_int(locs), decays, gammas(locs), zeros(size(decays)), 1/fs:1/fs:L_sym*cycles/fs);

%% Symbol Displacements
d = zeros(L_sym*cycles,M); 
for m=1:M
    full_sym_d = conv(x(:,m), h)./L_sym;
    d(:,m) = full_sym_d(1:L_sym*cycles);
end

%% Plot Symbol Excitations and Displacements
figure()
for m = 1:M
    subplot(2,1,1), hold on
    plot(1/fs:1/fs:L_sym/fs, x(:,m), 'Color', M_colors(m,:))
    subplot(2,1,2), hold on
    plot(1/fs:1/fs:cycles*L_sym/fs, d(:,m), 'Color', M_colors(m,:))
end
subplot(2,1,2), hold on
plot([T_sym,T_sym],[-max(max(abs(d))),max(max(abs(d)))], 'LineWidth', 1, 'Color', [0.7,0.7,0.7], 'HandleVisibility', 'off')
for m=1:cycles
    plot([T_sym*m,T_sym*m],[-max(max(abs(d))),max(max(abs(d)))], 'LineWidth', 1, 'Color', [0.8,0.8,0.8], 'HandleVisibility', 'off')
    hold on
end
subplot(2,1,1)
title('Symbol Excitations'), grid on
xlabel('Time [sec]'), ylabel('Amplitude')
legend('Symbol 1', 'Symbol 2', 'Symbol 3')
ylim([-1.1*max(max(abs(x))) 1.1*max(max(abs(x)))])
xlim([0 T_sym])
subplot(2,1,2)
title('Symbol Displacements'), grid on
xlabel('Time [sec]'), ylabel('Displacement [m]')
legend('Symbol 1', 'Symbol 2', 'Symbol 3')
ylim([-1.1*max(max(abs(d))) 1.1*max(max(abs(d)))])
xlim([0 cycles*T_sym])
 

🌈3 Matlab代码实现

🎉4 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]Jessica Centers (2022) Vibrational Radar Backscatter (VRBC) Simulation. 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荔枝科研社

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值