Anonymous Anonymous - 5 days ago
112 0

No description

MATLAB

FSL Task

clc;
clear all;

%% satellite communication Problem 1, Free Space Loss

% The distance increases non-linear.
d = [0.05 2 4 6 8 10 15 20 25 30 40 50 60 70 80 90 100];

% The measured Received Signal Strength Indicator are expressed in dB.
RSSI = [-20 -50 -60 -62 -68 -67 -81 -82 -83 -80 -88 -84 -88 -92 -86 -90 -98];

% The FSL equation and its results are expressed in dB as well.
lambda = 0.35;      %wavelength
L = 20*log10(lambda)-20*log10(d)-21.98;
% Defining a fit type to match the Loss equation for the curve fit.
myfittype = fittype('a + 20*log10(0.35) - 20*log10(x)');

% Fitting a curve onto measured RSSI and distance:
dFit = reshape(d, [17,1]);
RSSIFit = reshape(RSSI, [17,1]);
% Reshaping data to fit the function
FitCurve = fit(dFit, RSSIFit, myfittype)

plot(d,RSSI,'r o',d,L,'b--o')
% Setting identical y limits
hold on


plot(FitCurve)
hold off

grid on 

title('Plots of RSSI dots and curve and FSL equation');
xlabel('distance (m)');
ylabel('dB');
legend( 'RSSI measurements','Analytical FSL curve','RSSI measurement curve fit', 'Location','northeast','Orientation','vertical');
print FitCurve