Skocz do zawartości
woskod

Łączność Arduino z aplikacją blink. Co lepsze?

Pomocna odpowiedź

Witam serdecznie,

Zamierzam stworzyć projekt, jednak na początku chce dowiedzieć się co mi będzie potrzebne. Powiedzmy że to będzie wyglądać tak:

Telefon z aplikacją blink wysyła sygnał po przez domowy router wifi do Arduino i te, ma dać sygnał na pin. Ma to również działać w drugą stronę czyli od Arduino do telefonu. Czy do Arduino Uno lepiej wykorzystać jakiś układ oparty na ESP8266 którego zadaniem będzie tylko komunikacja z routerem i przekazywanie danych do Arduino czy jakiegoś shielda? Co będzie łatwiejsze w podłączeniu i programowaniu?

Udostępnij ten post


Link to post
Share on other sites
(edytowany)
43 minuty temu, woskod napisał:

Czy do Arduino Uno lepiej wykorzystać jakiś układ oparty na ESP8266 którego zadaniem będzie tylko komunikacja z routerem i przekazywanie danych do Arduino czy jakiegoś shielda?

Oczywiście wszystko zależy od wymagań, ale chyba zdecydowanie łatwiej zastosować coś co ma na jednej płytce wszystko co potrzebujesz niż bawić się z dodatkowymi shieldami czy komunikować dwa układy. Zakładam, że Twój projekt to coś więcej niż tylko sterowanie pinem, ale jeśli np. ESP8266 zrobi to samo co może zrobić zwykła ATmega i dodatkowo może załatwić również sprawy sieciowe to chyba jest to wygodniejszym rozwiązaniem. 

43 minuty temu, woskod napisał:

Co będzie łatwiejsze w podłączeniu i programowaniu?

Oba (Uno lub ESP) będą tak samo proste w programowaniu jeśli będziesz pisał w frameworku Arduino. Natomiast wybierając ESP masz wszystko w jednym układzie na jednej płytce - podłączasz do PC i możesz działać. 

Edytowano przez Matthew11
  • Pomogłeś! 1

Udostępnij ten post


Link to post
Share on other sites

Po dłuższym zastanowieniu postanowiłem wykorzystać tylko ESP8266 ponieważ ma wszystko. Potrzebny mi będzie jeszcze programator USB-UART oraz konwenter poziomów logicznych. Rozumiem że tą płytkę można tak samo programować jak Arduino. Tak? Taki sam kod?

Udostępnij ten post


Link to post
Share on other sites
(edytowany)
52 minuty temu, woskod napisał:

Potrzebny mi będzie jeszcze programator USB-UART oraz konwenter poziomów logicznych.

Polecam Ci kupić płytkę z pełnym zestawem czyli np:

Coś tego pokroju, która ma w sobie wszystko co potrzebne, która od razu jest gotowa do użycia. Jeżeli projektujesz swoją płytkę, wtedy lepiej kupić "goły" moduł ESP.

52 minuty temu, woskod napisał:

Rozumiem że tą płytkę można tak samo programować jak Arduino. Tak? Taki sam kod?

Tak, w rozumieniu tego samego API. Na przykład, żeby zaświecić diodą możesz napisać pinMode(ledpin, OUTPUT); digitalWrite(ledpin, HIGH); i dla obu płytek efekt będzie ten sam - bo zaimplementowane jest to samo API dla obu tych płytek - pod warunkiem że wykorzystasz Arduino Core dla ESP - https://github.com/esp8266/Arduino (ESP8266 możesz też programować w C).

Jako edytor polecam Ci wykorzystać VS Code a jako menedżer płytek rozszerzenie PlatformIO (rozszerzenie do VS Code). Oczywiście możesz też klepać kod w Arduino IDE.

Edytowano przez Matthew11
  • Pomogłeś! 1

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Tak jak napisał Matthew11 najlepiej użyć jednej z płytek które podlinkował. ESP i Arduino różnią się nieznacznie w programowaniu z wykorzystaniem środowiska Arduino IDE (nie są to wielkie różnice, ale widoczne przy bardziej rozbudowanych programach). Ze swojej strony polecam ten sam zestaw środowiska, czyli VSC i PlatformIO. Dodatkowo pamiętaj że Blynk wykorzystuje do komunikacji zewnętrzy serwer, więc droga wygląda mniej więcej tak telefon <-> serwer <-> ESP, możesz to wykorzystać sterując układem bez konieczności pozostawania w tej samej sieci WiFi. Jeżeli masz 30min na naukę i wolne RPi możesz także stworzyć własny serwer Blynk (można też na serwerze zewnętrznym) i usunąć w ten sposób ograniczenia związane z rozbudowaniem aplikacji.

Jeżeli nie potrzebujesz serwera i chcesz komunikować się tylko wewnątrz własnej sieci sprawdź Virtuino, jest trochę bardziej skomplikowane w programowaniu (szczególnie jeżeli chcesz przechowywać jakieś logi, itp.), ale nie wykorzystuje zewnętrznych serwerów i komunikacja odbywa się tylko wewnątrz tej samej sieci.

Edytowano przez szczawiosław

Udostępnij ten post


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...