デモ動画
部品
部品の名称 | 個数 |
---|---|
obniz Board 1Y | 1 |
ブレッドボード | 2 |
リレー(Omron 形G5NB-1A) | 1 |
光センサーモジュール(Kuman arduino用セット) | 1 |
※普通の光センサーでも可能です。
設計図
設計前の課題
家のトイレは外から見て、誰か入っているのかわからない問題があった。現在リモートワークを行っているため、家族が誤って、使用中にも関わらず開けてしまう事故が頻発した。
今トイレを使っているのかを、ドア前で分かる方法があればいいなと思い。obnizで制作することにした。
市販のおもちゃを使う理由としては、下記2点である。
- リレーを使うことで、自分のお気に入りの玩具を改造して、制御できる手段を伝えたかった。
- それなりの大きさのおもちゃであれば、日常生活で蹴飛ばさず、ずっと可愛がって使えるとおもった。
設計の工夫
- 使っているか使っていないかを検知したいため、トイレの光を利用することにした。
- 光センサーを採用。
ソースコード
<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>
//type in your obniz ID
var obniz = new Obniz("OBNIZ_ID_HERE");
//during obniz connection
obniz.onconnect = async function() {
// io0はリレー用5Vor0V
// io1はリレー用GND
obniz.io1.output(false);
// io2は光センサー用5v
obniz.io2.output(true);
// io3は光センサー用GND
obniz.io3.output(false);
// io4は光センサー用アナログピンに
obniz.ad4.start((voltage) => {
console.log(`changed to ${voltage} v`);
// 光センサーの値が4.0未満だったら、io0を0Vに、4.0以上であればio0を5V入力しリレーを制御する
if(voltage < 4.0) {
obniz.io0.output(false);
} else {
obniz.io0.output(true);
}
});
};
</script>
</body>
</html>
仕組みの解説
ピンそれぞれの役割
- io0はリレー用5Vor0Vを制御
- io1はリレー用GND
- io2は光センサー用5v
- io3は光センサー用GND
- io4は光センサー用アナログピン
リレー
リレーとは、別の回路をマイコンなどで制御できるようにするパーツのことです。
詳しい仕様はこちらを見てください。
今回は io0
は下記の図の4番、 io1
は下記の図の1番に接続されています。2と3には改造したおもちゃのそれぞれの導線が接続されています。
光センサーでとある値以上になると、 io0
は5Vを発生し、下記の図の1と4の間に電気が流れることになります。ここに電気が流れると、2と3の間の回路が接続され、電流が流れることになります。
(引用元 Omron 形G5NB パワーリレー)
光センサー
光によってアナログピンに出力される値が異なる。この動画では、手によって光が届かなくなると、リレーが動作しおもちゃの電子回路を切断しライトを消灯している様子を紹介しています。
市販のおもちゃの改造
市販のおもちゃの導線は小さく、被膜を剥がすのがとても大変だったので、もし行う際は気をつけてください。
※お子様の場合は保護者の指導の元行ってください
3
-
marina
さんが
2021/04/24
に
編集
をしました。
(メッセージ: 初版)
ログインしてコメントを投稿する