工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

古いリモコンを再利用:ArduinoでDIYスマートデバイスを構築

必要な部品と用品

Arduino Nano R3 ×1
5mm赤色LED(ステータス表示用) ×3
5mm緑色LED ×1
5mm黄色LED ×1
青色LED ×2
ブレッドボード(フルサイズ) ×1
ジャンパーワイヤー(汎用) ×1
トグルスイッチ(OFF-ON、SPST) ×1
ブレッドボード用電源モジュール(5V/3.3V) ×1
赤外線受信モジュール(KY-022 37.9kHz等) ×1

プロジェクトについて

古いVCR、テレビ、DVDプレーヤーなどの余ったリモコンを再利用して、ランプやヒーターなどの機器を制御できるスマートデバイスを作ります。ここではデモンストレーションとして最大6つのLEDをトグル制御しますが、リレーやパワートランジスタを使えば5V信号で制御できるあらゆる機器に応用可能です。

仕組み

任意のリモコンから6つの赤外線コードを「学習」させ、ArduinoのEEPROM(不揮発性メモリ)に保存します。電源を切っても記憶されたコードは保持されます。学習モードと実行モードはトグルスイッチで切り替えます。

学習モード

トグルスイッチを「Learn」側に倒すと赤色ステータスLEDが点灯し、学習モードに入ります。LED1が点滅したらリモコンの任意のボタンを押します。コードが認識されるとステータスLEDが高速点滅し、次のLED(LED2)の学習に移ります。これを6回繰り返します。完了するとステータスLEDが1秒間隔でゆっくり点滅し、実行モードへの切り替えを促します。

実行モード

トグルスイッチを「Run」側に戻すと実行モードになります。登録されたリモコンのボタンを押すと、対応するLEDがトグル(ON/OFF切り替え)します。登録されていないコードを受信すると全LEDが消灯(リセット)します。

重複チェックとエラー表示

起動時にEEPROMの6コードを読み込み、連続する重複をチェックします。重複が見つかった場合、該当するLEDを点滅させて警告します(同一機能を複数ボタンに割り当てたい場合もあるため、強制再学習はしません)。ステータスLEDの点滅パターンやシリアルモニター出力でモード状態やエラーを確認できます。

実用化のヒント

ソースコード

コードは長いため要点のみ掲載します。完全版はダウンロードしてご確認ください。

/* IRリモコン再利用スケッチ - 6つのLEDをトグル制御
   Paul M Dunphy VE1DX March 2020 */

#include <IRremote.h>
#include <EEPROM.h>

// ピン定義
const int RECV_PIN = 2;
const int LED_PINS[6] = {12, 11, 10, 9, 8, 7};
const int SWITCH_PIN = 4;
const int STATUS_PIN = 5;

IRrecv irrecv(RECV_PIN);
decode_results results;

unsigned long savedCodes[6];
boolean learnMode = false;

void setup() {
  Serial.begin(9600);
  irrecv.enableIRIn();
  // LEDピンを出力に設定、全消灯
  // スイッチピンを入力、ステータスLEDを出力に設定
  // EEPROMから保存済みコードを読み込み、重複チェック
}

void loop() {
  learnMode = (digitalRead(SWITCH_PIN) == HIGH);
  if (learnMode) {
    digitalWrite(STATUS_PIN, HIGH);
    learnModeFunction();
  } else {
    digitalWrite(STATUS_PIN, LOW);
    runModeFunction();
  }
}

// 学習モード:各LED順に点滅させながらIRコードを取得しEEPROMに保存
// 実行モード:受信コードを保存済みコードと比較、一致すれば対応LEDをトグル
// EEPROM読み書きヘルパー関数(long型を4バイト分解/結合)

回路図

ブレッドボード上の配線図を参照してください。赤外線受信モジュールのVCC/GND/OUT、6個のLED(各330Ω抵抗直列)、トグルスイッチ、ステータスLEDをArduino Nanoの指定ピンに接続します。

製造プロセス

  1. 発光ダイオード(LED):誕生から100年寿命へ
  2. Raspberry Pi 3とPubNubでリモート気象監視
  3. LIRCでプロフェッショナルなRaspberry Piユニバーサルリモコンを構築
  4. リモート心拍数監視システム:AWS IoTアラート付き
  5. Arduinoで「棺桶ダンス」メロディーを再現するプロジェクト
  6. 古い携帯電話をスマートリモートスイッチに変身させよう
  7. シングルLEDライトペインティング:自作モーター駆動システムで動的な画像を描く
  8. 音声反応型 8 LED ライトディスプレイ
  9. スマートArduino四足歩行ロボットの製作:ステップバイステップガイド
  10. 制御プラットフォーム選定の5つの重要基準
  11. 陳腐化した産業機械の安全・効率的な処分方法