Jak zaprogramować Arduino w Python

Jak zaprogramować Arduino w Python

Mikrokontrolery były używane od bardzo dawna, od prostego codziennego użytkowania przedmiotów gospodarstwa domowego po złożone maszyny. Komunikacja z mikrokontrolerami nie była łatwym zadaniem, dopóki Arduino, platforma typu open source, nie umożliwi to i uczyniło obwodów elektronicznych bardziej dostępnymi dla użytkowników. Arduino komunikuje się z mikrokontrolerami poprzez język C ++, ale ze względu na postęp i różnorodne zainteresowanie ludzi pojawiło się wiele nowych języków Pyton. W tym artykule przyjrzymy się, w jaki sposób możemy kontrolować tablice Arduino za pomocą Pythona.

Arduino i Python

Arduino to platforma elektroniczna, która używa C ++ jako domyślnej do komunikacji między płytami Arduino i użytkownikami. Opiera się zarówno na sprzęcie, jak tablice Arduino i oprogramowanie znane jako IDE. Arduino IDE ułatwiło kontrolowanie płyt Arduino za pomocą wielu języków. Python jest jednym z tych języków, które są wyposażone w pakiety wsparcia Arduino.

Python to programowanie obiektowe zorientowane na wysokie poziom.

Jak zaprogramować Arduino za pomocą Pythona

Arduino można zaprogramować za pomocą Pythona. Musimy tylko zainstalować pakiety Python za pomocą pypeć który jest narzędziem menedżera pakietu używanego do programowania Python. Dostępne są różne pakiety Python do budowy seryjnego mostu komunikacyjnego z mikrokontrolerów, takimi jak:

    • Micropython
    • Pyfirmata
    • Pyserial

W tym artykule będziemy kontynuować Pyfirmata ponieważ jest łatwy w użyciu. Również Arduino IDE jest wyposażone w wstępnie zainstalowane pakiety Pyfirmata, które ułatwiają instalację.

Konfiguracja tablicy Arduino z Python

Zanim przejdziemy dalej tutaj, jest lista narzędzi potrzebnych do kontynuowania:

    • Arduino Board (UNO)
    • Arduino Ide
    • Python 3.10.6
    • Pakiet PIP 22.2.2
    • PROWADZONY
    • Tablica chleba

Aby kontynuować dalej, najpierw pobramy nasz pakiet Python i pakiet PIP do zainstalowania Pyfirmata, który pomaga nam rozwijać seryjną komunikację między Arduino Board a Python. Wykonaj te kroki, aby skonfigurować Python z Arduino.

Pobierz wszystkie wymagane oprogramowanie i pakiety

Najpierw pobierz wszystkie wymagane oprogramowanie i pakiety:

Krok 1: Pobierz Python, przechodząc na oficjalną stronę. Kliknij tutaj, aby pobrać.


Po pobraniu Pythona otwórz instalator Python, aby zakończyć proces instalacji Pythona.


Krok 2: Czas zainstalować menedżer pakietów PIP. Otwórz wiersz polecenia:


Pobierz PIP za pomocą:

curl https: // bootstrap.Pypa.IO/GET-PIP.py -o get -pip.py



Aby go zainstalować, użyj:

Python Get Pip.py



Wpisz okno następujące polecenie w wierszu polecenia, aby zaktualizować pakiet PIP:

Python -m Pip instalacja -u pip


Krok 3: Ostatnim oprogramowaniem potrzebnym do skonfigurowania jest Arduino IDE. Można go pobrać, odwiedzając ich oficjalną stronę do pobrania, na której dostępnych jest wiele plików do pobrania zgodnie z wymaganym systemem operacyjnym.


Instalacja pakietów Pyfirmata i Pyserial

Za pośrednictwem menedżera pakietów PIP Zainstaluj pakiety Pyfirmata i Pyserial:

Krok 1: Aby zainstalować Pyfirmata za pomocą PIP, wpisz polecenie podane poniżej:

PIP Instaluj pyfirmata



Krok 2: Kolejnym bardzo znanym protokołem stosowanym do komunikacji z tablicami Arduino jest Pyserial Wpisując to polecenie, można go łatwo zainstalować:

instaluj PIPSerial



Konfigurowanie pyfirmaty z Arduino IDE

Po zainstalowaniu instalatora Arduino IDE otwórz go, klikając dwukrotnie ikonę skrótu lub wpisując IDE na pasku wyszukiwania okien. Aby zainstalować pakiet Pyfirmata z płytą Arduino, wykonaj poniżej podane kroki:

Krok 1: Otwórz Arduino IDE. Otwarte nowe okno z pustym szkicem.


Krok 2: Skonfiguruj porty płyty Arduino. Najnowsza wersja IDE (wersja 2.0) może automatycznie wykrywać płyty Arduino, ale w starszej wersji przejdź do: Narzędzia> tablice> tablice Arduino avr> Arduino UNO:

Do wyboru portu przejdź do: Narzędzia> Port> Porty szeregowe> Com:


Krok 3: Załaduj szkic Pyfirmata w Arduino Ide, za to przejdź do: Plik> Przykład> Firmata> StandardFirmata:


Krok 4: Nowe okno pokazuje standardowe szkic:


Krok 5: Skompiluj i prześlij ten szkic na płytę Arduino za pomocą wymienionych przycisków w lewym górnym rogu.


Po pomyślnym przesłaniu szkicu. Board Arduino jest gotowy do zaprogramowania za pomocą języka Pythona.

Program migania LED LED w Arduino Uno za pomocą Pythona

Właśnie skonfigurowaliśmy naszą tablicę Arduino z Pythonem, aby napisać pierwszy program Arduino za pomocą Pythona. Oto kilka kroków, które pokazują, jak napisać program migania LED w Python i przesyłać go na tablicę Arduino.

Krok 1: Otwórz Python Idle za pomocą opcji wyszukiwania systemu Windows.


Krok 2: Nowe okno otworzy się pokazującą Python Idle Shell, w której możemy napisać program Arduino w języku programowania Python.


Krok 3: Naciskać Ctrl+N lub kliknij Plik Następnie Nowy plik.


Krok 4: Nowe okno otworzy kod typu poniżej, aby uruchomić LED na płycie Arduino przy pin 13. Podłącz dodatni koniec diody LED na styku 13 i ujemną lub krótszą nogę diody LED w styku GND.


Krok 5: Teraz skopiuj i wklej dany kod w Python Idle:

import pyfirmata
czas importu
Board = Pyfirmata.Arduino („com8”)
it = pyfirmata.Util.Iterator (płyta)
To.początek()
x = tablica.get_pin ('d: 13: o')
Choć prawda:
X.Napisz (1)



Zaczęliśmy kod od importu naszego protokołu Pyfirmata w Python IDE w celu ustalenia połączenia Arduino i Python. Następnie zadeklarował port COM, z którym jest podłączony Arduino. Następnie za pomocą tablica.get_pin Zadeklarowaliśmy szpilkę wyjściową, z jaką LED jest podłączona. w chwila Sekcja X.Napisz (1) Funkcja będzie lśniła ciągle.

Krok 6: Po przygotowaniu naszego obwodu i kodu Pythona nadszedł czas, aby przesłać nasz kod na tablicy Arduino. Najpierw zapisz kod Pythona, a następnie naciśnij F5 lub przejdź do: Uruchom> Moduł Uruchom Aby przesłać kod w Arduino Uno.



Powyższy kod Pythona utrzyma diodę LED. Przejdźmy dalej i sprawdźmy, jak możemy to mrugać.

Python Led Led Code Arduino

Teraz prześlij program migania LED:

import pyfirmata
czas importu
Board = Pyfirmata.Arduino („com8”)
it = pyfirmata.Util.Iterator (płyta)
To.początek()
x = tablica.get_pin ('d: 13: o')
Choć prawda:
X.Napisz (1)
czas.sen (1)
X.Napisz (0)
czas.sen (1)



Najpierw musimy przesłać Pyfirmata, aby nawiązać połączenie szeregowe z płytą Arduino, która jest zadeklarowana w wierszu 3 jako obiekt tablica Następnie zdefiniowaliśmy pin 13, przy którym wyjście zostanie pokazane, ponieważ nasza dioda LED jest podłączona do pinu 13.

W chwila Wyjście sekcji jest deklarowane jako wysokie za pomocą 1 i niskiego za pomocą 0. Dioda LED świeci przez 1 sekundę, a następnie wyłączy się z powodu czas.spać Funkcja przez 1 sekundę.

Wniosek

W tym artykule podkreśliliśmy, w jaki sposób możemy używać kodu Pythona na płycie Arduino za pomocą Pyfirmata. Ułatwia uruchamianie kodu Pythona na tablicach Arduino. Za pomocą Pyfirmata możemy użyć wielu innych bibliotek Arduino z Python, ale w złożonych aplikacjach Pyfirmata jest ograniczona.