[PROJEKT] Wskaźnik promieniowania ultrafioletowego – Arduino, wyświetlacz E-PAPER oraz czujnik UV
W dzisiejszym artykule zostanie zbudowany prosty wskaźnik promieniowania UV. Sercem projektu będzie płytka kompatybilna z Arduino – KAmduino UNO. Wyniki pomiarów będą wyświetlane na wyświetlaczu E-PAPER, który zapewnia duży kontrast, nawet w pełnym słońcu. Do pomiaru promieniowania UV posłuży czujnik UV Sensor V2 od firmy DFRobot.
Do realizacji projektu będą potrzebne:
- Płytka KAmduino UNO
- Czujnik promieniowania UV – UV Sensor V2
- Wyświetlacz E-PAPER np. Waveshare wyświetlacz E-PAPER o przekątnej 2,7″ z SPI – nakładka HAT dla Raspberry Pi
- Przewody męsko-męskie
- Powerbank (opcjonalnie)
Rys. 1. Czujnik promieniowania ultrafioletowego – UV Sensor V2
UV Sensor V2 to niewielki moduł pozwalający na pomiar promieniowania ultrafioletowego (UV). Został oparty na czujniku GUVA-S12SD. Umożliwia pomiar promieniowania o długości fali od 200 do 370 nm. Wyjściem czujnika jest sygnał analogowy. Znając wartość na wyjściu można określić tzw. indeks UV (sposób przeliczania przedstawię w dalszej części artykułu). Do działania moduł potrzebuje zasilania 5 V.
Rys. 2. Wyświetlacz E-PAPER o przekątnej 2,7″ firmy Waveshare
Czujnika promieniowania ultrafioletowego będziemy używać na zewnątrz. Do wyświetlania informacji o indeksie UV zostanie wykorzystany wyświetlacz typu E-PAPER, który zapewnia wysoki kontrast w dużym słońcu). Wyświetlacz E-paper o przekątnej 2,7 cala umieszczony jest w module w postaci nakładki HAT przeznaczony do użycia z komputerami Raspberry Pi (2B/3B/3B+/Zero/Zero W), lecz posiada również złącze, na które zostały wyprowadzone sygnały sterujące. Dzięki temu możliwe jest połączenie go z innymi płytkami np. Arduino lub STM32. W zestawie z wyświetlaczem znajduje się również odpowiedni do tego celu przewód. Ekran ma rozdzielczość 264 x 176 pikseli i pozwala na wyświetlanie trzech kolorów: czarnego, czerwonego oraz białego. Moduł posiada wbudowany kontroler, co ułatwia komunikacje z wyświetlaczem, która odbywa się za pomocą interfejsu SPI. Na płytce znalazły się 4 przyciski funkcyjne do dyspozycji użytkownika. Wyświetlacz cechuje się dużym kontrastem, a wyświetlany tekst lub grafika nie znika po odłączeniu zasilania. Czas odświeżania całego wyświetlacza wynosi nawet 15 sekund.
Podłączenie czujnika promieniowania ultrafioletowego do płytki KAmduino UNO jest bardzo proste – należy to zrobić zgodnie z tabelą poniżej:
Pin KAmduino UNO | Moduł UV Sensor V2 |
+5V | Przewód czerwony |
GND | Przewód czarny |
A0 | Przewód niebieski |
Czujnik promieniowania ultrafioletowego podłączony do płytki KAmduino UNO wygląda następująco:
Rys. 3. Czujnik UV sensor V2 podłączony do płytki KAmduino UNO
Kolejnym krokiem jest podłączenie wyświetlacza E-PAPER. Należy go podłączyć zgodnie z tabelą umieszczoną poniżej. Z uwagi na dużą ilość przewodów warto je spiąć niewielką opaską zaciskową:
Pin KAmduino UNO | Pin modułu wyświetlacza E-PAPER | Kolor przewodu |
3,3V | 3.3V | Czerwony |
GND | GND | Czarny |
11 | DIN | Niebieski |
13 | CLK | Zółty |
10 | CS | Pomarańczowy |
9 | DC | Zielony |
8 | RST | Biały |
7 | BUSY | Fioletowy |
Układ po podłączeniu wyświetlacza prezentuje się następująco:
Rys. 4. Zmontowany układ potrzebny do realizacji projektu
Gdy układ jest już gotowy możemy przejść do programowania. Pierwszym krokiem jest instalacja biblioteki do obsługi wyświetlacza E-PAPER. Pobieramy ją ze strony producenta lub z sekcji Do pobrania na końcu artykułu.
Po pobraniu należy wypakować zawartość z archiwum. Oprócz bibliotek, zawiera ono także przykłady dla Raspberry Pi, Arduino oraz STM32. W katalogu Arduino znajdziemy dwa foldery: epd2in7b-demo oraz libraries. Otwieramy folder libraries oraz kopiujemy jego zawartość. Następnie przechodzimy do folderu na dysku, gdzie zainstalowane jest środowisko Arduino (zazwyczaj: C:\Program Files (x86)\Arduino). W tym folderze przechodzimy do katalogu libraries i tworzymy w nim folder o nazwie E_PAPER, a następnie umieszczamy w nim wcześniej skopiowane pliki.
Żeby sprawdzić poprawność podłączenia wyświetlacza do KAmduino UNO oraz upewnić się ze pliki biblioteki zostały poprawnie skopiowane, przechodzimy do folderu epd2in7b-demo (w wypakowanym archiwum 2.7inch_e-paper_hat_b_code) i otwieramy przykład o takiej samej nazwie (epd2in7b-demo). Po skompilowaniu oraz wgraniu programu na naszym ekranie powinna pojawić się następująca sekwencja: