見出し画像

誰もがロボットクリエイターになれる(21)

前進のプログラミング

みなさんこんにちは(^^)/

さてみなさん心の準備はいかがですか?(・ω・)ノ

サクッと行っちゃいましょうね。簡単だよ!(^^)! まずはmicrobitのエディターを起動しましょう。(プログラムを作成するキャンバスだよ)

画像1

今回は、前進をやりましょう。エディターのMaqueenの命令文の一覧から利用します。

画像11

日本語で書かれてるからなんとなくわかると思いますが、ここにもあるようにMaqueenは超音波センサー、サーボモーター、ラインセンサー(黒い線を認識します)等いろんなものがついています。

画像4

プログラミングのキャンパスはこの赤ライン内なので、こちらに「モーター」制御をドラッグしてドロップします。最初から「最初だけ」と「ずっと」というブロックがありますが、このどちらかにいまからはめ込んでいきます。今回は一度だけの制御なので、「最初だけ」ブロックにはめ込みましょう。

「ドラッグ&ドロップ」 マウスの操作のひとつを言います。 一般的に、移動させたい文字列や画像・ファイルの上で「左ボタン」を押したまま、マウスポインタを目的の場所まで移動させ(ドラッグ)、移動できたら「左ボタン」を離す(ドロップ)という操作です。

画像9

いまからモーターをどのように使うのか設定します。まずは左右どちらのモーターなのかあるいは「すべて」なのかですが、「前進」なので「すべて」ですね。

画像9

次にこのモーターをどちら方向に動かしたいのかです。「前進」なので「前に」ですね。

画像9

この回数はモーターの回転スピードのことです。0(とまる)→255までの間で設定します。今回は真ん中とって「100」としましょう。

画像7

これで、いまからどんなことをさせたいのかの「宣言」が完了します。

「すべてのモーターを前に100のスピードで動かしたい」です。次に、じゃあどのくらいの距離を進ませるの?となりますね。これは時間で表します。

画像8

画像10

これがちょっと曲者なんですが・・・・「一時停止」制御を使います。すなわち次の命令を操作するまでこの命令を実行し続けなさいということです。一時停止命令はミリ秒で表現します。1秒だと1000ミリ秒になりますよ。???ですね・・・

画像9

それから、動いているモーターを止めなければいけませんので、「すべて」のモーターを止めるブロックを使います。

このプログラムで説明すると、①「すべてのモーターを前方向に100のスピードで動かしたい」→②1秒間の間、前に進みなさい→③「すべてのモーターを止めなさい」・・・・となります。

このプログラムで、まるおくんは1秒間前に進みます。


画像11

これはフローチャートと呼ばれるものですが、最初だけブロックとずっとブロックの違いがよくわかります。「ずっと」ブロックは終わりへのつながりがなく永遠につづきます。では今までのプログラムを図式化したものがつぎです。ひし形が判断基準ですが、ここで判断されて繰り返すのか終わらせるのか決定されます。

なにかのプログラムを作るときは、このフローチャートをしっかり頭の中に入れておかないとうまく動作しないので最初はこのように手書きでもよいので書いてからプログラミングすることをお勧めします。

説明が長くなったので今回はここまで、次回は前進と後退です。

ではでは(^^)/

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