Jak połączyć i połączyć Raspberry Pi z Arduino

Jak połączyć i połączyć Raspberry Pi z Arduino
Czasami użytkownik może odczuwać potrzebę łączenia i interfejsu Arduino i Raspberry Pi w przypadku niektórych projektów, w których zaangażowane są zarówno obliczenia, jak i kontrolowanie czujników, siłowników lub innych takich urządzeń. W przypadku takich projektów zadania obliczeniowe można wykonać za pomocą Raspberry Pi i Arduino mogą komunikować się ze sobą seryjnie. Podstawowy samouczek do łączenia i interfejsu Raspberry Pi z Arduino jest przedstawiony w tym artykule.

Jak połączyć i połączyć Raspberry Pi z Arduino

Procedura krok po kroku do łączenia i interfejsu Raspberry Pi z Arduino podano poniżej:

Krok 1: Włącz komunikację szeregową na Raspberry Pi

Możesz połączyć Raspberry Pi i Arduino razem poprzez komunikację szeregową, więc w tym celu obowiązkowe jest włączenie komunikacji szeregowej na Raspberry Pi.

Aby włączyć komunikację seryjną, otwórz Raspberry Pi Narzędzie konfiguracyjne z Preferencje opcja Menu aplikacji:

Następnie kliknij Interfejsy patka:

I włącz I2C I Port szeregowy obracając przyciski przed nimi w prawo:

Następnie kliknij OK Aby zapisać ustawienie:

System poprosi Cię o ponowne uruchomienie kliknięcia Tak Tutaj:

Krok 2: Zainstaluj wymagane biblioteki Pythona

Będziemy interfaceować Raspberry Pi z Arduino za pomocą kodu Pythona, ale komunikacja między Arduino i Raspberry Pi będzie komunikacją szeregową, więc dla tego seryjny Wymagana jest biblioteka. Chociaż jest już zainstalowany na Raspberry Pi, ale lepiej jest potwierdzić jego dostępność za pomocą następującego polecenia:

$ sudo apt instal Python3-Serial

Polecenie zainstaluje bibliotekę szeregową w systemie Raspberry Pi, jeśli nie zostanie zainstalowana, w przeciwnym razie otrzymasz potwierdzenie, że jest już zainstalowana w systemie Raspberry Pi.

Alternatywnie możesz go również zainstalować za pośrednictwem PIP, jeśli nie będziesz mógł znaleźć szeregowego Python w systemie Raspberry Pi:

$ sudo pip instaluj pyserial

Krok 3: Zainstaluj Arduino IDE na Raspberry Pi

Aby zainstalować Arduino IDE na Raspberry Pi, uruchom poniżej wspomniane polecenie:

$ sudo apt instinst instaluj arduino -y

Następnie zweryfikuj instalację Arduino IDE, uruchamiając polecenie wersji poniżej napisanej:

$ Arduino --version

Aby Arduino działał na Raspberry Pi, obowiązkowe jest zainstalowanie pakietu Java w Raspberry Pi. Aby sprawdzić, czy Java jest zainstalowana na Raspberry Pi, czy nie, uruchom poniżej napisane polecenie:

$ java --version

Na wszelki wypadek, jeśli pakiet Java nie jest jeszcze zainstalowany na Raspberry Pi, możesz użyć komendy poniżej, aby zainstalować Java na Raspberry Pi:

$ sudo apt Zainstaluj openjdk-17-jdk -y

Krok 4: Program Arduino

Teraz otwórz Arduino Ide na Raspberry Pi z menu aplikacji w Programowanie Sekcja. I napisz kod, który chcesz uruchomić na Raspberry Pi po interfejsie z Arduino. Kod komunikacji szeregowej wyglądałby mniej więcej tak, jak pokazano w poniższym przykładzie, tutaj po prostu drukuję prosty ciąg wiadomości:

void setup ()
Seryjny.rozpocząć (9600);

void Loop ()
Seryjny.println ("Hello! Arduino tutaj ");
opóźnienie (500);

Po napisaniu żądanego kodu Arduino skompiluj kod, klikając przycisk kompila:

Zapisz plik o żądanej nazwie, tutaj wymieniłem mój plik Arduino jako Mycode:

Po pomyślnym skompilowaniu nadszedł czas, aby wybrać port i dla tego kliknięcia Narzędzia Następnie Port a następnie wybierz port, z którym (Arduino Uno) jest wspomniany:

Po skompilowaniu prześlij kod na płytę Arduino, klikając przycisk Przesyłania podświetlonego na poniższym obrazku:

Krok 5: Napisz kod Pythona

Po przesłaniu kodu nadszedł czas, aby napisać kod Python na Raspberry Pi, aby komunikować Raspberry Pi i Arduino. Aby napisać kod Python na Raspberry Pi, otwórz Thonny Python IDE z menu aplikacji:

Teraz skopiuj poniżej wspomniany kod Pythona do komunikacji szeregowej między Arduino i Raspberry Pi:

Importuj serial
Importuj RPI.GPIO jako GPIO
czas importu
ser = serial.Serial („/dev/ttyacm0”, 9600)
Choć prawda:
read_ser = ser.Czytaj linię()
print (read_ser)

Read_Ser przechowuje wiadomość lub ciąg, który będzie seryjnie przekazywany przez Arduino.

Następnie zapisz pisemny kod, klikając Ratować przycisk:

Następnie napisz dowolną żądaną nazwę pliku i kliknij OK:

Krok 6: Znajdź numer portu ACM

W powyższym kodzie Python numer ACM to liczba portów dla komunikacji szeregowej i znalezienie numeru ACM, uruchom poniżej wspomniane polecenie:

$ ls /dev /tty*

Dane wyjściowe polecenia wyświetli inaczej ttys Z czego musisz znaleźć ten z numerem ACM, może to być ACM0, ACM1, ACM2 lub inny numer:

Po znalezieniu numeru ACM wróć do kodu Pythona i wpisz numer ACM, który właśnie się dowiedziałeś:

Krok 7: Podłącz Arduino z Raspberry Pi i uruchom kod

Teraz nadszedł czas, aby połączyć zarówno Arduino, jak i Raspberry Pi za pomocą kabla Arduino. Włóż jeden koniec kabla Arduino do Arduino i podłącz drugi koniec do portu USB Raspberry Pi.

Następnie kliknij Uruchomić Przycisk w Python IDE:

Zaraz po uruchomieniu kodu ciąg zakodowany w Arduino będzie przesyłany do Raspberry Pi i jest wyświetlany jako wyjście na Raspberry Pi:

Powyższe wyjście potwierdza, że ​​Raspberry Pi jest pomyślnie podłączone i połączone z Arduino.

Wniosek

Aby podłączyć i interfejs Raspberry Pi z Arduino, używana jest komunikacja szeregowa. Włącz komunikację szeregową i zainstaluj bibliotekę szeregową w Raspberry Pi. Następnie kod Arduino i skonfiguruj port szeregowy do seryjnie wysyłania danych. Następnie napisz kod Python na Raspberry Pi wraz z numerem portu ACM, aby seryjnie odbierać dane od Arduino. Na koniec uruchom kod Pythona, aby wyświetlić wyjście szeregowe na Python IDE.