👨🎓个人主页:研学社的博客
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥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.