如何将Arduino用作电视遥控器
本指南演示如何将 Arduino 转换为电视、蓝光播放器或其他红外控制设备的通用遥控器。您将学习如何解码来自任何遥控器的信号,然后使用 Arduino 和红外 LED 发送这些代码。这为从简单的开/关控制到涉及多个设备的复杂序列的自动化可能性打开了一个新世界。
以下是一些项目创意,帮助你开始:
- 创建一个定时开关电视的系统。
- 将您的电视控制整合到智能家居系统中。
- 构建一个具有独特功能的自定义遥控器。
- 通过基于Arduino的语音助手,用语音命令控制您的娱乐系统。
硬件/组件
- Arduino Uno(或兼容板)
- 红外 (IR) 接收模块 (例如,TSOP1738,VS1838B)
- 红外(IR)LED(例如,940nm波长)
- 电阻(270-330 欧姆用于红外LED)
- 跳线
- 面包板(可选)
接线指南
按如下方式连接红外接收模块(视频中时间为 02:45):
- VCC 连接到 Arduino 5V
- GND连接到Arduino GND
- 信号引脚连接到 Arduino 的引脚 11(可以在代码中更改)
按照以下方式连接红外LED(视频中的时间为02:07):
- 一个LED引脚连接到Arduino引脚3(通过一个270-330欧姆的电阻)
- 其他LED引脚连接到Arduino GND
电阻限制了流过红外LED的电流,保护它免受损坏(视频中在03:37)。
代码解释
首先,安装IRremote库(视频中时间为04:16)。这个库处理发送和接收红外信号的复杂性。您可以在Arduino库管理器中找到它。
提供的代码片段仅供参考。IRremote库包含接收和发送红外信号的示例代码。这些示例可以在Arduino IDE中找到:文件 > 示例 > IRremote。
接收代码
此代码片段将接收器设置在引脚 11 上(视频中的时间为 04:50)。修改该RECV_PIN如果您使用的是不同的别针。
#include
int RECV_PIN = 11;
IRrecv irrecv(RECV_PIN);
decode_results results;
发送代码
此代码发送捕获的原始红外代码。raw数组存储信号时序,和38表示频率(以 kHz 为单位)。您需要用从远程控制器捕获的代码替换示例数据(视频中的 05:26)。
irsend.sendRaw(raw, sizeof(raw) / sizeof(raw[0]), 38);
Thesizeof(raw) / sizeof(raw[0])计算元素的数量raw视频中的数组(06:18)。
实时项目/演示
该视频演示了如何从三星电视遥控器捕获电源按钮代码,然后使用Arduino打开和关闭电视(视频时间:08:29)。该过程涉及使用接收程序捕获代码,然后将该代码粘贴到发送程序中。演示显示了Arduino如何成功模拟原始遥控器。
章节
- [00:00] 介绍和项目概述
- [00:41] 理解红外遥控器
- [02:07] 硬件组件和接线
- [04:16] 正在安装 IRremote 库
- [05:26] 使用 Arduino 发送红外信号
- [06:46] 测试红外线传输
- [08:29] 使用三星电视的现场演示
- [09:27] 扩展项目和进一步的想法
This code has not been parsed yet. Please return to the admin panel to parse it.
|||您可能需要的东西
-
亚马逊从亚马逊购买红外遥控器amzn.to
-
易趣从eBay购买红外遥控器ebay.us
资源与参考
-
外部观看这个视频,如果你想知道如何接收红外信号。youtu.be
文件📁
没有可用的文件。