Skocz do zawartości

Bezprzewodowe połączenie RPi z Arduino: Jak, czym ?


Pomocna odpowiedź

Hej, mam pewien problem ze zrobieniem łączności miedzy RPi a Arduino. Wymaganie są 3 rzeczy: komunikacja musi być dwukierunkowa oraz musi się odbywać bezprzewodowo oraz jeżeli Wi-Fi to w sieci lokalnej
Cała komunikacja jest bardzo prosta: Rpi wysyła sygnał do Arduino, on rozpoznaje i wykonuje pewną sekwencje, gdy ją zakończy, ma wysłać sygnał o tym do Rpi.

niestety połączenie fizyczne nie wchodzi w grę całość jest od siebie oddalone co prawda o 4 metry, ale nie ma jak poprowadzić przewodów.
Może ktoś już robił coś takiego i może podzielić się swoim doświadczeniem. Jak na razie wyklarowały mi się następujące pomysły:

1) Użycie dwóch esp8266-01 i połączenie przez TX RX, komunikacja miedzy nimi przez np ESP-NOW
2) Użycie dwóch nrf24l01
3) Podłączenie do Arduino Esp8266 i komunikowanie sie przez stronę www(Esp hostuje stronę)
4) Użycie podczerwieni (nie wiem czy to zdało by egzamin)

Nie chcę specjalnie skomplikować całego procesu, a mam wrażenie, że te moje pomysły do tego doprowadzą.

 

Link to post
Share on other sites
27 minut temu, startrek1p2p napisał:

mam pewien problem ze zrobieniem łączności miedzy RPi a Arduino

Dlaczego Arduino a nie coś, co jest OOTB przystosowane do łączności?

Jeśli to musi być Arduino to stawiałbym na nrf-y. Tyle, że nie "wysyła sygnał do RPi" a zapytany odpowiada czy skończył (no, ale to zależy od tego czym się to Arduino zajmuje bo nie wiemy).

Tak w ogóle to zrobiłbym to na ESP32 zamiast Arduiho i połączeniu BT albo WiFi (niestety, esp-now wymaga ustawienia karty wifi w tryb, którego RPi nie obsługuje).

  • Lubię! 1
Link to post
Share on other sites
36 minut temu, ethanak napisał:

Dlaczego Arduino a nie coś, co jest OOTB

Może być i ESP32. Jeszcze na nim nic nie robiłem, tylko na ESP8266 a ono ma za mało dostępnych wejść do tego projektu 

37 minut temu, ethanak napisał:

połączeniu BT albo WiFi

No właśnie jakie wybrać i jakimi bibliotekami, protokołami itp. w tym temacie nie mam żadnego doświadczenia .

@ethanak Masz jakieś konkretne rozwiązanie na myśli 

Link to post
Share on other sites
3 minuty temu, startrek1p2p napisał:

Może być i ESP32. Jeszcze na nim nic nie robiłem

Spróbuj - jeśli bawiłeś się ESP8266 to ESP32 na 100% polubisz.

3 minuty temu, startrek1p2p napisał:

No właśnie jakie wybrać i jakimi bibliotekami, protokołami itp. w tym temacie nie mam żadnego doświadczenia .

Przykładowo dla WiFi: zwykłe połączenie TCP na socket, serwery na obu końcach (ESP i RPi). RPi nadaje jakiś prosty  string z poleceniem, Arduino w tym samym połączeniu odpowiada jakimś "OK" i kończą rozmowę. W drugą stronę identycznie. Może być?

Na RPi jest to najzwyklejszy w świecie socket server (jest tego mnóstwo w googlach w dowolnym języku programowania, dla Pythona chyba najlepiej poczytać ten tutorial). Na ESP zwykły WiFi server i WiFi client - wrzuć w google hasło "ESP32 socket server" to dotaniesz parę przykładów.

 

 

 

  • Pomogłeś! 1
Link to post
Share on other sites
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Jeśli zdecydujesz się na esp. To polecam ESPnow świetnie nadaje się do takich lekkich zadań.

Link to post
Share on other sites
2 minuty temu, _LM_ napisał:

Jeśli zdecydujesz się na esp. To polecam ESPnow świetnie nadaje się do takich lekkich zadań.

Jak uruchomić esp-now na rpi? Podłączając następnego esp?

Link to post
Share on other sites
1 godzinę temu, ethanak napisał:

niestety, esp-now wymaga ustawienia karty wifi w tryb, którego RPi nie obsługuje

Ok tego nie wiedziałem.

Link to post
Share on other sites
47 minut temu, _LM_ napisał:

Ok tego nie wiedziałem.

Ja też dowiedziałem się wtedy kiedy chciałem to zrobić 😞

Muszę coś więcej na ten temat poczytać - być może jakaś karta na USB na to pozwala, wtedy to mogłoby być jakieś rozwiązanie... tylko kiedy?

Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.