LoginSignup
2
0

More than 1 year has passed since last update.

赤外線リモコンを自作する - その2データ送信編

Last updated at Posted at 2022-07-25

目次

  1. 赤外線リモコンを自作する - その1データ解析編
  2. 赤外線リモコンを自作する - その2データ送信編
  3. 赤外線リモコンを自作する - その3温度/湿度センサー編
  4. 赤外線リモコンを自作する - その4サーバサイド編
  5. 赤外線リモコンを自作する - その5クライアント編

赤外線リモコンを自作する - その2データ送信編

今回は、前回取得した赤外線データを赤外線LEDより送信できるようにする。

用意するもの

機器 型番 参考価格
Arduino互換機 ESP32-DevKitC-32D 1,480円
赤外線LED OSI5FU5111C-40 1個20円
トランジスタ 2SC1815L-GR-T92-K 1個5円

設計

電子回路詳しくないので、自己判断でお願いします。
赤外線LEDを点滅させることで、信号を送信する。ただし、出力が足りないため、トランジスタを挟む。

抵抗値計算

赤外線LED仕様

  • 順方向電流IF: 100mA
  • 順方向電圧VF: 1.35V

抵抗値計算
(5V - 1.35V) / 0.1A = 36.5Ω

トランジスタ仕様

  • ベースエミッタ間飽和電圧VBE: 1V
  • 直流電流増幅率hFE: 300

抵抗値計算

  1. 赤外線LEDに必要な電流100mA
  2. ベースに流したい電流 100mA / 300(増幅率) = 0.33mA
  3. ベースへの抵抗 (3.3V - 1V) / 0.33mA = 6.9KΩ

回路図

赤外線データ送信プログラム

赤外線リモコンを自作する - その1データ解析編の通りに、IRremoteESP8266ライブラリをインストールしておく。
受信した赤外線データをuint16_t cmds[]として初期化する。
下記では、10秒に1度、赤外線データを送信する。

#include <Arduino.h>

#include <IRremoteESP8266.h>
#include <IRsend.h>

#define KHZ 38
#define PIN_SEND 32
IRsend irsend(PIN_SEND);

uint16_t cmds[] = {3486, 1718,  450, ...};

void setup(void) {
  Serial.begin(115200);
  irsend.begin();
}

void loop() {
  irsend.sendRaw(cmds, sizeof(cmds) / sizeof(cmds[0]), KHZ);
  delay(10 * 1000);
}
2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0