Niedawno opisywałem już, bezdotykowy pomiar temperatury czujnikiem IR MLX90614 z wysyłką danych do Domoticza. Tym razem dołożymy do kompletu wyświetlacz LCD 2×16 z kontrolerem PTC8574AT który umożliwia nam komunikacje po I2C.
Za pomiar pomiar temperatury odpowiada termometr IR GY-906 (MLX90614), sercem całości jest ESP8266. Następnie całość prezentowana jest na wyświetlacz LCD 2×16 oraz prze okazji wysyła dane do Domoticza. Samo ESP8266 pracuje pod kontrolą ESP Easy Mega, całość komunikacje się po I2C co ogranicza nam do minimum ilość przewodów.
Potrzebne komponenty:
- ESP8266 lub odpowiednik Nodemcu
- wyświetlacz LCD LED 2×16, sterownik zgodny z HD44780 (LCD2004) i kontrolerem I2C
- moduł czujnika IR GY-906 (MLX90614)
Zacznijmy tym razem od samego ESP8266 proces wgrywania oprogramowanie opisałem tu więc odpuszczę zamieszczanie tego w tym wpisie.
Połączenie LCD 2×16, IR GY-906 z ESP8266
PIN ESP | LCD 2×16, IR GY-906 |
3.3-5V | VIN |
GND | GND |
GIPO-2 | SCL |
GIPO-0 | SDA |
Zwróć uwagę, iż ja zmieniłem domyślne GIPO odpowiedzialne za SDA / SCL, poniżej domyślne ustawiania ESP8266
PIN ESP | LCD 2×16, IR GY-906 |
3.3-5V | VIN |
GND | GND |
GIPO-5 | SCL |
GIPO-4 | SDA |
Po wykonaniu tej czynności pozostało nam jedno dodanie urządzenie, w tym celu przechodzimy do zakładki Devices.
Po wprowadzeniu klikamy Submit i to wszystko już zacznie działać. Zalecam dodanie też 2 zmiennej którą można dodać, czyli temperaturę otoczenia którą możemy również odczytać.
Jeżeli wszystko jest ok i widzisz prawidłowo temperatury, przejdźmy do konfiguracji komunikacji z LCD. W cel dodania do ESP naszego LCD 2×16, przechodzimy do zakładki Devices.
I tu na chwilę się zatrzymajmy w zakładkach:
– „I2C Address” ustaw adres I2C wyświetlacza
– „Display Size” ustaw rozmiar swojego LCD na 2×16
Następnie czas na zdefiniowanie tego co ma nasz wyświetlacz nam prezentować. Mamy tu do dyspozycji, 2 linie więc do dzieła. Natomiast jeżeli chcesz pokazać wartość, umieść jej nazwę, oddzielone hashtagiem. Więc jeśli masz uruchomiony czujnik Obiect o nazwie zadania „Temperature”, aby uzyskać wartość temperatury, użyj tego:
formuła wygląda następując [Obiect#Temperature]
Nie zapomnijmy na koniec klikamy Submit i to wszystko już powinno działać prawidłowo.
Jak ktoś chce zintegrować wyniki z Domoticza do odbierania odczytów z czujnika jest dalsza część wpisu.
Zacznijmy więc, wchodzimy do domoticza w Ustawienia -> Sprzęt
Jako nazwę wpisujemy na przykład nazwę np dodatkowe, następnie wybieramy z listy Typ: „Dummy (Does nothing, use for virtual switches only)” i klikamy Dodaj.
Po czym musimy utworzyć wirtualny sensor, nie zapomnijmy o wybraniu parametrów które chcemy wykonywać w tym przypadku jest to temperatura. Zalecam dodać tu x 2 ze względu, że możemy zapisywać temperaturę celu oraz otoczenia.
Następnie przechodzimy do zakładki Ustawienia -> Urządzania. Zapisujemy sobie nr Idx potrzebny będzie przy konfiguracji ESPEasy.