Skip to main content

Frequency Modulation (FM)


Frequency Modulation (FM):

The carrier signal's frequency varies linearly in response to the voltage variation in the message signal.


 


 

 

 

 

 

Here, modulation index = Δf / fm

Where Δf is the peak frequency deviation and fm = frequency of the message signal.

Here frequency deviation means how much the the frequency of the carrier signal deviates from its carrier's original frequency after frequency modulation.

When performing frequency modulation (FM) with a carrier frequency of 100 Hz and a message frequency of 10 Hz, the resulting peak frequencies are as follows: 80 Hz (100 - 2*10 Hz), 90 Hz (100 - 10 Hz), 100 Hz, 110 Hz (100 + 10 Hz), 120 Hz (100 +  2*10 Hz).


Figure: Frequency Spectrums of FM Signal
 
 

MATLAB Code for Frequency Modulation and Demodulation


Output

 
 

 
 
 
Fig 2: Frequency Modulation and Demodulation
 

Q & A and Summary

1. What is the fundamental difference between Frequency Modulation (FM) and Amplitude Modulation (AM), and why is FM more resistant to noise?

In AM, the amplitude of the carrier wave varies according to the message signal, while in FM, the frequency of the carrier varies, and the amplitude remains constant. FM is more resistant to noise because most noise affects amplitude, and FM encodes information in frequency, not amplitude.

2. Explain how the integral \( \int m(\tau) d\tau \) in the FM equation contributes to frequency modulation.

The integral \( \int m(\tau) d\tau \) determines the phase deviation of the carrier. Since frequency is the derivative of phase, integrating the modulating signal controls how the instantaneous frequency of the carrier changes, thus achieving frequency modulation.

3. Why does an FM signal theoretically have infinite bandwidth, and how is this managed in practical systems?

FM generates infinite sidebands due to Bessel function expansion. Practically, only a limited number have significant power. Carson’s Rule estimates usable bandwidth:
\( \text{BW} \approx 2(\Delta f + f_m) \)
This ensures efficient spectrum allocation in real systems.

4. What role does the modulation index (β) play in shaping the spectral characteristics of an FM signal?

The modulation index \( \beta = \frac{\Delta f}{f_m} \) controls how many sidebands the FM signal has.
- Low β (β << 1): Narrowband FM (similar to AM).
- High β (β > 1): Wideband FM with richer spectrum and better fidelity.

5. How do Bessel functions \( J_n(\beta) \) influence the amplitude of FM sidebands?

Each FM sideband's amplitude is determined by \( J_n(\beta) \), a Bessel function of the first kind. The signal's energy spreads across these sidebands, with the function values defining their relative strength and distribution.

6. Why is Narrowband FM considered similar to AM in certain aspects?

When \( \beta \ll 1 \), FM behaves like AM with carrier and first-order sidebands dominating. The FM signal approximates to a form close to amplitude modulation but retains some of FM’s noise immunity.

7. How does a Phase-Locked Loop (PLL) demodulate an FM signal?

A PLL tracks the FM signal’s frequency:

  • Phase Detector: Compares FM signal and VCO.
  • Loop Filter: Smooths the error voltage.
  • VCO: Adjusts frequency based on control voltage.
The control voltage becomes the recovered message signal.

8. How does FM improve signal fidelity and reduce distortion in broadcasting applications like FM radio?

Wideband FM (β > 1) captures more message details, allowing high-fidelity audio. It also resists amplitude noise, making it ideal for applications like FM radio where sound quality is critical.

9. What challenges arise in designing FM systems given the non-linearity of the modulation process?

Challenges include:

  • Infinite bandwidth and complex spectrum.
  • Non-linear nature restricts linear superposition.
  • PLL circuits require precision for accurate demodulation.

10. Why is Carson’s Rule only an approximation, and under what conditions does it fail?

Carson’s Rule assumes significant sidebands fall within 2(Δf + fm). It may fail when:

  • β is very small or large (extreme cases).
  • Message has wide or non-sinusoidal content.
  • Exact bandwidth control is needed (e.g., military or satellite systems).


Further Reading


People are good at skipping over material they already know!

View Related Topics to







Contact Us

Name

Email *

Message *

Popular Posts

Online Simulator for ASK, FSK, and PSK

Try our new Digital Signal Processing Simulator!   Start Simulator for binary ASK Modulation Message Bits (e.g. 1,0,1,0) Carrier Frequency (Hz) Sampling Frequency (Hz) Run Simulation Simulator for binary FSK Modulation Input Bits (e.g. 1,0,1,0) Freq for '1' (Hz) Freq for '0' (Hz) Sampling Rate (Hz) Visualize FSK Signal Simulator for BPSK Modulation ...

Channel Impulse Response (CIR)

📘 Overview & Theory 📘 How CIR Affects the Signal 🧮 Online Channel Impulse Response Simulator 🧮 MATLAB Codes 📚 Further Reading What is the Channel Impulse Response (CIR)? The Channel Impulse Response (CIR) is a concept primarily used in the field of telecommunications and signal processing. It provides information about how a communication channel responds to an impulse signal. It describes the behavior of a communication channel in response to an impulse signal. In signal processing, an impulse signal has zero amplitude at all other times and amplitude ∞ at time 0 for the signal. Using a Dirac Delta function, we can approximate this. Fig: Dirac Delta Function The result of this calculation is that all frequencies are responded to equally by δ(t) . This is crucial since we never know which frequenci...

BER vs SNR for M-ary QAM, M-ary PSK, QPSK, BPSK, ...

📘 Overview of BER and SNR 🧮 Online Simulator for BER calculation of m-ary QAM and m-ary PSK 🧮 MATLAB Code for BER calculation of M-ary QAM, M-ary PSK, QPSK, BPSK, ... 📚 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 (after the demodulation process) compared to the total number of bits sent in a communication process. BER = (number of bits received in error) / (total number of tran...

Constellation Diagrams of ASK, PSK, and FSK

📘 Overview of Energy per Bit (Eb / N0) 🧮 Online Simulator for constellation diagrams of ASK, FSK, and PSK 🧮 Theory behind Constellation Diagrams of ASK, FSK, and PSK 🧮 MATLAB Codes for Constellation Diagrams of ASK, FSK, and PSK 📚 Further Reading 📂 Other Topics on Constellation Diagrams of ASK, PSK, and FSK ... 🧮 Simulator for constellation diagrams of m-ary PSK 🧮 Simulator for constellation diagrams of m-ary QAM 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 one of two signals: +√Eb​ ( On the y-axis, the phase shift of 90 degrees with respect to the x-axis, which is also termed phase offset ) or √Eb (on x-axis), where Eb​ is the energy per bit. These signals represent binary 0 and 1.  BPSK (Binary PSK) Modulation: Transmits one of two signals...

Gaussian minimum shift keying (GMSK)

📘 Overview & Theory 🧮 Simulator for GMSK 🧮 MSK and GMSK: Understanding the Relationship 🧮 MATLAB Code for GMSK 📚 Simulation Results for GMSK 📚 Q & A and Summary 📚 Further Reading Dive into the fascinating world of GMSK modulation, where continuous phase modulation and spectral efficiency come together for robust communication systems! Core Process of GMSK Modulation Phase Accumulation (Integration of Filtered Signal) After applying Gaussian filtering to the Non-Return-to-Zero (NRZ) signal, we integrate the smoothed NRZ signal over time to produce a continuous phase signal: θ(t) = ∫ 0 t m filtered (Ī„) dĪ„ This integration is crucial for avoiding abrupt phase transitions, ensuring smooth and continuous phase changes. Phase Modulation The next step involves using the phase signal to modulate a...

Q-function in BER vs SNR Calculation

Q-function in BER vs. SNR Calculation In the context of Bit Error Rate (BER) and Signal-to-Noise Ratio (SNR) calculations, the Q-function plays a significant role, especially in digital communications and signal processing . What is the Q-function? The Q-function is a mathematical function that represents the tail probability of the standard normal distribution. Specifically, it is defined as: Q(x) = (1 / sqrt(2Ī€)) ∫ₓ∞ e^(-t² / 2) dt In simpler terms, the Q-function gives the probability that a standard normal random variable exceeds a value x . This is closely related to the complementary cumulative distribution function of the normal distribution. The Role of the Q-function in BER vs. SNR The Q-function is widely used in the calculation of the Bit Error Rate (BER) in communication systems, particularly in systems like Binary Phase Shift Ke...

LDPC Encoding and Decoding Techniques

📘 Overview & Theory 🧮 LDPC Encoding Techniques 🧮 LDPC Decoding Techniques 📚 Further Reading 'LDPC' is the abbreviation for 'low density parity check'. LDPC code H matrix contains very few amount of 1's and mostly zeroes. LDPC codes are error correcting code. Using LDPC codes, channel capacities that are close to the theoretical Shannon limit can be achieved.  Low density parity check (LDPC) codes are linear error-correcting block code suitable for error correction in a large block sizes transmitted via very noisy channel. Applications requiring highly reliable information transport over bandwidth restrictions in the presence of noise are increasingly using LDPC codes. 1. LDPC Encoding Technique The proper form of H matrix is derived from the given matrix by doing multiple row operations as shown above. In the above, H is parity check matrix and G is generator matrix. If you consider matrix H as [-P' | I] then matrix G will b...

MATLAB code for Pulse Code Modulation (PCM) and Demodulation

📘 Overview & Theory 🧮 Quantization in Pulse Code Modulation (PCM) 🧮 MATLAB Code for Pulse Code Modulation (PCM) 🧮 MATLAB Code for Pulse Amplitude Modulation and Demodulation of Digital data 🧮 Other Pulse Modulation Techniques (e.g., PWM, PPM, DM, and PCM) 📚 Further Reading MATLAB Code for Pulse Code Modulation clc; close all; clear all; fm=input('Enter the message frequency (in Hz): '); fs=input('Enter the sampling frequency (in Hz): '); L=input('Enter the number of the quantization levels: '); n = log2(L); t=0:1/fs:1; % fs nuber of samples have tobe selected s=8*sin(2*pi*fm*t); subplot(3,1,1); t=0:1/(length(s)-1):1; plot(t,s); title('Analog Signal'); ylabel('Amplitude--->'); xlabel('Time--->'); subplot(3,1,2); stem(t,s);grid on; title('Sampled Sinal'); ylabel('Amplitude--->'); xlabel('Time--->'); % Quantization Process vmax=8; vmin=-vmax; %to quanti...