Anaconda (Python) pro vaše Arduino

Logo Anaconda

Anaconda je bezplatná a otevřená distribuce programovacího jazyka Python (a R). Nezapomeňte, že jeden z nejpoužívanějších jazyků současnosti, který vám umožňuje vytvářet skripty, protože se jedná o interpretovaný jazyk. Proto záleží na interpretovi Pythonu, aby jej stroj mohl pochopit a zpracovat. Naproti tomu jsou kompilované jazyky přeloženy do binárních souborů, kterým lze stroji přímo porozumět bez prostředníka.

No, Anaconda Je široce používán v oblasti vzdělávání a strojového učení. Ale také co můžete použít k ovládání desky Arduino. Ano, přesně, programovací jazyk Python můžete použít k tomu, abyste mohli své programy ovládat Arduino bez jakýchkoli problémů a jednoduchým způsobem. Zde vysvětlíme, jak na to krok za krokem ...

Co je Anaconda

No, už víte, co je distribuce pythonu, a proto sdílí vlastnosti s oficiálním Pythonem. Ale oproti Pythonu nabízí některé výhody, kromě toho, že je multiplatformní a open source, například:

  • Umožňuje vám to instalovat a spravovat balíčky, závislosti a prostředí pro datovou vědu jednoduchým způsobem.
  • Umožňuje použít několik programovacích prostředí nebo IDE, včetně mezi nimi můžete jej použít s Arduino, Raspberry Pi atd.
  • Účet s nářadí jako je NumPy, Numba, Dask, Bokeh, Datashader, Holoviews, Matplotlib atd., pro analýzu a vizualizaci dat.
  • Umožňuje zkompilovat python do strojového kódu místo toho, aby byly interpretovány pro rychlejší provedení. To znamená, že by se stal kompilovaným jazykem.
  • Umožňuje psát složitější, vysoce výkonné a dokonce i přenosné programy mezi platformami, abyste své projekty mohli vzít kamkoli chcete.

Více informací - Nainstalujte Anaconda

API pro použití s ​​Arduino

Logo Arduino a Python

na Abyste mohli ovládat Arduino pomocí Pythonu, budete potřebovat API. Jakmile budete mít ve svém operačním systému nainstalovanou Anacondu, můžete nainstalujte API velmi jednoduchým způsobem. Je to stejně jednoduché jako vyvolat anakondu z příkazového řádku, v tu chvíli se váš shell příkazový řádek změní na prompt Anaconda a uvnitř můžete použít následující příkaz a conda se o vše postará:

conda install -c auto arduino-python

Jakmile je arduino-python nainstalován, již je můžete jej začít používat u svých projektů Arduino. Nejprve je ale nutné připravit prostředí na vytvoření nového virtuálního prostředí pro váš první projekt Arduino. Chcete-li to provést, můžete ve výzvě Anaconda použít následující příkaz určující název a verzi jazyka Python, který budete používat. Například:

conda create --name arduino python=3.7

Nyní je virtuální prostředí „arduino“ již vytvořeno pro použití s ​​Pythonem verze 3.7. To další je aktivovat:

conda activate arduino

Po aktivaci ponechejte toto okno terminálu, nezavírejte jej, protože jej později použijete. Jak to vidíš výzva je nyní (arduino)> takže můžete začít. Bylo by vhodné, abyste si nyní nainstalovali některé balíčky, které budete potřebovat, například PySerial pro komunikaci s deskou Arduino. Chcete-li to provést, jednoduše použijte ze stejné výzvy:

conda install pyserial

Dobře stáhněte a nainstalujte Arduino IDE Pokud jste to ještě neměli, pokud ano, můžete přejít k dalšímu kroku, kterým je napsání kódu v Pythonu pro ovládání vašeho projektu Arduino. Můžete napsat jednoduchý program nebo použít k testování příklady, které jsou součástí Arduino IDE.

Por ejemplo, přejděte na Arduino IDE> Soubor> Příklady> Komunikace> PhysicalPixel a nahrajte jej na desku Arduino připojenou k počítači. Jakmile náčrt funguje, můžete použít Python stejně jako na desce Raspberry Pi s GPIO a změnit výsledek. Například v tomto případě můžete libovolně zapnout nebo vypnout LED pomocí jednoduchého kódu v Pythonu.

Chcete-li to udělat, můžete vraťte se do okna terminálu a do výzvy Anaconda Proveďte následující:

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

To udělá funkce ser.write může libovolně vypnout (L) nebo rozsvítit LED (H). Pak ser.close () končí a exit () končí. Takže můžete ovládat své projekty Arduino pomocí Pythonu. Je zřejmé, že jde pouze o příklad, ale můžete si představit mnohem více případů ...

Můžete také vytvářejte soubory .py pomocí skriptů Pythonu být schopen je kdykoli provést, aniž byste to museli dělat přímo z výzvy anakondy. Například tento jiný:

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

Jednoduchá pravda? Kromě toho, pokud už jste znali jazyk Python, to vše pro vás bude mnohem jednodušší. Budete muset pouze spustit svůj .py a pracovat s interaktivními možnostmi tohoto programu, abyste mohli v tomto případě zadávat příkazy pro zapnutí, vypnutí nebo ukončení programu.


Obsah článku se řídí našimi zásadami redakční etika. Chcete-li nahlásit chybu, klikněte zde.

Buďte první komentář

Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.