見出し画像

讃えてロボをつくってみよう!(プログラミング編)

音に反応して目を開けてくれるロボットをつくってみましょう!

前回はロボ本体のつくり方を紹介しました。(工作編はこちら。)
今回はいよいよ音に反応する機能を kurikitのビジュアルプログラミングを用いてつくっていきます!

工作レベル:★★★
プログラミングレベル:★☆☆
制作時間:4、5時間

画像1

使うもの

・kurikitのビジュアルプログラミング
・マイクを搭載したPC
・讃えてロボ本体(ココロキット搭載済み)
・試す用モーター

画像2

スクリーンショット 2020-06-09 19.45.01

拍手_1


拡張機能をロード

「ココロキット」の拡張機能をロードし、

スクリーンショット 2020-06-16 11.50.29

ココロキットとPCと接続します。

スクリーンショット 2020-06-16 11.53.18

kurikitのビジュアルプログラミングとココロキットをはじめて使う方はこちらへ!



必要な要素を整理しよう

讃えてロボの機能に必要な要素は3つあります。
それぞれ説明していきます!💨

・音がするとモーターがまわる
・音がしないとモーターが逆にまわる
・目の開きが最大と最小のときにモーターが止まるようにする



音がするとモーターが回るようにする


讃えてロボのメインの機能ですね!
音を感知したらモーターが回転するようにプログラムします。

ココロキットはロボ本体にはつなげずに、まずは他のモーターにつなげてプログラムを試してください。

画像17


まず、音量ボタンにチェックを入れます。
すると、音量を示す数字がでてきます。

スクリーンショット 2020-06-16 11.39.54

(Scratchのマイク機能の詳しい使い方はこちらをご覧ください。)

次に、音量が特定の数値(ここでは10)を超えるとモーターが動くようにします。

画像14

これで音がなると、うぃん、うぃん、うぃん、と動く仕組みができました。



音がしないとモーターが逆にまわるようにする

次は、音がしないときにモーターが逆方向に回るプログラムを追加します。

画像14

音が10以上のときは順回点を、それ以外のときは逆回転をするようになりました。



目が最大と最小のときにモーターが止まるようにする

音がするとモーターが順回転し、音がしないときにはモーターが逆回転する、というプログラムができました。
が!どちらの場合も、条件を満たしているときはモーターが永遠とまわり続けちゃいますね…。

このままロボ本体とつなげると、目が最大まで開いたあともモーターがまわり続け、本体が壊れてしまいます。

名称未設定のアートワーク 4

そこで、適当なところでモーターが止まる仕組みを追加します。


【1】変数『め』をつくる
目の開き加減を表現する変数をつくります。
変数を作る、を押して、『め』と名前をつけましょう。

スクリーンショット 2020-06-16 14.50.16


【2】変数『め』を増減させる
全体の仕組みとしては、音がするとモーターが動いて目が開き、音がしないと閉じる、でした。

そこで、『め』の数値を、音がするときは増えて、しないときは減るようにします。

カウント無限

一気に増えたり減ったりしないように、0.2秒待つ、を最後に入れます。


『め』のおかげで目の開閉の様子が数値で見えるようになりました。

『め』が増えているときは、目が開いていくとき。
『め』が減っているときは、目が閉じていくとき。


【3】『め』に限度をつくる
ロボ本体には、目の開きに限度があります。
それに合わせて『め』にも限度を作ってあげましょう。

カウント

これで『め』が0〜10に制限されました。


【4】モータの動きと合体させる!
では、今つくったプログラムを利用して、『め』が最大と最小になったときにはモーターが動かないようにするプログラムを書きましょう。

ラスト直前

『め』が1より小さいときと9より大きいときはモーターが止まるようになりました!👏


(右の窓に出る数値では、最小0、最大10となると思います。)

スクリーンショット 2020-06-16 16.28.44



ロボ本体と合体する

ついに、ロボ本体とつなげます!
便宜上、音量を10、モーターの出力を100、1<『め』<9、としていましたが、自分のロボに合わせて微調整してあげてください。

スクリーンショット 2020-06-16 16.24.44

↑私の場合



完成!

画像16

ちらり。

ダウンロード

すんっ…


以上で讃えてロボ完結です!

プログラミング初心者の筆者でも、ココロキットを使ってロボを簡単につくれちゃいました 🤖
自分の指示でロボが動いてくれると、とても嬉しいですね…!

ちょっと難しそうだなぁ、と思っている方も大丈夫です。
まずは挑戦してみてください!💪


工作とプログラミングを合わせた楽しいアイディア、お待ちしております!


画像5




この記事が気に入ったらサポートをしてみませんか?