Maqueen基本の動き

 Maqueenには2個の車輪がついています。この二輪を使って、前進・後退、旋回など基本的な動きをさせる仕組みとプログラムを学びます。思ったとおりに動かせるようにしましょう。

Maqueenのような二輪ロボットカーの基本の動きの
仕組みとプログラムを学び、
思ったとおりに動かせるようにしよう!

(本ページ作成 2021.06.10)

二輪ロボットカー

 micro:Maquuen(以下「Maqueen」と略記)をはじめ、コンピューター制御の小型ロボットカーには二輪(+キャスター)タイプのものが多いです。シンプルな構造で制御しやすいことが特長です。

スキッドステア方式

 ロボットカーにはいろいろなタイプがあり、特に進行方向を変える仕組みが異なっています。

 人が乗る自動車と同じ「ステアリング機構」もあれば、変わったものとしては「メカナムホイール」等もあります。

 Maqueenなどの小型ロボットカーでは、左右の車輪の回転数の差で向きを変える「スキッドステア方式」を採用しているものが多いようです。この方式は実物でも、「スキッドステアローダー」や「ブルドーザー」など小回りが必要な車両で使われています。

スキッドステア方式の基本の動き

前進後退

 前後方向に直線に動く「前進・後退」を行うときは、左右の車輪を同方向・同速度で回転させます。

旋回

 進行方向を左右に変えたいときは、曲がりたい方向の車輪の速度を落とします。左右の車輪の回転速度の差が大きいほど「小回り」になります。

信地旋回

 曲がりたい側の車輪を停止させると、その車輪の設置面を軸に回転します。左右の車輪間幅を半径にした円を描くように小回りします。このような旋回を「信地旋回」といいます。

超信地旋回

 左右の車輪を同じ速さで逆回転させると、車軸の中央を軸にその場で旋回します。「超信地旋回」と呼ばれるこの動きは車体の大きさの範囲で旋回できます。スキッドステア方式の最大の特徴です。

動かしてみよう

 前進・後退、左右旋回といった基本的な動きをプログラミングしてみましょう。

モーター制御ブロック

 まず、モーターを動かすコードブロックを紹介します。

モーターを回す

 モータを回すコードブロックです。
 回転させるモータの指定、回転方向の指定、モーター出力の指定ができます。

 

 モーター出力は、電力制御なので回転数と比例しているわけではありませんが、数値が大きいほどスピードが速くなります。

 一度モーターの動きを指定すると、次にモーターの動きを変えるブロックを使うまで、動き続けます。

モーターを止める

 モーターへの電気の供給を止めます。車輪やモーターそのものは少し空転します。急には止まれません。

基本の動きのプログラム

 実際に、Maqueenでの基本の動きとプログラムについて説明します。

前進・停止・後退

 前進・後退といった直進の動きは、左右両方のモーターを同じ速度で回転させます。

 同じ回転方向・モーター出力であれば、一つのブロックで「すべて」のモーターの動きをコントロール出来ます。

 モーターを一定時間回転させるには、「一時停止」ブロックを使います。「一時停止」という言葉からモーターも停まりそうですが、停止させるのはプログラムの処理なので、「一時待機」という意味で用いてください。

 モーター出力については、あまり小さいとモーターは回転しません。60以上を目安にします(最大値は255)。

 後退させるときは、モーターの回転方向を「後ろに」にします。

 停止させるためには「モーターを止める」ブロックを使います。「モーターを回す」ブロックで、モーター出力を「0」としてもモーターは止まります。

旋回

 次に「旋回」のプログラム例です。曲がりたい向きの車輪の回転数を遅くすると旋回します。

 さらに曲がりたい向きの車輪を止めると、車輪の接地面を軸に旋回します(信地旋回)。左右の車輪を逆回転すると車体中心を軸に「その場旋回(超信地旋回)」ができます。

 プログラミングに挑戦

 次のような動きをするプログラムを作成してみましょう。

1)「ニコ顔」表示
2)モーター出力「150」で、前進3秒
3)1秒停止
4)モーター出力「150」で、後退3秒
5)1秒停止
6)モーター出力「120」で、左超信地旋回5秒
7)1秒停止
8)モーター出力「120」で、右超信地旋回5秒
9)「寝てる顔」表示

 チャレンジしてみてください。

プログラム例

 上記のプロフラム例をリンク先に掲載しています。 

 リンク先:https://makecode.microbit.org/_Y9cLm0EFxDvu

 プログラムは理論上は、スタート時と同じ場所・同じ向きになるはずですが、タイヤのスリップなどで少しずれが生じます。

【 ページTopに戻る 】