Skocz do zawartości

Sterowanie urządzeniami na IR przez Azure IoT Central i Raspberry Pi


Pomocna odpowiedź

Napisano

Projekt zaczął się od chęci zdalnego sterowania klimatyzacją, ale finalnie wyszło dużo bardziej uniwersalnie. Rozwiązanie pozwala sterować praktycznie dowolnym urządzeniem z pilotem na podczerwień, na przykład klimatyzatorem, telewizorem albo wieżą. Najpierw nagrywamy sekwencje IR z oryginalnego pilota, a potem Raspberry Pi odtwarza je nadajnikiem IR. Jako „panel” używamy Azure IoT Central, tak więc przyciski sterujące mamy w przeglądarce i/lub na telefonie, a do tego można dorzucić telemetrię, reguły wlaczania i widoki pod konkretne potrzeby.

Mechanika

Od strony mechanicznej projekt jest celowo prosty, bo liczy się funkcjonalność i łatwość uruchomienia. Raspberry Pi może stać w dowolnym miejscu, a nadajnik IR warto ustawić tak, aby „widziała” go fotodioda odbiorcza w klimatyzatorze lub TV. W przykładowym projekcie moduły IR są na przewodach, więc można je przykleić taśmą dwustronną w dogodnym miejscu albo schować do małej obudowy. Działa to stabilnie bez żadnej zaawansowanej konstrukcji.

Elektronika

Sercem układu jest Raspberry Pi, do którego podłączamy trzy moduły. Pierwszy to DHT11, który mierzy temperaturę i wilgotność, a w praktyce pozwala szybko zweryfikować, czy klimatyzacja faktycznie pracuje (zmiana temperatury jest widoczna w IoT Central). Drugi element to odbiornik IR, którym nagrywam kody przycisków z oryginalnego pilota. Trzeci to nadajnik IR 940 nm, który wysyła komendy do urządzenia. Do wysyłania IR używamy GPIO 18, czyli w oparciu o sprzętowe PWM, co przekłada się na powtarzalność i skuteczność transmisji.

Elementy wykorzystane:

Oprogramowanie

Cała komunikacja z Azure IoT Central nie wymaga ciężkich bibliotek. W projekcie wykorzystano REST API i wywołania curl, dzięki czemu całość jest prosta do uruchomienia i łatwa do modyfikacji. Najpierw rejestruję komendy z pilota przez odbiornik IR i zapisujemy je jako ciągi znaków. Następnie w IoT Central dodaję komendy w szablonie urządzenia, na przykład „On” i „Off”, a w widoku tworzę przyciski do ich wywoływania. Po kliknięciu w IoT Central Raspberry Pi odbiera żądanie i odtwarza zadaną sekwencję nadajnikiem IR, więc sterowanie działa tak, jakbym nacisnął przycisk na oryginalnym pilocie. Dodatkowo Raspberry Pi cyklicznie wysyła telemetrię temperatury, więc na jednym ekranie mam i sterowanie, i podgląd działania. W repozytorium zostawiłem też eksport szablonu IoT Central, żeby łatwiej było wystartować bez przeklikiwania wszystkiego od zera.

Wideo

Jeden obraz mówi więcej niż tysiące slow, a co dopiero film - zapraszam do obejrzenia działającego projektu:

Repozytorium projektu wraz z instrukcja step by step:

https://github.com/MariuszFerdyn/AirConditionIoTCentral

20260103_235520.jpg20260103_235606.jpg

20260103_235744.jpg20260103_235755.jpg

20260103_235732.jpg

Podoba Ci się ten projekt? Zostaw pozytywny komentarz i daj znać autorowi, że zbudował coś fajnego!

Masz uwagi? Napisz kulturalnie co warto zmienić. Doceń pracę autora nad konstrukcją oraz opisem.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...