ロボットキットレビューtinkeringTwitterFacebookはてブPocketPinterestLINE最新ページ情報このページは、ビジュアルプログラミングソフト「mBlock3」で解説しています。以下に、最新版の「mBlock5」での解説ページも、合わせてご覧ください。mBlock5対応!mBotのライントレースセンサーの基本と使い方をマスターhttps://j-tinkering.com/mblock5-mbot6/mBotが黒い線の上を走行するのは、ライントレースセンサーのおかげmBotが線の上を走っている動画を見たことがある人も多いと思います。これは、mBotのラインフォロワーセンサー(ライントレースセンサー)のおかげなんです。ラインフォロワーセンサーはこちらです。ラインフォロワセンサーモジュールには、光りを発する赤外線ライトと、光りを検出するLEDフォトダイオードのセットのセンサーが2つついています。センサーは、発光された赤外線が跳ね返ってくる量によって、白か黒かを見分けます。赤外線が多く跳ね返るのは、白いライン、跳ね返りが少ない場合は黒と判定します。下の画像のようにこのセンサーが2つ(sensor1/sensor2)ついています。それぞれのラインフォロワーセンサーが、黒か白かを判定すると、下の図のように、全部で4種類のデータ(数値)出来るので、それをmBlockに、0~3で表示します。白い紙の上にmBotを載せると、両方のラインフォロワーセンサーが「白」と検知して、「3」数字をPCに伝えて、↑のようにパンダが「3」と言うようなことができます。両方のセンサーが黒→前向き左が黒、右が白→左向き左が白、右が黒→右向き両方のセンサーが白→後向きのように、走行させればよいですね、単純にそのプログラムは、こちらです。プログラムがごちゃごちゃしていますね。変数ブロックを作って整理しましょう。そのプログラムがこちらです。このプログラムで、mBlock(PC)から、Bluetooth無線でコントロールしてみましょう!そうすると、mBotは想定していたような動きはせず、黒い線からすぐに外れたり、動かなかったりしてはいませんか?これは、このプログラムがmBlock(PC)から実行されているためです(=mBot内にはプログラムが入っていません)。ラインフォロワーセンサーのデータが、mBotから、一旦、PC(mBlock)に送信され、そのデータをもとに、mBotに前・左・右・後へ進むという事をプログラムが判断して、再度、mBotに送信されるという仕組みなのですが、そのプロセスには時間がかかり、その遅れ(タイムラグ)によって、超音波センサーの距離判定→mBotの制御、が間に合わないのです。このタイムラグの影響をなくさないと、黒線上を動くmBotは出来ません。その為に、いちいちPCとmBot間で通信しないように、mBlockで実行していたプログラムを、mCoreボードにアップロードする必要があります。プログラム」ブロックを使います。上のようにmBotのプログラムを書いた後、mBotプログラムのハットブロックを右クリックしましょう。Arduinoにアップロードをクリックすると、こんな画面になります。右のArduinoのコードの画面の上に「Arduinoにアップロードする」のボタンがあるので、そこをクリックすると、アップロードが開始されます。ここで注意は、アップロードする場合は、無線ではなく、USBケーブルでmBotをPCに繋げる点です。これで、mBotは、上手く、黒線上を走行するようになったと思います。※2019年2月7日追記:別売りの「makeblock専用送受信ドングル」を購入すると、USBケーブルなしで、Bluetooth無線でプログラムをアップロードすることが可能になります。Bluetooth送受信ドングルの詳細はこちらでレビューしています。ちなみに、↑のプログラムですと、アップロードした瞬間から、mBotが動いてしまいますよね。そこで、mCoreのボード上のボタンが押されたら、3秒後に走り始めるというプログラムにしてみましょう!これで、↓の動画のような動きになります。https://j-tinkering.com/wp-content/uploads/2018/11/MOV_0234.mp4mBotのラインフォロワーセンサーは、この動画のように、ラインの上を沿って走らせるために使われることが多いですが、その他にも応用した使い方をすることが可能です。最新の「mBlock5」に対応した「mBot」の基本活用術も連載中です。合わせてご覧ください。17MakeX2019のテーマ・開催概要が発表されました。J-tinkering。