Cześć,
w tej części kursu pokażę, jak obsługiwać czujnik DS18B20 w Lua oraz przedstawię prosty przykład zastosowania czujnika w połączeniu z serwerem www. Więcej informacji poniżej :)
Spis treści:
- Czujnik DS18B20
- Aktualizacja oprogramowania ESP8266
- Dołączenie zewnętrznej biblioteki
- Podstawowe funkcje
- Przykład 1.: Odczyt temperatury z dwóch czujników po UART
- Przykład 2.: Odczyt temperatury z dwóch czujników przez serwer WWW
- Podsumowanie
1. Czujnik DS18B20
Jak dobrze wiemy, czujnik DS18B20 firmy Dallas jest czujnikiem opierającym się na komunikacji 1-Wire. Zapewnia on dokładność odczytu od 9 do 12 bitów, czyli odczyt z dokładnością od 0,5 do 0,0625 *C. Zakres mierzonych temperatur tego czujnika wynosi -55 do 125 *C. Czujnik może być podłączony na dwa sposoby:
- Podłączenie z doprowadzonym zasilaniem (doprowadzenie napięcia)
- Podłączenie w trybie pasożyta- zwarcie pinów GND i VCC i podciągnięcie ich do GND ESP8266 oraz sygnał podciągnięty przez rezystor 4,7k do VCC
Przykład podłączenia w trybie pasożyta:
Było to szybkie przypomnienie głównych cech czujnika Dallas DS18B20. Przejdźmy teraz do następnych punktów.
2. Aktualizacja oprogramowania ESP8266
Ze względu na to, że standardowy firmware ma problemy z obsługą więcej niż jednego czujnika to wygenerujemy sobie nowy firmware. Przechodzimy zatem na stronę NodeMCU custom build. Podajemy na początku nasz adres e-mail, na który ma zostać wysłany nowy firmware, oraz poniżej podajemy go ponownie (nie można go wkleić, trzeba ręcznie wpisać). Następnie z konteneru „Select branch to build from” wybieramy dev. Następnie w „Select modules to include” zaznaczamy: file, gpio, net, node, ow, tmr, uart, websocket, wifi. Jest to wymagane minimum, potrzebne do tej części kursu. Jak chcesz to możesz zaznaczyć sobie więcej modułów. Teraz zjeżdżamy na sam dół i klikamy przycisk „Start your build„. Po 5 minutach powinieneś dostać na e-mail link do wygenerowanego firmwaru. Pobierz firmware i wgraj go do ESP8266
Jeżeli z jakiegoś powodu generowanie nie działa to na końcu poradnika znajdziesz wygenerowany firmware z wyżej wymienionymi modułami :) Po aktualizacji, w ESPlore’rze trzeba zmienić prędkość transmisji UART na 115200 baud.
3. Dołączenie zewnętrznej biblioteki
Dodawanie nowych bibliotek do programu w Lua jest trochę specyficzne, tzn. musisz je ręcznie wgrać do ESP8266. Aby tego dokonać, otwórz bibliotekę z rozszerzeniem lua i w ESPlore’rze kliknij „Save to ESP”. Zanim jednak wgramy nową bibliotekę to musimy ją pobrać stąd [ KLIK ! ]. Klikamy RAW i kopiujemy zawartość do ESPlorera i zapisujemy jako ds18b20.lua. Ważnym jest, żeby nie zgubić rozszerzenia pliku, bo w przeciwnym wypadku nasz program nie będzie mógł korzystać z biblitoteki. Po wgraniu bilbioteki do ESP możesz kliknąć w oknie UART po prawej stronie „Reload” aby wczytać listę wgranych plików do ESP8266. Po zakończonej operacji powinno to wyglądać tak:
Jak widać nasza biblioteka widnieje na liście także wszystko jest ok. Możemy przejść do następnego punktu.