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

箱の開閉状態を通知

箱の開閉状態を通知

はじめに

箱の開閉状態の変化を遠隔で取得します。
これにより、秘密にしている箱などが勝手に開けられたときに通知が来ます。
今回JavaScriptを初めて触りました。
私の力不足により、LINEやSlackによる通知を実現することができませんでしたが、遠隔地での状態取得を可能としたため、おおむね良好だと考えます。

デモ動画

ここに動画が表示されます

部品

部品 数量
obniz Board または obniz Board 1Y 1
CdS素子 1
抵抗 ~10kΩ(今回は500Ω) 1
ジャンパワイヤ オス-オス 3
ブレッドボード 1
お好きな箱 1

設計図

下の写真のように配線したものをお好きな箱の中に入れます。(obnizへの電源必須)
キャプションを入力できます
今回は9番ピンを電源(HIGH)、11番ピンをGND(LOW)に設定し、10番ピンをアナログ入力としました。

ソースコード

<!-- HTML Example --> <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"> <link rel="stylesheet" href="/css/starter-sample.css"> <script src="https://obniz.com/js/jquery-3.2.1.min.js"></script> <script src="https://unpkg.com/obniz@3.14.0/obniz.js"></script> </head> <body> <div id="obniz-debug"></div> <!--文字の表示--> <div class="wrap"> <div class="print"> <h3 class="text-center">箱の状態</h3> </div> </div> <script> const obniz = new Obniz("5861-7967"); const threshold = 4.5; var prev = threshold; obniz.onconnect = async function () { obniz.display.clear(); obniz.display.print("Shielding"); obniz.io9.output(true); obniz.io11.output(false); obniz.ad10.start((voltage) => { //console.log(voltage); if(prev < threshold && voltage > threshold){ obniz.display.clear(); obniz.display.print("閉じました"); console.log("閉じました"); }else if (prev > threshold && voltage < threshold){ obniz.display.clear(); obniz.display.print("開きました"); console.log("開きました"); } prev = voltage; }); }; </script> </body> </html>
ログインしてコメントを投稿する