Hej lampko, włącz się!

Włączamy lampkę przez Wi-Fi dzięki apkom i asystentom głosowym.

Filmik pokazujący efekt prac
To taki mini projekt, całkiem prosty, a daje naprawdę dużo zabawy, wiedzy i perspektyw na rozwinięcie. Szczególnie, że już niedługo w projekcie szklarni będę używał podobnych rozwiązań.
Zacznę od mojej lampki na biurko; po drodze jej zasilania do gniazdka wpiąłem moje małe urządzenie, na razie w wersji testowej.
Moje urządzenia to: mała przetwornica z 230 VAC na 3,3 VDC, przekaźnik oraz ESP12 – na razie na boardzie, ale wersja docelowa będzie miała samo ESP12, żeby urządzenie zamknąć w naprawdę małej obudowie.
Pod takimi hasłami znajdziecie moduły na alliexspres czy ebay
Kolejnym krokiem było programowanie. Wszystkie programy i skrypty, jakich używam, znajdziecie w repozytorium, tutaj. Jeśli będziecie mieć jakieś pytania, piszcie śmiało. Pamiętajcie, przeczytajcie informacje w komentarzach, żeby dokonać odpowiedniej edycji kodu, z uwzględnieniem własnych preferencji.
Będzie wam też potrzebne środowisko do skompilowania. Ja używałem Visual Studio 2017. Będzie potrzebny też NuGet M2MqttDotnetCore. W tym wszystkim bierze udział jeszcze Raspberry Pi, które jest naszym brokerem dla MQTT czyli protokołu do komunikacji pomiędzy urządzeniami; można o nim poczytać na Wikipedii.
ESP możemy zaprogramować łatwo dzięki Arduino IDE. Na Raspberry będzie potrzebne nam Paho MQTT, tutaj opis jak instalować.
Następnie, potrzebowałem aplikacji do sterowania lampką. Dzięki Weaved i podłączeniu Raspberry do sieci, mogłem używając skryptów, włączać i wyłączać lampkę z każdego miejsca, z którego miałem dostęp do internetu na komputerze.
Tak zaawansowane funkcje nie są jednak mi potrzebne do lampki. Postanowiłem napisać jakąś aplikację, która będzie działać w sieci lokalnej. Zdecydowałem się na C#, bo dobrze go znam. Najpierw napisałem apkę na PC, potem na Androida, ale średnio mi wychodzi tworzenie interfejsów graficznych i tutaj wpadłem na pomysł!
Coraz popularniejsi stają się asystenci głosowi: Alexa od Amazona, Google Assitant w Google Home czy telefonie z Androidem – taka nowsza wersja Google Now, Siri – a także Cortana tworzona dla Windowsa, choć pod Androidem też działa. Testowałem różne rozwiązania, tutaj filmik jak zainstalować Cortanę, jeśli ktoś woli Google Assistant (mi się bardziej podobał), to też można tworzyć dla nich dzięki takim api. Ostatecznie wybrałem Cortanę, bo łatwo tworzyć dla niej aplikacje w C#. Zaimplementowałem zatem to, co już miałem. Efektem końcowym jest lampka sterowana komendami głosowymi (pozostałe rozwiązania tez równolegle działają).
Warto się przyjrzeć tematowi asystentów głosowych, jeśli jeszcze ich nie testowaliście. Trochę trudno się przestawić na taką możliwość, ale po jakimś czasie zaczyna faktycznie dawać pożytek. Niedawno głośno było o Raspberry AIY i widać w sieci wysyp różnych pomysłów, jak tam instalować asystenta głosowego. Ja póki co eksperymentuję z tym, ale jak wyjdzie coś ciekawego, z pewnością opiszę to na blogu.
Jeśli przejrzycie kod to zobaczycie, że takie rozwiązania bardzo łatwo rozszerzać – sterować czymś więcej lub – w drugą stronę – odczytywać coś.

2 thoughts on “Hej lampko, włącz się!

  1. Czy możesz oszacować ile kosztowało Cię w sumie wdrożenie tego rozwiązania i jak bardzo czasochłonne było jego wdrożenie?

    • Jeśli chodzi o koszty, to sam prototyp około 40 zł nie liczę tu Raspberry bo działa już do innych rzeczy a to jednorazowa inwestycja. Wiadomo że koszty też spadają przy kolejnych sztukach bo ESP-12 można bez boarda dać i płytkę sobie przygotować do tego. Czasochłonność zależy głownie od znajomości technologi i programowania ale nie jest to duży czas, jeśli ktoś liznął już tych tematów opisanych to można zrobić weekendowy projekcik (:

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *