Comment programmer et contrôler un Arduino avec Python

  • Brian Curtis
  • 0
  • 3249
  • 705
Publicité

Python a pris d'assaut le monde du codage. Parallèlement à l'émergence de ce nouveau langage, la scène de l'électronique de bricolage s'est également épanouie. Cartes de développement et ordinateurs monocarte d'entreprises telles qu'Arduino Qu'est-ce qu'Arduino et que pouvez-vous en faire? Qu'est-ce qu'Arduino et que pouvez-vous en faire? L'Arduino est un petit appareil électronique remarquable, mais si vous n'en avez jamais utilisé, que sont-ils exactement et que pouvez-vous en faire? et Raspberry Pi Raspberry Pi: Le didacticiel non officiel Raspberry Pi: Le didacticiel non officiel Que vous soyez un propriétaire de Pi actuel qui souhaite en savoir plus ou un propriétaire potentiel de cet appareil de la taille d'une carte de crédit, ce guide ne doit pas être manqué . ont changé la façon dont les gens créent des produits électroniques fabriqués à la maison. Ne serait-il pas génial de pouvoir programmer un Arduino avec Python?

Il n'y a pas de meilleur sentiment que de combiner deux choses cool. Malheureusement, il est impossible de programmer directement un Arduino avec Python, car les cartes n'ont pas la possibilité d'interpréter le langage à bord. Cependant, ce qui est possible, c’est un contrôle direct sur USB avec un programme Python..

Cet article vous montrera comment configurer un Arduino UNO (bien que toute carte compatible Arduino. Guide d'achat Arduino: Quelle carte devriez-vous vous procurer? Guide d'achat Arduino: Quelle carte devriez-vous vous procurer? Il existe de nombreux types de cartes Arduino différentes, Ce qui devrait être acheté pour votre projet? Laissez-nous vous aider, avec ce guide d’achat Arduino! peut fonctionner ici) pour être programmé et contrôlé à partir de la ligne de commande à l’aide de programmes Python. Ce tutoriel est écrit pour Windows 10, mais fonctionne également pour Mac et Linux. Vous pouvez même utiliser ce flux de travail pour contrôler un Arduino directement à partir d'un Guide de domotique Raspberry Pi avec Raspberry Pi et d'un Guide de domotique Arduino avec Raspberry Pi et Arduino Le marché de la domotique est inondé de systèmes grand public coûteux, incompatibles et coûteux à installer. . Si vous avez un Raspberry Pi et un Arduino, vous pouvez pratiquement obtenir la même chose à… pour une expérience ultime de double bricolage.

Configurer votre Arduino pour Python

Pour le projet d'aujourd'hui, nous utiliserons un Arduino Uno, ainsi que l'interface pyFirmata pour Python. Vous pouvez utiliser presque toutes les cartes compatibles Arduino à cette fin, même si pour le moment, seuls les Arduino Uno, Mega, Due et Nano sont pris en charge par l’interface pyFfirmata. Si vous êtes déjà un gourou de Python, vous pouvez ajouter votre propre support de conseil à pyFirmata. Assurez-vous de mettre à jour leur GitHub si vous le faites.!

Si vous ne l'avez pas déjà fait, installez l'IDE Arduino. Si vous êtes complètement nouveau dans le monde des microcontrôleurs, notre guide du débutant sur Arduino Démarrer avec Arduino: Guide du débutant Démarrer avec Arduino: Guide du débutant Arduino est une plate-forme de prototypage électronique à code source ouvert reposant sur un matériel flexible et facile à utiliser. et logiciel. Il est destiné aux artistes, concepteurs, amateurs et à toute personne intéressée par la création d'objets ou d'environnements interactifs. vous aidera à tout mettre en place.

Connectez votre carte Arduino et ouvrez l'EDI. Assurez-vous d’avoir sélectionné le bon conseil et le bon port dans le Outils menu. Chargez le StandardFirmata exemple croquis et le télécharger sur le tableau. Cela vous permettra de contrôler directement l’Arduino tant qu’il sera connecté à l’ordinateur via USB. Si le croquis est chargé sur votre tableau sans erreur, vous êtes prêt à passer à autre chose..

Python et contrôle de ligne de commande

Nous utiliserons Python 3.4 pour contrôler notre Arduino, car le module que vous allez installer spécifie ceci comme étant la dernière version compatible. Toute version antérieure à cette version devrait fonctionner correctement, et les versions ultérieures devraient fonctionner. Vous pouvez télécharger Python 3.4 pour Windows 10 à partir du site Python Software Foundation. Si vous souhaitez exécuter plusieurs versions de Python, consultez notre guide sur les environnements virtuels Python. Découvrez comment utiliser l'environnement virtuel Python. Découvrez comment utiliser l'environnement virtuel Python. Que vous soyez un développeur expérimenté Python ou que vous débutiez L'installation d'un environnement virtuel est essentielle pour tout projet Python. pourra t'aider.

Une fois que vous avez installé Python, nous voulons l’ajouter à la variable PATH de votre système. Cela nous permettra d’exécuter le code Python directement à partir de la ligne de commande sans avoir besoin d’être dans le répertoire où il a été installé. Vous pouvez le faire en ouvrant le Panneau de contrôle, à la recherche de Environnement et cliquez sur Modifier les variables d'environnement du système. Au bas de la fenêtre, sélectionnez Variables d'environnement. Cela fera apparaître cette fenêtre:

Si vous voyez déjà CHEMIN dans la liste, cliquez sur Modifier et ajoutez votre Python et Python / Scripts annuaire. Si vous n'avez pas de variable PATH, cliquez sur Nouveau et ajoutez-la. Notez que Python a été installé directement dans le C: \ ici. Si vous l'avez installé ailleurs, vous devrez le modifier pour refléter cela. Cliquez sur OK pour redescendre la chaîne de fenêtres et vous êtes presque prêt à contrôler votre Arduino avec Python.!

La graisse magique

Vous aurez besoin d’une dernière pièce du puzzle pour que Python parle bien avec notre Arduino. Cela se présente sous la forme d’une interface Python appelée pyFirmata. Cette interface, créée par Tino de Bruijn est disponible au téléchargement sur github, bien que vous puissiez l’installer directement à partir de la ligne de commande en tapant:

pip installer pyfirmata

Tout va bien, il devrait installer et ressembler à ceci:

Si cela échoue, ajoutez Python à la Variable d'environnement section et assurez-vous que vous avez donné le bon chemin à votre répertoire Python.

Fait en sorte que ça arrive

Maintenant tout est configuré et vous pouvez créer un programme Python pour que votre Arduino le teste. Ouvrez un IDE de votre choix. Nous allons utiliser Eclipse 8 Raccourcis clavier Eclipse essentiels pour les débutants 8 Raccourcis clavier Eclipse essentiels pour les débutants Aussi facile à utiliser que l'IDE (interface) Eclipse, vous devez apprendre ces raccourcis clavier. aujourd'hui, mais vous pouvez tout aussi facilement utiliser n'importe quel éditeur de texte Éditeurs de texte et IDE: lequel est le meilleur pour les programmeurs? Éditeurs de texte et IDE: lequel est le meilleur pour les programmeurs? Il peut être difficile de choisir entre un IDE avancé et un éditeur de texte plus simple. Nous vous proposons un aperçu pour vous aider à prendre cette décision. , ou même un IDE dans le nuage IDE Codenvy: Un IDE en ligne pour Ruby, HTML, Java, Python, etc. Un environnement de développement intégré (IDE): Un IDE en ligne pour Ruby, HTML, Java, Python, etc. .

Créez un nouveau script et enregistrez-le sous. blink.py. Brisant la tradition avec le programme standard de voyants clignotants, vous allez créer un programme qui invite l'utilisateur à indiquer le nombre de fois où il souhaite que le voyant clignote avant de l'exécuter. C'est un programme court que vous pouvez télécharger ici si vous voulez y aller directement, mais décomposons-le.

Tout d’abord, vous voudrez importer ce dont vous avez besoin à partir du pyFirmata module, avec le standard Python Temps module.

à partir de pyfirmata import Arduino, heure d'importation util

Maintenant, vous aurez envie de configurer la carte Arduino. Cet article suppose que vous utilisez un Arduino Uno carte, bien que plusieurs autres cartes Arduino soient supportées. Reportez-vous à github pyFirmata pour plus de détails sur le support à bord.

Vérifiez quel port COM vous utilisez dans l'IDE Arduino et entrez-le dans votre code en tant que variable planche.

board = Arduino ("COM3")

Vous allez maintenant configurer l'invite de l'utilisateur. Ceux qui connaissent Python reconnaîtront tout ici. Vous imprimez une question à l'écran à l'aide de la touche contribution fonction et stocke la réponse sous forme de variable. Une fois que l'utilisateur a fourni un numéro, le programme indique combien de fois le voyant clignote.

loopTimes = input ('Combien de fois voulez-vous que la LED clignote:') print ("Clignotant" + loopTimes + "fois.")

Pour faire clignoter le voyant le nombre de fois voulu, vous utilisez un pour la boucle. Si vous débutez dans Python 10 Exemples Python de base qui vous aideront à apprendre rapidement 10 Exemples Python de base qui vous aideront à apprendre rapidement Cet article d'exemples de base de Python est destiné à ceux qui ont déjà une expérience de la programmation et souhaitent simplement passer rapidement à Python. comme possible. , veillez à l’indentation, car contrairement à d’autres langues, les espaces font partie de la syntaxe. Notez que la broche 13 est la LED intégrée de l’Arduino Uno, vous devrez le modifier si votre carte est différente..

pour x dans la plage (int (loopTimes)): board.digital [13] .write (1) time.sleep (0.2) board.digital [13] .write (0) time.sleep (0.2)

Vous allez jeter le loopTimes variable à un entier ici, car l'entrée de l'utilisateur sera automatiquement stockée sous forme de chaîne. Dans cette simple démonstration, nous supposons que l’utilisateur saisira une valeur numérique. Toute autre entrée telle que "huit" générera une erreur.

Enregistrez votre script et ouvrez le Invite de commande.

Lumières clignotantes et autres révélations

Tout est prêt, tout ce que vous avez à faire est de naviguer à l'endroit où se trouve le script et de l'exécuter. Faites cela en tapant cd [chemin d'accès au répertoire du script] puis en tapant python blink.py.

Tout va bien, votre programme démarrera avec un léger retard lors de l'initialisation de l'Arduino, vous demandera un numéro, puis clignotera plusieurs fois à l'aide du voyant intégré..

La sortie du programme devrait ressembler à ceci:

Dès que vous appuyez sur enter après le nombre de clignotements choisi, l’Arduino doit exécuter vos commandes..

Petits débuts

Ce projet a été un début de communication nue entre Python et une carte Arduino. Cette approche est très différente du flux de travail habituel du téléchargement de scripts sur l’Arduino lui-même, mais elle ouvre une toute nouvelle façon de travailler avec la plate-forme, en particulier si vous aimez le langage de programmation Python..

Si vous utilisez un serveur Linux 12 meilleurs systèmes d'exploitation serveur Linux et qui doit les utiliser 12 meilleurs systèmes d'exploitation serveur Linux et qui doit les utiliser Création d'un serveur? Linux est idéal, offrant généralement des autorisations améliorées, une flexibilité accrue et une stabilité accrue. Mais lequel choisir? Découvrez les 12 meilleurs systèmes d'exploitation serveur Linux et qui devrait les utiliser. à la maison, cette méthode de communication avec les cartes Arduino pourrait étendre ce serveur à un système complet de bricolage. En combinant des scripts Python contrôlant le microcontrôleur avec un circuit d’automatisation bricolage Idées de projets Arduino pour une maison automatisée Idées de projets pour Arduino d’une maison automatisée Ne serait-il pas merveilleux d’arroser votre serre sans quitter votre fauteuil? Un Arduino peut être utilisé comme composant clé de certains projets de domotique - en voici cinq! , Votre boîtier de stockage NAS pourrait prendre un nouvel ensemble de fonctions utiles.

Pour en faire l'expérience de bricolage ultime, pourquoi ne pas créer votre propre boîtier NAS Besoin d'un stockage en réseau? Voici comment construire votre propre NAS Box Besoin de stockage réseau? Voici comment construire votre propre NAS Box NAS est synonyme de stockage en réseau. Lorsque Windows est devenu plus facile à utiliser avec les périphériques connectés au réseau et que les prix du matériel ont chuté, ce terme a commencé à être utilisé sur le marché grand public. Aujourd'hui, il existe une grande variété… et l'utiliser pour contrôler également vos appareils? Imaginez à quel point il serait cool d’appuyer sur Plex Votre guide de Plex - Le centre multimédia impressionnant Votre guide pour Plex - Le centre multimédia impressionnant Si vous avez beaucoup de films et d’émissions télévisées enregistrés localement, vous devez installer Plex. Et c’est le seul guide pour commencer à utiliser Plex que vous aurez besoin de lire. serveur et que les lumières s'éteignent automatiquement!

Êtes-vous déjà en train de contrôler Arduino en utilisant Python? Existe-t-il des solutions de contournement étonnantes que nous ne connaissons pas encore? Faites-nous savoir dans la section commentaire ci-dessous!




Personne n'a encore commenté ce post.