Projet

Général

Profil

Actions

PhyGRC

Ce wiki a pour objectif de rassembler la documentation réalisée pendant le stage de Florian Cotte. Son objectif est de créer une chaîne OFDM dans l'environnement GnuRadio (principalement par l'établissement de la couche Phy), et d'utiliser cette technique de modulation multiporteuse pour diagnostiquer les performances de la radio URSP N210, notamment en présence d'auto-interférences.

Installation du module phyGRC pour l'environnement Gnuradio

Configuration de GnuRadio

Par défaut, l'installation de nouveaux modules dans gnuradio se fait dans des répertoires nécessitant des droits administrateurs (/usr/local) ce qui peut poser des soucis à la fois pour le maintien de versions à jour et le déploiement de mises à jour des modules. L'objectif est de déporter la compilation du module dans un répertoire accessible en lecture écriture par l'utilisateur, et reconnu par GnuRadio. Le répertoire choisit sera /home/user/modulesGRC.
Le répertoire en question doit être reconnu comme un repertoire contenant des modules par Gnuradio. Il faut donc éditer le fichier ~/.gnuradio/config.conf et y ajouter

[grc]
local_blocks_path=/home/user/modulesGRC

Synoptique et descriptif des blocs

Problématiques Rencontrées

Absence de log4cpp

Ce problème survient lors de la compilation d'un module.
Son apparition provient de l'absence de la librairie adaptée. Il peut être résolu par les manipulations suivantes :
- Installation à partir du site : http://log4cpp.sourceforge.net/
- Récupération des sources directes. http://sourceforge.net/projects/log4cpp/files/log4cpp-1.1.x%20%28new%29/log4cpp-1.1/log4cpp-1.1.1.tar.gz/download
- Compilation par les commandes suivantes :
  • ./configure
  • make
  • make check
  • sudo make install

Compilation de Modules dans un répertoire local sans droits administrateur

Dans l'objectif de compiler des modules sans passer par /usr/, on peut définir un répertoire local de compilation. La compilation se fait alors de la manière suivante :
  • mkdir build
  • cd build
  • cmake ../
  • make
    Une fois la compilation terminée, il faut se rendre dans le répertoire build et éditer le fichier cmake_install.cmake. Il faut remplacer les premières lignes et changer le répertoire par défaut /usr/local, par le répertoire par le répertoire local voulu.
     IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
     SET(CMAKE_INSTALL_PREFIX "/usr/local")
    

    Ensuite procéder à l'installation sans avoir des besoin des droits administrateurs.
  • make install

Pour avoir les blocs dans GRC il faut créer ou éditer le fichier ~/.gnuradio/config.conf et y ajouter

[grc]
local_blocks_path=path-to-installed-module

Cannot import module

Cette problématique survient dans GRC une fois que les blocs sont importés, lors de l'exécution du flux de process en python. Le problème vient de l'absence de définition du path adéquat, permettant la bonne importation du module.
Il faut modifier le fichier .bashrc de manière à charger la configuration des modules.

# Setting Pythonpath 
export LD_LIBRARY_PATH=/home/riesco/modulesGRC/lib:$LD_LIBRARY_PATH
export PYTHONPATH=$PYTHONPATH:/home/riesco/modulesGRC/lib/python2.7/dist-packages

Mis à jour par Robin Gerzaguet il y a environ 10 ans · 2 révisions