ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Przedmiotem tego artykułu będzie uruchomienie mikrokontrolera ESP8266 w taki sposób aby można było za pośrednictwem smartfona sterować podłączonym do ESP przekaźnikiem. W drugim artykule postaram się zaprezentować podobne rozwiązanie z tym, że zamiast mikrokontrolera ESP8266 w roli głównej wystąpi Raspberry PI w wersji B+.

A więc zaczynamy….

Co będzie potrzebne ?

  1. Oczywiście Smartfon, który powinien pracować pod kontrolą systemu Android (minimalna wersja 3.1.x) lub iPhone z iOS min. 6.1
  2. Moduł ESP8266 w wersji z min. 512KB flash. W artykule będę się posługiwał wersją ESP8266-12 którą  można kupić np. tutaj: http://botland.com.pl/moduly-wifi/3977-modul-wifi-esp-12-esp8266-wersja-smd.html
  3. Konwerter USB/UART dzięki któremu zaprogramujemy ESP. https://botland.com.pl/konwertery-usb-uart-rs232-rs485/4924-konwerter-usb-uart-cp2102-wtyk-usb.html
  4. Adapter PCB do modułów ESP, który można kupić również w nettigo: https://nettigo.pl/products/adapter-pcb-do-modulow-esp
  5. Moduł zasilający 3.3/5V. Ja posłużę się modułem YwRobot, który dostępny jest tutaj: http://propix.com.pl/pl/p/Modul-zasilania-power-module-3.35V-YwRobot/367
  6. Moduł przekaźnikowy. Na potrzeby tego artykułu użyłem wersji, którą miałem dostępną pod ręką czyli YwRobot 4 relay. Tutaj można zakupić 2 kanałowy: http://www.gotronik.pl/modul-2kanalowy-przekaznik-do-avr-arm-arduino-p-1564.html (generalnie wystarczy 1 kanałowy / 1-przekaźnikowy)
  7. Zasilacz 12V
  8. Dwie diody świecące w tym jedna z nich RGB Np.
    http://www.tme.eu/pl/details/hlmp-1503/diody-led-tht-3mm/avago/
    http://www.tme.eu/pl/details/ll-509rgbc-006/diody-led-tht-5mm/lucky-light/ll-509rgbc2e-006/
  9. Dwa mikro-przełączniki.  http://www.tme.eu/en/details/1301.9303/microswitches-tact-pcb/schurter/
  10. Jeden tranzystor. Ja użyłem BC547
  11. Trzy rezystory 100R
  12. Dwa rezystory 10K
  13. Płytka stykowa
  14. Przewody połączeniowe
  15. Kawałek cienkiego drutu

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Schemat:

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

 

Pamiętamy aby podłączyć pin TXD modułu ESP do pin-u RXD konwertera USB-SERIAL, a pin RXD modułu ESP do pin-u TXD konwertera. „IN1” podłączamy do modułu przekaźnikowego.

Zaczynamy….

Krok 1.
Lutujemy moduł ESP8266-12 do Adaptera PCB

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Krok 2.
Za pomocą cienkiego drutu tworzymy wyprowadzenia, które umożliwią nam łatwiejsze podłączenie się do wyprowadzeń modułu.

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Krok 3.
Mocujemy moduł ESP na płytce stykowej tak aby piny „GND” i „VCC” trafiły w rząd 25-ty.

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Krok 4.
Mocujemy pozostałe elementy

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Krok 5.
Zgodnie ze schematem, łączymy ze sobą wszystkie elementy przy pomocy przewodów połączeniowych.
Ważne. Pomijamy rezystor R1 wraz z podłączeniem do 3.3V ponieważ adapter PCB ma już taki rezystor wraz z podłączeniem do 3.3V na pokładzie. Ponadto GND konwertera USB-SERIAL należy podłączyć do GND modułu zasilania.

 

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Krok 6.
Oprogramowanie dla mikrokontrolera. Aby mikrokontroler mógł działać, potrzebny jest odpowiedni firmware. W tym przypadku będzie potrzeby firmware, który można pobrać z GITHUB-a https://github.com/SUPLA/ESP8266/tree/master/socket-firmware
Ważne. Niektóry wersje ESP8266-12 mają zamienione porty GPIO 4 z 5-tym. W takim przypadku należy użyć firmware-u, który będzie z taką „zamianą” współpracował. Jest on dostępny pod adresem:
https://github.com/SUPLA/ESP8266/tree/master/socket-firmware ( wifisocket_54 )
Firmware należy wprowadzić pod następujące adresy pamięci flash:
wifisocket_eagle.flash.bin——–>0x00000
wifisocket_eagle.irom0text.bin—->0x40000

W tym calu należy użyć odpowiedniego oprogramowania, które pozwoli na wgranie firmware-u do mikrokontrolera. Ja użyłem programu „NODEMCU FIRMWARE PROGRAMMER”
https://github.com/nodemcu/nodemcu-flasher

Wersja 32bit: https://github.com/nodemcu/nodemcu-flasher/tree/master/Win32/Release
Wersja 64bit: https://github.com/nodemcu/nodemcu-flasher/tree/master/Win64/Release

Należy wybrać odpowiedni port szeregowy pod który podłączony jest konwerter USB-SERIAL, a następnie wprowadzić pozostałe ustawienia, które widoczne są na poniższych screen-ach.

 

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Jeżeli moduł ESP jest już podłączony przez konwerter USB-SERIAL do komputera, a wszystkie powyższe kroki zostały wykonane, można przystąpić do wgrania oprogramowania.

– Podłączamy zasilacz 12V do moduły zasilającego.
– Wciskamy i przytrzymujemy przycisk (mikro-przełącznik) podłączony do portu GPIO0 (ten najbliżej modułu zasilającego), a następnie włączamy zasilanie – cały czas trzymając wciśnięty przycisk.
– Po włączeniu zasilania puszczamy przycisk

W tym momencie dioda RGB powinna się delikatnie (żarzyć) świecić wszystkimi 3-ma kolorami.

Teraz można przystąpić to wgrania firmware-u. W programie NODEMCU klikamy przycisk „Flash” i czekamy, aż pasek postępu osiągnie 100% dla każdego z dwóch plików.

Ważne. Moduł ESP8266 jest bardzo wrażliwy na zakłócenia. W przypadku podłączenia go do płytki stykowej na tzw. „pająka” zdarza się, że nie udaje się wgrać firmware-u za pierwszym razem dlatego czasami konieczne jest kilkukrotne powtórzenie próby wgrania oprogramowania.

Jeżeli próba wprowadzenia Firmware-u zakończyła się sukcesem, możemy odłączyć zasilanie i wyjąć konwerter USB-SERIAL z płytki stykowej. Następnie możemy przejść do kolejnego kroku.

Ważne. Pozostawienie konwertera w płytce stykowej, który nie jest podłączony do włączonego komputera może skutkować tym, że ESP nie wystartuje.

Krok 7.

Konfiguracja ESP. Przed przystąpieniem do konfiguracji należy się zarejestrować w serwisie Polskiego projektu OpenSource o nazwie SUPLA pod adresem https://cloud.supla.org/account/create.
Po zalogowaniu się na cloud.supla.org należy odczytać ustawienia lokalizacji i hasło lokalizacji oraz adres serwera, które widoczne są tuż po zalogowaniu.

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Możemy teraz przystąpić do właściwej konfiguracji modułu ESP.
– Włączamy zasilanie
– Dioda RGB powinna zacząć migać na niebiesko co oznacza, że moduł przeszedł w tryb konfiguracji. Jeżeli doda świeci na czerwono to należy przytrzymać drugi przycisk (najdalej oddalony od modułu zasilającego) przez minimum 5sek. Wtedy w trybie ręcznym moduł powinien przełączyć się w tryb konfiguracji i dioda powinna zacząć migać na niebiesko.
– Z dowolnego komputera z kartą WiFi łączymy się z siecią WiFi o nazwie „SUPLA-ESP8266”
– Następnie otwieramy stronę http://192.168.4.1 i w formularzu, który się wyświetli wprowadzamy dane dostępowe do domowej sieci WiFi, która posiada dostęp do Internetu oraz hasło i identyfikator lokalizacji odczytane z cloud.supla.org

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Klikamy zapisz i możemy ponownie uruchomić moduł poprzez wyłączenie i włączenie zasilania lub poprzez naciśnięcie przycisku (przycisk nr 2 – najdalej położony od modułu zasilającego).

Moduł po zapisaniu nie wyświetla haseł co nie oznacza, że się one nie zapisały.
Poprawne zapisanie się ustawień potwierdzone jest komunikatem „Data Saved’
LAST STATE: określa ostatni stan połączenia z serwerem svr1.supla.org. Jeżeli wprowadzone dane „lokalizacji” były niepoprawne to wracając do konfiguracji możemy odczytać ostatni komunikat.

Po ponownym uruchomieniu, moduł będzie sygnalizował stan za pośrednictwem diody RGB:
– Kolor czerwony: nie ma połączenia z siecią WiFi lub nie uzyskano adresu IP z DHCP
– Kolor niebieski – ciągły: Nawiązano połączenie z siecią WiFi. Uzyskano adres IP lecz moduł nie nawiązał połączenia z serwerem (svr1.supla.org)
– Kolor zielony – Nawiązano połączenie z serwerem. Urządzenie jest gotowe.

Warto zaznaczyć, że przekaźnikiem można również sterować manualnie naciskając przycisk nr 2.

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Krok 8.

Konfiguracja smartfona.
W pierwszej kolejności należy pobrać aplikację ze sklepu AppStore lub Google Play w zależności od posiadanego telefonu. Aplikacje są bezpłatne.

iOS: https://itunes.apple.com/us/app/supla/id996384706?l=en&ls=1&mt=8
Android: https://play.google.com/store/apps/details?id=org.supla.android

Instalujemy aplikację i uruchamiamy.
Tuż po uruchomieniu powinno się od razu pojawić okno ustawień gdzie należy wprowadzić ustawienia odczytane z cloud.supla.org

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Zapisujemy ustawienia i już możemy sterować przekaźnikiem podłączonym do ESP za pomocą Smartfona.

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

GOTOWE :)

Aktualizacja 23.01.2016

Aktualizacja 30.01.2016

Dodano nowy firmware umożliwiający

-Otwieranie furtki
-Otwieranie bramy wjazdowej
-Otwieranie bramy garażowej
-Otwieranie drzwi

https://github.com/SUPLA/ESP8266/tree/master/gate-module-firmware


Gotowy – kompletny moduł oparty o ESP8266 https://www.supla.org/buy/gatemodule

Inne gotowe rozwiązanie również oparte o ESP8266 https://www.supla.org/buy/sonoff

 

Ocena: 4.49/5 (głosów: 97)

Podobne posty

67 komentarzy do “ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Odpowiedz

anuluj

ESP8266 i sterowanie przekaźnikiem przy pomocy Smartfona

Nie przegap nowych projektów!

Zapisując się na nasz Newsletter będziesz miał pewność, że nie przegapisz żadnego nowego projektu opublikowanego w Majsterkowie!

Od teraz nie przegapisz żadnego projektu!

Masz uwagi?