Kontrola urządzeń domowych bezprzewodowo za pomocą IR Remote i Arduino Uno

Kontrola urządzeń domowych bezprzewodowo za pomocą IR Remote i Arduino Uno
Pilot zdalnego sterowania czujnikiem IR pozwala na kontrolę urządzeń prądu przemiennego za pomocą sygnałów podczerwieni i mikrokontrolera Arduino. Czujnik IR wykrywa sygnały podczerwieni emitowane z pilota, a Arduino przetwarza te sygnały w celu ustalenia pożądanego działania. Można to wykorzystać do włączania i wyłączania urządzeń, dostosowania ustawień temperatury lub kontrolowania innych funkcji.

Ten artykuł obejmuje:

  • 1: Wprowadzenie do czujnika IR
  • 2: Pinout czujnika IR
  • 3: Wprowadzenie do przekaźnika
  • 4: przekaźnik pinout
  • 5: Interfejs czujnik IR z Arduino
  • 5.1: Schemat
  • 5.2: Instalowanie wymaganej biblioteki
  • 6: Dekodowanie zdalnych przycisków IR
  • 6.1: Kod
  • 6.2: Wyjście
  • 7: Kontrolowanie żarówki AC za pomocą IR Remote i Arduino Uno
  • 7.1: Schemat
  • 7.2: Kod
  • 7.3: Wyjście
  • 8: Projektowanie pilota IR opartego na smartfonach dla urządzeń prądu przemiennego za pomocą Arduino Uno
  • Wniosek

1: Wprowadzenie do czujnika IR

Dioda LED LED odbiornika IR lub odbiornik w podczerwieni, jest urządzeniem używanym do wykrywania i odbierania sygnałów podczerwieni. Jest powszechnie stosowany w systemach zdalnych, w których odbiera sygnały z pilota i wysyła je do mikrokontrolera lub innego urządzenia do przetwarzania.

Korzystając z czujnika IR i Arduino, możliwe jest utworzenie dostosowanego i wygodnego sposobu kontrolowania urządzeń AC bez potrzeby ręcznych przełączników lub fizycznych przycisków, można go również zintegrować z innymi inteligentnymi urządzeniami domowymi do automatyzacji.

2: Pinout czujnika IR

Czujnik odbiornika IR to mały moduł, który zwykle ma trzy piny:

  • VCC
  • GND
  • NA ZEWNĄTRZ

VCC PIN jest podłączony do zasilania, takiego jak pin 5V na Arduino, aby zapewnić zasilanie czujnikowi. GND Pin jest podłączony do szpilki uziemienia na Arduino i NA ZEWNĄTRZ PIN jest podłączony do cyfrowego styku wejściowego na Arduino:

3: Wprowadzenie do przekaźnika

Przekaźnik to przełącznik obsługiwany elektrycznie, który umożliwia kontrolę obwodów o wysokim napięciu lub wysokim prądem za pomocą sygnału o niskim napięciu. W połączeniu z mikrokontrolerem Arduino, zapewnia prosty i skuteczny sposób kontrolowania szerokiego zakresu urządzeń i urządzeń.

Arduino wysyła sygnał do przekaźnika, powodując otwieranie lub zamykanie obwodu, co z kolei kontroluje zasilanie do podłączonego urządzenia. Aby uzyskać więcej informacji na temat integracji przekaźnika z Arduino, przeczytaj artykuł interfejs przekaźnika z Arduino i ESP32.

Przekaźnik zawiera następujące szpilki kontrolne:

  • NC (Zwykle zamknięte)
  • Com (Wspólny)
  • NIE (Normalnie otwarte)

Zwykle zamknięte: Przekaźniki w tej konfiguracji są domyślnie zamknięte. Prąd przepływa między wspólną a NC w normalnej konfiguracji, chyba że sygnał wyzwalacza przerwa przepływ prądu.

Wspólny: Kontroluj prąd główny (napięcie zasilania urządzenia zewnętrznego)

Normalnie otwarte: Zwykle konfiguracja otwarta jest przeciwna do NC, ponieważ w tym trybie prąd nie przepływa domyślnie, płynie tylko po otrzymaniu sygnału wyzwalającego z Arduino.

4: przekaźnik pinout

Pinout przekaźnika podwójnego kanału to:

Kod PIN Nazwa pin Specyfikacja
1 VCC Podaż cewki przekaźnikowej
2 W 2 Wejście do kanału 2
3 W 1 Wejście do kanału 1
4 GND GND
5 NIE Normalnie otwarte
6 Wspólny Terminal com
7 NC Zwykle zamknięte

Notatka: Jeśli używasz przekaźnika z więcej niż jednym kanałem, pamiętaj o krótki JD VCC i VCC Pin z złączem (żółty) Jak pokazano na powyższym obrazie.

5: Interfejs czujnik IR z Arduino

Aby użyć czujnika odbiornika IR z Arduino, biblioteką o nazwie IRUMOTE jest wymagane. Ta biblioteka można pobrać ze strony internetowej Arduino i umożliwia Arduino odkodować sygnały IR otrzymane przez czujnik. Po zainstalowaniu biblioteki można ją uwzględnić do szkicu (programu), który jest przesłany do Arduino.

Po podłączeniu czujnika odbiornika IR i przesłaniu szkicu Arduino może zacząć odbierać i interpretować sygnały z pilota IR. Sygnały IR można dekodować za pomocą funkcji dostarczonej przez bibliotekę Irremote, a następnie dekodowane sygnały można użyć do kontrolowania różnych urządzeń.

Na przykład do włączenia lub wyłączenia można użyć określonego sygnału IR lub do kontrolowania jasności lub temperatury.

1: Schemat

Oto podstawowy schemat łączenia czujnika IR z Arduino:

Czujnik IR Arduino
VCC (moc) 5v
GND (grunt) GND
OUT (wyjście) D8

2: Instalowanie wymaganej biblioteki

Istnieje kilka zdalnych bibliotek IR dla Arduino, możesz użyć dowolnej z tych bibliotek zgodnie z wymaganiami i zdalnym protokołem IR, którego używasz.

Zainstalujemy IRUMOTE biblioteka przez Arminjo:

6: Dekodowanie zdalnych przycisków IR

Zanim będziemy mogli kontrolować urządzenie prądu przemiennego, musimy zdekodować pilot IR, abyśmy mogli zdefiniować tę konkretną wartość hex w kodzie Arduino. Że wartość szesnastka odpowiada przyciskowi zdalnego IR, którego możemy włączyć lub wyłączyć urządzenie.

Dostępnych jest wiele pilotów IR, takich jak telewizory, klimatyzatory i systemy automatyki domowej. Dekodując pilota IR, możemy zaprojektować uniwersalny pilot dla wszystkich tych urządzeń.

Aby zdekodować pilot IR, prześlij poniższy kod i naciśnij przyciski na pilocie IR, a następnie obserwuj monitor szeregowy Arduino IDE. Przykład szkicu wydrukuje sygnał IR w KLĄTWA Format i zastosowany protokół.

1: Kod

Płytkę Arduino Uno można zaprogramować, przesyłając kod za pośrednictwem Arduino IDE:

#include /*zawierał bibliotekę zdalną ir
Irrecv ir (8); /*D8 Arduino zdefiniowane*/
void setup ()
Ir.enableirin (); /*Włączona komunikacja IR*/
Seryjny.rozpocząć (9600); /*Szybkość seryjna Baud zdefiniowana*/

void Loop ()
if (ir.Decode ()) / *IR Zdalny biblioteka biblioteki do dekodowania zdalnego * /
Seryjny.println (ir.Decodedirdata.DecodedrawData, hex); /*Wydrukuj wartość sześciokątną*/
opóźnienie (1000);
Ir.wznawiać (); /*Poczekaj na następne wejście* /

Kod rozpoczął się od włączenia biblioteki zdalnej IR. Następnie zdefiniowaliśmy cyfrowy szpilkę Arduino, przy którym zostanie odczytany sygnał IR. Następnie w organizować coś() Część, inicjowaliśmy komunikację IR i wskaźnik transmisji jest zdefiniowany.

W pętla() Część kodu dekodujemy odbierany sygnał IR w formacie szesnastkowym, który jest następnie drukowany na monitorze szeregowym:

2: Wyjście

Po przesłaniu kodu naciskaliśmy trzy przyciski czerwone, zielone i niebieskie na pilocie IR:

Następny KLĄTWA Kod uzyskano dla czerwonego, zielonego i niebieskiego przycisku na monitor szeregowych IDE:

Przycisk IR Kod heksowy
Czerwony przycisk 0xfb04Ef00
Zielony przycisk 0xfa05ef00
Niebieski przycisk 0xf906Ef00

Definiując te kody sześciokątne w programie Arduino, możemy ustawić dowolny z zdalnych przycisków IR jako kontrolę urządzeń AC i żarówek. Tutaj będziemy kontynuować kod szesnastki czerwonego przycisku.

7: Kontrolowanie żarówki AC za pomocą IR Remote i Arduino Uno

Aby kontrolować urządzenie z pilotem IR, musisz użyć dekodowanego KLĄTWA sygnały w twoim szkicu. Na przykład możesz użyć Jeśli inaczej Oświadczenie do sprawdzenia dekodowanego sygnału i włączenia lub wyłączania określonego urządzenia.

1: Schemat

Dany obraz wyjaśnia połączenie żarówki AC z odbiorcą Arduino i IR:

Czujnik AC IR PIN Arduino
Żarówka D5
Czujnik IR D8
Pin przekaźnikowy PIN Arduino
W 2 D5
VCC Vin
GND GND
Com AC (+IVE)
NC2 AC (-ive)

2: Kod

Poniżej znajduje się kod Arduino dla IR Remote Controlarka, następujący kod można przesłać na płytkę Arduino UNO za pośrednictwem Arduino IDE:

#include /*zawiera bibliotekę zdalną ir
Irrecv ir (8); /*Zdefiniowany pin IR*/
int przekaźnik = 5; /*Pin na Arduino dla przekaźnika prądu przemiennego (pin d5)*/
bool relay_state = 1; /*Stan przekaźnika*/
void setup ()
Ir.enableirin (); /*Komunikacja IR umożliwia*/
pinmode (przekaźnik, wyjście); /*Zestaw pinu przekaźnika jako wyjście*/
Seryjny.rozpocząć (9600);

void Loop ()
if (ir.Decode ()) /*dekoduj sygnał IR w formacie sześciokątnym* /
Seryjny.println (ir.Decodedirdata.DecodedrawData, hex);
/*Sprawdź wejście IR*/
/*Kod przekaźnika dla żarówki AC*/
if (ir.Decodedirdata.DecodedRawData == 0xfb04Ef00 && relay_state == 1)
DigitalWrite (przekaźnik, wysoki);
Seryjny.println („żarówka on”);
Relay_state = 0;

jeszcze if (ir.Decodedirdata.DecodedRawData == 0xfb04Ef00 && Relay_state == 0)

DigitalWrite (przekaźnik, niski);
Seryjny.println („żarówka off”);
Relay_state = 1;

Ir.wznawiać ();

Kod rozpoczął się od włączenia biblioteki zdalnej IR. Następnie zdefiniowaliśmy cyfrowy szpilkę Arduino, przy którym zostanie odczytany sygnał IR. Następnie pin do żarówki AC jest zdefiniowany w D5.

w organizować coś() Część, inicjowaliśmy komunikację IR i wskaźnik transmisji jest zdefiniowany. Oprócz tego pin bulwakowy jest ustawiany jako wyjście za pomocą pinmode () funkcjonować.

W pętla() część kodu Jeśli inaczej Warunek stosuje się do żarówki AC. Możesz ustawić dowolny z zdalnych przycisków IR, opisując wartość sześciokątną wewnątrz kodu.

Przycisk IR Kod heksowy
Czerwony przycisk 0xfb04Ef00
Zielony przycisk 0xfa05ef00
Niebieski przycisk 0xf906Ef00

Notatka: Pamiętaj, że są to kod sześciokątny dla zdalnego, którego używamy. Twój pilot może mieć inny kod sześciokątny. Zastąp kod kodem sześciokątnym, który otrzymałeś w monitor szeregowych.

3: Wyjście

Po przesłaniu kodu na płytę Arduino naciśnięcie czerwonego przycisku na zdalnej żarówki AC będzie świeci po otrzymaniu sygnału z przekaźnika:

Aby wyłączyć żarówkę AC, po prostu naciśnij przycisk ponownie, ponieważ użyliśmy warunku przełączania w kodzie Arduino:

Poniżej znajduje się wyjście terminala szeregowego:

Za pomocą tej samej metody dowolne urządzenia AC można kontrolować za pomocą przełącznika przekaźnika i pilota IR.

8: Projektowanie pilota IR opartego na smartfonach dla urządzeń prądu przemiennego za pomocą Arduino Uno

Jeśli Twój smartfon ma czujnik IR, możesz zaprojektować niestandardowy pilot do sterowania urządzeniami i urządzeniami. Najpierw musimy zdekodować zdalny IR oparty na smartfonach za pomocą Arduino, potrzebujesz modułu odbiornika IR i płyty Arduino.

Korzystając z powyższego kodu, możemy łatwo zdekodować dowolny pilot IR w smartfonach, a także możemy zaprojektować niestandardowy.

Poniżej przedstawiono przykładowe obrazy pilota IR w smartfonach:

Wniosek

Podsumowując, dekodowanie pilota IR za pomocą mikrokontrolera Arduino jest prostym i opłacalnym sposobem kontrolowania różnych urządzeń. Łącząc odbiornik IR z Arduino, przesyłanie szkicu i dekodowanie sygnałów IR, możesz łatwo kontrolować urządzenia i urządzenia AC, takie jak telewizory, klimatyzatory i systemy automatyzacji domowej.