Skip to main content

Doppler Delay (with MATLAB + Simulator)


Doppler Shift Formula

When either the transmitter or the receiver is in motion, or when both are in motion, Doppler Shift is an essential parameter in wireless communication. We notice variations in reception frequencies in vehicles, trains, or other similar environments. In plain language, the received signal frequency increases as the receiver moves toward the transmitter and drops as the receiver moves in the opposite direction. This phenomenon is called the Doppler shift or Doppler spread.

Doppler Shift Formula

The relationship between the transmitted and received frequency is defined as:

fR = fT ± fD
  • fR = Receiving frequency
  • fT = Transmitted frequency
  • fD = Doppler frequency (shift)

The Doppler frequency is determined by the speed of the vehicle and the angle of the arriving wave:

Doppler shift (LOS path): ν1 = fc * v / c
Doppler shift (Reflected path): ν2 = (fc * v / c) * cos(θ)

Doppler spread: BD = | ν2 − ν1 |

Where c is the speed of light and v is the speed of the vehicle. Alternatively, expressed via wavelength (λ):

BD = | (v / λ) * (cos(θ) - 1) |

Movement Scenarios:

1. Towards BS: When the MS reaches towards the Base Station, θ = 0°, so cos(0°) = 1. The frequency increases:
fR = fT + (v / λ)

2. Away from BS: When the MS moves away, θ = 180°, so cos(180°) = -1. The frequency decreases:
fR = fT - (v / λ)

Doppler Shift vs Doppler Spread

1. Doppler Shift

Represents a single frequency change due to relative motion between a source and an observer. For example, the frequency offset of a radar signal reflecting off a single moving car.

2. Doppler Spread

The range of frequency shifts occurring in a multipath environment. It measures the spectral broadening and affects the channel's coherence time.

MATLAB Implementation

% Doppler Shift calculation script
clc; clear; close all;

c = 3e8;      % Speed of light (m/s)
f0 = 2.4e9;   % Center frequency (2.4 GHz)

% Velocities of different objects
velocities = [-30, -10, 0, 10, 20]; 

% Calculate Shifts and Spread
doppler_shifts = (velocities / c) * f0;
doppler_spread = max(doppler_shifts) - min(doppler_shifts);

fprintf('Doppler Shifts (Hz):\n');
disp(doppler_shifts);
fprintf('Doppler Spread (Hz): %f\n', doppler_spread);

Expected Output:

Relative velocities (in m/s): -30 -10 0 10 20 Doppler Shifts (Hz): -240 -80 0 80 160 Doppler Spread (Hz): 400.000000

How Doppler Spread Affects Communication

Doppler spread causes fading in wireless communication. When received power fluctuates over time, it results in fast or slow fading. High Doppler spread leads to a short coherence time, meaning the channel changes very rapidly.

For practical systems, the received signal r(t) is modeled as:

r(t) = s(t - τ) * h(τ, t) * exp(j * 2 * π * fD * (t - τ))
  • s(t - Ï„): Transmitted signal with delay Ï„.
  • h(Ï„, t): Time-varying impulse response.
  • exp(j...): Complex phase shift due to Doppler frequency fD.

People are good at skipping over material they already know!

View Related Topics to







Contact Us

Name

Email *

Message *

Popular Posts

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

📘 Overview of BER and SNR 🧮 Online Simulator for BER calculation 🧮 MATLAB Code for BER calculation 📚 Further Reading 📂 View Other Topics on M-ary QAM, M-ary PSK, QPSK ... 🧮 Online Simulator for Constellation Diagram of m-ary QAM 🧮 Online Simulator for Constellation Diagram of m-ary PSK 🧮 MATLAB Code for BER calculation of ASK, FSK, and PSK 🧮 MATLAB Code for BER calculation of Alamouti Scheme 🧮 Different approaches to calculate BER vs SNR What is Bit Error Rate (BER)? The abbreviation BER stands for Bit Error Rate, which indicates how many corrupted bits are received compared to the total number of bits sent. BER = (number of bits received in error) / (total number of transmitted bits) What is Signal-to-Noise Ratio (SNR)? SNR is the ratio of signal power to noise powe...

ASK, FSK, and PSK (with MATLAB + Online Simulator)

📘 Overview 📘 Amplitude Shift Keying (ASK) 📘 Frequency Shift Keying (FSK) 📘 Phase Shift Keying (PSK) 📘 Which of the modulation techniques—ASK, FSK, or PSK—can achieve higher bit rates? 🧮 MATLAB Codes 📘 Simulator for binary ASK, FSK, and PSK Modulation 📚 Further Reading ASK or OFF ON Keying ASK is a simple (less complex) Digital Modulation Scheme where we vary the modulation signal's amplitude or voltage by the message signal's amplitude or voltage. We select two levels (two different voltage levels) for transmitting modulated message signals. For example, "+5 Volt" (upper level) and "0 Volt" (lower level). To transmit binary bit "1", the transmitter sends "+5 Volts", and for bit "0", it sends no power. The receiver uses filters to detect whether a binary "1" or "0" was transmitted. ...

Comparing Baseband and Passband Implementations of m-ary QAM

  Let's assume your original digital message bitstream is: 0, 0, 1, 0, 0, 0, 1, 0, 1, 1 In 4-QAM, we group them into pairs: (00), (10), (00), (10), (11). Your baseband symbols are: Symbol 1 (Bits 00): -1.00 - j1.00 Symbol 2 (Bits 10): 1.00 - j1.00 Symbol 3 (Bits 00): -1.00 - j1.00 Symbol 4 (Bits 10): 1.00 - j1.00 Symbol 5 (Bits 11): 1.00 + j1.00   To transmit these symbols over a wireless medium, we modulate this baseband signal onto a high-frequency carrier (e.g., 50 Hz). This process creates the passband signal , where the information is stored in the phase and amplitude of the sine wave. Fig 1: 4-QAM Baseband I and Q Components Fig 2: 4-QAM Passband Modulated Signal   In this example, the symbol rate is 5 symbols per second. Detailed Explanation 4-QAM Constellation Mapping In standard 4-QAM mapping, bits are converted to complex points on a grid: Bits...

Comparing Baseband and Passband Implementations of ASK, FSK, and PSK

📘 Overview 🧮 Baseband and Passband Implementations of ASK, FSK, and PSK 🧮 Difference betwen baseband and passband 📚 Further Reading 📂 Other Topics on Baseband and Passband ... 🧮 Baseband modulation techniques 🧮 Passband modulation techniques   Baseband modulation techniques are methods used to encode information signals onto a baseband signal (a signal with frequencies close to zero). Passband techniques shift these signals to higher carrier frequencies for transmission. Here are the common implementations: Amplitude Shift Keying (ASK) [↗] : In ASK, the amplitude of the signal is varied to represent different symbols. Binary ASK (BASK) is a common implementation where two different amplitudes represent binary values (0 and 1). ASK is simple but susceptible to noise. ASK Baseband (Digital Bits) ASK Passband (Modulated Carrier)     Fig 1:  ASK Passband Modulation (...

Amplitude, Frequency, and Phase Modulation Techniques (AM, FM, and PM)

📘 Overview 🧮 Amplitude Modulation (AM) 🧮 Online Amplitude Modulation Simulator 🧮 MATLAB Code for AM 🧮 Q & A and Summary 📚 Further Reading Amplitude Modulation (AM): The carrier signal's amplitude varies linearly with the amplitude of the message signal. An AM wave may thus be described, in the most general form, as a function of time as follows: When performing amplitude modulation (AM) with a carrier frequency of 100 Hz and a message frequency of 10 Hz, the resulting peak frequencies are as follows: 90 Hz (100 - 10 Hz), 100 Hz, and 110 Hz (100 + 10 Hz). Figure: Frequency Spectrums of AM Signal (Lower Sideband, Carrier, and Upper Sideband) A low-frequency message signal is modulated with a high-frequency carrier wave using a local oscillator to make communication possible. DSB, SSB, and VSB are common amplitude modulation techniques. We find a lot of bandwidth loss in DSB. The bandwidth of S...

Shannon Limit Explained: Negative SNR, Eb/No and Channel Capacity

Understanding Negative SNR and the Shannon Limit Understanding Negative SNR and the Shannon Limit An explanation of Signal-to-Noise Ratio (SNR), its behavior in decibels, and how Shannon's theorem defines the ultimate communication limit. Signal-to-Noise Ratio in Shannon’s Equation In Shannon's equation, the Signal-to-Noise Ratio (SNR) is defined as the signal power divided by the noise power: SNR = S / N Since both signal power and noise power are physical quantities, neither can be negative. Therefore, the SNR itself is always a positive number. However, engineers often express SNR in decibels: SNR(dB) When SNR = 1, the logarithmic value becomes: SNR(dB) = 0 When the noise power exceeds the signal power (SNR < 1), the decibel representation becomes negative. Behavior of Shannon's Capacity Equation Shannon’s channel capacity formula is: C = B log₂(1 + SNR) For SNR = 0: log₂(1 + SNR) = 0 When SNR becomes smaller (in...

Analog vs Digital Modulation Techniques | Advantages of Digital ...

Modulation Techniques Analog vs Digital Modulation In our previous discussion, we explored the necessity of modulation. In this article, we focus on the fundamental differences between analog and digital modulation. The primary distinction is that digital modulation uses a discrete digital signal to modify the carrier, whereas analog modulation uses a continuous analog signal. Advantages of Digital Modulation over Analog Modulation Bandwidth Efficiency: Digital techniques (like QAM) can transmit more data within a limited frequency range. Noise Resistance: Digital signals have superior resistance to noise because they can be perfectly regenerated. Multiplexing: It is much easier to multiplex various data types (audio, video, text) into a single digital stream. Higher SNR: Better noise immunity leads to a higher Signal-to-Noise Ratio (SNR). Increased Throughput: Modern digital techniques provide significantly higher data ...

Calculation of SNR from FFT bins in MATLAB

📘 Overview 🧮 MATLAB Code for Estimation of SNR from FFT bins 🧮 MATLAB Code for SNR from PSD using Kaiser Window 📚 Further Reading Here, you can find the SNR of a received signal from periodogram / FFT bins using the Kaiser operator. The beta (β) parameter characterizes the Kaiser window, which controls the trade-off between the main lobe width and the side lobe level. Steps Set up the sampling rate and time vector Compute the FFT and periodogram Calculate the frequency resolution and signal power Exclude the signal power from noise calculation Compute the noise power and SNR MATLAB Code for Estimation of SNR from FFT bins clc; clear; close all; % Parameters fs = 8000; f_tone = 1000; N = 8192; t = (0:N-1)/fs; % Generate signal + noise signal = sin(2*pi*f_tone*t); SNR_true_dB = 20; signal_power = mean(signal.^2); noise_power = signal_power / (10^(SNR_true_dB/10)); noisy_signal = signal + sqrt(noise_power) * randn(1, N); % Apply ...