~色々演奏してみよう~mBotのブザーで音楽を作ろうmBotは、ブザーを使って、色々なメロディを作ることが出来ます。mBotのケースを外すと、mBotの右側に、ブザーがついているのが確認できます。mBotで音のプログラミングをする前に、ブザーの仕組みを簡単に紹介します。「音」は、空気が振動して伝わります。出典:https://monoist.atmarkit.co.jp/mn/articles/1301/09/news004.htmlその音波を受けた人の鼓膜が振動し、聴覚神経に伝わることによって、「音)」として感じ取ることが出来ます。ブザーは、コイルに電流が流れる際に、振動板が揺れ、空気の振動として伝わります。(ローカル版)・オンラインのファームウェアバージョン_06.01.107・Windows10・アップロードモードオフmBotプログラミング2ドレミファソラシドを作ろうまずは、以下の手順で、プログラムを作って、「ド」の音を鳴らしてみましょう。小学校では、ドレミファソラシド・・・・と習いますが、英語では、CDEFGABC・・・になります。アルファベットの横にある数字は、オクターブを表します。C3を、1オクターブ上げた音が、C4です。小学校では、音の長さは、○○分音符と習います。4分音符は、だいたい1秒ですが、正しい時間(秒)ではありません。ロボットは、あいまいな時間を指示されても、どう動けばよいか、分からないので、プログラムをするとき、正しい時間の単位である「秒」でロボットに、音を鳴らす長さを伝えます。ブザーブロックに最初に表示されている長さは、「0.25秒」ですが、音符にする場合は、だいたいの目安として、下の図を参考にしてください。ブザーで「ド」の音(おと)を鳴(な)らすことが出来た後は、ドレミファソラシドをプログラミングしてみましょう。「ド」を鳴らせた時と同じ方法で、C4の下に、D4、E4・・・とブロックを繋ぎ合わせて、ドレミファソラシドがなるか確かめてみましょう。小数点は、小学校3年の算数で習いますので、小学校1・2年生では難しいかも知れません。1秒よりも短い数字と説明して、実際にブザーを1秒鳴らした後、0.25秒鳴らせば、多くの子が、その意味を直感的に理解できるようになると思います。ロボットプログラミングでは、実際にロボットを動かしながら、小数の数を変えていく事で、理解が進むので、低学年でも、そこまで心配は不要です。~きらきら星の演奏~次は、みんな知っている、「きらきら星」を演奏させてみましょう。ファファミミレレドーでは、以下の手順でプログラムを作ってみましょう。C3、プログラムを実行して、「きらきら星」のメロディが流れるかを確認する4、各ブロックの、音の長さを、調整する。※フレーズとフレーズの間に、「ひと呼吸」おきたい場合は、制御パレット内にある「●●秒待つ」ブロックを使って実現することが出来ます。これで作ったプログラムを見てみましょう。長くて、分かりにくいプログラムになりました。プログラムを作る時は、だれが見ても分かりやすいように、少ないブロックで、簡単に作ることが出来ないか、いつも考えることがとても大切です。それでは、この長いプログラムをもっと見やすく、分かりやすくできないか、考えてみましょう。ここで、注目してほしいのは、「ソソファファミミレー」が2回繰り返されている所です。Dこの部分を、「制御」パレットにある、繰り返しブロックを使って、短くしましょう。繰り返しブロックは、3種類あります。「〇〇」回(かい)繰り返すブロックは、繰り返しの回数を指定したいときに使います。「ずっと」ブロックは、ずっとプログラムを実行させておきたいときに使います。「ずっと繰り返す」ブロックは、この後に習う、センサーを使ったプログラミングで、とても重要な役割をします。「〇〇」まで繰り返すブロックは、ひし形の所に、「条件を表すブロック」をいれます。このブロックは、演算やセンサーのブロックを活用したいときに、活躍するブロックです。ここでは、「●●回繰り返す」の、回数を2に変更して、使ってみましょう。下のように、スクリプトが短くなりました。~イベント~ロボットは、一つの動作が終わるまで、次の動作をすることが出来ません。プログラミングするときは、ひとつひとつ、丁寧に、動作をプログラムする必要があります。人間(にんげん)は、無意識にうちに順番に物事を進めます。その時、人間は、順番を入れ替えたり、同時におこなったりすることがあります。ロボットは、一つの動作が終わるまで、次の動作には進めません。細かく分け、一つ一つ順番に丁寧に指示してあげる必要があります。最新の「mBlock5」に対応した「mBot」の基本活用術も連載中です。合わせてご覧ください。17MakeX2019のテーマ・開催概要が発表されました。J-tinkering。