ELCT 562_CA3

docx

School

Clemson University *

*We aren’t endorsed by this school

Course

562

Subject

Electrical Engineering

Date

Apr 3, 2024

Type

docx

Pages

14

Uploaded by MateMonkey7318

Report
ELCT 562 Wireless Communications Computer Assignment #3 Abstract: This paper demonstrates an experiment conducted using software defined radio to research frequency selective and flat fading channel characteristics using directional antennas. The signal data was observed to demonstrate clear distinctions between signal strength and channel integrity between the different frequencies used in class and other real-life scenarios. . Introduction Channel characteristics for different signals plays a vital role in wireless communication used today. The environment for the signal is crucial for transmission success. This lab experiment’s aim is to explore these different environmental factors including antenna types on frequency- selective and flat fading, which contribute to wireless communication as a whole. Materials and Methods ADALM-PLUTO kits were used in transmitting the software defined radio signals as a transmitter and a receiver. Due to this, the experiment was divided into two sections, creating the transmitter and then the receiver using another software known as GNU radio. Once the transmitter and receivers were created the omni-directional and directional antennas were used o collect in-phase and quadrature data, demonstrating the Channel Impulse response (CIR), Channel Frequency Response (CFR), and Coherence Bandwidth.
Results Figure 1: Frequency-Selective Fading Figure 2: Flat Fading
Figure 3: Channel Frequency Response
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Figure 4: Average Channel Impulse Response Normalized
Figure 5: Normalized Coherence Bandwidth Discussions The data collected from the experiment successfully provided the expected channel characteristics of frequency-selective fading and flat fading with different antennas. The results demonstrated theoretical expectations and provided practical examples for real-world wireless communications in a stable environment. MATLAB Code The MATLAB code can be found in the appendix of this document.
Conclusions In conclusion, the experiment successfully demonstrated the channel characteristics using different antennas. The results demonstrate the need for good channel environments when designing a communication system and provide insight into how these characteristics are vital for successful signal transmission.
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Task Two: Doppler Shift
Doppler Shift Calculations Doppler effect is defined as a change in frequency due to relative motion between the source and the receiver. This phenomenon plays a vital role in wireless communications and is seen in radars, pitches of sirens, and many medical instances. The shift of this frequency has many uses, and can be used to calculate the velocity of the receiving object. In this experiment, the Doppler effect is combined with ADLM PLUTO (SDR’s) to determine the speed and RPM of the fan that is in front of the transmitter. This is shown in GNU Radio by transmitting a continuous tone defined in the MATLAB code. MATLAB Code Explanation The program begins by defining basics of the system including the carrier frequency, sampling frequency, and Transmitter packet. Nsamples is then defined as Tpacket*fsample, which allows for a vector to be created. The FFT is then defined, a tone is created at the specified frequency, and the IQdata is generated. The IQdata is than normalized to avoid distortion and clipping. The power density profile is then generated, and the signal is visualized in the time domain. This is then repeated by using a MATLAB function known as transmit repeat to continue the signal and IQdata. Fan Speed Math The following equations are used to determine the velocity of the fan blades using the Doppler effect. The Doppler effect states: f d = v cos ( θ ) f c c This equation defines v as velocity, c, as speed of light, f c as carrier frequency. The angle for this portion is either 0 or 180 degrees for maximum velocity and are used to calculate the frequency shifts below: v = ∆f c f c
This is done for the left and the right of the center frequency and is determine to be about 62.5 m/s. This velocity is then used to measure the RPM by the following equation: RPM = v 2 π r 60 Given r was measured to be approximately 0.27 meters, the RPM is 2210.49 Rotations Per Minute Fan Speed Images Figure 6: Spectrum with fan at high speed
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Figure 7: Spectrum during transition from high speed to off Figure 8: Spectrum from off to high speed
Appendix MATLAB Code: Transmitter: clear all close all clc % ELCT 562 B = 20e6; fsample = 50e6; Tsample = 1/fsample; fc = 915e6; TpulseInterval = 1e-6; % Your IQ data generation starts here: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Step 1: Prepare the signal %zeropadding=zeroes ptxInTime = @(t) sinc(B*t) n = [-50:1:50]; ptx = ptxInTime(n*Tsample); numpulses=1000; symbols=randi([0,3],1000,1); modulatedsymbols=exp(j*0.5*pi*symbols) IQupsample=upsample(modulatedsymbols,50); IQdataTX = conv(ptx,IQupsample); IQdataTX = IQdataTX(:); %% Step 2: Analyze TX Signal options.showTimeDomainSignal = 1; options.showPowerSpectralDensity = 1; options.showIQDiagram = 0; options.showTimeDomainSignal3D = 0; options.fsample = fsample; options.fcarrier = fc; options.figureName = 'TX waveform' ; options.figurePositionsOption = 1; %0: auto figure position is off, 1: auto figure position is on, 3: internal settings in analyzeIQdata.m analyzeIQdata(IQdataTX, options) %% Step 3: Transmit if (1) % One last step common for all signals: Normalization is needed for remote % SDRs' operation: maximum of abs(IQdataTX) should be 1 be less than 1. if max(IQdataTX)~=0
IQdataTX = complex(IQdataTX/max(abs(IQdataTX))); end txPluto = sdrtx( 'Pluto' , ... 'RadioID' , 'ip:169.254.27.102' , ... 'Gain' , -5, ... 'CenterFrequency' ,fc, ... 'BasebandSampleRate' ,fsample); txPluto.ShowAdvancedProperties = true; transmitRepeat(txPluto,IQdataTX) end Receiver: clc close all clear all % ELCT 562 B = 20e6; fsample = 50e6; Tsample = 1/fsample; fc = 915e6; TpulseInterval = 1e-6; Npulse = 30; % number of pulses you aggregate % Please complete: Nsample = round(Npulse*TpulseInterval/Tsample); % number of samples to acquire %% Step 1: Prepare the SDR object rxPluto = sdrrx( 'Pluto' , ... 'RadioID' , 'ip:192.168.2.1' , ... 'GainSource' , 'Manual' , ... 'Gain' , 55, ... 'CenterFrequency' ,fc, ... 'OutputDataType' , 'double' , ... 'EnableBurstMode' , false, ... . 'SamplesPerFrame' , Nsample, ... 'BasebandSampleRate' ,fsample, ... 'UseCustomFilter' ,false); %% Step 2: Record the IQ data IQdataTime = rxPluto(); %plot(10*log10(abs(IQdataTime).^2)) %plot(10*log10(mean(abs(IQdataTime).^2))) %% Step 3: Analyzer the signal in time and frequency
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
IQdataTimeshaped = reshape(IQdataTime,[],Npulse); % reshape the vector such that you can take the pulses within the interval % plot(10*log10((abs(IQdataTime).^2))) % Please complete: % See the normalized channel impulse response with respected to the peak (in 10 log10(abs(h(t)).^2)) (Plot in one interval) CIR=10*log10(mean(abs(IQdataTimeshaped).^2,2)); %n=[1:1:Nsample]; figure(101) plot((CIR-max(CIR))); xlabel( 'Time [ns]' ) ylabel( 'Gain [dB]' ) %xlim([0,1000]) grid on hold on % Please complete: % See the channel frequency response (in 10log10(abs(h(t)).^2)) Nfft = 256; IQdataFrequencyshaped = fftshift(fft(IQdataTimeshaped, Nfft)); CFR=10*log10(mean(abs(IQdataFrequencyshaped).^2,2)); figure(102) plot(CFR); xlabel( 'Frequency [MHz]' ) ylabel( 'Gain [dB]' ) grid on % Please complete: % See the correlation in the frequency figure(103) CFR1=xcorr(mean(abs(IQdataFrequencyshaped),2), 'normalized' ); plot(CFR1) grid on hold on xlabel( 'Frequency [MHz]' ) ylabel( 'Normalized correlation' ) Doppler: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Nsamples = Tpacket*fsample; % number of samples n=0:1:Nsamples-1 T=[0:Nsamples-1]*1/fsample; fft=100E3; transmit=cos(2*pi*fc*n); IQdataTX =(1+0*j)*exp(2*pi*j*fft*T)'; % One last step common for all signals: Normalization is needed for remote % SDRs' operation: maximum of abs(IQdataTX) should be 1 be less than 1. if max(IQdataTX)~=0 IQdataTX = complex(IQdataTX/max(abs(IQdataTX))); end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % One last step common for all signals: Normalization is needed for remote % SDRs' operation: maximum of abs(IQdataTX) should be 1 be less than 1. if max(IQdataTX)~=0 IQdataTX = complex(IQdataTX/max(abs(IQdataTX))); end %% Step 3: Analyze TX waveform options.showTimeDomainSignal = 1; options.showPowerSpectralDensity = 1; options.showIQDiagram = 1; options.showTimeDomainSignal3D = 1; options.fsample = fsample; options.fcarrier = fc; options.figureName = 'TX waveform' ; options.figurePositionsOption = 1; %0: auto figure position is off, 1: auto figure position is on, 3: internal settings in analyzeIQdata.m analyzeIQdata(IQdataTX, options) %% Step 4: Transmit transmitRepeat(txPluto,IQdataTX) GNU Radio Setup for Task One: