Skip to content

SAR-DINE-procom/rf

Repository files navigation

ST200 SAR — Acquisition Continue & Contrôle Robot

Cette application permet l'acquisition continue de signaux FMCW (via une carte d'acquisition NI-DAQmx ST200) synchronisée avec le déplacement d'un robot pour générer des images SAR (Synthetic Aperture Radar).

L'interface graphique est développée avec PyQtGraph et permet de visualiser les signaux I/Q en temps réel ainsi que le profil de distance (FFT).

🛠️ Prérequis

  1. Python 3.8 ou supérieur installé sur votre machine.
  2. Drivers NI-DAQmx : Obligatoires pour interagir avec le matériel (ST200).
    • Note : Si les drivers ne sont pas installés ou si le matériel est débranché, l'interface se lancera tout de même en mode "hors-ligne" (les graphiques seront vides).
  3. Fichiers Wheels du Robot : Assurez-vous d'avoir les fichiers .whl fournis pour le contrôle du bras robotique dans le même dossier que ce README :
    • pyrob-0.1.0-py3-none-any.whl
    • ur_e-1.0.0-py3-none-any.whl
    • ure-0.1.0-py3-none-any.whl
    • ure-1.0.0-py3-none-any.whl

🚀 Installation

Il est fortement recommandé d'utiliser un environnement virtuel Python pour éviter les conflits de dépendances avec votre système.

1. Créer et activer un environnement virtuel

Ouvrez un terminal dans le dossier du projet et exécutez :

Sur Windows :

python -m venv venv
venv\Scripts\activate

Sur macOS / Linux :

python3 -m venv venv
source venv/bin/activate

(Une fois activé, votre terminal devrait afficher (venv) au début de la ligne).

2. Installer les dépendances publiques (PyPI)

Installez les bibliothèques standards requises pour l'interface graphique, le calcul et l'acquisition :

pip install numpy pyqtgraph PyQt6 nidaqmx

(Note : PyQt6 est utilisé ici comme moteur graphique pour pyqtgraph).

3. Installer les dépendances privées (Robot)

Installez ensuite les paquets de contrôle du robot fournis localement sous forme d'archives .whl. Toujours depuis le dossier contenant les fichiers : Sur Windows :

python -m venv venv
pip install pyrob-0.1.0-py3-none-any.whl ure-1.0.0-py3-none-any.whl

Sur macOS / Linux :

pip install ./Application/Dependencies/*.whl

🏃‍️ Exécution de l'application

Une fois toutes les dépendances installées et l'environnement virtuel activé, vous pouvez lancer l'interface graphique avec la commande suivante :

python SignalExplorerPlus-V2.py

📁 Structure des logs

À chaque exécution via le bouton robot, l'application génère un nom unique basé sur le nom du test renseigné, l'horodatage et un compteur.

Les données sont sauvegardées dans le dossier resultats/ créé automatiquement à la racine du projet, séparées dans deux sous-dossiers. Les fichiers .npz (données radar) et .csv (position du robot) partageront exactement le même nom de base pour faciliter le post-traitement.

📁 resultats/
 ┣ 📂 csv/
 ┃ ┗ 📜 Cible_Metallique_1_20260304_175200_000.csv   <-- Positions du robot (Ground Truth)
 ┗ 📂 npz/
   ┗ 📜 Cible_Metallique_1_20260304_175200_000.npz   <-- Matrices I/Q brutes et paramètres radar

About

Conception & intégration radar (RF

Resources

Stars

Watchers

Forks

Contributors

Languages