HS-S29-L Infrarotsignal sendende Modul

HS-S29-L Infrarotsignal sendende Modul

1、Einführung

Diese Vorstellung des Infrarot-Signal-Sende-Moduls wird vorgestellt, in der Tat spielen sie eine wichtige Rolle in unserem täglichen Leben.Ein solches Gerät wird weit verbreitet in vielen Haushaltsgeräten verwendet, wie zum Beispiel Kühlern, Fernsehern, DVDs usw., es basiert auf drahtloser Fernbedienung und ist auch ein Fernbedienungssystem, es ist notwendig, seinen Prinzip und die Verwendung zu untersuchen.Die Infrarotstrahler und der Infrarotempfänger sind Geräte, die elektrische Energie direkt in nahes Infrarotlicht umwandeln und gehören zur Gruppe der Dioden, der Infrarotstrahler senden ein moduliertes Signal aus.

2、Schemazeichnung

3、Modulparameter

Pinbezeichnung

Beschreibung

G

GND(Spannungsversorgungsminus)

V

VCC(Spannungsversorgungsplus)

S

Digital Signalspinne

  • Spannungsversorgung: 3.3V / 5V

  • Verbindungsart: PH2.0 Steckerkabel

  • Montageart: Doppelbolzenfixierung

4, Platinegröße

5、Arduino IDE Beispielprogramm

Bibliothekskdatei:2、第二步将UNO开发板的库文件下载后解压在桌面。

1.Infrarot-Signal-Sendmodul-Programm (entspricht Infrarot-Fernbedienung)

Arduino UNO Beispiel (für Mixly IDE, Arduino IDE):2、第二步将UNO开发板的库文件下载后解压在桌面。

#define IR_SEND_PIN 3
#include <IRremote.h>

IRsend   irsend;

void setup(){
  // 启动发送,并指定引脚;开启Arduino主板L灯反馈;
  IrSender.begin(IR_SEND_PIN, DISABLE_LED_FEEDBACK);
  pinMode(8, INPUT);
}

void loop(){
  // 定义红外发射管脚.

  if (!digitalRead(8)) {
      while (!digitalRead(8)) {
        delay(10);
      }
      // 发送红外编码值
      IrSender.sendNEC(0xFF00,0x45,0 );

    }

}

2. Infrarot-Signal-Empfangsmodul-Programm

Arduino UNO Beispiel (für Mixly IDE, Arduino IDE):2、第二步将UNO开发板的库文件下载后解压在桌面。

#include <IRremote.h>

volatile int a;
const String IR_PROTOCOL_TYPE[] = {
  "UNKNOWN",
  "PULSE_DISTANCE",
  "PULSE_WIDTH",
  "DENON",
  "DISH",
  "JVC",
  "LG",
  "LG2",
  "NEC",
  "PANASONIC",
  "KASEIKYO",
  "KASEIKYO_JVC",
  "KASEIKYO_DENON",
  "KASEIKYO_SHARP",
  "KASEIKYO_MITSUBISHI",
  "RC5",
  "RC6",
  "SAMSUNG",
  "SHARP",
  "SONY",
  "ONKYO",
  "APPLE",
  "BOSEWAVE",
  "LEGO_PF",
  "MAGIQUEST",
  "WHYNTER"
};
IRrecv irrecv_11(11);

void setup(){
  a = 0;
  Serial.begin(9600);
  pinMode(5, OUTPUT);
  irrecv_11.enableIRIn();
}

void loop(){
  if (irrecv_11.decode()) {
    struct IRData *pIrData = &irrecv_11.decodedIRData;
    long ir_item = pIrData->decodedRawData;
    String irProtocol = IR_PROTOCOL_TYPE[pIrData->protocol];
    Serial.print("IR TYPE:" + irProtocol + "\tVALUE:");
    Serial.println(ir_item, HEX);
    irrecv_11.resume();
    Serial.println(ir_item,HEX);
    //按下另一块控制板“D8”按键编码值:BA45FF00。控制开关灯。
    if (0xBA45FF00 == ir_item && a == 0) {
      digitalWrite(5,HIGH);
      a = 1;

    } else if (0xBA45FF00 == ir_item && a == 1) {
      digitalWrite(5,LOW);
      a = 0;
    }

  } else {

  }

}

1.Infrarot-Signal-Sendmodul-Programm (entspricht Infrarot-Fernbedienung)

Beispielprogramm (ESP32-Boards — auf Deutsch basierend, kann nicht mit Arduino IDE hochgeladen werden)

import machine
import irremote
import time


pin13 = machine.Pin(13, machine.Pin.IN)
ir_tx = irremote.NEC_TX(4,False,100)
while True:
    if not pin13.value():
        while not pin13.value():
            time.sleep_ms(10)
        ir_tx.transmit(0x45,0xff00,0)

2. Infrarot-Signal-Empfangsmodul-Programm

Beispielprogramm (ESP32-Boards — auf Deutsch basierend, kann nicht mit Arduino IDE hochgeladen werden)

import machine
import irremote


pin15 = machine.Pin(15, machine.Pin.OUT)
value = 0
Mode = 0
ir_rx = irremote.NEC_RX(14,8)
while True:
    if ir_rx.any():
        value = hex(ir_rx.code[2])
    if value == hex(0xba45ff00):
        Mode = 1 - Mode
        value = 0
    if Mode == 0:
        pin15.value(0)
    if Mode == 1:
        pin15.value(1)

6、米思齐 Mixly 示例程序(图形化语言)

Arduino UNO Grafische Beispielprogramme:2、第二步将UNO开发板的库文件下载后解压在桌面。

1.Infrarot-Signal-Sendmodul-Programm (entspricht Infrarot-Fernbedienung)

2. Infrarot-Signal-Empfangsmodul-Programm

Beispielprogramm (ESP32 Python):2、第二步将UNO开发板的库文件下载后解压在桌面。

1.Infrarot-Signal-Sendmodul-Programm (entspricht Infrarot-Fernbedienung)

2. Infrarot-Signal-Empfangsmodul-Programm

7, Aufbau des Testumgebungs

Testumgebung für Arduino UNO einrichten

Vorbereiten Sie die Komponenten:

  • HELLO STEM UNO R3 Entwicklungskarte *2

  • HELLO STEM UNO R3 P Erweiterungsplatine *2

  • USB type-c Datenkabel *2

  • LED-Leuchtmittelmodul (HS-F08L) *1

  • Infrarot-Signal-Sendmodul (HS-S29L) *1

  • Tastenschaltermodul (HS-KEY1L) *1

  • Infrarot-Empfangsmodul (HS-S23L) *1

  • PH2.0 Doppelkopfsteckerkabel *4 Stück

Schaltplan der Leitung:

ESP32 Python Testumgebung Einrichtung

Vorbereiten Sie die Komponenten:

  • ESP32EA MOC-Entwicklungsboard *2

  • ESP32-EXP1-Erweiterungsboard *2

  • USB type-c Datenkabel *2

  • LED-Leuchtmittelmodul (HS-F08L) *1

  • Infrarot-Signal-Sendmodul (HS-S29L) *1

  • Tastenschaltermodul (HS-KEY1L) *1

  • Infrarot-Empfangsmodul (HS-S23L) *1

  • PH2.0 Doppelkopfsteckerkabel *4 Stück

Schaltplan der Leitung:

8, Video-Tutorial

Arduino UNO Video-Tutorial:Klicken Sie zum Anzeigen

ESP32 Python Videoanleitung:

9, Testergebnis

Arduino UNO Testergebnis:

Nachdem die Kabel an den Bauteil angeschlossen sind, kopieren Sie das obige Programm auf die Arduino UNO Entwicklungsplatine und führen Sie den IR-Signal-Sendversuch gemäß der Dokumentation durch. Verbinden Sie dann ein anderes Arduino UNO mit dem IR-Empfangsprogramm und schalten Sie ein, um die Übertragung und Empfangseffekte zu sehen.

ESP32 Python-Testergebnis: