Fonction Communiquer

1) Objet du chapitre

La fonction Communiquer assure l’échange fiable d’informations entre blocs d’un système (capteurs↔traitement, traitement↔actionneurs, systèmes embarqués↔réseaux). Elle englobe : codage, mise en trame, modulation, transmission sur un support, réception, synchronisation et détection/correction d’erreurs.

  • Types de signaux : analogiques (continus) et numériques (binaires).
  • Paramètres : débit binaire \(R_b\) (bit/s), débit symbole \(R_s\) (baud), BER, SNR, latence, atténuation, bande passante.

2) Chaîne de communication (blocs)

Source Codage &mise en trame Modulation Canal(cuivre, fibre, radio) Rx horloge • bit stuffing • CRC ASK/FSK/PSK • QAM bruit • atténuation • échos
De la donnée utile jusqu’à la réception : coder → moduler → transmettre → démoduler → décoder.

3) Signaux & grandeurs

  • Amplitude, fréquence, phase; bande passante \(\mathrm{BP}\) d’un canal.
  • Débit binaire \(R_b\) (bit/s), débit symbole \(R_s\) (baud), avec \(R_b=R_s\log_2(M)\) pour une modulation \(M\)-aire.
  • SNR \(=\dfrac{P_{\text{signal}}}{P_{\text{bruit}}}\), influence le BER (taux d’erreurs).
En codage Manchester, chaque bit occupe deux demi-périodes (transition au milieu) → horloge intégrée mais largeur de bande plus grande.

4) Codage des données & lignes

  • NRZ (Non-Return-to-Zero) : niveau constant sur toute la durée du bit.
  • RZ (Return-to-Zero) : retour à 0 au milieu du bit.
  • Manchester : transition milieu (bit 1 : haut→bas, bit 0 : bas→haut, convention IEEE).
  • NRZI : transition = 1, pas de transition = 0 (ou l’inverse).
Débits : NRZ \(\Rightarrow R_s \approx R_b\). Manchester \(\Rightarrow R_s \approx 2R_b\). RZ entre les deux selon le duty-cycle.

5) Modulation (porteuse)

  • ASK : amplitude shift keying (amplitude varie).
  • FSK : frequency shift keying (fréquence varie).
  • PSK : phase shift keying (phase varie). QPSK (4 états), QAM (amplitude+phase).

Exemple : en QPSK \(M=4\) ⇒ \(R_b=R_s\log_2 4 = 2R_s\). À même \(R_s\), QPSK double le débit binaire vs BPSK.

6) Supports & contraintes

  • Cuivre (UTP/STP, coax) : économique, sensible au bruit → distances limitées.
  • Fibre optique : très haut débit, très faible atténuation, insensible CEM.
  • Radio (Wi-Fi, Bluetooth, 4G/5G) : mobilité, interférences possibles, réglementation.
Toujours vérifier : bande passante disponible, atténuation (dB), budget de liaison, blindage/diaphonie.

7) Indicateurs de performance

IndicateurSymboleDéfinitionUnité
Débit binaire\(R_b\)bits transmis par secondebit/s
Débit symbole\(R_s\)symboles par secondebaud
BER\(P_e\)taux d’erreurs binaire
SNR\(\mathrm{SNR}\)rapport signal/bruit—, dB
Latence\(T\)temps bout-en-bouts
Lien : \(R_b=R_s\log_2(M)\). Avec Manchester, largeur de bande ≈ \(2R_b\).

8) Protocoles & trames (exemples)

  • UART : asynchrone, trame = start(0) + 8 bits + parité? + stop(1). Vitesse en bauds (ex : 115200).
  • I²C : synchrone bus 2 fils (SCL,SDA), adressage, ACK/NACK.
  • SPI : synchrone (SCLK, MOSI, MISO, CS), full-duplex, très rapide.
  • CAN : priorités par ID, détection d’erreurs robuste (automobile).
Toujours identifier : horloge (synchrone/asynchrone), format de trame, parité/CRC, timings.

9) Simulateurs — Débit, temps de transmission & vérification de parité

9.1) Calculateur de temps de transmission

Calcule le temps pour envoyer une trame (payload + en-têtes) selon le codage de ligne.

Temps =
Débit utile ≈
Approximation : temps = \(\dfrac{8(\text{PL}+\text{OH})}{R_b}\) ajusté par le facteur de codage (Manchester ×2, RZ ×1.5).

9.2) UART — temps d’envoi d’un octet

Temps total =
8N1 = start + 8 data + stop = 10 bits/byte ; 8E1/8O1 ≈ 11 bits/byte.

9.3) Vérificateur de parité (paire / impaire)

10) Exercices (10) + solutions

1 — NRZ vs Manchester

Un lien à \(R_b=1\,\text{Mbit/s}\). Comparer \(R_s\) pour NRZ et Manchester.

NRZ : \(R_s\simeq R_b=1\,\text{MBd}\). Manchester : \(R_s\simeq 2R_b=2\,\text{MBd}\).

2 — QPSK

En QPSK, combien de bits par symbole ? Quel débit binaire pour \(R_s=500\,\text{kBd}\) ?

\(\log_2 4=2\) bits/symbole. \(R_b=2\times 500\,\text{k} = 1\,\text{Mbit/s}\).

3 — UART 8N1

Baudrate 9600, 100 octets. Durée ?

8N1 = 10 bits/byte ⇒ \(1000\) bits. Temps \(=1000/9600\simeq0{,}104\,\text{s}\).

4 — BER & SNR

Expliquer qualitativement l’effet d’un SNR faible sur le BER.

SNR bas ⇒ bruit important ⇒ décisions de bits plus souvent erronées ⇒ BER ↑.

5 — Trame + overhead

Payload 1200 octets, overhead 40 octets, \(R_b=2\,\text{Mbit/s}\), Manchester. Temps ?

Bits totaux \(=8(1240)=9920\). Manchester ×2 ⇒ équiv. \(19840\) bits. Temps \(=19840/2\cdot10^6\simeq9{,}92\,\text{ms}\).

6 — M-aire

Pour \(M=8\), \(R_s=250\,\text{kBd}\). Calculer \(R_b\).

\(\log_2 8=3\) ⇒ \(R_b=3\times 250\,\text{k}=750\,\text{kbit/s}\).

7 — Choix du support

Pour un réseau industriel très bruité et long (>100 m), recommander un support et justifier.

La fibre (ou cuivre blindé différentiel type RS-485) : immunité CEM, faible atténuation, fiabilité.

8 — Parité

Mot 7 bits : 1010110. Quel bit de parité pair ?

Nombre de 1 = 4 (pair) ⇒ bit parité = 0.

9 — NRZI

En NRZI (transition=1), coder 001110.

Départ niveau bas : 0→pas de trans, 0→pas, 1→transition, 1→transition, 1→transition, 0→pas ⇒ motif niveaux : 0,0,1,0,1,1 (selon convention de départ).

10 — Débit utile

Sur 8N1, quel pourcentage utile (payload) par octet ?

8/10 = 80% utile, 20% d’overhead (start/stop).