Anaconda (Python) pour votre Arduino

Logo Anaconda

Anaconda est une distribution gratuite et ouverte du langage de programmation Python (et R). Rappelez-vous, l'un des langages les plus utilisés aujourd'hui et qui vous permet de créer des scripts, puisqu'il s'agit d'un langage interprété. Par conséquent, cela dépend de l'interpréteur Python pour que la machine puisse le comprendre et le traiter. En revanche, les langages compilés sont traduits en un binaire qui peut être directement compris par la machine sans intermédiaire.

Eh bien, Anaconda Il est largement utilisé dans le domaine de l'éducation et de l'apprentissage automatique. Mais aussi quoi vous pouvez utiliser pour contrôler la carte Arduino. Oui, exactement, vous pourriez utiliser le langage de programmation Python pour créer vos programmes pour contrôler Arduino sans aucun problème et de manière simple. Ici, nous allons vous expliquer comment le faire étape par étape ...

Qu'est-ce que Anaconda

Eh bien, vous savez déjà ce qu'est une distribution python, et partage donc des caractéristiques avec le Python officiel. Mais il offre certains avantages par rapport à Python, en plus d'être multiplateforme et open source, tels que:

  • Ça vous permet installer et gérer les packages, les dépendances et les environnements pour la science des données d'une manière simple.
  • Il permet d'utiliser plusieurs environnements de programmation ou IDE, y compris parmi eux vous pouvez l'utiliser avec Arduino, Raspberry Pi, etc.
  • Il a outils tels que numpy, Numba, Dask, Bokeh, Datashader, Holoviews, Matplotlib, etc., pour analyser et visualiser les données.
  • Permet compiler python en code machine au lieu d'être interprété pour une exécution plus rapide. Autrement dit, il deviendrait un langage compilé.
  • Permet écrire des programmes plus complexes, plus performants et même portables entre plates-formes pour emmener vos projets où vous le souhaitez.

Plus d’informations – Installer Anaconda

API à utiliser avec Arduino

Logo Arduino et Python

Pour pour utiliser python pour contrôler Arduino, vous aurez besoin d'une API. Une fois Anaconda installé sur votre système d'exploitation, vous pouvez installer l'API d'une manière très simple. C'est aussi simple que d'appeler anaconda à partir de la ligne de commande, à ce moment-là, l'invite du shell se transforme en l'invite Anaconda, et à l'intérieur, vous pouvez utiliser la commande suivante et conda s'occupera de tout:

conda install -c auto arduino-python

Une fois arduino-python installé, déjà vous pouvez commencer à l'utiliser avec vos projets Arduino. Mais d'abord, vous devez préparer l'environnement pour créer un nouvel environnement virtuel pour votre premier projet Arduino. Pour ce faire, dans l'invite Anaconda, vous pouvez utiliser la commande suivante en spécifiant un nom et la version du langage Python que vous allez utiliser. Par exemple:

conda create --name arduino python=3.7

Désormais, l'environnement virtuel "arduino" est déjà créé pour être utilisé avec la version 3.7 de Python. Il ensuite est de l'activer:

conda activate arduino

Une fois active, gardez cette fenêtre de terminal, ne la fermez pas, car vous l'utiliserez plus tard. Comment peux-tu voir ça l'invite est maintenant (arduino)> pour que vous puissiez commencer. Il serait pratique que vous installiez maintenant certains packages dont vous aurez besoin, tels que PySerial pour la communication avec la carte Arduino. Pour ce faire, utilisez simplement à partir de cette même invite:

conda install pyserial

D'accord maintenant télécharger et installer Arduino IDE Si vous ne l'avez pas déjà, si vous l'avez fait, vous pouvez passer à l'étape suivante, qui consiste à écrire le code en Python pour contrôler votre projet Arduino. Vous pouvez écrire un programme simple ou utiliser les exemples fournis avec l'IDE Arduino pour tester.

Par exemple, allez dans Arduino IDE> Fichier> Exemples> Communication> PhysicalPixel et téléchargez-le sur votre carte Arduino connectée à votre PC. Une fois que l'esquisse fonctionne, vous pouvez utiliser Python comme vous le feriez sur la carte Raspberry Pi avec les GPIO pour modifier le résultat. Par exemple, dans ce cas, allumer ou éteindre la LED à volonté avec un simple code Python.

Pour cela, vous pouvez retournez à la fenêtre de votre terminal et à l'invite Anaconda Faites le suivant:

> conda activate arduino
(arduino) > python

Python 3.7.1 (default, Dec 10 2018, 22:54:23) [MSC v.1915 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.

>>> import serial
>>> ser = serial.Serial('COM4', 9800, timeout=1)
>>> ser.write(b'H')
>>> ser.write(b'L')
>>> ser.close()
>>> exit()
(arduino) >

Cela fera la fonction ser.write peut éteindre (L) ou allumer la LED (H) à volonté. Puis ser.close () se termine et exit () sort. Vous pouvez donc contrôler vos projets Arduino avec Python. Évidemment, ce n'est qu'un exemple, mais vous pouvez imaginer bien d'autres cas ...

Vous pouvez également créer des fichiers .py avec des scripts Python pour pouvoir les exécuter à tout moment sans avoir à le faire directement à partir de l'invite anaconda. Par exemple cet autre:

# Ejemplo titileo_LED.py

import serial
import time

# Define el puerto serie
# Debes comprobar desde el gestor de dispositivos de tu sistma operativo a qué puerto se corresponde el USB de la placa Arduino, en Windows sería COM4 en nuestro caso
ser = serial.Serial('COM4', 9600)

def led_on_off():
    user_input = input("\n Elige comando: encendido / apagado / quitar : ")
    if user_input =="encendido":
        print("LED está encendido...")
        time.sleep(0.1) 
        ser.write(b'H') 
        led_on_off()
    elif user_input =="apagado":
        print("LED está apagado...")
        time.sleep(0.1)
        ser.write(b'L')
        led_on_off()
    elif user_input =="quitar" or user_input == "q":
        print("Salir del programa")
        time.sleep(0.1)
        ser.write(b'L')
        ser.close()
    else:
        print("Comando no válido")
        led_on_off()

time.sleep(2) # Espera a que el puerto serie inicialice 

led_on_off()

Simple vérité? De plus, si vous connaissiez déjà le langage Python, tout cela sera beaucoup plus facile pour vous. Vous n'aurez qu'à exécuter votre .py et à interagir avec les options interactives de ce programme pour entrer des commandes pour activer, désactiver ou quitter le programme dans ce cas.


Soyez le premier à commenter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.