Anaconda (Python) pre vaše Arduino

Logo Anaconda

Anaconda je bezplatná a otvorená distribúcia programovacieho jazyka Python (a R). Pamätajte, že jeden z najbežnejšie používaných jazykov súčasnosti, ktorý vám umožňuje vytvárať skripty, pretože sa jedná o interpretovaný jazyk. Preto záleží na interpretovi Pythonu, aby ho stroj pochopil a spracoval. Naproti tomu sa kompilované jazyky prekladajú do binárnych súborov, ktorým stroj dokáže priamo porozumieť bez sprostredkovania.

Tiež, anakonda Je široko používaný v oblasti vzdelávania a strojového učenia. Ale tiež čo pomocou ktorého môžete ovládať dosku Arduino. Áno, presne, môžete použiť programovací jazyk Python na to, aby ste svoje programy na ovládanie Arduina vytvorili bez problémov a jednoduchým spôsobom. Tu vysvetlíme, ako na to krok za krokom ...

Čo je Anaconda

No, už viete, čo je distribúcia pythonu, a preto zdieľa charakteristiky s oficiálnym Pythonom. Ale oproti Pythonu ponúka niektoré výhody, okrem toho, že je multiplatformový a otvorený zdroj, napríklad:

  • Umožňuje vám to inštalovať a spravovať balíky, závislosti a prostredia pre dátovú vedu jednoduchým spôsobom.
  • Umožňuje použitie rôznych programovacích prostredí alebo IDE, medzi nimi tiež môžete ho použiť s Arduino, Raspberry Pi atď.
  • Účet s nástroje ako napríklad NumPy, Numba, Dask, Bokeh, Datashader, Holoviews, Matplotlib atď., na analýzu a vizualizáciu údajov.
  • umožňuje skompilovať python do strojového kódu namiesto toho, aby boli interpretované pre rýchlejšie vykonanie. To znamená, že by sa z neho stal kompilovaný jazyk.
  • umožňuje píšete zložitejšie, výkonnejšie a dokonca prenosné programy medzi platformami, aby ste svoje projekty mohli vziať kamkoľvek chcete.

Viac informácií – Nainštalujte Anacondu

API na použitie s Arduinom

Logo Arduino a Python

na Ak chcete na ovládanie Arduina používať Python, budete potrebovať API. Akonáhle budete mať Anacondu nainštalovanú vo vašom operačnom systéme, môžete nainštalovať API veľmi jednoduchým spôsobom. Je to také jednoduché ako vyvolanie anakondy z príkazového riadku, v tom okamihu sa vaša výzva shellu zmení na výzvu Anaconda a vo vnútri môžete použiť nasledujúci príkaz a conda sa postará o všetko:

conda install -c auto arduino-python

Akonáhle je arduino-python nainštalovaný, už je môžete ho začať používať pri svojich projektoch Arduino. Najprv však musíte pripraviť prostredie na vytvorenie nového virtuálneho prostredia pre váš prvý projekt Arduino. Ak to chcete urobiť, vo výzve Anaconda môžete použiť nasledujúci príkaz určujúci názov a verziu jazyka Python, ktorý budete používať. Napríklad:

conda create --name arduino python=3.7

Teraz je už virtuálne prostredie „arduino“ vytvorené pre použitie s Pythonom verzie 3.7. To ďalej je to aktivovať:

conda activate arduino

Ak je toto terminálne okno aktívne, nezatvárajte ho, pretože ho budete neskôr používať. Ako to vidíš výzva je teraz (arduino)> aby ste mohli začať. Bolo by vhodné, aby ste si teraz nainštalovali niektoré balíčky, ktoré budete potrebovať, napríklad PySerial pre komunikáciu s doskou Arduino. Ak to chcete urobiť, jednoducho použite z tej istej výzvy:

conda install pyserial

Teraz v poriadku stiahnite a nainštalujte Arduino IDE Ak ste to ešte nemali, môžete to urobiť, môžete prejsť k ďalšiemu kroku, ktorým je napísanie kódu v jazyku Python na kontrolu vášho projektu Arduino. Môžete napísať jednoduchý program alebo použiť na testovanie príklady, ktoré sú súčasťou Arduino IDE.

Podľa ejemplo, choďte na Arduino IDE> Súbor> Príklady> Komunikácia> PhysicalPixel a nahrajte ju na svoju dosku Arduino pripojenú k počítaču. Keď náčrt bude funkčný, môžete na úpravu výsledku použiť Python, ako by ste to robili na doske Raspberry Pi s GPIO. Napríklad v takom prípade môžete ľubovoľne zapnúť alebo vypnúť LED pomocou jednoduchého kódu v jazyku Python.

Ak to chcete urobiť, môžete vráťte sa do okna terminálu a do výzvy Anaconda Ďalej:

> 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 bude robiť funkcia ser.write môže ľubovoľne vypnúť (L) alebo rozsvietiť LED (H). Potom ser.close () končí a exit () končí. Svoje projekty Arduino teda môžete ovládať pomocou Pythonu. Je zrejmé, že ide iba o príklad, ale môžete si predstaviť oveľa viac prípadov ...

môžete tiež vytvárať súbory .py pomocou skriptov Python byť schopný ich kedykoľvek vykonať bez toho, aby ste to museli urobiť priamo z anakondovej výzvy. Napríklad tento ďalší:

# 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? Ďalej, ak už ste vedeli jazyk Python, to všetko bude pre vás oveľa jednoduchšie. Na spustenie, vypnutie alebo ukončenie programu v tomto prípade budete musieť spustiť iba program .py a interaktívne využívať interaktívne možnosti tohto programu.


Buďte prvý komentár

Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.