首页

一个简单的DIY通用远程Arduino

在这个项目中,我们将看到如何使用Arduino设计一个简单的DIY Universal Remote。使用这个远程应用程序,您可以控制各种电子电器,如电视,交流,DVD播放机等。

我已经实现了通用远程使用Arduino Nano,并把它放在一个小穿孔板连同所有的按钮,电源等。最终的构建看起来像这样。

使用Arduino远程图像DIY通用远程

简介

红外遥控是一种基于视线的无线通信设备,与红外接收器一起工作。你可以在几乎所有主要的电子设备中找到红外遥控器和相应的红外接收器,如电视、空调、电视盒、音频播放器等。

这种设置的主要问题是,每个设备都有自己的红外遥控器,你拥有的设备越多,遥控器就越多。

如果你只有一个遥控器可以控制,如果不能控制所有电器,那么大部分电器呢?这个概念被称为万能遥控器,它已经在市场上存在。

将同样的概念带给制造者和爱好者,在这个项目中开发了一个使用Arduino的DIY Universal Remote。使用Arduino构建自己的Universal Remote的原因可以简单到用自己的双手构建一个实际的应用程序,或者可以绕过市场上已经存在的通用遥控器的成本。

原理背后的通用远程使用Arduino

实现一个基于Arduino的通用遥控器的主要原理非常简单。首先,使用现有的遥控器,如电视等设备,对红外信号进行解码。

这些确定的信号然后在最后的应用程序中使用红外发射器LED发射相应的红外信号。

利用Arduino解码红外信号

第一个合乎逻辑的步骤是解码现有遥控器的所有红外信号。我有一台索尼电视和一台伏特交流电。使用这两个遥控器,我已经解码了基本的按钮,如电源,音量升高,音量降低,上一个,下一个,电视的电源和电源,温度升高,温度下降,摆动,风扇,涡轮增压。

在继续之前,我建议您先完成这个简单的项目,名为"Arduino红外接收器教程,我已经讨论了所有重要的方面,以建立一个红外接收器与Arduino和解码信号。

电路

目前,解码电视和AC遥控器按键的电路图如下所示,其中我使用了Arduino Nano和TSOP1740红外接收器。

使用Arduino接收器电路DIY万能遥控器

代码

红外信号的解码代码如下。

所有解码的信号将出现在串行窗口。记录所有已解码的值。

注意:在这个项目中使用了一个名为“IRremote”的特殊库。您可以直接使用Arduino IDE的库管理器安装它,并通过shirriff搜索IRremote或下载zip文件GitHub页面。

Arduino通用远程电路

现在我们已经解码了来自原始遥控器的所有必要信号,现在我们可以使用Arduino进行Universal Remote的实际构建。电路图如下所示。

使用Arduino电路图DIY万能遥控器

组件

  • Arduino纳米
  • 红外LED
  • 按钮x 8
  • CR2032电池x 2
  • CR2032电池座x 2
  • RGB LED x 1
  • 10KΩ电阻× 2
  • 连接电线
  • 穿孔板
  • 母头条(用于Arduino Nano)

电路设计

首先,IR Led连接到数字IO引脚3。然后按如下方式连接按钮:

按钮 Arduino数字IO Pin
权力 4
模式 5
向上 6
下来 7
8
正确的 9
选择 10

此外,还有一个唤醒按钮连接到数字IO引脚2。数字IO引脚使用10KΩ电阻下拉,而所有其他按钮引脚在内部拉起来。所有按钮(唤醒按钮除外)的另一端连接GND。唤醒按钮的另一端连接到VCC。

使用Arduino远程遥控DIY Universal Remote

RGB LED用于指示所选择的器具。这里使用的RGB LED有一个公共阳极端子,通过10KΩ电阻连接到VCC。LED的R、G、B端分别连接引脚11、12、13。

整个系统由一对CR2032 3V锂电池串联供电。

代码

下面是使用Arduino的通用远程应用程序的代码。从以前收集的值中,将相应的值放在代码中为TC和AC提供的适当数组中。

这些数组命名为tv_onoff[], tv_volup[], tv_voldown[], tv_prev[], tv_next[], tv_source[]用于电视相关数据,ac_onoff[], ac_tempup[], ac_tempdown[], ac_swing[], ac_fan[], ac_turbo[]用于AC。

注意:一个名为“LowPower”的附加库用于在预设时间后让Arduino进入睡眠状态,以节省电池。下载此库GitHub页面。

工作

插入解码后的值,并上传代码到Arduino Nano,您可以开始使用应用程序作为一个通用远程控制。首先,按下模式按钮来选择设备。我已经分配了红色LED用于电视,绿色LED用于交流。

DIY通用远程Arduino远程图像2

因此,通过按下模式按钮,你可以在电视和交流之间进行选择,Led灯作为视觉指示器。一旦设置好模式,你就可以为特定的设备使用遥控器。如果10秒内没有按下任何键,则LowPower库将启动并使Arduino进入睡眠状态。

使用唤醒按钮唤醒Arduino。

结论

这里设计了一个简单但非常有用的DIY项目,叫做通用远程Arduino Nano。使用此应用程序,您可以控制许多电子电器的帮助下,一个单一的遥控器。

留下一个回复

你的电邮地址不会被公布。

Electronicshub图标
Baidu
map