- Exigences
- Installation de PyFirmata dans Arduino à l'aide de Raspberry Pi
- Explication du code
- Fading LED sur Arduino en utilisant pyFirmata
Bien que Raspberry Pi et Arduino soient deux matériels différents en termes de leurs applications et de leur structure, ils sont tous deux considérés comme deux plates-formes matérielles open source concurrentes. Ils ont tous deux une communauté et un soutien très solides. Aujourd'hui, nous allons légèrement changer les choses et vous montrer comment nous pouvons tirer parti des deux. Si vous avez à la fois des cartes Arduino et Raspberry pi, cet article vous montrera comment utiliser Raspberry pi et Python pour contrôler l'Arduino.
Nous utiliserons le micrologiciel PyFirmata pour donner des commandes à Arduino en utilisant le script python Raspberry Pi. PyFirmata est essentiellement un package de bibliothèque prédéfini de programme python qui peut être installé dans Arduino pour permettre la communication série entre un script python sur n'importe quel ordinateur et un Arduino. Ce package python peut donner accès à la lecture et à l'écriture de n'importe quelle broche sur l'Arduino. Nous allons donc exécuter ici le programme python sur Arduino en utilisant Raspberry pi.
Donc, dans ce tutoriel, nous profiterons de cette bibliothèque et l'utiliserons dans notre carte Arduino pour contrôler Arduino à l'aide de Raspberry Pi.
Exigences
- Raspberry Pi avec le système d'exploitation Raspbian installé
- Arduino Uno ou toute autre carte Arduino
- Câble USB Arduino
- LED
Dans ce tutoriel, j'utilise un moniteur externe à l'aide d'un câble HDMI pour me connecter à Raspberry Pi. Si vous n'avez pas de moniteur, vous pouvez utiliser le client SSH (Putty) ou le serveur VNC pour vous connecter à Raspberry pi à l'aide d'un ordinateur portable ou d'un ordinateur. Si vous rencontrez des difficultés, suivez notre guide Getting Stared with Raspberry Pi.
Installation de PyFirmata dans Arduino à l'aide de Raspberry Pi
Pour télécharger le firmware PyFirmata dans Arduino, nous devons installer Arduino IDE dans Raspberry Pi. Suivez ces étapes pour installer:
Étape 1: - Connectez le Raspberry Pi à Internet. Ouvrez le terminal de commande et tapez la commande suivante et appuyez sur Entrée
sudo apt - get - y installer arduino python - série mercurial
Attendez quelques minutes, cela prendra du temps. Cette commande installera l'IDE Arduino dans votre Raspberry Pi.
Étape 2: - Maintenant, nous allons installer les fichiers pyFirmata en utilisant le github donné:
git clone https://github.com/tino/pyFirmata
Exécutez ensuite la commande suivante:
cd pyFirmata sudo python setup.py installer
Étape 3: - Nous avons installé tous les fichiers et configurations nécessaires.
Maintenant, connectez votre carte Arduino avec Raspberry Pi à l'aide d'un câble USB et lancez Arduino IDE en tapant arduino dans la fenêtre du terminal.
Étape 4: - Tapez ensuite la commande lsusb pour vérifier si Arduino est connecté à votre raspberry pi.
Dans Arduino IDE, accédez aux outils et choisissez votre carte et votre port série.
Étape 5: - Téléchargez le firmware PyFirmata sur l'Arduino en cliquant sur Fichier -> Exemples -> Firmata -> Firmata standard, puis cliquez sur le bouton de téléchargement. Comme indiqué ci-dessous.
Nous avons installé avec succès le micrologiciel pyFirmata sur la carte Arduino. Maintenant, nous pouvons contrôler notre Arduino à l'aide de Raspberry Pi.
Pour démonstration, nous allons clignoter et atténuer une LED sur l'Arduino en écrivant des codes python dans Raspberry Pi.
Explication du code
Pour la partie codage, vous devriez lire la documentation de pyFirmata pour une meilleure compréhension. Nous utiliserons les fonctions pyFirmata pour écrire notre code. Vous pouvez trouver la documentation pyFirmata en suivant le lien.
Alors commençons à écrire le code
Ouvrez votre éditeur de texte préféré sur le Raspberry Pi et importez la bibliothèque pyFirmata.
importer des pyfirmata
Définir la broche sur l'Arduino pour connecter la LED
led_pin = 9
Maintenant, nous devons écrire le nom du port série sur lequel la carte Arduino est connectée à l'aide de la fonction pyfirmata.Arduino (), puis créer une instance en affectant le port dans la variable de la carte .
board = pyfirmata.Arduino ("/ dev / ttyACM0") print "Le code est en cours d'exécution"
En tout boucle, rendent conduit haute et basse en utilisant la broche board.digital.write () fonction et délai de donner à l' aide board.pass_time () fonction.
while True: board.digital.write (0) board.pass_time (1) board.digital.write (1) board.pass_time (1)
Notre code est prêt, enregistrez ce code en mettant l' extension .py au nom du fichier.
Ouvrez le terminal de commande et tapez python blink.py pour exécuter le code sur la carte Arduino. Assurez-vous que votre carte Arduino est connectée à votre carte Raspberry Pi à l'aide d'un câble USB.
Maintenant, vous pouvez voir la LED clignotante sur la carte Arduino.
Le code complet pour le clignotement de la LED à l'aide de pyFirmata est donné à la fin.
Fading LED sur Arduino en utilisant pyFirmata
Maintenant, nous allons écrire du code pour atténuer la LED afin de vous familiariser avec les fonctions pyFirmata. Ce code est simple comme le précédent. Vous devez utiliser deux boucles for , une pour augmenter la luminosité et l'autre pour diminuer la luminosité.
Dans ce code, nous avons défini les broches de manière différente comme led = board.get_pin ('d: 9: p') où d signifie broche numérique . C'est la fonction de la bibliothèque pyFirmata. Lisez la documentation pour plus de détails.
Le code complet pour la LED Fading utilisant pyFirmata est donné à la fin.
Maintenant, vous pouvez ajouter plus de capteurs à votre système et le rendre plus cool, consultez nos autres projets Arduino et essayez de les construire à l'aide de Raspberry pi et de script python.