讃えてロボをつくってみよう!(プログラミング編)
音に反応して目を開けてくれるロボットをつくってみましょう!
前回はロボ本体のつくり方を紹介しました。(工作編はこちら。)
今回はいよいよ音に反応する機能を kurikitのビジュアルプログラミングを用いてつくっていきます!
工作レベル:★★★
プログラミングレベル:★☆☆
制作時間:4、5時間
使うもの
・kurikitのビジュアルプログラミング
・マイクを搭載したPC
・讃えてロボ本体(ココロキット搭載済み)
・試す用モーター
拡張機能をロード
「ココロキット」の拡張機能をロードし、
ココロキットとPCと接続します。
kurikitのビジュアルプログラミングとココロキットをはじめて使う方はこちらへ!
必要な要素を整理しよう
讃えてロボの機能に必要な要素は3つあります。
それぞれ説明していきます!💨
・音がするとモーターがまわる
・音がしないとモーターが逆にまわる
・目の開きが最大と最小のときにモーターが止まるようにする
音がするとモーターが回るようにする
讃えてロボのメインの機能ですね!
音を感知したらモーターが回転するようにプログラムします。
ココロキットはロボ本体にはつなげずに、まずは他のモーターにつなげてプログラムを試してください。
まず、音量ボタンにチェックを入れます。
すると、音量を示す数字がでてきます。
(Scratchのマイク機能の詳しい使い方はこちらをご覧ください。)
次に、音量が特定の数値(ここでは10)を超えるとモーターが動くようにします。
これで音がなると、うぃん、うぃん、うぃん、と動く仕組みができました。
音がしないとモーターが逆にまわるようにする
次は、音がしないときにモーターが逆方向に回るプログラムを追加します。
音が10以上のときは順回点を、それ以外のときは逆回転をするようになりました。
目が最大と最小のときにモーターが止まるようにする
音がするとモーターが順回転し、音がしないときにはモーターが逆回転する、というプログラムができました。
が!どちらの場合も、条件を満たしているときはモーターが永遠とまわり続けちゃいますね…。
このままロボ本体とつなげると、目が最大まで開いたあともモーターがまわり続け、本体が壊れてしまいます。
そこで、適当なところでモーターが止まる仕組みを追加します。
【1】変数『め』をつくる
目の開き加減を表現する変数をつくります。
変数を作る、を押して、『め』と名前をつけましょう。
【2】変数『め』を増減させる
全体の仕組みとしては、音がするとモーターが動いて目が開き、音がしないと閉じる、でした。
そこで、『め』の数値を、音がするときは増えて、しないときは減るようにします。
一気に増えたり減ったりしないように、0.2秒待つ、を最後に入れます。
『め』のおかげで目の開閉の様子が数値で見えるようになりました。
『め』が増えているときは、目が開いていくとき。
『め』が減っているときは、目が閉じていくとき。
【3】『め』に限度をつくる
ロボ本体には、目の開きに限度があります。
それに合わせて『め』にも限度を作ってあげましょう。
これで『め』が0〜10に制限されました。
【4】モータの動きと合体させる!
では、今つくったプログラムを利用して、『め』が最大と最小になったときにはモーターが動かないようにするプログラムを書きましょう。
『め』が1より小さいときと9より大きいときはモーターが止まるようになりました!👏
(右の窓に出る数値では、最小0、最大10となると思います。)
ロボ本体と合体する
ついに、ロボ本体とつなげます!
便宜上、音量を10、モーターの出力を100、1<『め』<9、としていましたが、自分のロボに合わせて微調整してあげてください。
↑私の場合
完成!
ちらり。
すんっ…
以上で讃えてロボ完結です!
プログラミング初心者の筆者でも、ココロキットを使ってロボを簡単につくれちゃいました 🤖
自分の指示でロボが動いてくれると、とても嬉しいですね…!
ちょっと難しそうだなぁ、と思っている方も大丈夫です。
まずは挑戦してみてください!💪
工作とプログラミングを合わせた楽しいアイディア、お待ちしております!
この記事が気に入ったらサポートをしてみませんか?