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

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

必要なパーツと用品

パーツ 数量
Arduino Yun 1
LED(汎用) 1
抵抗 221 Ω 1
ブレッドボード 1
ジャンパーワイヤー 1
Apple iPhone 1

使用するアプリとオンラインサービス

プロジェクト概要

概要

家に近づくと自動的に家のライトが点灯し、決して暗闇の中で家に入ることがない——そんな夢を叶えるデバイスです。GPSを使用して、家に近づくとライトが点灯し、家の中にいる間は点灯し続けます。

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

機能

このプロジェクトはBlynkを使用して動作します。Blynkはモバイルデータを必要とするため、外出先で動作させるにはモバイルデータを有効にする必要があります。Blynkアカウントとアプリが必要です。

動作はシンプルです:Blynkがスマートフォンの位置情報を監視し、そのデータをArduino Yunに送信。Arduino Yunはスマホの位置情報と自宅の位置(ユーザーが手動で設定)を比較。スマホが自宅の範囲内に検出されると、Arduino YunがLEDを点灯させます。

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

デバイスはユーザーのスマホ位置を常時監視し、自宅範囲内にいるかどうかをチェックし続けます。コードの概要は以下の通り:

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

Arduino Yunは自宅の座標に基づいて自動的に自宅の範囲(パラメータ)を設定します。設定地点を中心に約60メートル四方の正方形を作り、その内側にユーザーがいればLEDオン、外ならオフという仕組みです。

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

メリット

このプロジェクトを運用するユーザーは以下のメリットを得られます:

プロジェクトの構築

ステップ1:必要な機材

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

ステップ2:回路の接続

物理回路はLEDと抵抗のみのシンプルな構成です。回路図は以下の通り:

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

ステップ3:自宅の位置情報(緯度・経度)を取得

以下の画像で手順を解説:

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

ステップ4:Blynkのセットアップ

Blynkアカウントが必要です。App StoreまたはGoogle PlayからBlynkアプリをダウンロードし、以下の手順で設定:

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明
帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

ステップ5:コードの理解

このプロジェクトのコードは3つの主要セクションで構成されます:

位置情報の読み取り
BLYNK_WRITE(V0) // 位置情報を変数に格納
{
  latitude = param[0].asFloat();
  longitude = param[1].asFloat();
  // デバッグ用 - 以下の行をアンコメントして手動テスト可能
  // latitude = 67.357899;
  // longitude = -8.259199;
}

BlynkのバーチャルピンV0から位置情報を読み取り、変数に格納します。デバッグ用に固定座標を指定することも可能です。

位置のプロット(範囲判定)

if (latitude <= maxLat && latitude >= minLat &&  // スマホが自宅パラメータ内かチェック
    maxLng >= longitude && minLng <= longitude) {
  geolocation = 1;
} else {
  geolocation = 0;
}

設定した自宅位置を中心に自動的に正方形の範囲が形成され、スマホがその内側にあるか判定します。

LED制御

if (geolocation == 1) // スマホが範囲内ならLEDオン
{
  digitalWrite(pinLED, HIGH);
}
else {
  digitalWrite(pinLED, LOW);
}

ユーザーが自宅に近づいているか、または自宅にいればLED点灯、離れていれば消灯します。

変数の設定

以下の値を設定してください:

使用ライブラリ

最終ステップ

Arduino YunをPCに接続してコードをアップロードします。このプロジェクトはArduino Yunが必要ですが、コードを少し修正すれば、内蔵WiFiを持つ任意のマイクロコントローラーや、WiFiモジュールを接続したArduinoでも動作可能です。外出先での動作にはモバイルデータが必要です。

背景

長年実現したかったプロジェクトです。基本アイデアは「ユーザーが家に近づくと家のライトが点灯する」というもの。実際の家のライトではなくLEDで代用していますが、リレーを追加してArduinoの同じピンに接続し、家の照明配線に割り込ませれば実用化可能です。まずはテストして配線と動作を確認してください。グッドラック!

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

コード

lightsOnEnter

完全なコード

lightsOnEnter(ESP8266版)

Yúnの代わりにESP8266を使用するためのコード適応版。5V動作のArduinoボードならどれでも実行可能。

回路図

帰宅時に自動で家のライトを点灯:ArduinoとiPhoneで実現するスマート照明

schematics_J7lseyIN3G.fzz

製造プロセス

  1. Arduino MegaでPWM制御:プッシュボタン付きLEDフェード制御チュートリアル
  2. Arduinoデジタルダイス: LCD表示の乱数ジェネレーター自作
  3. Arduinoでアイアンマンを自作:部品・センサー・手順ガイド
  4. ArduinoとBluetoothで作るスマート紛失防止タグ「Find Me」
  5. Arduino Cloud連携でどこからでも家の温度を監視
  6. Arduino駆動3Dプリントロボットアームの製作:ステップバイステップガイド
  7. DIY Arduino加湿器コントローラー:リレーを用いた安全な高電圧制御
  8. Arduino Nanoで作るNeoPixelマトリックス版Pongゲーム
  9. ゲーム用カスタムArduinoジョイスティックハンドルの製作
  10. ArduinoとTEA5767で作る高性能FMラジオ受信機
  11. Arduino 101で作る万歩計:DHT11温湿度センサー&LCD表示付き