sakashiのアイコン画像
sakashi 2021年05月09日作成 (2021年05月09日更新)
セットアップや使用方法 セットアップや使用方法 閲覧数 698
sakashi 2021年05月09日作成 (2021年05月09日更新) セットアップや使用方法 セットアップや使用方法 閲覧数 698

「OK Google 電気をつけて」ObnizeSwitchで部屋の電気を簡単IoT化

まえおき

「寝る直前にベッドから部屋の電気を消したい」
という思いから、Googleアシスタントに「OK Google 電気をつけて(消して)」と命令すると部屋の電気を点灯&消灯できる装置を作りました。
キャプションを入力できます

用意するもの

準備

※スイッチオフ用とスイッチオン用の2セット作成する必要があります。

  • SwitchOff:{gnd:0, vcc:1, signal:2}
  • SwitchOn:{gnd:3, vcc:4, signal:5}
    でobnizに接続し、コードも対応させます。

↓以下はスイッチオフ用の説明です。↓

■obniz
下記コードをobnizコンソールのリポジトリに作成する。
(角度は適宜調整してください)

▼SwitchOff.html

<head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" /> <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> <script src="https://unpkg.com/obniz@3.x/obniz.js" crossorigin="anonymous" ></script> </head> <body> <div id="obniz-debug"></div> <script> var obniz = new Obniz("27352929"); obniz.onconnect = function () { const servoMotor = obniz.wired("ServoMotor", {gnd:0, vcc:1, signal:2}); servoMotor.range = {min: 0.6,max: 2.3} var off_angle = 20; // 電気を消す角度 var default_angle = 90; // 元の角度 // 電気を消す obniz.display.clear(); obniz.display.print("OFF"); servoMotor.angle(off_angle); // 角度を元に戻す obniz.wait(1000); obniz.display.clear(); obniz.display.print("END"); servoMotor.angle(default_angle); } </script> </body> </html>

サーバレスイベントを設定する

  • トリガー:webhook(URLを控えておく)
  • リポジトリ内のHTML:「SwitchOff.html」を選択

■IFTTT
IFTTTで下記のように設定する。

  • If::Google Assistant > Say a Simple phrase("OK, Google!"で命令したいアカウントに連携)
  • Then:Make a web request(控えておいたURLを貼付ける)

IFTTT設定(メイン)

IFTTT設定(Google Assistant)

IFTTT設定(Make a web request)

以上で設定完了!

補足

  • 最初は下画像のようにモーター1つにしていたが、このスイッチの構造上深く押し込む必要があるらしく、成功率が100%ではなかったため、両側2つ設置する方法に落ち着いた。
    補足
ログインしてコメントを投稿する