Anaconda (Python) dla Twojego Arduino

Logo Anaconda

Anaconda to darmowa i otwarta dystrybucja języka programowania Python (i R). Pamiętaj, jeden z najczęściej używanych języków dzisiaj, który pozwala na tworzenie skryptów, ponieważ jest to język interpretowany. Dlatego zależy to od interpretera Pythona, aby maszyna mogła go zrozumieć i przetworzyć. W przeciwieństwie do tego, języki kompilowane są tłumaczone na plik binarny, który może być bezpośrednio zrozumiany przez maszynę bez pośrednika.

Cóż, anakonda Jest szeroko stosowany w edukacji i uczeniu maszynowym. Ale też co Możesz użyć do sterowania płytą Arduino. Tak, dokładnie, możesz używać języka programowania Python do tworzenia programów do sterowania Arduino bez żadnego problemu iw prosty sposób. Tutaj wyjaśnimy, jak to zrobić krok po kroku ...

Co to jest Anaconda

Cóż, wiesz już, czym jest dystrybucja Pythonai dlatego ma takie same cechy jak oficjalny Python. Ale oferuje pewne zalety w porównaniu z Pythonem, oprócz tego, że jest wieloplatformowy i open source, na przykład:

  • Pozwala instaluj i zarządzaj pakietami, zależnościami i środowiskami do nauki o danych w prosty sposób.
  • Umożliwia korzystanie z różnych środowisk programistycznych lub IDE, w tym również możesz go używać z Arduino, Raspberry Pi itp.
  • Konto z narzędzia takie jak numpy, Numba, Dask, Bokeh, Datashader, Holoviews, Matplotlib itp., aby analizować i wizualizować dane.
  • Pozwala skompilować Pythona do kodu maszynowego zamiast być interpretowane w celu szybszego wykonania. Oznacza to, że stałby się językiem kompilowanym.
  • Pozwala pisać bardziej złożone, wydajne, a nawet przenośne programy między platformami, aby zabrać swoje projekty, gdziekolwiek chcesz.

Więcej informacji – Zainstaluj Anacondę

API do użytku z Arduino

Logo Arduino i Python

do aby używać Pythona do sterowania Arduino, będziesz potrzebować API. Po zainstalowaniu Anacondy w systemie operacyjnym możesz zainstaluj interfejs API w bardzo prosty sposób. Jest to tak proste, jak wywołanie anacondy z wiersza poleceń, w tym momencie znak zachęty powłoki zmieni się na znak zachęty Anaconda, a wewnątrz możesz użyć następującego polecenia, a conda zajmie się wszystkim:

conda install -c auto arduino-python

Po zainstalowaniu arduino-python już możesz zacząć używać go w projektach Arduino. Ale najpierw musisz przygotować środowisko do stworzenia nowego środowiska wirtualnego dla swojego pierwszego projektu Arduino. Aby to zrobić, w wierszu polecenia programu Anaconda możesz użyć następującego polecenia, określając nazwę i wersję języka Python, którego będziesz używać. Na przykład:

conda create --name arduino python=3.7

Teraz środowisko wirtualne „arduino” zostało już utworzone do użytku z wersją Python 3.7. To następnie należy go aktywować:

conda activate arduino

Po aktywowaniu zachowaj to okno terminala, nie zamykaj go, ponieważ będziesz go używać później. Jak możesz to zobaczyć znak zachęty to teraz (arduino)> więc możesz zacząć. Byłoby wygodnie, gdybyś zainstalował teraz kilka pakietów, których będziesz potrzebować, takich jak PySerial do komunikacji z płytą Arduino. Aby to zrobić, po prostu użyj z tego samego monitu:

conda install pyserial

Już w porządku pobierz i zainstaluj Arduino IDE Jeśli jeszcze go nie miałeś, jeśli tak, możesz przejść do następnego kroku, czyli napisania kodu w Pythonie, aby sterować projektem Arduino. Możesz napisać prosty program lub skorzystać z przykładów, które są dostarczane z Arduino IDE, aby przetestować.

przez ejemploprzejdź do Arduino IDE> Plik> Przykłady> Komunikacja> PhysicalPixel i prześlij go na swoją kartę Arduino podłączoną do komputera. Gdy szkic działa, możesz używać Pythona tak, jak na płycie Raspberry Pi z GPIO, aby zmienić wynik. Na przykład w tym przypadku można dowolnie włączać i wyłączać diodę LED za pomocą prostego kodu Pythona.

Aby to zrobić, możesz wróć do okna terminala i do monitu Anaconda Zrób dalej:

> 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 sprawi, że funkcja ser.write może dowolnie wyłączać (L) lub włączać diodę LED (H). Następnie ser.close () kończy się i exit () kończy pracę. Możesz więc kontrolować swoje projekty Arduino za pomocą Pythona. Oczywiście to tylko przykład, ale możesz sobie wyobrazić wiele innych przypadków ...

Można również tworzyć pliki .py za pomocą skryptów Pythona aby móc je wykonać w dowolnym momencie bez konieczności robienia tego bezpośrednio z monitu anakondy. Na przykład ten inny:

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

Prosta prawda? Ponadto, jeśli znasz już język Python, to wszystko będzie dla ciebie dużo łatwiejsze. Będziesz musiał tylko uruchomić swój plik .py i wejść w interakcję z interaktywnymi opcjami tego programu, aby wprowadzić polecenia włączające, wyłączające lub kończące program w tym przypadku.


Bądź pierwszym który skomentuje

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.