ESP8266 ESP Easy MEGA 2.0

ESP8266 i SMOG część czwarta: czujnik na lata dzięki ESPEasy 2.0 mega (SDS011 sleep mode)

Nasz dość rozbudowany czujnik – wraz z ochroną dzięki przekaźnikowi stał się dosyć skomplikowanym projektem. Tymczasem, dzięki zaangażowaniu Gijs Noorlander’a oraz Waszego – ponieważ budujecie czujniki, piszecie, pytacie  – dostaliśmy zaktualizowaną wersję oprogramowania ESPEasy MEGA 2.0 dla ESP8266.

ESP8266 ESP Easy MEGA 2.0
ESP8266 ESP Easy MEGA 2.0

Dlaczego o tym piszę? Ponieważ Gijs dodał funkcję wbudowanej ochrony SDS011, która jest aktywowana poprzez odpowiednie komendy wysyłane na porcie szeregowym. Proste, eleganckie i przedłuża życie oraz jakość pomiarów nie gorzej niż wyłączanie zasilania przez przekaźnik!

Oznacza to, że możemy po podłączeniu jeszcze jednego kabelka, wrócić do prostszego projektu, połączenia pierwszego projektu z dodatkiem czujnika temperatury i wilgotności z drugiego projektu.

Zalety nowego podejścia:

  • znaczne uproszczenie projektu, użycie tego samego oprogramowania
  • użycie wbudowanych w SDS011 funkcji ochrony i wyłączania lasera i wentylatora (pamiętajcie – kod DIY_SMOG_15 obniża cenę o 15%)
  • mniejsze zużycie prądu (co może być zaletą przy zasilaniu bateryjnym)
  • znacznie mniejsze zużycie CPU ESP8266
  • taka sama dłuższa żywotność

Wady:

  • jeśli w przyszłości zdecydujemy się na ogrzewanie powietrza wchodzącego w celu wiarygodności polepszenia odczytu – wrócimy do przekaźnika, ponieważ taki był jego pierwotny cel

Co zostało zmienione? Poprzednio jedynie odbieraliśmy dane z SDS011, teraz będziemy też zwrotnie wysyłać komendy, które uśpią urządzenie na zadany okres czasu. Potem zbudzi się i po 30 wskaże pomiar, a następnie zaśnie znowu – wyłączając laser i wentylator.

Czego będziemy potrzebować?

Hardware:

  • gotowego projektu z pierwszej lub drugiej części
  • kabelka jumper sztuk 1 (słownie: jeden)

Software:

  • aktualizacji oprogramowania ESPEasy do wersji MEGA-dev 2.0 (aktualnie używamy: https://github.com/letscontrolit/ESPEasy/releases/). Konfiguracja zostanie zachowana, co nie zwalnia nas jednak od zrobienia kopii – szczególnie skopiowania zawartości „Rules”.

Do dzieła!

Jeśli wcześniej nie wymieniliście oprogramowania sterującego ESP8266 – na płytce Wemos D1 mini na ESP Easy, to zapraszam do instrukcji z pierwszego wpisu o ESP i SMOGu.

Jeśli już macie starszą wersję – aktualizujemy oprogramowanie. Zakładam, że  posiadacie rekomendowaną wersję z pojemnością 4MB  pamięci flash – wystarczy aktualizacja przez stronę WWW ESPEasy. Udajemy się na przykład – w dniu pisania – do pliku https://github.com/letscontrolit/ESPEasy/releases/tag/mega-20180126 a następnie pobieramy ZIP, rozpakowujemy w dowolnym miejscu i aktualizujemy z menu Tools naszego Wemosa D1 mini (oczywiście inne płytki z ESP8266 tak samo – CUBE, LoLin i tak dalej):

ESP8266 upgrade - ESPEasy MEGA 2.0
ESP8266 upgrade – ESPEasy MEGA 2.0

Przechodzimy do części sprzętowej.
Schemat połączeń:

Schemat połączeń SDS011, BME280 i ESP8266
Schemat połączeń SDS011, BME280 i ESP8266

Łączymy dodatkowy kabelek z portu RX (para zielony i żółty) SDS011 a następnie oba TX i RX do ESP8266 (do pinów D7 i D6). Zasilanie to +5V z pinu 5V oraz oczywiście niebieskie GND.

SDS011 RX/TX - Wemos D1 mini
SDS011 RX/TX – Wemos D1 mini

Podłączenie po stronie płytki z ESP8266:

ESP8266 - SDS011 - połączenia
ESP8266 – SDS011 – połączenia

BME280 podłączamy odpowiednio – dane białym i szarym kablem, zasilanie z 3V oraz GND:

ESP8266 - BME280- połączenia
ESP8266 – BME280- połączenia

Konfigurujemy na nowo SDS011 – zwróćcie uwagę na nowe pole dla RX w konfiguracji SDS011:

SDS011 ESP Easy MEGA 2.0 - konfiguracja
SDS011 ESP Easy MEGA 2.0 – konfiguracja

Pole Sleep Time: 30 oznacza, że pomiar będzie co 30 minut (+30 sekund na rozgrzanie). Jeśli podamy 0 – będzie działał bez przerw.

Konfiguracja BME280 – bez zmian:

BME280 ESP Easy MEGA 2.0 - konfiguracja
BME280 ESP Easy MEGA 2.0 – konfiguracja

Jeśli wszystko przebiegło bez problemów, mamy skonfigurowany adres domoticza, to powinniśmy otrzymywać dane tak jak na tej stronie:

Devices - ESP Easy MEGA 2.0
Devices – ESP Easy MEGA 2.0

Na koniec modyfikujemy Rules – znacznie upraszczając wysyłanie danych

Rules - ESP Easy MEGA 2.0
Rules – ESP Easy MEGA 2.0

I to już wszystko. Możemy oczywiście użyć wyświetlacza OLED – łącząc go równolegle z BME280.

Projekty

W komentarzach pojawiają się dodatkowe informacje od tych, którzy zaprojektowali własne czujniki, uprościli inne projekty i chcieli się z nimi podzielić. Szczególnie cenne są materiały video, ponieważ doskonale uzupełniają słowo pisane, a często wskazują lepiej na pewne problemy przy uruchomieniu. Grzegorz Szarzyński z „Czystego Swarzędza” zamieścił bardzo ciekawie zrobiony praktyczny poradnik uruchomienia SDS021, proszę spójrzcie:

Michał Januszewski przygotowuje własny system czujników i raportowania na serwerze – dziś w jeden wieczór uruchomił swoją wersję czujnika, nie zapominając o konwerterze logiki wyświetlacza LCD2004:

Czujnik Michała Januszewskiego (c) 2018
Czujnik Michała Januszewskiego (c) 2018