Mots-clefs : Carte d’interfaçage / Interface graphique / Python
- Partie matérielle : mise en place d’une acquisition par une carte Nucléo
- Partie interfaçage : protocole de communication à établir entre le PC et la carte Nucléo
- Partie IHM : développement d’une interface de pilotage et d’affichage des données (Python PyQT)
Objectifs
Dans le milieu industriel et en laboratoire, l’automatisation des bancs de mesures est essentielle afin de permettre la répétabilité des expériences et gagner en efficacité. Dans la grande majorité des cas, le matériel utilisé en laboratoire est pilotable par l’intermédiaire d’un ordinateur et de liaison type USB ou GPIB. De plus en plus de fabricants de cartes d’acquisition fournissent des librairies d’interfaçage et de pilotage pour Python.
Une première étape à cette automatisation est l’utilisation ou la réalisation d’une carte d’acquisition pilotable par un ordinateur, qu’il faut associer à un logiciel. Dans ce projet, l’idée est de réaliser une interface de ce type propre à l’Institut d’Optique, incluant une carte Nucléo (et quelques blocs de protection) pour la partie matérielle et une interface en PyQT (sous Python) pour le pilotage.
Matériels
- Carte Nucléo + mise en forme des signaux d’entrée (limiteur ou gain programmable…)
- Ordinateur équipé de Python et PyQT (ou PySide)
- utilisation de la librairie pyserial pour la communication série
- utilisation des librairies PyVisa et Pymeasure (pour faire des essais de pilotage des GBF Agilent33220A)
Premières étapes
- Partie matérielle
- Réaliser un programme embarquée sur carte Nucléo capable de faire l’acquisition de N points à intervalle régulier, dont la fréquence d’échantillonnage peut-être modifié
- Mesurer les performances maximales de votre application
- Réaliser un programme embarquée sur carte Nucléo capable de faire l’acquisition de N points à intervalle régulier, dont la fréquence d’échantillonnage peut-être modifié
- Partie interfaçage
- Mettre en place un protocole de communication via une liaison série (RS232) pour piloter l’acquisition de données
- Les éléments suivants devront pouvoir être paramétrables : fréquence d’échantillonnage, nombre de points à acquérir, gain (à voir)
- Tester le pilotage par l’intermédiaire d’une console série (type teraterm)
- Mettre en place un protocole de communication via une liaison série (RS232) pour piloter l’acquisition de données
- Partie IHM
- Créer des fonctions d’envoi et de récupération de données selon le protocole établi dans la partie précédente
- Créer une bibliothèque d’accès aux différents paramétrages de la carte d’acquisition (réutilisable dans d’autres projets)
- Créer une interface graphique (PyQT) permettant de paramétrer les différents éléments et d’afficher les points acquis