Lesson2:ロボットはきっかけを与えなければ動かない ーイベントー
Lesson1では、プログラムとはという所をかいつまんで説明し、mBlock5で、実際に簡単なプログラムを組んで、Codey Rockyにアップロードして、動かしてみました。
今回は、ロボットプログラミングをするうえでの重要な概念である「イベント」についてのお話です。
■Lesson2の目標
■Lesson2で準備するもの
キーコンセプト:イベントとは?
プログラミングでいう所「イベント」は、ロボットが何かのアクションを起こすために必要なきっかけを言います。ロボットプログラミングでは、必ず、1つまたは複数のイベントがあります。
例えば・・・
「10秒前進させる」という事をCodey Rockyにさせたい場合ですが、単純に考えると、↓のブロックだけでよいような気がします。
ですが、これでは、CodeyRockyは思ったっとおり動いてくれません。
ロボットやコンピューターは、どんな時、どんな状況の時、いつ?動けばいいのか指示してあげる必要があります。
例えば、コンピューターに限らず、エアコンを付けたいとき、皆さんは必ず、リモコンのスイッチを押しますよね?この「リモコンのスイッチを押す」というのが「イベント」です。
リモコンのスイッチを押したら(イベント)、エアコンが作動する
これと同じように、ロボットにもイベント=きっかけが必要になります。
○○をしたら(イベント)、ロボットが動く
mBlock5のブロックエリアにある「イベント」をクリックすると、イベントブロックが出てきます。下の画像は、「CodeyRockyのAボタンが押されたとき(イベント)10秒前進する」というプログラムです。
コーディング練習
まずは、↓の動画を見ながら、Codey Rockyの顔をにこっとさせてみましょう。
この動画のプログラムは、CodeyRockyのAボタンが押されたら、CodeyRockyのLEDパネルの表示がニコニコマークに変化するというものです。
この場合のイベントは、もちろん「Aボタンが押されたら」ですよね。
出来たら、他のイベントブロックを使って、以下のようなアクションをCodey Rocky にさせてみましょう。
1、起動したら、にこっと笑う表情をさせる
2、揺らしたら、怒った表情をさせる
3、Aボタンを押したら、画面を消す
さて、ちょっと簡単すぎたでしょうか?
上の3つのイベントですが、↓のように、複数設置することと、そのイベントごとに違う動作をしますので、イベントは複数の場合もあるという点を、理解しておきましょう!
まとめ:イベントという概念の重要性
1、イベントを与えないと、ロボットは動かない
2、イベントには、様々なアクションがある
3、イベントは、一つのプログラムに複数の設定する場合がある
今後、↑で試したイベント以外にも様々なアクションがイベントとして、使われます。例えば、光センサーの値が●●だったら、Codey Rockyを前進させるといったイベントもあります。
もし、ロボットプログラミングをお子さんと一緒に学んでいるあるいは、お子さんに教えようとされている親御さんでしたら、お子さんには、ロボットは、明確に指示をしなければ思い通り動かない、お父さん、お母さんみたいに、何をしてほしいのか聞き返したり、察したりすような事はないよ!と伝えてあげましょう(笑) これはロボットプログラミングにおけるコミュニケーション能力の向上になりますねえ。