Ten artykuł obejmuje:
1: Wprowadzenie do czujnika IR
Odbiornik IR to urządzenie, które może wykrywać i odbierać sygnały podczerwieni (IR). Jest zwykle używany w systemach zdalnego sterowania IR do odbierania poleceń z ręcznego zdalnego sterowania lub innego nadajnika IR. Odbiornik IR składa się z fotodiody lub innego komponentu wrażliwego na IR, który wykrywa sygnały IR i obwód demodulatora, który dekoduje sygnały.
Wyjście z odbiornika IR jest zwykle sygnałem cyfrowym, który może być przetwarzany przez mikrokontroler lub inne urządzenie elektroniczne.
2: Pinout czujnika IR
Czujnik odbiornika IR to mały moduł, który zwykle ma trzy piny:
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 pinu wejściowego na Arduino.
3: 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 |
Należy zauważyć, że różne czujniki IR mogą mieć różne pinuty i napięcia, dlatego ważne jest, aby sprawdzić arkusz danych dla określonego czujnika, którego używasz.
2: Instalowanie wymaganej biblioteki
Dla Arduino dostępnych jest kilka zdalnych bibliotek IR. 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.
4: Dekodowanie zdalnych przycisków IR
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ładowy szkic wydrukuje sygnał IR w formacie sześciokątnym i używany protokół.
Wyodrębnij kluczowe kody zdalnych przycisków IR, których chcesz użyć w swoim projekcie. Korzystając z tych kodów kluczy i funkcji biblioteki Irsemote Funkcje, możemy kontrolować żądane działania, gdy odpowiednie przyciski są naciśnięte na pilocie IR.
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 sześciokątnym, który jest następnie drukowany na monitor szeregowych.
2: Wyjście
Po przesłaniu kodu naciskaliśmy trzy przyciski czerwone, zielone i niebieskie na pilocie IR.
Po kodzie sześciokątnym uzyskano dla czerwonego, zielonego i niebieskiego przycisku na monitorze szeregowym IDE.
Przycisk IR | Kod heksowy |
---|---|
Czerwony przycisk | 0xfb04Ef00 |
Zielony przycisk | 0xfa05ef00 |
Niebieski przycisk | 0xf906Ef00 |
Używając tego samego kodu, które można zdekodować.
5: Kontrolowanie diody LED za pomocą pilota IR
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. Możesz także użyć dekodowanych sygnałów do kontrolowania jasności lub temperatury urządzenia.
1: Schemat
Dany obraz wyjaśnia połączenie diod LED z Arduino i odbiornikiem IR.
Czujnik LED i IR | PIN Arduino |
---|---|
Czerwona dioda LED | D5 |
Czujnik IR | D8 |
2: Kod
Poniżej znajduje się kod Arduino dla IR Pilot Controlds. Kod można przesłać na płytę Arduino Uno, otwierając Arduino IDE.
#include /*zawiera bibliotekę zdalną ir
Irrecv ir (8); /*Zdefiniowany pin IR*/
int czerwony = 5; /*Czerwona dioda LED przy pin D5*/
Bool Red_State = 1; /*Stan czerwony LED*/
void setup ()
Ir.enableirin (); /*Komunikacja IR umożliwia*/
pinmode (czerwony, wyjściowy); /*Zestaw czerwonego szpilki LED jako wyjściowy*/
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*/
/*Czerwony kod LED*/
if (ir.Decodedirdata.DecodedRawData == 0xfb04Ef00 && red_state == 1)
DigitalWrite (czerwony, wysoki);
Seryjny.println („czerwona dioda LED”);
Red_State = 0;
jeszcze if (ir.Decodedirdata.DecodedRawData == 0xfb04Ef00 && red_state == 0)
DigitalWrite (czerwony, niski);
Seryjny.println („czerwona dioda LED off”);
Red_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 zdefiniowana jest czerwona dioda LED.
w organizować coś() Część, inicjowaliśmy komunikację IR i wskaźnik transmisji jest zdefiniowany. Wraz z tym szpilką LED jest ustawiona jako wyjście za pomocą pinmode () funkcjonować.
W pętla() część kodu Jeśli inaczej Stan jest stosowany do czerwonej diody LED. 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śnij czerwony przycisk, a dioda LED będzie świecić.
Aby wyłączyć diodę LED, po prostu naciśnij przycisk ponownie, ponieważ użyliśmy warunku przełączania w kodzie Arduino.
Za pomocą tej samej metody możemy kontrolować urządzenia prądu przemiennego, zastępując diodę LED przełącznikiem przekaźnika.
6: Dekodowanie pilota IR opartego na smartfonach za pomocą Arduino
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, 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, takie jak telewizory, klimatyzatory i systemy automatyzacji domowej.