Ec3501 WC Lab
Ec3501 WC Lab
NH-79, SALEM-CHENNAI HIGHWAY, A.VASUDEVANUR, CHINNASALEM (TK), KALLAKURICHI (DT) 606 201.
Approved by AICTE, New Delhi & Affiliated to Anna University, Chennai
Accredited by NAAC and Recognized under section 2(f) & 12(B) status of UGC, New Delhi
ENGINEERING
Regulation 2021
1. Modeling of wireless communication systems using Matlab (Two ray channel and
Okumura – Hata model).
3. Design, analyze and test Wireless standards and evaluate the performance
measurements such as BER, PER, BLER, throughput, capacity, ACLR, EVM for 4G and
5G using Matlab.
6. Modeling and simulation of TDMA, FDMA and CDMA for wireless communication.
INDEX
AIM:
To model and simulate wireless communication system for two ray channel and
okumura hata model using Matlab.
Software Required:
Matlab version 2014a
THEORY:
The two-ray ground-reflection model is a multipath radio propagation model
which predicts the path losses between a transmitting antenna and a receiving antenna
when they are in line of sight (LOS). Generally, the two antenna each have different
height. The received signal having two components, the LOS component and the
reflection component formed predominantly by a single ground reflected wave. When
the distance between antennas is less than the transmitting antenna height, two waves are
added constructively to yield bigger power. As distance increases, these waves add up
constructively and destructively, giving regions of up-fade and down-fade. As the
distance increases beyond the critical distance or first Fresnel zone, the power drops
proportionally to an inverse of fourth power of an approximation to critical distance may
be obtained by setting Δφ to π as the critical distance to a local maximum.
PROCEDURE:
1. Start the MATLAB program.
2. Open new M-file.
3. Type the program.
4. Save in current directory.
5. Compile and Run the program.
6. If any error occurs in the program correct the error and run it again.
7. For the output see command window\ Figure window .
8. Stop the program.
CODING:
% System Parameters
frequency = 900e6; % Frequency in Hz
transmitterHeight = 50; % Transmitter height in meters
receiverHeight = 10; % Receiver height in meters
distance = 100:100:1000; % Distance between transmitter and receiver in meters
% Okumura-Hata Model
A = 69.55; % Model parameter
B = 26.16; % Model parameter
C = 13.82; % Model parameter
D = 44.9; % Model parameter
X = 6.55; % Model parameter
hb = 30; % Base station height in meters
% Calculate path loss using Okumura-Hata model
PL_okumura_hata = A + B * log10(distance) + C * log10(frequency/1e6) + D - X * log10 (hb);
% Plotting
figure;
plot(distance, Pr_two_ray, 'b-', 'LineWidth',2);
hold on;
plot(distance, PL_okumura_hata, 'r--','LineWidth', 2);
xlabel('Distance (m)');
ylabel('Received Power/Path Loss (dB)');
legend('Two-ray Channel Model', 'Okumura-Hata Model');
title('Wireless Communication System Modeling');
grid on;
Output:
RESULT :
Thus designing a model of wireless communication systems using Matlab (Two ray
channel and Okumura –Hata model) is achieved
Expt. No.:2
Modeling and simulation of Multipath fading channel
Date:
AIM:
To design a Model and simulation of Multipath fading channel.
SOFTWARE REQUIRED:
THEORY:
In wireless communication, fading is a phenomenon in which the strength and
quality of a radio signal fluctuate over time and distance. Fading is caused by a variety
of factors, including multipath propagation, atmospheric conditions, and the movement
of objects in the transmission path. Fading can have a significant impact on the
performance of wireless communication systems, particularly those that operate in
high-frequency bands.
Multipath delay spread is a type of small-scale fading that occurs when a
transmitted signal takes multiple paths to reach the receiver.
The different components of the signal can arrive at the receiver at different
times, causing interference and rapid variations in signal amplitude and phase.
Multipath delay spread can cause Inter-Symbol Interference (ISI), where symbols
in the transmitted signal overlap and interfere with each other, leading to errors in
the received signal.
The root means square (RMS) delay spread is a measure of the dispersion of
the signal and determines the frequency-selective characteristics of the channel.
A higher RMS delay spread indicates a more frequency-selective channel, while a
lower RMS delay spread indicates a flatter, more frequency-invariant channel.
Multipath delay spread can be mitigated by using techniques such as equalization,
diversity, and adaptive modulation.
Equalization techniques are used to compensate for the time dispersion caused
by multipath delay spread.
Diversity techniques are used to combine multiple signal paths to mitigate the
effects of fading.
Adaptive modulation techniques are used to adjust the modulation scheme and
data rate based on the channel conditions, allowing the system to adapt to
changes in the channel and maintain a reliable communication link.
PROCEDURE:
6. If any error occurs in the program correct the error and run it again
% Simulation parameters
RESULT:
Thus the designing of a Model and simulation of Multipath fading channel has been
achieved.
Expt. No.:3 Design, analyze and test Wireless standards and evaluate the
performance measurements such as BER, PER, BLER,
Date:
throughput, capacity, ACLR, EVM for 4G and 5G using Matlab
AIM :
Design, analyze and test Wireless standards and evaluate the performance
measurements such as BER, PER, BLER, throughput, capacity, ACLR, EVM for 4G and
5G using Matlab.
CODING:
RESULT:
Thus designing, analyzing and testing Wireless standards and evaluating the performance
measurements such as BER, PER, BLER, throughput, capacity, ACLR, EVM for 4G and
5G using Matlab has been achieved.
Expt. No.:4
Modulation: Spread Spectrum – DSSS Modulation &
Date: Demodulation
AIM:
To design modulation: Spread Spectrum – DSSS Modulation & Demodulation.
SOFTWARE REQUIRED:
Matlab version 2014
THEORY:
Direct-sequence spread spectrum in Wireless Networks is a technique that
transmits a data signal over a range of frequencies, spreading it uniformly across the
allocated spectrum. Direct-sequence spread spectrum is used to ensure that a particular
frequency band (and its corresponding range of frequencies) is kept free from
interference. This technique can be related to escaping the problem of co-channel
interference (like two different wireless networks transmitting on the same frequency
band) and cross-talk interference. Direct-sequence spread spectrum can also be used
as an alternative approach to orthogonal frequency division multiplexing, where the
baseband signal is encoded and transmitted across a quantity of fixed, predetermined
channels. In this situation, each channel may carry different information, data signals,
or time slots for different applications within the same network. Direct-sequence spread
spectrum has also been used to transmit data that is encrypted and, in some processes, it
is used to transmit non-data signals like power signaling or control signals.
Direct Sequence Spread Spectrum (DSSS) is a communication system that divides
the bandwidth of a radio channel into wide frequency bands and transmits these signals
over separate frequencies. In this frequency-hopping process, each signal is assigned a
different orthogonal sequence of frequencies.All other radios in the range must gain
each signal sequentially and then transmit it, which significantly reduces the risk of
interference from outside sources or jamming. The time required for this process is
proportional to the number of frequencies used for transmission.
When security agencies need to be ready to communicate secretly, DSSS can be
implemented so that their transmissions cannot be spied upon by other parties who are
monitoring broadcasts on a shorter wavelength or through tapping devices.
PROCEDURE:
6. If any error occurs in the program correct the error and run it again
Original Data:
1 0 1 0 1 1 0 0
Demodulated Data:
1 0 1 0 1 1 0 0
RESULT:
Thus designing modulation: Spread Spectrum – DSSS Modulation & Demodulation has
been achieved.
Expt. No.:5
Wireless Channel equalization: Zero-Forcing Equalizer (ZFE),
Date: MMSE Equalizer (MMSEE),
AIM:
To design a wireless Channel equalization: Zero-Forcing Equalizer (ZFE), MMS
Equalizer (MMSEE), Adaptive Equalizer (ADE),Decision Feedback Equalizer (DFE).
APPARATUS REQUIRED :
THEORY:
If the modulation bandwidth exceeds the coherent bandwidth of the radio channel ISI occur
and modulation pulses are spread in time. Equalization compensates for ISI(Inter symbol
receiver compensates for the average range of expected channel amplitude and delay
characteristics.Equalizers can be classified as linear equalizer, non linear equalizer, zero forcing
feedback equalizer.In zero forcing equalization the equalizer gk attempts to completely inverse
PROCEDURE:
6. If any error occurs in the program correct the error and run it again
CODING :
L = length(h);
% Initialize the equalizer taps
equalizer_taps = zeros(1, L);
% Loop through each received symbol and perform equalization
equalized_symbols = zeros(1, N);
for n = 1:N
% Extract the received symbols for equalization received_symbols =
received_signal(n:n+L-1);
% Perform zero-forcing equalization
equalized_symbols(n) = equalizer_taps * received_symbols';
% Update the equalizer taps using the least squares algorithm
error = symbols(n) - equalized_symbols(n);
equalizer_taps = equalizer_taps + error * received_symbols / (received_symbols *
received_symbols');
end
% Print the original symbols and equalized symbols
disp('Original Symbols:');
disp(symbols); disp('Equalized
Symbols:');
disp(equalized_symbols);
OUTPUT:
Original Symbols:
Columns 1 through 19
1 1 0 1 1 0 0 1 1 1 0 1 1 0 1 0 0 1 1
Columns 20 through 38
1 1 0 1 1 1 1 1 0 1 0 1 0 0 0 0 1 1 0
Columns 39 through 57
1 0 0 0 1 1 0 0 0 1 1 1 0 1 1 0 0 0 1
Columns 58 through 76
0 1 0 1 0 1 1 1 1 1 0 0 0 1 0 1 0 1 0
Columns 77 through 95
0 0 1 0 0 1 1 1 1 0 1 1 0 1 0 0 1 1 1
0 1 0 0 0
Equalized Symbols:
Columns 1 through 11
1.0034
Columns 12 through 22
0.3164 0.8987 0.7162 -0.0194 0.8262 0.2108 0.3684 1.3409 0.6328 0.5942
0.7986
Columns 23 through 33
0.3903 1.3034 0.9963 0.6816 0.6242 0.6419 0.1078 0.9584 -0.0282 0.4643 -
0.0959
Columns 34 through 44
0.3857 0.3709 0.1746 1.1529 0.6859 -0.3254 0.6316 -0.1321 0.2851 0.6131
0.9881
Columns 45 through 55
0.1328 -0.3112 0.5753 0.4748 1.4226 0.8176 0.5202 0.2300 0.9991 0.4921 -
0.2495
Columns 56 through 66
0.2145 0.5610 1.0497 -0.3251 1.0165 -0.0410 1.1669 0.3767 1.3984 0.8522
0.7683
Columns 67 through 77
0.6932 0.4118 -0.0997 0.1789 0.1747 1.2491 0.0166 1.0660 -0.0451 0.5827 -
0.1786
Columns 78 through 88
0.2406 0.4407 0.5875 -0.0514 0.5994 1.4474 0.8587 0.6711 0.4184 0.5040
1.2422
Columns 89 through 99
0.4668 -0.0972 0.6936 -0.1060 0.7651 1.3313 0.6154 0.7091 0.0191 0.5241 -
0.1900
Column 100
0.0171
-
2. MMSE CODE
% Parameters
M = 4; % Number of transmitted symbols
N = 1000; % Number of received
symbols SNRdB = 10; % Signal-to-
Noise Ratio in dB pilotSymbols = [1 -1 1 -1]; %
Known pilot symbols
% Generate random symbols
transmittedSymbols = randi([0 M-1], 1, N);
% Modulation
modulatedSymbols = qammod(transmittedSymbols, M);
% Channel
channel = [0.8 -0.4 0.2 -0.1];
% Example channel coefficients
channel Output = filter(channel, 1, modulatedSymbols);
% Add noise
SNR = 10^(SNRdB/10);
noiseVar = 1/(2*SNR);
noise = sqrt(noiseVar) * randn(1, length(channelOutput));
receivedSignal = channel Output + noise;
% Channel estimation using pilot symbols
pilotIndices = randperm(N, length(pilotSymbols));
pilotSignal = receivedSignal(pilotIndices);
estimated Channel = conv(pilotSignal, conj(pilotSymbols(end:-1:1)));
estimatedChannel = estimatedChannel(end-length(channel)+1:end);
% MMSE equalization
Equalizer Coefficients = conj(estimated Channel) ./ (abs(estimated Channel).^2 +
noiseVar);
equalized Symbols = filter(equalizer Coefficients, 1, receivedSignal);
% Demodulation
Demodulated Symbols = qamde mod(equalizedSymbols, M);
% Calculate bit error rate
bitErrors = sum(transmitted Symbols ~= demodulatedSymbols);
bitErrorRate = bitErrors / N;
disp(['Bit Error Rate: ' num2str(bitErrorRate)]);
output:
Bit Error Rate: 0.787
ADE:
% Parameters
channel_length = 10; % Length of the channel impulse
response snr_db = 20; % Signal-to-noise ratio in dB
num_symbols = 1000; % Number of symbols to
transmit mu = 0.01; % LMS step size
% Generate random symbols
data_symbols = randi([0, 1], 1, num_symbols);
% Modulate symbols (e.g., BPSK modulation)
modulated_symbols = 2 * data_symbols - 1;
% Create the channel impulse response
channel = (randn(1, channel_length) + 1i * randn(1, channel_length)) / sqrt(2);
% Convolve the modulated symbols with the channel
received_symbols = filter(channel, 1, modulated_symbols);
% Add noise to the received signal
noise_power = 10^(-snr_db / 10);
noise = sqrt(noise_power) * (randn(1, length(received_symbols)) + 1i * randn(1,
length(received_symbols)));
received_symbols_noisy = received_symbols + noise;
% Adaptive equalizer using the LMS algorithm
equalizer_length = channel_length;
% Set the equalizer length to match the channel length
equalizer = zeros(1, equalizer_length);
output_signal = zeros(1, length(received_symbols_noisy));
for i = equalizer_length:length(received_symbols_noisy)
% Extract the received symbols for the current equalizer window
received_window = received_symbols_noisy(i:-1:i-equalizer_length+1);
% Compute the equalizer output
output_signal(i) = equalizer * received_window.';
% Compute the error
error = modulated_symbols(i) - output_signal(i);
% Update the equalizer coefficients
equalizer = equalizer + mu * conj(error) * received_window;
end
% Demodulate the equalized symbols (decision-directed) demodulated_symbols =
real(output_signal) > 0;
% Calculate the bit error rate (BER)
ber = sum(data_symbols ~= demodulated_symbols) / num_symbols;
disp(['Bit Error Rate (BER): ', num2str(ber)]);
output:
Bit Error Rate (BER): 0.519
RESULT:
Thus designing a wireless Channel equalization: Zero-Forcing Equalizer (ZFE),
MMS Equalizer(MMSE), Adaptive Equalizer (ADE),Decision Feedback Equalizer (DFE)
has been achieved.
Expt. No.:6
Modeling and simulation of TDMA, FDMA and CDMA for
Date: wireless communication
AIM:
To model and simulate TDMA, FDMA and CDMA for wireless communication.
SOFTWARE REQUIRED:
Matlab version 2014
THEORY:
6. If any error occurs in the program correct the error and run it again
the program.
CODING:
1. TDMA
end
subplot(2, 1, 1);
stem(timeSlots, userData');
title('User Traffic');
xlabel('Time (s)');
ylabel('Data');
legend('User 1', 'User 2', 'User 3', 'User 4');
subplot(2, 1, 2);
stem(timeSlots, receivedData');
title('Received Data');
xlabel('Time (s)');
ylabel('Data');
2.FDMA:
% System parameters
totalBandwidth = 10e6; % Total available bandwidth (Hz)
numUsers = 5; % Number of users
carrierFrequency = 1e6; % Carrier frequency (Hz)
userBandwidth = totalBandwidth / numUsers; % Bandwidth allocated to each user (Hz)
% Time parameters
samplingFrequency = 100e6; % Sampling frequency (Hz)
timeDuration = 1e-3; % Simulation duration (s)
time = 0:1/samplingFrequency:timeDuration;
% Generate user signals
userSignals = zeros(numUsers, length(time));
for i = 1:numUsers
userFrequency = carrierFrequency + (i-1) * userBandwidth; % Frequency of user signal
userSignals(i, :) = sin(2*pi*userFrequency*time);
end
% Create the FDMA signal
fdmaSignal = sum(userSignals, 1);
% Add noise to the FDMA signal
snr = 10; % Signal-to-Noise Ratio (in dB)
noisySignal = awgn(fdmaSignal, snr, 'measured');
% Perform signal demodulation
demodulatedSignals = zeros(numUsers, length(time));
for i = 1:numUsers
user Frequency = carrierFrequency + (i-1) * userBandwidth; % Frequency of user signal
demodulatedSignals(i, :) = noisySignal .* sin(2*pi*userFrequency*time);
end
% Plot the original user signals and the demodulated signals figure;
subplot(numUsers+1, 1, 1);
plot(time, fdmaSignal);
title('FDMA Signal');
xlabel('Time (s)');
ylabel('Amplitude');
for i = 1:numUsers subplot(numUsers+1, 1, i+1);
plot(time, demodulatedSignals(i, :));
title(['Demodulated Signal - User ', num2str(i)]);
xlabel('Time (s)');
ylabel('Amplitude');
end
Output:
3.CDMA:
user2Symbols = 2 * user2Bits - 1;
chipSequence = [1, -1, 1, 1, -1, 1, -1, -1]; % Chip sequence for spreading
% Noise variance
length(user1SpreadSymbols));
length(user2SpreadSymbols));
% Display results
Result :
Thus modeling and simulation of TDMA, FDMA and CDMA for wireless
communication has been achieved.
VIVA QUESTIONS :