Partage

[Python][Arduino] Pytelemetry

Visualisation de données et communication avec Arduino et Mbed

9 mars 2016 à 23:17:12

Pytelemetry

Ce projet a pour but de faciliter énormément la visualisation et le contrôle à distance de cartes embarquées (Arduino, Mbed ).

Pytelemetry implémente un protocole de communication tolérant aux erreurs, pour permettre d'échanger plus facilement des données avec un ordinateur, que ce soit des chaines des caractères, des nombres, des tableaux, etc. 
Une interface en ligne de commande permet de communiquer avec le programme embarqué et de visualiser des paramètres dessus dans des graphes.

Motivations

Cet outil a été développé pour les raisons suivantes
  • Prototypage rapide et debug efficace. La mise en oeuvre de cette librarie prends quelques minutes, et permet immédiatement de debugger à distance un Arduino ou une carte ARM mbed. Avec cet outil, fini les printf.

  • Applications contrôlées à distance. Parce que réécrire un protocole de communication pour chaque nouveau projet, ce n'est pas drôle.

  • Mise à jour à distance de paramètres. Pour affiner efficacement et depuis le PC les réglages d'un programme embarqué

  • Affichage dans des graphes. L'outil supporte nativement l'ouverture de graphes pour afficher en temps réel l'évolution de variables sur le programme Arduino ou Mbed

  • Réutilisation. Le protocole est très flexible et n'impose pas d'architecture spécifique pour votre programme. Il peut être utilisé dans pleins d'applications différentes.

Vue d'ensemble

Ce projet est divisé en trois dépôts de code différents.
  • Pytelemetry : Implémentation en python du protocole de communication
  • Telemetry : Implémentation en C du protocole de communication
  • Pytelemetrycli: Une interface en ligne de commande, très performante et très simple d'utilisation. Elle permet notamment d'ouvrir un graphe à la volée pour afficher l'évolution d'une variable en temps-réel.
 Apercu d'un graphe ouvert depuis le terminal

Documentation

Les instructions d'installation ainsi que les tutoriaux sont centralisés sur le Wiki

-
Edité par OveRdrivR 9 mars 2016 à 23:19:51

Vous êtes demandeur·se d'emploi ?
Sans diplôme post-bac ?

Devenez Développeur·se web junior

Je postule
Formation
courte
Financée
à 100%
17 mars 2016 à 17:05:08

Nouvelle release des trois librairies, quelques améliorations pour la plupart mais surtout l'arrivée d'une nouvelle commande "stats" pour l'interface en ligne de commande qui permet d'avoir plein de mesures sur le nombre de caractères reçus, le nombre de trames décodées, le nombre de trames corrompues, etc. 

Il est possible (dans la version de développement, pas encore release) de visualiser en temps réel toutes ces valeurs dans des plots. Cette fonctionnalité unique permet depuis le PC de détecter d’éventuels problèmes dans le code embarqué et de rendre la communication encore plus facile a mettre en oeuvre ;)

La librairie est désormais utilisée par plusieurs équipes de la NXP cup pour régler leurs voitures et visualiser des paramètres en temps réel.

[Python][Arduino] Pytelemetry

× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
  • Editeur
  • Markdown