System monitorowania temperatury z powiadamianiem, oparty o nettemp, zbudowałem ponad 3 lata temu. Całość opisałem w dwóch częściach: wpis 1 i wpis 2. W skrócie – układ opierał się na Raspberry v1, czujniki DS18B20 mierzyły temperaturę, całość, łącznie z wyświetlaczem LCD wsadziłem w obudowę Rack 19 1U i wkręciłem w szafę w serwerowni. Po 3 latach przyszedł czas na modernizację.
Pierwszym powodem modernizacji była możliwość zmiany Raspberry pierwszej generacji na 4-rdzeniową malinkę w wersji 3. Generalnie urządzenie przez 3 lata pracowało praktycznie bezawaryjnie 24 godziny na dobę, pomijając dwukrotne rozsypanie się struktury plików na karcie. Wadą było dość powolne działanie, skanowanie w poszukiwaniu nowych czujników trwało naprawdę długo, poruszanie się po menu też nie było jakoś bardzo płynne. Obsługa modemu (powiadamianie SMS) dość mocno obciążała CPU. Zastosowanie RPi3 o nieporównywalnie większej wydajności z pewnością wyeliminowałoby te niedogodności. Nowa płytka pociągnęła za sobą konieczność przeprowadzenia kilku zmian.
Do Raspberry Pi 3 zaleca sie zasilacz o napięciu 5V i wydajności min. 2,1A. Napięcie oczywiście stabilizowane. W pierwotnym rozwiązaniu użyłem dwóch stabilizatorów LM7805 (opis tutaj). W zamyśle jeden miał zasilać płytkę, drugi peryferia. Dla energooszczędnej RPi 1 było to wystarczające. Z drugiej strony mało eleganckie, bo na wejście 7805 było podawane aż 15V, co przy poborze prądu na poziomie 1A dawało aż 10W strat i 5W mocy użytecznej czyli sprawność na poziomie 33%. Generalnie i transformator i radiator z 7805 były wyraźnie ciepłe. Takie rozwiązanie dla RPi 3 nie wchodziło w rachubę.
Rozwiązaniem byłby stabilizator impulsowy gdzie sprawność bez problemu przekracza 80%. By jak najmniej przerabiać istniejącą elektronikę, zdecydowałem się na zastosowanie taniego modułu z Chin na układzie (klonie) LM2596. Podobne rozwiązanie zastosowałem w zasilaczu do Raspberry / Banana Pi, gdzie nie do końca ufałem tej przetwornicy i użyłem jej jako układu obniżającego napięcia dla 7805, układ sprawdził się w boju i teraz bezpośrednio zasila malinkę. Na szybko usunąłem 2 radiatory ze stabilizatorami i kabelkami podpiąłem moduł przetwornicy:
Skręciłem potencjometr na minimum, włączyłem zasilanie i ustawiłem na złączu śrubowym napięcie 5,05V, które będzie zasilało Raspberry.
Raspberry 3 ma inny rozkład otworów montażowych i dodatkowe 2 porty USB. Wymusiło to nawiercenie na nowo otworów w dnie obudowy oraz poszerzenie otworu na tylnej ściance, to zrobiłem tanim multitoolem z marketu z mini tarczą do metalu. Cały proces niewarty opisywania i fotografowania, dosłownie 10 minut pracy. Potem wszystko podłączamy, tak jak w RPi1, czyli SDA i SCL od wyświetlacza do portów GPIO 2 i 3, Data z DS18B20 do GPIO 4, zasilanie 3V3 i GND:
Przemek z techfreak.pl postanowił chyba odpocząć od kodu nettempa, bo na githubie ostatnie zmiany były jakiś (spory) czas temu: https://github.com/sosprz/nettemp. Ale forum cały czas żywe
https://nettemp.pl/forum/ i chłopacy wzięli sprawy, a nawet kod w swoje ręce i jest fajny fork: https://github.com/mariano78/nettemp. Nie będę opisywał jak to zainstalować, bo na githubie jest to wyjaśnione, są też inne instrukcje, jak np. ta tutaj w formie wiki. Generalnie ten fork nettemp działa i ma parę dodatkowych funkcji.
W forku jest możliwość wysyłania danych do ThingSpeak. Coś podobnego opisałem kiedyś przy okazji zabaw z innych IoT: ESP easy – prosty sposób na obsługę czujników po WiFi. Generalnie tworzymy sobie kanał, fieldy pomiarowe, parametryzujemy je, spisujemy sobie WRITE API KEY. Po stronie nettempa wchodzimy w Device -> Device -> Settings, widzimy listę czujników:
Po prawej stronie widać przy każdym czujniku niebieski przycisk [More], po wciśnięciu włączamy widoczność w opcji thingspeak:
Teraz można przejść w podmenu do zakładki ThingSpeak, wpisać write API Key odczytany z kanału, przypisać czujniki z nettempa do fieldów, ustawić interwał wysyłania danych:
I cieszyć się odczytami w dowolnie skonfigurowanej formie z dowolnego miejsca świata z dostępem do netu, np. wykresy:
Albo zegary ze zdefiniowanymi zakresami (polami) w różnych kolorach:
Z poziomu ThigSpeak można sobie włączyć powiadomienia na Twittera itp. Oczywiście sam nettemp może nas informować o przekroczonych wartościach za pomocą smsów, maila czy wiadomościami Pushover na telefon z Androidem czy iOS. Mój kanał znajdziesz pod tym adresem:https://thingspeak.com/channels/475816
Przedstawiona wyżej modernizacja ma właściwie same zalety. Na pewno odciążony jest transformator, który ma moc 12VA i teraz nie idzie to w ciepło, bo straty są pewnie z 10 razy mniejsze niż na liniowych stabilizatorach. Do tego nie ma lagów przy klikaniu po menu no i doszła fajna funkcja wysyłania danych do ThingSpeak i jak mam alert, to mogę sobie np. z domu sprawdzić jak te temperatury wyglądają na wykresach.
Mamy w domu dość wiekowy (2012) Boombox Philips, model AZ385/12 używany przez dzieci głównie jako…
Mega tanie, bezprzewodowe moduły Internet of Things na dobre zadomowiły się w naszych sieciach. Od…
Pewnie nie każdy posiadacz tytułowej stacji lutowniczej wie, że posiada ona możliwość aktualizacji firmware'u. Producent…
Jakiś czas temu, przeglądając Aliexpress natknąłem się na ciekawy shield do Arduino Nano. Według opisu…
W mailach i komentarzach kilka razy przewijała się prośba o ten wpis. Chodzi o aktualizację…
Dziś tematyka audio, a nawet audiofilska. Uznany wzmacniacz słuchawkowy Lehmann Black Cube Linear o dość…
Zobacz komentarze
Dziękuję za ten wpis. Jakby nie patrzeć jest to mała reklama NT, której bardzo nam trzeba.
Nie ma sprawy :). Nettemp fajnie działa, bardzo łatwo go wdrożyć.
Dodatkowo możesz użyć widgetu IoT ThingSpeak Monitor Widget i mieć fajny kafelkowy podgląd danych z TS na telefonie.
Racja, sam używam do temperatury-jeden rzut oka na telefon i już wiem jaką mam temperaturę na zewnątrz. Najfajniejsze jest to, ze nie trzeba uruchamiać żadnej aplikacji czy przeglądarki aby zobaczyć :)
Kiedyś bawiłem się Nettempem i wszystko było klarowne, człowiek wiedział jak się tym posłużyć. Niedawno musiałem bawić się Domoticzem, poruszanie się po tym nie ma nic wspólnego z prostotą i logiką. 5 dla Nettempa 3 dla Domoticza, ( jestem starej daty, wtedy szóstek jeszcze nie było ).