System monitorowania temperatury z powiadamianiem SMS – cz. 1

W dzisiejszym wpisie przedstawię poskładany z klocków kompletny system monitorowania temperatury z powiadamianiem sms i mail. Urządzenie jest oparte o Raspberry Pi, system raspian i darmowe oprogramowanie nettemp, które zawiera całą logikę. Założenie jest takie, by monitorować temperaturę w czterech/pięciu punktach serwerowni i wilgotność. Zbyt niska lub wysoka mierzona wartość ma powodować wysłanie smsa lub maila pod zdefiniowane wcześniej numery/adresy. Całość musi się zmieścić w obudowie 1U, która zostanie wkręcona do szafy rackowej.

Zestaw części niezbędnych do budowy

Budując system monitorowania i powiadamiania należy zaopatrzyć się w Raspberry Pi, mocniejsze Raspberry Pi 2 lub Banana Pi na którym również działa nettemp. Niezbędny jest również zasilacz stabilizowany 5V min. 2A, obudowa, czujniki i modem obsługiwane przez nettemp. Opcjonalnie można użyć wyświetlacza LCD 2×16 znaków i sterownika I²C.

Mój zestaw to:

  1. Raspberry Pi B i karta 8GB Class 10;
  2. Zasilacz DIY 2x5V 2×1,5A;
  3. Modem Huawei E220 i karta prepaid Virgin Mobile;
  4. Wyświetlacz LCD HD44780 2×16 znaków + driver I²C;
  5. 2 czujniki DS18B20 i 1 czujnik DHT11;
  6. Gniazda natynkowe RJ12 jako obudowy do czujników;
  7. Płytka DIY z gniazdami RJ12 do podłączenia czujników;
  8. Obudowa 1U po KVM’ie VGA;
  9. Kabelki żeńskie goldpin, kabel telefoniczny, inne drobiazgi.

Budowa systemu monitorowania temperatury z powiadamianiem

Budowę mojego systemu opartego na nettemp zacząłem od obudowy 1U i rozplanowanie w niej modułów. Pierwszy etap to usunięcie płyty głównej przełącznika KVM i odzyskanie z niej przydatnych części (transformator, radiatory, stabilizatory).

Zostawiłem instalację 230V, czyli przedni włącznik, tylne gniazdo z bezpiecznikiem i kable – idealnie nadadzą się w budowanym układzie. Wykorzystując zdemontowany transformator sieciowy i stabilizatory, zbudowałem klasyczny zasilacz liniowy z dwoma stabilizatorami LM7805. Zaprojektowana płytka posiada otwory montażowe pasujące pod gwintowane tuleje dystansowe obudowy.

Napięcia wyjściowe są dostępne za listwie ARK i goldpinach. Stabilizatory zostaną zamontowane na radiatorach poza PCB. Z założenia jeden obwód będzie zasilał Raspberry Pi, drugi pozostałe urządzenia typu wyświetlacz, modem itp.

Założyłem, że czujniki będę podłączał za pośrednictwem gniazd RJ12 i 4-żyłowego kabla telefonicznego. Wystarczyło zaprojektować prostą płytkę drukowaną, na której uwzględniłem rezystor 3,9kΩ podciągający linię DQ czujników DS18B20 do plusa zasilania. Płytka została wyposażona w 3 pinowe gniazdko do podłączenia z Raspberry Pi.

Najmniej wdzięczny etap prac, to przygotowanie obudowy. Na panelu przednim potrzebowałem otwór pod wyświetlacz LCD. Z uwagi na estetykę, nie było tu mowy o ręcznym wycinaniu multiszlifierką – zajął się tym znajomy, profesjonalnie wycinając metal frezarką. Tylną część ciąłem już sam dremelem, robiąc (prawie) prostokątne otwory pod gniazdka RJ12 małej płytki i kartę sieciową oraz USB Raspberry Pi. Pozostałe otwory po gniazdach VGA zostały finalnie zaślepione.

Między przedni, odkręcany panel, a pionową ściankę obudowy wstawiłem kawałek przezroczystego tworzywa z jakiegoś blistra, którego zadaniem jest ochrona wyświetlacza przed uszkodzeniem.

Do tak przygotowanej obudowy należało zamontować RaspberryPi, płytkę z gniazdkami, zasilacz, wyświetlacz i połączyć to wszystko ze sobą kabelkami.

Zdecydowałem się na niezbyt wygodne zasilanie RPi przez gniazdko microUSB tylko ze względu na dobre zabezpieczenie, znajdujące się na płytce komputerka. Stabilizowane +5V można też podpiąć do goldpinów, ale awaria np. stabilizatora na wyjściu którego wzrośnie napięcie, spowoduje uszkodzenie malinki. Zakup wtyczki microUSB i dolutowanie do niej dwóch kabelków pozwoli spać spokojniej :).

Przy podłączaniu całej reszty przydatna będzie rozpiska pinów w Raspberry Pi.

Stabilizatory LM7805 zasilacza przykręciłem do niewielkich radiatorków z odzysku – jedno i drugie posmarowałem pastą termoprzewodzącą, dzięki czemu scalaki oddają lepiej ciepło do radiatorków a te do metalowej obudowy. Zasilanie wyświetlacza LCD i sterownika I²C podłączyłem do drugiej sekcji stabilizującej +5V, linie SDA i SCL do pinów w Raspberry (GPIO2, GPIO3). Zasilanie płytki Z RJ12 zostało podłączone pod pin 3V3 i GND, linia DATA DQ do GPIO4. Po zaprojektowaniu płytki okazało się, że korzystnie byłoby użyć rówież czujnika DHT11. Zrobiłem więc małą przeróbkę – w skrajnym czarnym gnieździe RJ12 odciąłem linię DATA od rezystora i przylutowałem kabelek dołączony do GPIO17. Takie rozwiązanie wymusza dołączenie rezystora podciągającego do +3V3 – ja zamontowałem go bezpośrednio w obudowie czujnika.

Druga część zawiera opis instalacji i konfiguracji systemu, oraz podłączenie czujników i modemu: System monitorowania temperatury z powiadamianiem SMS – część 2.

Wojtek

Zobacz komentarze

  • A czy mógłbyś wrzucać schematy swoich układów? Ja wiem, że zasilacz na 7805 to abecadło ale pokazanie tego jako całość czy poszczególne moduły pomogłoby wielu amatorom zrozumieć klocki :)

  • Świetnie rozpisane. Myślałem nad czymś takim, ale po tym artykule biorę się do roboty. Dzięki!

  • Sam system robi wrażenie, w szczególności możliwość powiadamiania sms. Robiąc instalację samemu możemy zaoszczędzić sporo pieniędzy

  • witam,
    Może moje pytanie będzie nie na miejscu, ale..czy dużym wyzwaniem byłoby zbudowanie w/w układu z pominięciem Raspberry Pi? Czy układ będzie trudno zbudować na płytce stykowej? czy mógłbym prosić o odpowiedź?
    Pozdrawiam

Ostatnie posty

Słuchanie stacji radiowych DAB+ w Linuksie

Radio nieodłącznie kojarzy się z nieśmiertelnym FM lub transmisją intermetową. Standard DAB+ wydaje się być…

2 tygodnie temu

Tani odpowiednik baterii 9V 6F22

Poniżej opiszę odpowiednik drogiej (w stosunku do pojemności) baterii 9V o oznaczeniu 6F22. Ze względu…

4 tygodnie temu

Drogowa / budowlana lampa ostrzegawcza – budowa i działanie

Widząc migającą na pomarańczowo lampę ostrzegawczą, zastanawiałem się (ciekawe czy tylko ja) jak jest zbudowana,…

1 miesiąc temu

ConsolePi – genialny serwer szeregowej konsoli

W tym wpisie przedstawię bardzo ciekawe narzędzie na RaspberryPi, przydatne każdemu administratorowi urządzeń sieciowych. W…

2 miesiące temu

Adapter USB-HDMI Grabber Video

Poniżej opiszę mały, przydatny gadżet, który przechwytuje obraz i dźwięk z portu HDMI i przekazuje…

2 miesiące temu

Przejściówka USB-RS232 PL2303HXA PHASED OUT SINCE 2012

Tytuł tego wpisu zawiera część komunikatu z menedżera urządzeń systemu Windows 11, po wsadzeniu w…

2 miesiące temu