Étape 3: Configurer le Script Python
Dans cette étape, nous allons définir le script python dont le travail consiste à :
- Interface avec l’Arduino
- Analyser les valeurs brutes d’accélération
- Synthèse des notes basées sur les données
Préface
Ici je vais être expliquant étape par étape comment le script Python a été écrit, mais si vous voulez juste le code final pour voir si votre système fonctionne, vous pouvez l’obtenir ici : https://github.com/aehernandez/Accordion-Master/bl...
Cette partie de l’instructable doit être faite sur votre ordinateur de bureau sur toutes les distributions Linux. Vous devriez avoir python 2.7 opérationnel. Toutes les autres dépendances, je couvrirai plus bas. Si vous êtes tellement enclin il est aussi également possible d’exécuter ce programme sur une facture pro forma de framboise (en fait le code Arduino pourrait tous être transféré à la Pi, ce qui serait un bon futur mini-projet: D). Je ne couvre que dans ce tutoriel, mais si vous explorer cette avenue n’hésitez pas à me contacter pour une assistance.
Dans n’importe quel répertoire, créez un fichier (avec n’importe quel nom). Par exemple, j’ai utilisé dans mon répertoire personnel : accordian_comm.py
Interfaçage avec l’Arduino
Deux dépendances sont requises pour l’interface avec Python sur arduino : sys et série.
Dans le code ci-dessus, nous cherchons le système actuel pour tous les ports ouverts sur le débit en bauds 9600. Une hypothèse fatale, c’est que le premier ouvert est en effet la carte Arduino. Alors que ce n’est pas la bonne façon de faire les choses, pour la plupart des montages ce sera correct. « / dev/ttyUSB * » est où les périphériques USB sont mappées dans le système d’exploitation Linux.
Ce qui est important ici, c’est la variable "ser" qui est un objet de port série à notre Arduino. En regardant la documentation pySerial , nous voyons que cela nous donne accès à des fonctions telles que lire, écrire et isAvailable. Ce sont les méthodes que nous allons utiliser pour s’interfacer avec l’arduino pour effectuer une communication série.
L’analyse des données de l’Arduino
Un débat sur l’analyse des données en Python à venir. Veuillez consulter le code github pour l’instant !
Merci pour la lecture !