Création d'une forme d'onde FSK.

Espace de nom : tsd::telecom

Prototype

sptr<FormeOnde> forme_onde_fsk(unsigned int M=2, float index=0.4, const SpecFiltreMiseEnForme &filtre=nrz())

Paramètres

MNombre de valeurs possibles par symbole.
indexIndice de modulation.
filtreType de mise en forme.

Description

Création d'une forme d'onde en modulation de fréquence (FSK, pour Frequency Shift Keying).

Cette modulation est caractérisée par l'indice de modulation, qui est le rapport entre l'excursion maximale (deux fois la déviation) et le débit symbole : \[ h = \frac{2 \Delta f}{f_{symb}} \]

la fréquence instantanée variant entre \(f_c - \Delta f\) et \(f_c + \Delta f\).

Exemple


  // 2-FSK, indice de modulation = 4
  soit w = forme_onde_fsk(2, 4);

  // 16 bits aléatoires
  soit bs = randstream(16);

  // Fréquence d'échantillonnage  = 10 kHz
  // Fréquence intermédiaire      = 500 Hz
  // Fréquence symbole            = 0.1 kHz
  // -> Déviation = fsymb * h / 2 = 200 Hz
  soit mod = modulateur_création({w, 10e3, 500, 0.1e3});

  soit x = mod->step(bs);

  Figures f;
  f.subplot().plot(bs.array(), "hbo", "Train binaire");
  f.subplot().plot(real(x), "", "Modulation FSK");
  f.subplot().plot_psd(x, 10e3);

Voir aussi

forme_onde_psk(), forme_onde_qam()