これから、micro:Maqueenを動かしてみます。
最初に行うのは、前進や交替・旋回といった動きの基本です。
プロジェクト「基本の動き」
micro:Maqueenを思い通りに動かせるようにしたいと思います。
プロジェクトの目的
「まっすぐ進む」「曲がる」「停止する」といった基本の動きのプログラムをつくり、micro:Maqueenに思い通りの動きをさせることができるようにします。
micro:Maqueenの基本操縦方法
micro:Maqueenには、普通の自動車のような「前輪の向きを変える」しくみがありません(キャスターは車体を支えているだけです)。左右のモーターを制御し、車輪の回転を変えることで動き方を変えます。
直進するとき
直進したいときは、左右の車輪を同じ速さで回転させます。左右の車輪を同じはやさで「前まわり」させると前進します。逆に同じはやさで「後ろまわり」させると後退します。
曲がるとき
曲がるときは、曲がりたい方向の車輪の回転を反対側の車輪より遅くします。曲がりたい方向の車輪を停止すると、車輪の接地点を中心に旋回します。
「モーター駆動」ブロック・「モーター停止」ブロック
micro:Maqueenには、43mm径の車輪が左右についています。それぞれの車輪にギヤ付きモーターがついていて、モーターの回転方向・回転速度をコントロールすることで、思い通りの動きをさせることができます。そのために、用意されているのが「モーター駆動」ブロックと「モーター停止」ブロックです。
モーターを動かす「モーター駆動」ブロック
ツールボックスの「maqueen」内にある、「motor (left▼) move (forward▼) at speed(0)」と記されているが、「モーター駆動」ブロックです。
ブロック内の「対象モーター」・「回転の向き」・「速度」の要素を指定します。左右それぞれのモーターの動きを指定することができますが、対象モーターを「all」とすると左右両方のモーターを同じ速度で回転させることができます。
このブロックを実行すると、「モーター停止」ブロックが実行されるまでモーターは回転を続けます。
モーターの回転を止める「モーター停止」ブロック
ツールボックスの「maqueen」内にある、「motor(left▼)stop」と記されてるのが、「モーター停止」ブロックです。
ブロック内の「対象モーター」を指定して、停止させるモーターを決めます。「all」を指定するとmicro:Maqueenは停止します。
「モーター停止」ブロックの代わりに、「モーター駆動」ブロックで速度を「0」にしても、モーターの回転は止まります。
基本の動き
前進・停止・後退・・・・
最も基本的な動き「直進(前進・後退)」を試してみます。
「3秒前進→3秒停止→3秒後退→3秒停止」を繰り返すプログラムをつくりましょう。モーターに負担をかけないように、モーター回転方向を変えるときは「停止」ブロックをいれることが望ましいです。
下のプログラム例は、使用するブロックがすでに作業スペース内に置いてあります。「編集」ボタンを押して、プログラミムを完成させてください。
モーター駆動ブロック内の「速度」を変えてみて速さの違いを調べてください。micro:Maqueenを走らせるときは周囲を確認してから走らせてください。
※完成プログラム例はこちらです。
左右旋回(信地旋回)
進む向きを変えたいとき、曲がりたい方向の車輪を止め反対側の車輪だけを回転させると、止めた車輪を軸に旋回します。このような旋回方法を「信地旋回」といいます。
「3秒左旋回→3秒停止→3秒右旋回→3秒停止」という動きをするプログラムを完成させましょう。
次の編集中のプログラムは、ブロックの配置はできていますが、モーターの指定は初期値(left:左)のままです。旋回の仕方にあわせて正しいモーターを指定して、完成させてください。
※完成プログラムは、こちらです。
チャレンジプロジェクト
前の「左右旋回(信地旋回)」プログラムでは、片方の車輪を軸に旋回しました。もっと「小回り」をするようにするには、どうすればよいでしょうか?
【ヒント】車体の中心を軸に、その場で向きを変えることができます。
※プログラム例はこちら。
スキッドステア
今回さまざまな動きのプログラムを試したように、左右の車輪の回転速度を変えることで進む方向を変えることを、「スキッドステア」といいます。この方法で進む向きを変える車両はロボットカーだけでなく、社会でも実際に使われています。
工事現場で働くブルドーザーやスキッドステアローダーなどが代表例です。いずれも狭い場所でも向きを変えることができる特長を活かした車両です。