5
0
はじめての記事投稿
Qiita Engineer Festa20242024年7月17日まで開催中!

【元保育士の初ものづくり】我が家の爆睡ハムスターが、obnizを使っていつでもモチベ上げてくれるってよ

Last updated at Posted at 2024-06-11

この無防備な姿を見よ

こんにちは、元保育士で非エンジニア、りゆです。
2週間前からデジタルな世界へとやってきました!
画面共有とはなんぞや?!から始まったアナログ人間な私の、たった2週間で記念すべき初めてのobnizを使ったものづくりをお届けします。

こちらは夜行性のため、日中は爆睡し続けるハムスターでございます。

とっても幸せそうな寝顔をされていますね。

寝顔を見るだけでも十分なのですが、欲を言うと・・・ もふもふしたい(照)

えー・・・続いてこちらは日中モチベーションが低く、ゴロゴロし続ける私でございます。
最近「よし!やるぞ!」となるまでが長い。
デスクに向かっては 「考える人」状態 になっています。

ただこのままでは、やりたいことにも向き合えない!!

何か自分を変えられるきっかけはないかなと周りを見てみると、隣ですやすやと眠るハムスターが視野に入りました。
私はふと思ってしまったのです。

ハムスターから応援されたい!!

相当頭を使い込んだのでしょうね。普段だったら思いつかないアイデアです。

↓応援される気持ちになれるものを作ってみました!!↓

可愛い・・・LEDがピコン!と反応して、まるでお話しているようです☺️

応援される時には、

・何かしらの反応が欲しい!
・なでなでしたい!癒されたい!

という2点を大切に作ってみました。

ここからはハムに応援されたい人必見です!笑

ちなみに・・・

なでなでを堪能したい方へおすすめ↓

応援ハムを作って数日後に、欲求のままに作りました。

今回は平面でなでなでできる応援ハムスターの作り方です!!

一緒に作ってみましょう!!

なでなで応援ハムの準備

・obniz
・超音波距離センサー
・LED
・ブレッドボード
・ジャンパーワイヤー(超音波距離センサー用4本)
・ジャンパーワイヤー(LED用2本)
・ハムスターの写真と言葉の吹き出し

【開発者コンソール】

なでなで応援ハムのイメージ

【目的】

・ハムスターの写真をなでなですると、距離センサーが人を認識する
・LEDが光り、「頑張れ!」とエールを送ってくれる

【作成の流れ】

・センサーを作る
・距離センサーとハムスターの写真を近くに置く
・人が距離センサーに近づき、
 距離が5cm未満になるとLEDが光る(なでなでしたいから5cm未満にした)

とってもシンプルですね!!!!

一緒に作ってみよう!

① obnizを繋げて起動する

② QRコードとIDがの最初の状態になっているか確認!

③ 距離センサーを繋げる

④ LEDを繋げる

⑤ obniz と繋げる

⑥ 開発者コンソール開く

 ・開発→HTMLプログラムで作成

コードはこちら
<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>Obniz LED Control</title>
  <script src="https://unpkg.com/obniz@3.30.0/obniz.js"></script>
</head>
<body>
  <div id="obniz-debug"></div>
  <h1>好きなタイトルを入力</h1>

  <script>
    const obniz = new Obniz('Obniz_ID'); // Obniz_IDに自分のIDを入れます

    // obnizがオンラインであることが確認されたら、以下の関数内が自動で実行されます
    obniz.onconnect = async function () {   

    //*******ここから下にコードを入力*******

      // 超音波距離センサを利用
      // 基礎編で使ったときと向きが反転していることに注意
      const hcsr04 = obniz.wired('HC-SR04', {
        gnd: 3,
        echo: 2,
        trigger: 1,
        vcc: 0,
      });

      // LEDを利用
      const led = obniz.wired('LED', { anode: 10, cathode: 11 });

      // obnizディスプレイ(初期表示)
      obniz.display.clear();
      obniz.display.print('obniz Ready');

      // setIntervalで定期実行
      setInterval(async () => {
        // 距離を取得
        let distance = await hcsr04.measureWait();
        // 小数点以下がたくさんあるのでここでは整数にします
        distance = Math.floor(distance);
        // 距離をコンソールに表示
        console.log(distance + ' mm');
        // 距離をobnizディスプレイに表示
        obniz.display.clear();
        obniz.display.print(distance + ' mm');
        // 距離によって判定
        if (distance < 50.0) {
          // 50mm = 5cm 未満の場合 obnizディスプレイ表示
          obniz.display.clear();
          obniz.display.print('Too close!!');
          // LEDオン
          led.on();
        } else {
          // 50mmを超えるときは常にLEDオフ
          led.off();
        }
      }, 1000); // 1000ミリ秒 = 1秒ごとに実行

    //*******ここまでの間にコードを入力*******
    }
  </script>
</body>
</html>


⑦ コードを入力して実行!!

そして・・・

色々なバージョンを作ることで日替わりでも楽しめます♡

これがあればいつでも、モチベーション上げられますね!

しかし・・・

まだ満足していない!

なんてったって!会話ができないのです!!!

実際にハムスターも言葉が話せるわけではないので、あたかも話しているようにモチベーションがもっと上がるものを作りたいです。また一緒に作りましょう!!

「まだまだ改善するなんて...努力家だな」
「これからもものづくり頑張って!」と応援していただける方は、ぜひ記念すべき初めての いいね🩷 をお願いします!

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0