Skip to main content

Effect of Rayleigh Fading on the Constellation Diagram of Binary PSK


In real-world wireless communication, the direct line-of-sight (LOS) path between transmitter and receiver is often blocked or unavailable. As a result, the transmitted signal experiences Rayleigh fading. This phenomenon arises from multipath propagation, where the signal reaches the receiver through several different paths with varying delays and phase shifts. While constellation diagrams primarily show the effects of Additive White Gaussian Noise (AWGN), multipath fading can heavily distort these diagrams. This distortion impacts the accuracy of symbol detection, leading to increased error rates and degraded system performance. To combat these challenges, communication systems employ techniques such as equalization and diversity methods to reduce the adverse effects of multipath fading. 

 

MATLAB Simulation of Rayleigh Fading Impact on BPSK Constellation


// MATLAB code courtesy of SalimWireless.com
clc; clear; close all;
% Parameters
N = 10000; % Number of symbols
SNR = 20; % Signal-to-Noise Ratio in dB (for AWGN)
M = 2; % Modulation Order (2 for BPSK)
Fs = 100; % Sampling frequency (not used directly, but for clarity)
L = 4; % Oversampling factor
Rayleigh_factor = 0.5; % Rayleigh fading factor (scaling of fading)
% Generate random bits for BPSK
% BPSK Mapping: 0 -> -1 + 0j, 1 -> 1 + 0j (complex-valued with imaginary part 0)
data = randi([0 1], N, 1);
modData = (2*data - 1) + 0i; % Map 0 to -1 + 0j, 1 to 1 + 0j (complex)
% Upsample to simulate higher symbol rate
modData_upsampled = upsample(modData, L);
% Create Rayleigh fading channel (without division)
% Generate random fading gains for Rayleigh fading
rayleigh_fading = [0.8, 0.6];
% Apply Rayleigh fading to the modulated signal (only real part affected by fading)
fadedSignal = modData_upsampled .* rayleigh_fading;
% Assuming fadedSignal is a complex vector/matrix

% Add AWGN noise to both real and imaginary parts
noise = generateComplexGaussianNoise(length(fadedSignal));
% Normalize the noise (to match the noise power based on SNR)
snrLinear = 10^(SNR / 10); % Linear scale of SNR
noise = noise / sqrt(2 * snrLinear); % Normalize the noise
% Add the noise to the faded signal (real and imaginary components)
noisySignal = fadedSignal + noise;
threshold = 0.4;
idx = abs(noisySignal) > -threshold & abs(noisySignal) < threshold; % between -0.1 and 0.1 is just abs < 0.1
noisySignal(idx) = 0;
% Plot the constellation diagram
figure;
scatter(real(noisySignal), imag(noisySignal), '.');
title('Received Signal Constellation for BPSK (Rayleigh Fading + AWGN)');
xlabel('In-Phase');
ylabel('Quadrature');
axis equal;
grid on;
% Function to generate Complex Gaussian Noise
function noise = generateComplexGaussianNoise(size)
u1 = rand(size, 1); % Uniform random variables
u2 = rand(size, 1);

% Box-Muller transform to generate complex Gaussian noise
z1 = sqrt(-2 * log(u1)) .* cos(2 * pi * u2); % Real part
z2 = sqrt(-2 * log(u1)) .* sin(2 * pi * u2); % Imaginary part

noise = complex(z1, z2); % Combine real and imaginary parts
end


web('https://www.salimwireless.com/search?q=fading', '-browser');

    

Simulation Output

For, channel impulse response, h = [0.8, 0.6] 

Constellation diagram showing BPSK under Rayleigh fading and AWGN
 

Fig: Constellation diagram of BPSK signal affected by Rayleigh fading and AWGN noise.

If you adjust the number of multipath components to one by changing the fading vector on line 20 from:

rayleigh_fading = [0.8, 0.6, 0.3];
    

to

rayleigh_fading = [1];
    

the output constellation will simplify as shown below: 

(Rayleigh fading occurs when there is no direct line-of-sight (LOS) between the transmitter and receiver. For illustration purposes, we consider the channel coefficient , representing a flat fading channel without multipath effects.)

 

For, channel impulse response, h = [1] 

Constellation diagram of BPSK with single-path AWGN channel
 

Simplified constellation diagram with a single-path Rayleigh fading (effectively no fading).

You can also experiment by adjusting the SNR parameter in the code to observe how the constellation diagram accuracy changes for Binary PSK under Rayleigh fading conditions. 

 

 


BPSK Simulation (with AWGN + Rayleigh)










Further Reading



People are good at skipping over material they already know!

View Related Topics to







Contact Us

Name

Email *

Message *

Popular Posts

How to use MATLAB Simulink

Introduction to MATLAB Simulink MATLAB Simulink is a popular add-on of MATLAB. Here, you can use different blocks like modulator, demodulator, AWGN channel, etc. And you can do experiments on your own. Steps to Get Started 1. Go to the 'Simulink' tab at the top navbar of MATLAB. If not found, click on the add-on tab, search 'Simulink,' and then click on it to add. 2. Once you installed the simulation, click the 'new' tap at the top left corner. 3. Then, search the required blocks in the 'Simulink library.' Then, drag it to the editor space. 4. You can double-click on the blocks to see the input parameters. 5. Then, connect the blocks by dragging a line from one block's output terminal to another block's input. 6. If the connection is complete, click the 'run' tab in the middle of the top navbar. 7. After clicking on the run ...

Theoretical BER vs SNR for binary ASK, FSK, and PSK with MATLAB Code + Simulator

📘 Overview & Theory 🧮 MATLAB Codes 📚 Further Reading Bit Error Rate (BER) Equations In ASK, noise directly affects the signal amplitude, making it the most vulnerable since the data is carried in amplitude changes. In FSK, data is represented by frequency variations, and because noise typically impacts amplitude more than frequency, FSK is more robust than ASK. In PSK, data is encoded in the signal phase, and BPSK specifically uses 180-degree phase shifts, creating the greatest separation between signal points and therefore achieving the lowest bit error rate (BER) for the same power level. BER formulas for ASK, FSK, and PSK modulation schemes. ASK BER = 0.5 × erfc(0.5 × √SNR) FSK BER = 0.5 × erfc(√(SNR / 2)) PSK BER = 0.5 × erfc(√SNR) erfc / Q-func...

BER vs SNR for M-ary QAM, M-ary PSK, QPSK, BPSK, ...(MATLAB Code + Simulator)

Bit Error Rate (BER) & SNR Guide Analyze communication system performance with our interactive simulators and MATLAB tools. 📘 Theory 🧮 Simulators 💻 MATLAB Code 📚 Resources BER Definition SNR Formula BER Calculator MATLAB Comparison 📂 Explore M-ary QAM, PSK, and QPSK Topics ▼ 🧮 Constellation Simulator: M-ary QAM 🧮 Constellation Simulator: M-ary PSK 🧮 BER calculation for ASK, FSK, and PSK 🧮 Approaches to BER vs SNR What is Bit Error Rate (BER)? The BER indicates how many corrupted bits are received compared to the total number of bits sent. It is the primary figure of merit for a...

Theoretical vs. simulated BER vs. SNR for ASK, FSK, and PSK (MATLAB Code + Simulator)

📘 Overview 🧮 Simulator 💻 Theoretical Code 📊 Simulated Code 📚 Resources Overview BER vs. SNR denotes how many bits in error are received for a given signal-to-noise ratio, typically measured in dB. Common noise types in wireless systems: 🚀 1. Additive White Gaussian Noise (AWGN) 🌊 2. Rayleigh Fading AWGN adds random noise; Rayleigh fading attenuates the signal variably. A good SNR helps reduce these effects. Bit Error Rate (BER) Equations BER formulas for ASK, FSK, and PSK modulation schemes. ASK BER = 0.5 × erfc(0.5 × √SNR) FSK BER = 0.5 × erfc(√(SNR / 2)) PSK BER = 0.5 × erfc(√SNR) erfc / Q-function (Click here) Live BER S...

Constellation Diagrams of ASK, PSK, and FSK (with MATLAB Code + Simulator)

Constellation Diagrams: ASK, FSK, and PSK Comprehensive guide to signal space representation, including interactive simulators and MATLAB implementations. 📘 Overview 🧮 Simulator ⚖️ Theory 📚 Resources Definitions Constellation Tool Key Points MATLAB Code 📂 Other Topics: M-ary PSK & QAM Diagrams ▼ 🧮 Simulator for M-ary PSK Constellation 🧮 Simulator for M-ary QAM Constellation BASK (Binary ASK) Modulation Transmits one of two signals: 0 or -√Eb, where Eb​ is the energy per bit. These signals represent binary 0 and 1. BFSK (Binary FSK) Modulation Transmits on...

Online Simulator for ASK, FSK, and PSK

Try our new Digital Signal Processing Simulator!   •   Interactive ASK, FSK, and BPSK tools updated for 2025. Start Now Interactive Modulation Simulators Visualize binary modulation techniques (ASK, FSK, BPSK) in real-time with adjustable carrier and sampling parameters. 📡 ASK Simulator 📶 FSK Simulator 🎚️ BPSK Simulator 📚 More Topics ASK Modulator FSK Modulator BPSK Modulator More Topics Simulator for Binary ASK Modulation Digital Message Bits Carrier Freq (Hz) Sampl...

OFDM Waveform with MATLAB Code (with Simulator)

  In OFDM (Orthogonal Frequency Division Multiplexing) , we transmit multiple orthogonal subcarriers simultaneously. Since the subcarriers are orthogonal , they do not interfere with each other, which is one of the main advantages of OFDM. Practically, OFDM converts a wideband signal into multiple narrowband orthogonal subcarriers. For typical wireless communication, if the signal bandwidth (or symbol duration) exceeds the coherence bandwidth of the channel, the signal experiences frequency-selective fading . Fading distorts the signal, making it difficult to recover the original information. By using OFDM, we transmit the same wideband signal across multiple orthogonal narrowband subcarriers, reducing the effect of fading. For example, if we want to transmit a signal of bandwidth 1024 kHz , we can divide it into N = 8 subcarriers . Each subcarrier is then spaced by: Δf = Total Bandwidth N = 1024 8 kHz...

UGC NET Electronic Science Previous Year Question Papers

Home / Engineering & Other Exams / UGC NET 2022 PYQ 📥 Download UGC NET Electronics PDFs Complete collection of previous year question papers, answer keys and explanations for Subject Code 88. Start Downloading UGC-NET (Electronics Science, Subject code: 88) Subject_Code : 88; Department : Electronic Science; 📂 View All Question Papers Q. UGC Net Electronic Science Question Paper [June 2025] A. UGC Net Electronic Science Question Paper With Answer Key Download Pdf [June 2025] with full explanation Q. UGC Net Electronic Science Question Paper [December 2024] A. UGC Net Electronic Science Question Paper With Answer Key Download Pdf [December 2024] Q. UGC Net Electronic Science Question Paper [Aug 2024] A. UGC Net Electronic Scien...