数字红外信号发射模块

简介

红外发射模块上的核心器件是红外发射管,其广泛使用在红外遥控设备上。该模块有3PIN接口,可以方便的通过Arduino等控制板实现红外遥控、通讯的功能。

红外发射管是一个能发射出特定波长红外光的二极管。红外遥控器就是使用的红外发射头发出一连串的二进制脉冲码信号。为了使其在无线传输过程中免受其他红外信号的干扰,通常都是先将其调制在特定的载波频率上,然后再经红外发射二极管发射头发射出去。

应用

  • 红外遥控
  • 红外通讯

规格

  • 工作电压:3-5V
  • 信号类型:数字信号
  • 红外中心波长:约850nm-940nm
  • 红外发射角:约20度
  • 红外发射距离:约1.3米 (5V 38Khz)
  • 接口类型:PH2.0-3
  • 外形尺寸:30x22mm
  • 安装孔:直径3.2m,间距15mm

引脚说明

  • GND:电源地
  • VCC:电源正
  • D :数字信号输入,高为发射红外,低为关闭红外

使用教程

看见红外线

a) 目标:1秒间隔发射红外线

b) 硬件清单

c) 软件清单

d) 连线图

e) 操作步骤
一、代码编程

  • 在Arduino IDE中打开Blink程序
  • 在连接图中使用的是数字3口,因此将代码进行如下修改
    • 原代码:int led = 13;
    • 新代码:int led = 3;
  • 下载程序到UNO

二、Mind+(基于Scratch3.0)图形化编程

1、下载及安装软件。下载地址:https://mindplus.cc/ 详细教程:Mind+基础wiki教程-软件下载安装
2、切换到“上传模式”。 详细教程:Mind+基础wiki教程-上传模式编程流程
3、“扩展”中选择“主控板”中的“Arduino Uno”。 详细教程:Mind+基础wiki教程-加载扩展库流程
4、进行编程,程序如下图:
5、菜单“连接设备”,“上传到设备”

f) 实现效果

将本模块放置到暗环境下(可放入纸盒或用手遮挡),用手机摄像头(部分手机只有前置摄像头才能看到,部分手机将红外过滤掉了看不到)对准红外发射头前端,并在照相/摄像功能中仔细观察,可以看到有蓝紫色光在缓慢闪烁。 注意在摄像范围内要整体处于暗光状态,若有较亮的光则无法观察到。 该使用所使用的红外库支持多种常见家电遥控协议,并通过载波方式发送。

红外遥控/通讯

a) 目标:实现红外遥控/通讯实验

红外遥控或通讯在技术上可以采用载波方式和非载波方式,所谓载波方式就是将要发送的信号调制到较高的载波频率上,以达到抗干扰、抗衰减等目的。由于红外线本身存在于自然光中,因此家电的红外遥控普遍使用38kHz的载波来达到抗干扰的目的。

b) 硬件清单

c) 软件清单

d) 连线图

  • 红外发射模块的连接与前一示例相同,注意Arduino-IRremote库只支持将发射管接在数字3端口上。
  • 注:uno接在数字口3,leonardo接在数字口13,mega接在数字口9.
  • 红外接收模块连接方式请参考数字红外接收模块 ,将其连接到数字11端口上。

e) 操作步骤

  • 在Arduino IDE中给红外发射模块下载如下程序:
 #include <IRremote.h>

 IRsend irsend;

 void setup()
 {
 }

 void loop() {

     irsend.sendRC5(0x0, 8); //send 0x0 code (8 bits)
     delay(200);

     irsend.sendRC5(0x1, 8);
     delay(200);
 }

  • 在Mind+(基于Scratch3.0图形化编程)里面给红外发射模块下载如下程序:

1、下载及安装软件。下载地址:https://www.mindplus.cc 详细教程:Mind+基础wiki教程-软件下载安装
2、切换到“上传模式”。 详细教程:Mind+基础wiki教程-上传模式编程流程
3、“扩展”中选择“主控板”中的“Arduino Uno”,在“通讯模块”中添加“红外发射模块”。 详细教程:Mind+基础wiki教程-加载扩展库流程
4、进行编程,程序如下图:
5、菜单“连接设备”,“上传到设备”

  • 在Arduino IDE中给红外接收模块下载如下程序:
 #include <IRremote.h>

 const int RECV_PIN = 11;
 const int LED_PIN = 13;

 IRrecv irrecv(RECV_PIN);

 decode_results results;

 void setup()
 {
   Serial.begin(9600);
   irrecv.enableIRIn(); // Start the receiver
 }

 void loop()
 {

   if (irrecv.decode(&results))
   {
     if ( results.bits > 0 )
     {
       int state;
       if ( 0x1 == results.value )
       {
         state = HIGH;
       }
       else
       {
        state = LOW;
       }

       digitalWrite( LED_PIN, state );
     }

     irrecv.resume();        // prepare to receive the next value
   }
 }
  • 在Mind+(基于Scratch3.0图形化编程)里面给红外接收模块下载如下程序:

1、下载及安装软件。下载地址:https://www.mindplus.cc 详细教程:Mind+基础wiki教程-软件下载安装
2、切换到“上传模式”。 详细教程:Mind+基础wiki教程-上传模式编程流程
3、“扩展”中选择“主控板”中的“Arduino Uno”。 详细教程:Mind+基础wiki教程-加载扩展库流程
4、进行编程,程序如下图:
5、菜单“连接设备”,“上传到设备”

  • 效果

当发射端对着接收端时,接收端主控板上的LED指示灯一秒闪烁一次

<File:nextredirectltr.png>购买 红外发射模块(SKU:DFR0095)

category: Product Manual category: SEN Series category: Sensors <!--Hidden Categories--!> category: Source category: Diagram