saitohiroaki
2021年05月13日作成 (2021年05月13日更新)
製作品 1738
自動車距離センサー&接近アラーム
実現したいこと
自動車でバックモニターが付いていない車をバックさせたり狭いところに停めようとするときに、不注意で車をこすってしまうことがあります。
そんなときに、このような距離センサーと接近アラームがあれば、うっかりミスが減らせると思いました。
なお、このIoTデバイスはあくまで試験的なもので、このまま実利用はできませんのでご了承ください。
できたもの
車のバンパーに距離センサーを付けて、壁に向かってバックしました。
1mくらい近くなって音が断続的になりはじめ、30cmに近づいて鳴り続けます。
準備するもの
部品名 | 必要量 |
---|---|
距離センサー HC-SR04 | 1個 |
低電圧メカニカルブザー 3V | 1個 |
USB TYPE-Cケーブル(obniz電源) | 1本 |
4芯ケーブル | 4m |
ハードウェア接続
部品 | 接続 |
---|---|
距離センサー | gnd:0, echo:1, trigger:2, vcc:3 |
メカニカルブザー | signal: 10, gnd: 11 |
プログラム
距離センサー&接近アラームプログラム
<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("OBNIZ_ID_HERE"); // called on online obniz.onconnect = async function() { const hcsr04 = obniz.wired("HC-SR04", { gnd: 0, echo: 1, trigger: 2, vcc: 3 }); const speaker = obniz.wired("Speaker", { signal: 10, gnd: 11 }); hcsr04.unit("mm"); var distance = 0; // called while online. obniz.onloop = async function() { distance = await hcsr04.measureWait(); if ( isNaN(distance) == false ) { // 測定が正しい場合(数値かどうかを判断) if (distance <= 300) { // 30cm以下になった場合 speaker.play(5); console.log("Very close to within " + distance + " mm") await obniz.wait(1000); // 長めの音 speaker.stop(); } else if(distance <= 1000){ // 30cm〜1m以下になった場合 speaker.play(20); console.log("Close to within " + distance + " mm") await obniz.wait(500); // 短めの音 speaker.stop(); } } else { // 測定が正しくない場合(数値ではない) console.log("Reset sensor!") hcsr04.reset_alltime = true; // HC-SR04をリセットする。 } }; }; // called on offline obniz.onclose = async function() { }; </script> </body> </html>
1
- saitohiroaki さんが 2021/05/13 に 編集 をしました。 (メッセージ: 初版)
- saitohiroaki さんが 2021/05/13 に 編集 をしました。
- saitohiroaki さんが 2021/05/13 に 編集 をしました。
- saitohiroaki さんが 2021/05/13 に 編集 をしました。
- saitohiroaki さんが 2021/05/13 に 編集 をしました。
- saitohiroaki さんが 2021/05/13 に 編集 をしました。
- saitohiroaki さんが 2021/05/13 に 編集 をしました。
- saitohiroaki さんが 2021/05/13 に 編集 をしました。