3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[obniz]季節の変わり目に飲み物提供マシン

Last updated at Posted at 2021-05-16

##ここだけ見てくれたら閉じていいよw
今回はこんなものを作りました!
この動画見てくれたら、もうそれでいいですw

見てくださりありがとうございました。
以下このマシンの概要になるので気になる方はぜひご覧ください。

##暑いし寒い、1日の気温の変化が大変
この時期、朝は寒いのに昼間は暑い。。
日が暮れるころにはまた寒いなんて感じませんか?
そんなときに少し役に立つ飲み物の提供マシンをobnizでつくりました。

##マシンの中身
まず温度センサー(LM60 | JS Parts Library | obniz)とLEDWS2811 | JS Parts Library | obnizが使用されています。
image.png
温度センサーで気温を計測し、設定した温度より高いか低いかでLEDが変色します。

今回のマシンに欠かせないのがサーボモータ!!(サーボモーターの概要
image.png
回転する鍋蓋と土台のボールの間に設置しました。
これを固定してバランスとるのが難しかったw

あとは回転する鍋蓋の上につけられたカップに飲み物の温度を保つための保冷剤とカイロを入れて完成!
image.png

##ここも見る価値ありかも!obnizの配線とソースコード
各部品とobnizは以下のように接続しました。
使用したobnizは1Yボードになります。
image.png

以下が使用したソースコードになります。

const Obniz = require('obniz');
//IDの書き換え忘れずに!!
const obniz = new Obniz('ID');

obniz.onconnect = async () => {

    // 温度センサ
    const tempsens = obniz.wired('LM60', { gnd: 0, output: 1, vcc: 2 });
    
    // RGB LEDを利用
    const rgbled = obniz.wired('WS2811', { gnd: 4, vcc: 5, din: 6 });

    // サーボモータを利用
    const servo = obniz.wired('ServoMotor', { gnd: 9, vcc: 10, signal: 11 });
    // 角度を保持する変数
    let degrees = 90.0;

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

    // setIntervalで定期実行
    setInterval(async () => {
        // 同期的に取得
        const temp = await tempsens.getWait();
        // 温度をコンソールに表示
        console.log(temp + 'C');
        // 温度をobnizディスプレイに表示
        obniz.display.clear();
        obniz.display.print(temp + 'C');
        // 温度によって判定
        if (temp < 22.0) {
            //冷たい飲み物が置いてあるほうに回転
            degrees = 180.0;
            servo.angle(degrees);
            //水色のLEDを点灯
            rgbled.rgb(45, 140, 255);
        } else {
            //暖かい飲み物が置いてあるほうに回転
            degrees = 1.0;
            servo.angle(degrees);
            //オレンジ色のLEDを点灯
            rgbled.rgb(255, 110, 30);
        }
    }, 180000); // 180000ミリ秒 = 30分ごとに実行
};

##できなかったこと・・・
ここまで完成はしたのですが本来使いたかったのはこの部品!
圧力センサー(FSR-40X)!!!!
image.png
こいつを使って飲み物が減っているかを検知したかった。
もし30分以上減っていなければ音を鳴らし脱水症防止にも役立てられただろうに・・・
なぜ実装に至らなかったかというと短すぎwwwww
回転盤の素材や土台をもうすこし考えてから再挑戦したと思います!

##まとめ
今回はあったらいいなでいうと1日の水分摂取量を管理してくれるものが作りたかったのでできなかったことのほうがあったらいいなでした。
しかし今回作成したマシンを見てこれは面白いし、こちらを作りたいという気持ちが勝ったため圧力センサーは今回外しました。
作成前はこのマシンはあまり面白くないだろうなと思い圧力センサーを思いついたのですが動いているところを見たらシュールで面白かったです。
やはり作ってみるまで分からないところもあるなと思いました。

3
0
1

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
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?