Anaconda (Python) per il tuo Arduino

Logo Anaconda

Anaconda è una distribuzione gratuita e aperta del linguaggio di programmazione Python (e R). Ricorda, una delle lingue più utilizzate oggi e che ti consente di creare script, poiché è una lingua interpretata. Pertanto, dipende dall'interprete Python in modo che la macchina possa comprenderlo ed elaborarlo. Al contrario, i linguaggi compilati vengono tradotti in un file binario che può essere compreso direttamente dalla macchina senza un intermediario.

Bene, Anaconda È ampiamente utilizzato nel campo dell'istruzione e dell'apprendimento automatico. Ma anche cosa puoi usare per controllare la scheda Arduino. Sì, esatto, potresti utilizzare il linguaggio di programmazione Python per creare i tuoi programmi per controllare Arduino senza alcun problema e in modo semplice. Qui spiegheremo come farlo passo dopo passo ...

Cos'è Anaconda

Bene, sai già cos'è una distribuzione Python, e quindi condivide le caratteristiche con il Python ufficiale. Ma offre alcuni vantaggi rispetto a Python, oltre ad essere multipiattaforma e open source, come ad esempio:

  • Ti permette installa e gestisci pacchetti, dipendenze e ambienti per la scienza dei dati in modo semplice.
  • Permette di utilizzare diversi ambienti di programmazione o IDE, inclusi tra loro puoi usarlo con Arduino, Raspberry Pi, ecc.
  • Ha strumenti come numpy, Numba, Dask, Bokeh, Datashader, Holoviews, Matplotlib, ecc., per analizzare e visualizzare i dati.
  • permette compilare python in codice macchina invece di essere interpretato per un'esecuzione più rapida. Cioè, diventerebbe un linguaggio compilato.
  • permette scrivere programmi più complessi, ad alte prestazioni e persino portatili tra le piattaforme per portare i tuoi progetti ovunque tu voglia.

Maggiori informazioni – Installa Anaconda

API da utilizzare con Arduino

Logo Arduino e Python

a per usare Python per controllare Arduino avrai bisogno di un'API. Una volta installato Anaconda sul tuo sistema operativo, puoi farlo installa l'API in modo molto semplice. È semplice come invocare anaconda dalla riga di comando, in quel momento il prompt della shell cambierà nel prompt di Anaconda, e all'interno puoi usare il seguente comando e conda si occuperà di tutto:

conda install -c auto arduino-python

Una volta installato arduino-python, già puoi iniziare a usarlo con i tuoi progetti Arduino. Ma prima, devi preparare l'ambiente per creare un nuovo ambiente virtuale per il tuo primo progetto Arduino. Per fare ciò, all'interno del prompt di Anaconda puoi utilizzare il seguente comando specificando un nome e la versione del linguaggio Python che intendi utilizzare. Per esempio:

conda create --name arduino python=3.7

Ora l'ambiente virtuale "arduino" è già creato per essere utilizzato con la versione 3.7 di Python. It il prossimo è attivarlo:

conda activate arduino

Una volta attiva, mantieni questa finestra di terminale, non chiuderla, poiché la utilizzerai in seguito. Come puoi vederlo il prompt è ora (arduino)> così puoi iniziare. Sarebbe conveniente che installaste ora alcuni pacchetti di cui avrete bisogno, come PySerial per la comunicazione con la scheda Arduino. Per fare ciò, usa semplicemente dallo stesso prompt:

conda install pyserial

Va bene adesso scarica e installa Arduino IDE Se non lo avevi già, se l'hai fatto, puoi passare al passaggio successivo, che è scrivere il codice in Python per controllare il tuo progetto Arduino. Puoi scrivere un semplice programma o utilizzare gli esempi forniti con l'IDE di Arduino per eseguire il test.

da ejemplo, vai su Arduino IDE> File> Esempi> Comunicazione> PhysicalPixel e caricalo sulla tua scheda Arduino collegata al tuo PC. Una volta che lo schizzo funziona, puoi usare Python come faresti sulla scheda Raspberry Pi con i GPIO per modificare il risultato. Ad esempio in questo caso per accendere o spegnere il led a piacimento con un semplice codice Python.

Per questo, puoi torna alla finestra del tuo terminale e nel prompt di Anaconda Fai il prossimo:

> 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) >

Quello farà la funzione ser.write può spegnere (L) o accendere il LED (H) a piacimento. Quindi ser.close () termina e exit () esce. Quindi puoi controllare i tuoi progetti Arduino con Python. Ovviamente questo è solo un esempio, ma puoi immaginare molti altri casi ...

È anche possibile creare file .py con script Python per poterli eseguire in qualsiasi momento senza doverlo fare direttamente dal prompt di anaconda. Ad esempio quest'altro:

# 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()

Semplice verità? Inoltre, se conoscevi già il linguaggio Python, tutto questo ti sarà molto più facile. Dovrai solo eseguire il tuo .py e interagire con le opzioni interattive di questo programma per inserire i comandi per accendere, spegnere o uscire dal programma in questo caso.


Puoi essere il primo a lasciare un commento

Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.