Cours:Elen4 TNS TP TpsReel : Différence entre versions
(→Création d'un bloc dans ce module) |
(→Première partie - guide de création d'un bloc en C++) |
||
| Ligne 14 : | Ligne 14 : | ||
Ce guide est inspirée du guide [https://wiki.gnuradio.org/index.php?title=Creating_C%2B%2B_OOT_with_gr-modtool Creating an OOT (C++ block example)] en l'adaptant pour nos besoins : | Ce guide est inspirée du guide [https://wiki.gnuradio.org/index.php?title=Creating_C%2B%2B_OOT_with_gr-modtool Creating an OOT (C++ block example)] en l'adaptant pour nos besoins : | ||
| − | Nous allons créer un simple bloc qui recopie son entrée (en <code>float</code>) sur sa sortie. Donc le filtre caractérisé par ''y(n)'' = ''x(n)'' ou encore ''H(z)''=1. | + | Nous allons créer un simple bloc qui recopie son entrée (en <code>float</code>) sur sa sortie. Donc le filtre caractérisé par ''y(n)'' = ''x(n)'' ou encore ''H(z)''=1. Il s'agit donc d'une sorte de filtre passe-tout. |
'''Suivez bien toutes les étapes, sans aller trop rapidement''' | '''Suivez bien toutes les étapes, sans aller trop rapidement''' | ||
Version du 24 mars 2023 à 09:49
TP6 : Temps réel : Codage d'un bloc en C++ / démodulation et PID numérique
Le but de ce TP est ...
Sommaire
Codage de bloc Gnuradio en c++
Première partie - guide de création d'un bloc en C++
Ce guide est inspirée du guide Creating an OOT (C++ block example) en l'adaptant pour nos besoins :
Nous allons créer un simple bloc qui recopie son entrée (en float) sur sa sortie. Donc le filtre caractérisé par y(n) = x(n) ou encore H(z)=1. Il s'agit donc d'une sorte de filtre passe-tout.
Suivez bien toutes les étapes, sans aller trop rapidement
Création d'un module externe
Dans les lignes qui suivent, le $ indique que l'on saisi une commande dans un terminal. Le $ n'est pas à saisir.
- Ouvrez un terminal et placez-vous à la racine de votre dossier personnel :
$ cd $HOME- Créez un dossier de travail dédié à gnuradio et déplacez-vous à l'intérieur :
$ mkdir gnuradio
$ cd gnuradio- GNU Radio est livré avec gr_modtool, un utilitaire qui permet de créer des modules externes (OOT). Créons un module
monModule
$ gr_modtool newmod monModule- Le dossier
monModuleest créé et contient tout le code squelette d'un module OOT, mais il n'a pas encore de blocs. Déplacez-vous dansmonModule:
$ cd monModule- Vous pouvez afficher le contenu de ce dossier par
$ lsCréation d'un bloc dans ce module
Ajoutez un nouveau bloc nommé passetout :
$ gr_modtool add passetout