Arduinoと1Sheeldで作る万能Androidリモコン──IR制御で家電を一括操作
必要な部品と材料
- Arduino UNO × 1
- 1Sheeld × 1
- IR受信モジュール(汎用) × 1
- LED(汎用) × 1
プロジェクト概要
テレビ、衛星放送受信機、ステレオなど、それぞれのリモコンを使わずにAndroidスマホ1台で全て操作できるようにするプロジェクトです。同じ手法でリモコン対応のあらゆる機器を制御可能です。
手順1:Androidアプリのインストール
Google Playストアから1Sheeldアプリをダウンロード・インストールします。
手順2:既存リモコンの解析(IRコード取得)
リモコンの送信部は赤外線LEDで、ボタンごとに固有のパルスパターンを発信します。受信側はそのパターンを認識して動作します。この固有パターン(16進コード)を解析します。
- Arduino用IRremoteライブラリをインストール。
- ライブラリの例題「IRrecvDump」を使用(3枚目の画像参照)。
- IR受信モジュールを配線:GND、5V、Pin 11。
- スケッチを書き込み、シリアルモニタを開いてリモコンのボタンを押すと、16進コードが表示されます(5枚目の画像)。
- 4枚目の画像のように、ボタンごとの16進コード(例:0x20DFC03F, 32bit = 電源ボタン)をメモします。
- 「unknown encoding」と出たら、同じボタンをもう一度押してみてください。





手順3:送信用スケッチの書き込み
取得した16進コードを送信用スケッチの該当箇所(0x20DF10EFなど)に置き換えます。1Sheeldアプリにリモコン画面がないため、キーパッドシールドをリモコン代わりに使用します(キーボードシールドでも可)。


テスト
IR LEDをArduinoのPin 3に接続し、対象機器の受信部前に配置。1Sheeldアプリでシールド接続後、キーパッドシールドを選択。スマホのボタンを押すと対応するIR信号が送信され、電源オン/オフ、音量、チャンネル切替などが動作します。


スケッチ(リモコン送信コード)
Remote Control Code
#include <OneSheeld.h>
#include <IRremote.h>
IRsend irsend;
void setup() {
OneSheeld.begin();
}
void loop() {
// キーパッドの行/列組み合わせで各機能を割り当て
if (Keypad.isRowPressed(0) && Keypad.isColumnPressed(0)) {
irsend.sendNEC(0x20DF10EF, 32); // 例: TV電源
} else if (Keypad.isRowPressed(0) && Keypad.isColumnPressed(1)) {
irsend.sendNEC(0x20DFC03F, 32); // 例: TV音量+
} else if (Keypad.isRowPressed(0) && Keypad.isColumnPressed(2)) {
irsend.sendNEC(0x20DF40BF, 32); // 例: TV音量-
} else if (Keypad.isRowPressed(1) && Keypad.isColumnPressed(1)) {
irsend.sendNEC(0x41048B7, 32); // 例: 衛星受信機チャンネル+
} else if (Keypad.isRowPressed(1) && Keypad.isColumnPressed(0)) {
irsend.sendNEC(0x410C837, 32); // 例: 衛星受信機チャンネル-
} else if (Keypad.isRowPressed(2) && Keypad.isColumnPressed(0)) {
// Sony TV電源コード例(12bit, 3回送信)
for (int i = 0; i < 3; i++) {
irsend.sendSony(0xa81, 12);
delay(40);
}
}
}
製造プロセス
- Arduinoとスマホで作るスマート電圧計 – 簡単DIYプロジェクト
- IoTで遠隔操作する自作ロボットアーム:Arduino MKR1000とSimulink、ThingSpeak活用
- Android加速度センサーで操作するラジコン車両:Raspberry Pi・Arduino・モーターシールド連携
- Arduino UNOで周波数とデューティサイクルを高精度測定
- FirmataとXbox OneコントローラーでArduinoローバーをシームレス操作
- Bolt IoTとArduino UNOでLED輝度をシームレス制御
- スマートなArduino制御ロボットアームの製作:簡単DIYチュートリアル
- Arduino IoT CloudとAlexaでテレビを音声操作:ステップバイステップガイド
- Arduino NanoとRDA5807Mで作るコンパクトFMラジオ
- iOS/AndroidアプリからWi-Fi/イーサネットでArduinoのLEDを制御 – Evothings Studio活用
- スマホで家庭照明をシームレス制御 - 1Sheeld活用