Nie jest tajemnicą, że otwieranie bramy pilotem jest bardzo wygodne. Są natomiast sytuacje, kiedy możliwość sterowania z poziomu Android Auto lub Asystenta Google jest bardzo pomocna. A skoro jest taka możliwość, to może warto o niej napisać. Tym bardziej, że po drodze można się trochę nauczyć o MQTT, Node Red czy innych technologiach.
Dzisiejszy wpis będzie nietypowy. Spróbuję stworzyć listę doświadczeń podsumowujących kilka lat amatorskiego tworzenia projektów opartych o Arduino, ESP8266 i ESP32. Mam świadomość, że wiele osób podchodząc do pierwszych projektów zastanawia się, jak rozwiązać różne kwestie techniczne i musi wybrać jakąś drogę. Nie zawsze jest to łatwe i nawet nie zawsze wiadomo o co zapytać. Dlatego postaram się zebrać moje doświadczenia w postaci listy praktycznych porad.
Arduino Leonardo i jeden z modułów ESP32
Oczywiście nie należy traktować tej wiedzy, jako prawdy objawionej i jedynej słusznej, jak zresztą żadnych rad znalezionych w Internecie. To tylko owoc moich doświadczeń, mój wybór, na pewno wiele rzeczy da się zrobić inaczej i usprawnić. Poza tym wypracowywanie własnej ścieżki, to także przyjemna część tej zabawy.
Trzeba też mieć świadomość, że doświadczenia dotyczą w głównej mierze projektów związanych z tzw. inteligentnym domem, czyli automatyką budynkową lub “Internetem rzeczy”. Budowane urządzenia w przeważającej większości komunikują się za pośrednictwem sieci komputerowej - Ethernet lub WiFi. Dla innych typów projektów niektóre porady mogą nie mieć zastosowania.
Dzisiaj będzie szybki projekt - urządzenie do powiadamiania. Pod tym nieco tajemniczym tytułem kryje się urządzenie, które może mieć różne zastosowania. W moim przypadku będzie służyło jako dodatkowe powiadomienie o tym, że ktoś zadzwonił domofonem. Jeden z domofonów zlokalizowany jest na dużej hali, na której pracują głośne urządzenia i nie zawsze słychać dzwonek. Dlatego urządzenie poza wydawaniem dźwięku ma mrugać, żeby zwrócić na siebie uwagę. Ponieważ bramofony są dwa, więc dobrze było, gdyby po kolorze światła dało się odróżnić, przy którym z nich stoi gość.
Tworząc różne projekty, czy to z Arduino, czy z ESP8266, a nawet z użyciem Raspberry Pi, stykamy się z problemem - jak połączyć wszystkie przewody, żeby było w miarę elegancko i solidnie. Najlepszym przykładem może tu być użycie szyby 1-wire do podłączenia termometrów DS18B20. Specyfiką tego interfejsu jest możliwość podłączenia bardzo wielu termometrów (u mnie w domu jest ich aktualnie 16) do jednego przewodu (będąc precyzyjnym - do dwóch lub 3 przewodów). Ponieważ układ ma topologię mieszaną, jednak w większości gwiaździstą - wiele przewodów schodzi się w jednym punkcie i trzeba je podłączyć do Arduino.
Ktoś mi ostatnio zarzucił zbytnie przywiązanie do technologii przewodowych. Postanowiłem więc wyjść naprzeciw oczekiwaniom i przygotować bezprzewodową wersję układu sterującego urządzeniami elektrycznymi na 433MHz. Choć tak naprawdę skłoniła mnie do tego konkretna potrzeba. Niezależnie od motywacji powstała nowa wersja bramki IP-433.92MHz, tym razem działająca przez WiFi. Dzięki temu można ją powiesić w miejscu, gdzie jest zasięg Wifi, a jednocześnie odbiorniki 433MHz (gniazdka, urządzenia w puszkach, radiowe włączniki, itp.). Do urządzenia dorzuciłem jeden mały “gratis”, ale o tym za chwilę.
Jestem zwolennikiem łączności przewodowej tam gdzie to możliwe i uzasadnione. Dlatego, tam gdzie się da, stosuję skrętkę zamiast wifi. Natomiast chcąc zbudować budżetową instalację automatyki domowej w istniejącym budynku czasem warto rozważyć systemy radiowe, tym bardziej, że są sprawdzone i tanie. Tanie? Tak, bo nie mówię tu o bezprzewodowych systemach inteligentnego domu, tylko o popularnych sterownikach działających na częstotliwości 433,92MHz.
Dawno temu pisałem o zestawie gniazdek na pilota
, które do tej pory z powodzeniem stosuję do sterowania świąteczną iluminacją. Od tego czasu wiele się zmieniło, a wśród radiowych elementów różnych producentów można znaleźć wiele ciekawych urządzeń. Wśród odbiorników, poza opisywanymi już wtykanymi “gniazdkami”, możemy znaleźć gniazdka pasujące w tradycyjne puszki, oprawki do żarówek, przekaźniki pasujące do puszek, sterowniki żaluzji czy nawet sygnalizatory akustyczne (z zestawów dzwonków bezprzewodowych). Natomiast nadajniki to już nie tylko proste piloty, ale także zwykłe przyciski ścienne, czujniki ruchu (do puszek i zewnętrzne) czy czujniki otwarcia drzwi.
Trzy lata temu opisywałem integrację
dwuprzewodowego, taniego domofonu Eura
z instalacją automatyki domowej. Dzięki temu jestem w stanie wykryć, gdy ktoś dzwoni domofonem, zrobić zdjęcie i wysłać je e-mailem. Mogę też zdalnie otworzyć furtkę. Jest to jedna z bardziej pożytecznych funkcji inteligentnego domu. Sprawdza się nawet gdy jestem w domu - będąc w ogrodzie można nie usłyszeć dzwonka. Natychmiastowe powiadomienie e-mailowe bardzo sprawdza się w takim przypadku.
Od pewnego czasu buduję jednak inną instalację automatyki domowej i nadeszła pora, żeby zainstalować tam domofon. Ponieważ wymagania są większe, a instalacja będzie bardziej skomplikowana, trzeba dobrać właściwy system. Zdecydowałem się na analogowy, sprawdzony standard “4+n”. System ten nazywany jest często pięcioprzewodowym, bo taka liczba żył biegnie zwykle od centralki (zasilacza) do unifonów (słuchawek).
Drukarka została zbudowana
, trzeba jeszcze wprawić ją w ruch. Nadszedł więc czas, żeby do Arduino, na którym oparty jest sterownik, wgrać jakiś program. Jaki? Wybór nie jest oczywisty, ale mi spodobał się pakiet Repetier
, który zawiera Repetier Firmware
.
Drukarka ruszyła. Ponieważ projekt miał być budżetowy (w granicach rozsądku), podsumowanie kosztów może być interesujące. Założenia od początku budowy
pozostały niezmienne, jednak dwie rzeczy nie doszły z Chin - głowica i pasek napędowy GT2. Ponieważ nie chciałem czekać na ponowną wysyłkę, poprosiłem o zwrot pieniędzy a części kupiłem, nieco drożej w Polsce.
Trochę mi zajęło skompletowanie części do drukarki 3d, ale już wszystko jest więc pora zdać małą relację z budowy. Samo składanie w rzeczywistości trwało długo, bo robiłem to partiami, w miarę jak docierały części. Jeszcze raz zaznaczę, że to moja pierwsza drukarka 3d i pewnie jest wiele osób, które mogłyby to lepiej opisać ze względu na swoje doświadczenie. Z drugiej jednak strony, dla doświadczonych osób pewne zagadnienia mogą wydawać się oczywiste i niewarte wspomnienia, podczas gdy ja mam w pamięci problemy, które napotkałem, więc może początkujące osoby także zyskają na lekturze tego tekstu.