0% ont trouvé ce document utile (0 vote)
18 vues12 pages

Initiation à GNU Radio Companion

Ce document présente un TP sur l'utilisation de GNU Radio Companion (GRC) pour la conception de chaînes de communication numérique. Il couvre les fonctionnalités de GRC, les étapes de simulation de signaux bruités, ainsi que plusieurs expériences pratiques pour visualiser et analyser des signaux dans les domaines temporel et fréquentiel. Les étudiants apprendront à manipuler des blocs de traitement de signal et à réaliser des simulations de divers systèmes de communication.

Transféré par

firouzanane03
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
18 vues12 pages

Initiation à GNU Radio Companion

Ce document présente un TP sur l'utilisation de GNU Radio Companion (GRC) pour la conception de chaînes de communication numérique. Il couvre les fonctionnalités de GRC, les étapes de simulation de signaux bruités, ainsi que plusieurs expériences pratiques pour visualiser et analyser des signaux dans les domaines temporel et fréquentiel. Les étudiants apprendront à manipuler des blocs de traitement de signal et à réaliser des simulations de divers systèmes de communication.

Transféré par

firouzanane03
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université des Sciences et de la Technologie

Houari Boumédiene

Faculté de Génie Electrique - Département de Télécommunication

Licence de Télécommunications

Matière

Communications Numériques

TP #1

Initiation à GNU Radio Companion

Année universitaire 2024/2025


Page 1
1. Objectif du TP
L'objectif de ce premier TP est de se familiariser avec le logiciel GNU Radio
Companion (GRC) pour schématiser une chaine de communication numérique
depuis la source jusqu'au destinataire. Pour cela, ce TP vise l'exploration de
quelques outils de traitement du signal notamment la visualisation du signal dans
les domaine temporel et fréquentiel ainsi que le filtrage des fréquences.

2. Fonctionnalités de GNU Radio Companion (GRC)


GRC est un outil graphique de conception de flux (flowgraph) de traitement de
signal englobant les fonctionnalités suivantes (Fig. 1.1) :
Interface graphique : GRC permet de créer des flux de traitement de signal en
connectant des blocs fonctionnels (appelés "blocks") via une interface glisser-
déposer.
Blocs prédéfinis : Il inclut une bibliothèque étendue de blocs pour des
opérations courantes comme la modulation, le filtrage, la FFT, la
démodulation, etc.
Personnalisation : Les utilisateurs peuvent créer leurs propres blocs en
Python ou en C++.
Intégration matérielle : GRC fonctionne avec des périphériques électroniques
externes.
Simulation et test : Il permet de simuler des systèmes de communication
complets sans avoir besoin de matériel physique.

Le téléchargement de GRC peut se faire à partir du lien :

[Link]

Plusieurs versions sont disponibles pour Windows, Linux ou macOS.

Dans le cadre de cette matière, les principales utilisations sont les suivantes :
Analyse d'une chaine de communication numérique dans les domaines
temporel et fréquentiel.
Etude de la qualité de la transmission numérique d'une séquence binaire en
l'absence et en présence du bruit.
Etude des techniques de modulation pour la transmission numérique d'une
séquence binaire.

Dans l'interface graphique, plusieurs boutons sont disponibles pour exécuter les
commandes notamment (Fig.1.2) :
Groupe 1 : Nouveau, Ouverture et Sauvegarde d'un schéma.
Groupe 2 : Copier, Coller, Supprimer, Annuler.
Groupe 3 : Exécuter et Arrêter la simulation.
Page 2
Groupe 4 : Connecter ou Déconnecter les liens entre les blocs.
Groupe 5 : Recherche de blocs.

Menu

Espace Blocs
Variables

Espace de schématisation
graphique

Fig.1.1. Interface de GNU Radio Companion

Groupe 1 Groupe 2 Groupe 3 Groupe 4 Groupe 5

Fig.1.2. Groupes de bouton


Page 3
Sous-catégorie Blocs
Waveforms generators : Pour la
génération des signaux

Instrumentation : Pour la
visualisation des signaux (Temporel,
fréquentiel, ettc)

Filtrage : Le filtrage des signaux


(Passe-bas, passe-haut, FIR, etc)

Tableau 1.1. Liste des Blocs de la catégorie Core.

Page 4
Le groupe 5 regroupe les différents blocs prédéfinis pour réaliser un schéma de
traitement du signal. Les principaux blocs utilisables dans cette matière sont
regroupés dans la catégorie Core. En cliquant sur Core, on peut découvrir les
sous-catégories puis les blocs nécessaires à la réalisation des schémas.
Les principales sous-catégories utilisables dans cette matière sont reportées dans
le tableau 1.1.

2. Expérience
Dans cette première expérience, on se propose de générer un signal harmonique
additionné à un bruit gaussien pour le visualiser dans les domaines temporel et
fréquentiel. Le signal bruité est décrit par l'équation suivante :

( ) = ( )+ ( )

où ( ) = (2 ). et représentent respectivement l'amplitude et la


fréquence du signal. La représentation du signal dans le domaine numérique
nécessite son échantillonnage en respectant le théorème de Shannon :

Dans le cas de cette expérience, = .

Le nombre d'échantillons que l'on peut générer est lié à la durée d'observation du
signal notée . Ce nombre d'échantillons nommé est calculé en utilisant
l'équation suivante :

Pour cette expérience, cinq (5) blocs sont nécessaires pour générer le signal bruité
( ) comme décrit dans le tableau 1.1.

Bloc Fonctionnalité
Signal Source Générateur signaux : cosinus, sinus, porte et
triangulaire.
Noise Source Générateur de bruit : Gaussien, uniforme, ...
Add Additionneur de signaux
QT GUI Time Sink Visualiseur de signaux dans le domaine temporel.
QT GUI Frequency Sink Visualiseur de signaux dans le domaine fréquentiel.
Variable Fixateur de valeurs utilisables dans la simulation.
Tableau 1.2. Blocs de simulation et leurs fonctionnalités

La simulation d'un schéma de traitement du signal nécessite quatre (4) étapes :


Page 5
Déclaration des variables.
Réalisation du schéma de simulation.
Réglage des paramètres de simulation.
Exécution de la simulation.

2.1. Déclaration des variables


Cette étape permet de fixer les variables à utiliser pour exécuter la simulation. Au
lancement de GRC, la fréquence d'échantillonnage nommée samp_rate est fixée
comme une variable de valeur par défaut 32000 Hz. Cependant, son nom et sa
valeur peuvent être changés selon les besoins de l'expérimentation. Dans le cas de
cette expérience, est nommée sample_rate (Taux d'échantillonnage).
Trois autres variables sont déclarées pour la simulation de cette première
expérience :
f_c : fréquence du signal cosinus
n_period : nombre de périodes à visualiser lié par la relation = × où
= 1/ et est le nombre de périodes du signal à visualiser.
numpoints : nombre de points à visualiser défini par la relation = .

2.2. Réalisation du schéma de simulation


Cette étape permet de réaliser le schéma de simulation en ramenant les blocs par
simple glisser-déplacer. Pour faciliter la recherche des blocs, il suffit de taper son
nom en cliquant sur le bouton recherche pour le sélectionner et le déplacer
dans l'espace de schématisation graphique. La liaison des blocs est intuitive. Il
suffit de cliquer sur la sortie d'un bloc puis de cliquer sur l'entrée d'un autre bloc
pour les connecter.

2.3. Réglage des paramètres de simulation


Le réglage des paramètres est une étape importante pour la bonne simulation
d'un système de traitement du signal. Chaque bloc a ses propres paramètres de
simulation. Le tableau suivant décrit les paramètres importants pour chaque bloc :

Bloc Paramètres
Signal Source Sample Rate : Fréquence d'échantillonnage
Waveform : Forme du signal
Frequency : Fréquence du signal
Amplitude : Amplitude du signal
Noise Source Noise Type : Type de bruit
Amplitude : Amplitude du bruit
QT GUI Time Sink Number of Points : Nombre de points à visualiser
Sample Rate : Fréquence d'échantillonnage
Autoscale : Echelle de visualisation manuelle (No)
Page 6
ou automatique (Yes).
QT GUI Frequency Sink FFT Size : Nombre de points de calcul de la
Transformée de Fourier Rapide
Center Frequency (Hz) : Fréquence centrale du
signal
Bandwidth (Hz) : Bande passante du signal fixée à la
fréquence d'échantillonnage.
Tableau 1.3. Paramètres de simulation des blocs.

2.4. Exécution de la simulation


L'exécution de la simulation se fait en cliquant sur le bouton Run . Une fenêtre
s'affiche montrant la simulation.

Manipulation 1 : Réaliser le schéma de la simulation présenté dans la Fig.1.3.


Pour cette manipulation, les paramètres du signal bruité sont fixés comme suit :
= 40000 , = 500 , Amplitude du signal = 2, Amplitude du bruit = 0.1,
= 1.

Fig.1.3. Schéma de simulation d'un signal harmonique bruité.

Qu'observe-t-on dans les domaines temporel et fréquentiel ?

Manipulation 2 : Déterminer l'amplitude maximale du bruit pour avoir un


rapport signal à bruit (SNR : Signal to Noise Ratio) supérieur à 20 dB. Dans le cas
de cette manipulation, le SNR est défini par l'équation suivante :

Page 7
= 10

où et sont respectivement les puissances du signal et du bruit liées à leurs


amplitudes par : = et = .

Pour quelle valeur de l'amplitude du bruit peut-on considérer que le signal utile
est noyé dans le bruit ?

3. Expérience
Dans cette deuxième expérience, on se propose de générer un signal harmonique
avec une amplitude aléatoire pouvant prendre ±2. Cette amplitude aléatoire est
similaire à une séquence binaire où le bit "0" est représenté par une amplitude 2
et le bit "1" par une amplitude +2. Le signal bruité prend alors la forme suivante :

( ) = ( )+ ( )

avec ( ) = (2 ) et est une amplitude aléatoire de loi uniforme qui peut


prendre ±2. La simulation d'un tel signal est montrée dans Fig. 1.4.

Dans cette simulation, on distingue trois parties : Déclarations des variables, la


chaîne de simulation du signal bruité et la visualisation des signaux dans les
domaines temporel et fréquentiel.
Pour générer une amplitude aléatoire d'amplitude ±2 avec une loi uniforme, les
blocs suivants sont utilisés :
Random Uniform Source : Génère des valeurs entières entre ±1.
Int to Float : Convertit les valeurs entières en valeurs réelles.
Multiply Const : Multiplie les valeurs entières par 2 pour générer des
amplitudes ±2.
Repeat : Répète la valeur de l'amplitude du signal sur une période du signal.
Multiply : Multiplie l'amplitude par (2 ).

Pour la visualisation du signal, deux blocs sont utilisés :


Virtual Sink : permet d'affecter la sortie d'un bloc à une source virtuelle. Pour
cela, il faut lui donner un nom pour pouvoir l'utiliser dans le bloc de
visualisation.
Virtual Source : permet de visualiser une source virtuelle définie dans le bloc
Virtual Sink.

Page 8
Déclarations des variables

Chaîne de simulation du signal

Visualisation du signal

Fig.1.4. Schéma de simulation d'un signal harmonique d'amplitude aléatoire


bruité.

Dans le schéma de simulation, quatre sources virtuelles sont utilisées pour la


visualisation des signaux dans le domaine temporel. Par contre, dans le domaine
fréquentiel, nous exploitons uniquement une source virtuelle.

Manipulation 3 : Réaliser le schéma de simulation de Fig.1.4. Interpréter les


visualisations temporelles et fréquentielles. Que peut-on dire ?

4. Expérience
Dans cette expérience, on se propose de générer la somme de trois signaux
harmoniques additionnés avec un bruit gaussien. Cela se traduit par l'équation
suivante :

( )= cos (2 )+ ( )

tels que = 2 pour = 1,2,3, = 500 , = 1500 et = 3500 .

Page 9
Manipulation 4 : Réaliser le schéma de simulation de Fig.1.5. Interpréter les
visualisations temporelles et fréquentielles. Que peut-on dire ?

Fig.1.5. Schéma de simulation d'un signal avec trois harmoniques additionné à un


bruit gaussien.

Pour une bonne visualisation du signal, sa durée est fixée à 10 ms. Déterminer le
nombre nécessaire de points pour une bonne visualisation.

5. Expérience
Dans cette expérience, on se propose de filtrer le signal avec les trois harmoniques
pour supprimer les fréquences et . Pour cela, on introduit un filtre passe-bas
réglé à la fréquence de coupure 1000 . Le schéma de simulation est représenté
dans Fig.1.6.

Le filtrage du signal est opéré par le bloc Low Pass Filter. Les paramètres de
réglage pour supprimer les deux fréquences et sont :
Sample Rate : Fréquence d'échantillonnage
Cutoff Freq : Fréquence de coupure
Transition Width : Largeur de la bande de transition
Window : Fenêtre utilisée pour la conception du filtre numérique

Manipulation 5 : Réaliser le schéma de simulation de Fig.1.6. Interpréter les


visualisations temporelles et fréquentielles. Que peut-on dire ?
Page 10
Fig.1.6. Schéma de simulation de filtrage d'un signal.

6. Expérience
Dans cette expérience, on se propose de lire un son réel pour l'écouter et l'afficher
dans les domaines temporel et fréquentiel. Les signaux sont enregistrés
numériquement dans l'un des format wav ou mp3.
La lecture et l'écoute d'un son réel se font en utilisant les blocs : Wav File Source
et Audio Sink.

Dans cette expérience, on utilise les signaux suivants :


un chant d'oiseau d'une durée trois secondes échantillonné à une fréquence
de 22050Hz.
son "bip-bip" envoyé par la sonde spatiale sputnik en 1959 d'une durée de 4
secondes échantillonné à une fréquence 44100Hz.
son d'une voix humaine d'une durée de deux secondes échantillonné à une
fréquence de 22010Hz.

Les signaux seront fournis lors de la séance de TP.

Page 11
Manipulation 6 : Réaliser le schéma de simulation de Fig.1.7. Interpréter les
visualisations temporelles et fréquentielles. Que peut-on dire ?

Le schéma de lecture et d'écoute du signal ainsi que les représentations temporel


et fréquentiel est reporté dans Fig.1.7.

Fig.1.7. Schéma de lecture et d'écoute d'un signal audio et la visualisation dans les
domaines temporel et fréquentiel.

Page 12

Vous aimerez peut-être aussi