SKU: 17405

Skladom (9 ks)

KY-022 Infrared sensor receiver 3pin module TL1838 VS1838B HX1838

ESP8266Wi-Fi 802.11 b/g/nUART Sériový Most3.3V Logika
2,49 €S DPH

KY-022 Infraprivekčný senzor prijímača 3-pinový modul TL1838 VS1838B HX1838 Popis: KY-022 je modul infračerveného senzora prijímača, ktorý slúži na detekciu…

Expedícia: Do 24 hodín (Pracovné dni)
Doručenie: 1-2 dni Kuriér / Zásielkovňa
Overená technická špecifikáciaNapájanie, logické úrovne a pinout skontrolované v labe
Reálny kódový príkladFunkčný kód pre Arduino IDE / ESPHome v detaile nižšie
Záruka originálneho moduluPriamy dovoz bez nekvalitných klonov

Popis

KY-022 Infraprivekčný senzor prijímača 3-pinový modul TL1838 VS1838B HX1838

Popis: KY-022 je modul infračerveného senzora prijímača, ktorý slúži na detekciu infračerveného žiarenia. Tento modul je vybavený čipom TL1838, VS1838B alebo HX1838, ktorý umožňuje prijímanie signálov z infrakamer. Je ideálny pre rôzne projekty, ako sú diaľkové ovládacie systémy, bezdotykové spínače, sledovanie pohybu a ďalšie.

Funkcie:

Prijíma infračervené signály pomocou čipu TL1838, VS1838B alebo HX1838

Detekuje infračervené žiarenie v okolí senzora

Jednoduché pripojenie a ovládanie pomocou Arduino alebo iných mikrokontrolérov

Vhodný pre rôzne projekty, ktoré vyžadujú detekciu infračerveného žiarenia

Parametre:

Čip: TL1838, VS1838B, HX1838

Napájanie: 3.3V – 5V DC

Pinová konfigurácia: GND, OUT, VCC

Formát výstupu: Digitálny signál

Rozsah detekcie: Infračervené žiarenie

Príkladový kód:

Kód pre čítanie signálov z KY-022 Infraprivekčného senzora prijímača
// Kód pre čítanie signálov z KY-022 Infraprivekčného senzora prijímača
Arduino C++ Príklad
const int IR_PIN = 2; // Pin pre pripojenie výstupu senzora
void setup() {
Serial.begin(9600); // Inicializácia sériovej komunikácie
pinMode(IR_PIN, INPUT); // Nastavenie pinu ako vstup
}

void loop() {
int IR_value = digitalRead(IR_PIN); // Čítanie digitálneho signálu zo senzora
Serial.println(IR_value); // Výpis hodnoty na sériový port
delay(500); // Počká pol sekundy pred ďalším čítaním
}

KY-022 Infračervený senzorový prijímač 3pinový modul TL1838 VS1838B HX1838

Tento modul môže prijímať infračervené signály a odosiela ich na výstup signálu ako digitálnu sekvenciu.

Okrem toho LED integrovaná na module krátko zabliká, keď je detekovaný infračervený signál.

Pomocou senzorového modulu KY-022 je možné zostaviť infračervený prijímač. Na to je potrebný iba modul infračerveného prijímača a jediné Arduino. Arduino funguje ako prijímač signálov a odosiela ich do sériovej konzoly.

Pre nasledujúci príklad kódu je potrebná ďalšia knižnica:

Arduino-IRremote od Ken Shirriff | publikované pod licenciou MIT .

Nižšie uvedený príklad používa túto knižnicu – na tento účel ju odporúčame stiahnuť z Github, rozbaliť a skopírovať do priečinka knižnice Arduino, ktorý sa štandardne nachádza na adrese (C:\User[používateľské meno]\Documents\Arduino\libraries) , aby bol dostupný pre tento príklad kódu a následné projekty. Prípadne je to zahrnuté aj v nižšie uvedenom balíčku na stiahnutie.

Pre systémy infračerveného vysielača a prijímača existujú rôzne protokoly, v ktorých je možné odosielať a prijímať údaje. V nasledujúcom príklade je na príjem použitý upravený príklad SimpleReceiver – použitá knižnica “Arduino-IRremote” sa sama postará o prevod do správnej sekvencie dát. V rámci knižnice však existujú aj iné protokoly/kódovania – tie sú identifikované v dokumentácii/kóde knižnice. Dokumentácia .

Aby ste mohli použiť nasledujúci kód, je potrebné vziať do úvahy niekoľko dôležitých vecí. Najprv musíte otvoriť už existujúci príklad z knižnice, pretože otvorí veľmi dôležitý súbor, ktorý je potrebný na príjem. Ak chcete otvoriť tento príklad, prejdite na Súbor -> Príklady -> IRremote -> SimpleReceiver . Keď to urobíte, všetko, čo musíte urobiť, je nahradiť kód v príklade nižšie uvedeným kódom pre prijímač. Potom už stačí len vybrať Arduino, ku ktorému ste pripojili váš prijímač. Urobíte to nasledovne, prejdete na Nástroje -> Port -> COM . Je dôležité, aby ste vybrali COM, ku ktorému je pripojené vaše Arduino, ktorý bude neskôr slúžiť ako prijímač. V tomto príklade je možné zmeniť riadky 88 na 93.

/* * SimpleReceiver.cpp * * Demonstriert den Empfang von NEC-IR-Codes mit IRrecv * * Copyright (C) 2020-2021 Armin Joachimsmeyer * armin.joachimsmeyer@gmail.com * * Diese Datei ist Teil von Arduino-IRremote https://github.com/Arduino-IRremote/Arduino-IRremote. * * MIT-Lizenz */

/* * Geben Sie an, welche(s) Protokoll(e) für die Dekodierung verwendet werden soll(en). * * Wenn kein Protokoll definiert ist, sind alle Protokolle aktiv. */ //#define DECODE_DENON // Enthält Sharp //#define DECODE_JVC //#define DECODE_KASEIKYO //#define DECODE_PANASONIC // dasselbe wie DECODE_KASEIKYO //#define DECODE_LG #define DECODE_NEC // Beinhaltet Apple und Onkyo //#define DECODE_SAMSUNG //#define DECODE_SONY //#define DECODE_RC5 //#define DECODE_RC6

//#define DECODE_BOSEWAVE //#define DECODE_LEGO_PF //#define DECODE_MAGIQUEST //#define DECODE_WHYNTER

//#define DECODE_DISTANCE // Universaldecoder für Impulsbreiten- oder Impulsabstandsprotokolle //#define DECODE_HASH // Spezialdecoder für alle Protokolle

Arduino C++ Príklad
#include 

/*
* Makros für Eingangs- und Ausgangspin definieren etc.
*/
#include "PinDefinitionsAndMore.h"

#include 

void setup() {
Serial.begin(115200);
// Nur um zu wissen, welches Programm auf meinem Arduino läuft
Serial.println(F("START " __FILE__ " von " __DATE__ "
Using library version " VERSION_IRREMOTE));

/*
* Starten des Empfängers, Aktivieren der Feedback-LED und Abgreifen des LED-Feedback-Pins von der internen Kartendefinition
*/
IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK, USE_DEFAULT_FEEDBACK_LED_PIN);
Serial.print(F("Bereit zum Empfang von IR-Signalen an Pin "));
Serial.println(IR_RECEIVE_PIN);
}

void loop() {
/*
* Prüfen, ob empfangene Daten vorhanden sind und wenn ja, versuchen, diese zu dekodieren.
* Dekodiertes Ergebnis steht in der Struktur IrReceiver.decodedIRData.
*
* Z.B. Befehl ist in IrReceiver.decodedIRData.command
* Adresse ist in Befehl ist in IrReceiver.decodedIRData.address
* und bis zu 32 Bit Rohdaten in IrReceiver.decodedIRData.decodedRawData
*/
if (IrReceiver.decode()) {

// Drucken einer kurzen Zusammenfassung der empfangenen Daten
IrReceiver.printIRResultShort(&Serial);
if (IrReceiver.decodedIRData.protocol == UNKNOWN) {
// Wir haben hier ein unbekanntes Protokoll, drucken Sie weitere Informationen
IrReceiver.printIRResultRawFormatted(&Serial, true);
}
Serial.println();

/*
* !!!Wichtig!!! Aktivieren Sie den Empfang des nächsten Wertes,
* da der Empfang nach dem Ende des aktuell empfangenen Datenpakets gestoppt wurde.
*/

IrReceiver.resume(); // Empfang des nächsten Wertes freigeben

/* * Abschließend prüfen Sie die empfangenen Daten und führen Aktionen entsprechend dem empfangenen Befehl aus */ if (IrReceiver.decodedIRData.command == 0x34) { Serial.println("Signal empfangen"); } else if (IrReceiver.decodedIRData.command == 0x36) { Serial.println("Signal empfangen und dieses Mal ist es ein anderes"); } else { Serial.println("Signal empfangen, aber leider nicht das richtige"); } } }

Dokumentácia