找回密码
 立即注册

QQ登录

只需一步,快速开始

基于Arduino使用红外遥控无线控制




mini红外遥控器
产品介绍

红外遥控系统主要分为调制、发射和接收三部分,红外接收模块中的一体化红外接收头,内部集成了红外接收电路,包括红外检测二极管,放大器,限幅器,带通滤波电容,积分电路,比较器等,能够将接收到的调制波进行解调。

11.png

12.png
(mini红外遥控器)

产品参数

尺寸:85mm*39mm*6.0mm
遥控范围:8-10米(红外接收头本身质量,中间有无障碍物等因素会影响到遥控距离)
电池:3V扣式锂锰电池红外载波频率:38KHz 面贴材料:0.125mmPET
有效寿命:2万次以上
标准的38K调制频率,可适应市面上各种红外接收头
带0~9·数字键,开关、MENU、TEST、C和返回键,4个导航键和确认键,可以方便应用到各种智能小车和开发板
内置通用3V纽扣电池,使用时间长、方便更换

使用方式

安装指定型号的电池并配合红外接收头使用

红外接收传感器

13.jpg
(红外接收传感器模块)

产品介绍

接收放大一体红外接收管,直接输出红外码
适用范围广,兼容市场上大部分红外遥控器
LED,方便观察调试
适用于红外通讯、红外遥控控制等
选购配件:3P传感器连接线

参数规格

1、采用1838遥控接收头,灵敏度高
2、工作电压5V
3、输出形式:数字输出
4、设有2个固定孔,方便安装,孔径3.1mm
5、带数据指示灯
6、PCB尺寸:23mm*21mm
7、重量:3g
8、端口:数字量电平
9、输出:标准红外码
10、接收频率:38KHZ载波红外码
11、接收距离:1-8m(视接收端而定)
12、平台:Arduino单片机

红外接收传感器模块基础小案例
接线方式

Arduino                       红外传感器模块
    5V         <------>            VCC
  GND        <------>           GND
    D6         <------>            DAT

Arduino                       LED模块
   3V3        <------>       VCC
  GND        <------>      GND
    D5         <------>        IN

程序测试
1、串口打印读取遥控器1号和2号按键数值
Mixly 图形化编程程序
14.png
(图形化程序)

按下1号和2号按键时串口打印读取数值

15.png
(串口数值显示)

程序实现代码

  1. #include <IRremote.h>

  2. long ir_item;

  3. IRrecv irrecv_6(6);

  4. decode_results results_6;

  5. void setup(){

  6.   Serial.begin(9600);

  7.   irrecv_6.enableIRIn();

  8. }

  9. void loop(){

  10.   if (irrecv_6.decode(&results_6)) {

  11.     ir_item=results_6.value;

  12.     String type="UNKNOWN";

  13.     String typelist[14]={"UNKNOWN", "NEC", "SONY", "RC5", "RC6", "DISH", "SHARP", "PANASONIC", "JVC", "SANYO", "MITSUBISHI", "SAMSUNG", "LG", "WHYNTER"};

  14.     if(results_6.decode_type>=1&&results_6.decode_type<=13){

  15.       type=typelist[results_6.decode_type];

  16.     }

  17.     Serial.print("IR TYPE:"+type+"  ");

  18.     Serial.println(ir_item);

  19.     delay(1000);

  20.     irrecv_6.resume();

  21.   } else {

  22.     Serial.print("");

  23.     delay(1000);

  24.   }

  25. }
复制代码

2、LED 高电平为亮,低电平为灭,当遥控器按下1号按键时,绿色 LED 灯亮起,当按下2号按键时,LED 灯处于熄灭状态。

16.jpg
(LED模块)

Mixly 图形化编程程序
17.png
(图形化程序)

程序实现代码

  1. #include <IRremote.h>

  2. long ir_item;

  3. IRrecv irrecv_6(6);

  4. decode_results results_6;

  5. void setup(){

  6.   Serial.begin(9600);

  7.   pinMode(5, OUTPUT);

  8.   irrecv_6.enableIRIn();

  9. }

  10. void loop(){

  11.   if (irrecv_6.decode(&results_6)) {

  12.     ir_item=results_6.value;

  13.     String type="UNKNOWN";

  14.     String typelist[14]={"UNKNOWN", "NEC", "SONY", "RC5", "RC6", "DISH", "SHARP", "PANASONIC", "JVC", "SANYO", "MITSUBISHI", "SAMSUNG", "LG", "WHYNTER"};

  15.     if(results_6.decode_type>=1&&results_6.decode_type<=13){

  16.       type=typelist[results_6.decode_type];

  17.     }

  18.     Serial.print("IR TYPE:"+type+"  ");

  19.     Serial.println(ir_item);

  20.     if (ir_item == 16724175) {

  21.       digitalWrite(5,HIGH);

  22.     } else if (ir_item == 16718055) {

  23.       digitalWrite(5,LOW);

  24.     }

  25.     irrecv_6.resume();

  26.   } else {

  27.   }


  28. }
复制代码


分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册