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

スマートワイヤレス照明スイッチコントローラー:Arduinoで物理スイッチを遠隔操作

部品と材料

Arduino UNO ×2(送信側・受信側)
サーボモーター(Tower Pro MG996R) ×1
433MHz 送受信モジュール ×1セット

必要な工具と機械

アプリとオンラインサービス

プロジェクトについて

アイデア

ベッドに入ってから電気を消すために起き上がるのが面倒……そんな経験はありませんか? 就寝前の読書後に手元で照明を消せる装置を作りました。さらに、以下のような用途にも応用できます。

プロジェクト概要

433MHz RFモジュール同士の通信で制御します。通信が不安定な場合は、受信側(Slave_Servo.ino)の閾値を調整してください。

const unsigned int upperThreshold = 70; // 上限閾値
const unsigned int lowerThreshold = 50; // 下限閾値

配線

配線はシンプルです。添付画像と「回路図」を参照してください。

スマートワイヤレス照明スイッチコントローラー:Arduinoで物理スイッチを遠隔操作

※ ボタンは送信側Arduino、サーボは受信側Arduinoに接続します。

壁面マウント

サーボを壁面スイッチに固定するマウントは3Dプリンターで出力します。OpenSCADで設計しているため、スイッチの形状に合わせて穴位置を調整可能です。mhacks_lightswitchv4.stlをまず出力してください。出力後、サーボを固定し、コマンドストリップ(粘着テープ)などでスイッチプレートに貼り付けます(強力接着剤は非推奨)。

完成品

オンラインハッカソン「MHacks」に提出した最終形態です。より恒久的にするなら、Arduinoケースとブレッドボードも壁面に固定すると良いでしょう。

今後の発展案

コード

Slave_Servo.ino(受信側・サーボ制御)

#define rfReceivePin A0  // RF受信ピン = アナログピン0
#define ledPin 13        // オンボードLED = デジタルピン13
#include <Servo.h>
Servo servo;
unsigned int data = 0;
const unsigned int upperThreshold = 70;
const unsigned int lowerThreshold = 50;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  servo.attach(9);
}

void loop() {
  data = analogRead(rfReceivePin);
  if (data < upperThreshold) {
    digitalWrite(ledPin, LOW);
    Serial.println(data);
    servo.write(0);   // スイッチOFF位置
  }
  if (data > lowerThreshold) {
    digitalWrite(ledPin, HIGH);
    Serial.println(data);
    servo.write(90);  // スイッチON位置
  }
}

Master_Remote.ino(送信側・ボタン操作)


#define rfTransmitPin 4  // RF送信ピン = デジタルピン4
#define buttonPin 2
#define led 13

void setup() {
  pinMode(rfTransmitPin, OUTPUT);
  pinMode(buttonPin, INPUT);
  pinMode(led, OUTPUT);
  Serial.begin(9600);
}

int buttonState = 0;
void loop() {
  buttonState = digitalRead(buttonPin);
  if (buttonState == HIGH) {
    digitalWrite(rfTransmitPin, HIGH);
    digitalWrite(led, HIGH);
    Serial.println("transmit");
    delay(10);
  } else {
    digitalWrite(rfTransmitPin, LOW);
    digitalWrite(led, LOW);
    Serial.println("no");
  }
}

CADファイル

回路図

スマートワイヤレス照明スイッチコントローラー:Arduinoで物理スイッチを遠隔操作
スマートワイヤレス照明スイッチコントローラー:Arduinoで物理スイッチを遠隔操作

製造プロセス

  1. Arduinoで作るモニター用Ambilightシステム:没入感アップの自作ガイド
  2. ArduinoとInfineon 3D磁気センサーで作る無線磁気データ転送
  3. Arduino UNOとOLEDディスプレイでクラシックPongゲームを自作:ステップバイステップチュートリアル
  4. Arduinoオーディオ周波数検出器 – 高感度サウンドモジュールで最大音量ピークの周波数を測定
  5. Arduinoで作る自作デジタルペット「Tamaguino」─ 3Dプリンター製ケース付き完全ガイド
  6. USB-MIDI機器をBluetooth LEでiOSに無線接続 ─ Arduinoベースの3つのアダプター設計
  7. Arduino三目並べ:MAX7219 LEDマトリクスと段ボールケースで自作
  8. Arduino Nanoで作るスマートな動体検知水鉄砲
  9. SparkFun 7セグメントディスプレイで作る信頼性の高いArduinoカウントダウンタイマー
  10. Arduino向日葵:太陽を追尾する電子ヒマワリの製作
  11. Arduinoで自作RCポルシェカー:ステップバイステップガイド