mblock3とmblock5どっちを使うか?
mbotの始め方1で、組立時のtipsなどを書きました。ここでは、組立てた後、いよいよプログラミングする際のtipsです。
2019年4月14日現在、mbotのPCのプログラミング環境としては、mblock3とmblock5(新バージョン)があります。市販のmBot公式ガイドブックなどでは、mBlock3をベースに説明されています。但し、mBlock3は今後、Makeblock社のサポートが終息していくと思われますので、新バージョンであり、拡張機能がどんどん増えていっているmBlock5で始めることを、強くお勧めします。
こちらのページの内容は、最新状況も踏まえ、mBotを始める際の手順や、説明書には書いていない注意事項・mBlock3からmBlock5へ移行すべき理由やその際の注意事項・トラブルシューティングを書き足して、以下のページにパワーアップ再掲載しています。
特に最新のmBlock5での解説になっていますので、是非、そちらも合わせてご覧ください。
【完全版】mBotの始め方 ーmBlock5対応ー
mBlock5でmBotプログラミングを始める前に知っておきたい4つの事項
Makeblockの様々な製品に対応するmBlock5
mBlock5とは、mBotだけじゃなく、mBot Ranger・Codey Rocky・Neuronや、新製品のHalocodeやMotionBlockといった、Makeblock社のSTEM教育キットをプログラミングする為にMakeblockが無償提供しているプログラミングソフトウェアで、Scratch3.0をベースにしています。実は、Micro:bitのプログラミングも可能な優れものです。
下のスクリプトは、mBotを四角く走らせるというプログラムの簡単な例をmBlock3とmBlock5で比較したものです。
上を見ると、mBlock5のほうが、より直感的に、簡単にプログラムできることがわかります。例えば、mBotが四角く走った後、最後に自動的に止まるようにしたい場合、mBlock3でプログラムをすると、上の画像の最後のブロック「前向きに0の速さで動かす」を入れる必要があり(入れないとずっとmBotが動き続けます)、大体最初はみんなこのブロックを入れずに躓きます(笑)
一方で、mBlock5ではそのブロックを必要としません。
mBlock3と、mBlock5を比べると、ブロックを組む・mBotとPCを接続する容易性・mBotにプログラムをアップロードする速さ・Arduinoのソースコードの確認容易性など、全てにおいて、mBlock5が優位と思います。
さらに、mBlock5の最新アップデート Ver5.01で、MakeXで必須のカラーセンサー・RGBラインフォロワー・オーディオプレーヤーが拡張機能で対応可能になりました。
mblock3をダウンロードした後にやる事
mblock3の表示を日本語にする
最初から日本語であればいいですが、そうでなければ、ここをチェックします。
※mBlock5だと、利用のPC環境に応じて言語が自動選択されます。例えば、日本語で表示しているPCなら、自動的に日本語になります。

Arduinoドライバをインストールする
mbotにプログラムをインストールする時は、USBケーブルでPCとmbotを繋ぎます。その時、PC側が、mbotの接続を受け入れる為に、「ドライバー」をインストールする必要が有ります。(よくPCにプリンターとか周辺機器を繋げる時にドライバーをインストールする行為をしますが、それと同じ事です)
注意したいのが、「mbotドライバー」というものはなく、「Arduinoドライバー」をインストールする点です。mBotの制御基板であるmCoreはArduinoという教育向けのマイコン・開発環境を元に開発されています。ですので、PCから見ると、mbot(mCore)は、Arduinoというマイコン基板として認識します。
従って、Arduinoというマイコン基板用のドライバーをインストールしなければなりません。もしかすると、Aruduino電子工作をしたことがある人は、そのPCにもうすでにドライバーがインストールされているかも知れません。そうでない人は、「Arduinoドライバー」をインストールしなければなりませんが、難しくないです。mblock3から、簡単にインストールしていけます。

あとは、画面に従って進んで行くと、一度、PCを再起動するように求められますので、素直に応じましょう!
※mBlock5では、この工程はなくて大丈夫です。
PCとmbotをUSBケーブルで繋げる設定
↑で、windowsPC側の、mbot接続の準備は出来ました。いよいよ、PCとmbotをケーブル繋げ、mblock3にmbotを認識させる設定です。この設定は、今後も頻繁に行うので、しっかり理解しておきたいです。
まずは、このようにPCとmbotを接続します。

この画像の状態だと、PCとmBotは、物理的(見た目)には、つながっていますが、この段階で、mblock3はmbotを接続したと認識していません。

この画面では、mBotとPC(mBlock)は接続されていません。
mBlockソフトウェアにmBotを認識させるには、mbotを繋ぐUSBケーブルが、PCのどのポートに挿されているかを、mblockに教えてあげなければなりません。
まず、どのUSBポートに挿されているかの確認する必要があります。確認方法は、左下のwindowsマークを右クリックすると下の図の画面になりますので、デバイスマネージャーをクリックしましょう。

そうすると、↑のような画面になるので、USBケーブルがどのCOMポートに挿されているか確認できます。多分いくつかコムポートの番号が出てきますが、USB-SEREAL CH340という表示があると思いますので、そのコムポート番号を覚えておきましょう。↓の画像を見ると、この場合は「COM4」です。※但し、この番号はそれぞれのPCによって変わります。例えばCOM5だったりもします。

この後、mblock3でCOMポートを指定しましょう。接続→シリアルポート→COM番号です。

正しく指定されれば、mblockの上部が、「接続した」という表記になるはずです。

この設定は、USBケーブルが抜かれると毎回行う必要が有ります。注意したいのが、同じPCでも、違うUSBの口にケーブルを指すとCOM番号も変わるので、その都度確認する必要が有るという事です。ここは、子供さんが設定できるように教えておくのが良いでしょう。大人が毎回毎回設定するのも面倒ですよね。ちなみに、最近のPCは、USB-typeCだけのものも増えてきていますが、mBotに付属されているUSBケーブルは、Type-Aです。
※このCOM番号を確認して、COM番号を指定する工程はmBlock5でも必要です。mBlock3とmBlock5では、画面が違いますが、COM番号をPCで確認するやり方は、同じです。
ボードの種類を設定しておく

PCとmbotを接続した後は、PC(mBlock)に対して、どの種類の制御ボードと接続中であるかを設定します。
Makeblock社には、色々な種類のロボットツールがあります。そのツールによって、制御ボードの仕様が違う為、それをmBlockに設定してやる必要が有るのです。写真にあるように、mbotはmCoreという制御ボードです。上位版のmBot Rangerは(Auriga)という制御ボードを使っています。ここは、mBot(mCore)にチェックを入れましょう。詳しくは、mBot(mCore)と、mBot Ranger(Auriga)の制御基板比較ページもご覧ください。
※mBlock5では、この工程は不要で、スプライトをmBotに設定すればよいだけです。
ファームウェアアップデートとmblock3を最新版にしておく
最後は、mbotのファームウェアアップデートをしておきます。makeblock3を最初にダウンロードしてインストールした場合は、その時点で最新のmblock3バージョンになります。(2018年10月19日現在v3.4.11)。ですが、工場を出荷された時のmbotのファームウェアと、最新のmblock3のバージョンが合っていないかもしれません。それが原因で不具合が起きても嫌なので、念のため、mbotのファームウェアを最新版にアップデートしましょう。
mblockの 接続→ファームウェアアップグレードをクリックすると、mbotに最新のファームウェアがインストールされます。もちろんPCはインターネットに繋がっている必要があります。ちなみに、ファームウェアをアップデートする際は、mbotの電源はオンにしておきましょう!オフだとアップグレードされません。
無線(Bluetooth)での接続確認
mbotとPCの接続方法は、以下があります。
■USBケーブルの利用シーン:
ファームウェアアップデート・プログラムをmbotにアップロードする時・PCキーでのmbot操作・mbotを初期設定に戻す時
■Bluetooth
PCキーでのmbot操作・スマートフォン、タブレットのアプリとmbotの接続と操作
■2.4Ghz無線(無線モジュールとPCに挿すUSBドングルがセットになっている)
※私は試していませんが、恐らくBluetoothと使用用途は同じだと思います。2.4Ghz無線が用意されているのは、教室などで、複数のPCとmbotが混在する場合、Bluetoothだと混線して、A君のPCがB君のmbotに繋がってしまうという混乱があるので、それを避ける為です。ちなみに、この2.4Ghz無線でスマートフォンややタブレットは接続できません。
現在、日本で市販されているmbotはだいたいBluetooth版だと思いますので、ここではBluetoothでの接続方法です。
もしかすると、ここが一番厄介な設定になるかも知れません。PCとmbotをBluetoothで無線接続する設定に関しては、PCのBluetooth受信機(内蔵または外付けの受信機)や、接続している環境の影響などで、中々上手くつながらないといったケースも実際にはあるでしょう。これはmakeblockの製品という事ではなく、Bluetooth接続全般に言えるかなあと思います。
ほとんど場合、最新のmblock3とmbotのファームウェアで、windows10であれば、以下の動画の手順でで繋がるはずです。
ちなみにですが、PC環境によっては、PINコードを聞かれることがありますが、mBotにディスプレイがない以上、確認しようが無いので、そのまま「はい」として進めてみましょう。以下参考動画です。
mBotとPC版mBlock3/mBlock5がBluetoothで接続できない人へ
実は、2018年にmBotの利用環境に少々変化があり、上記のような方法でも、市販のテキストに書いてある方法でも、OSやPCの機種、PC搭載のBluetoothバージョンによっては、PCとmBotのBluetooth接続がうまくいかない事象が、ユーザー悩ませています。。
変化1:2018年秋以降、mBotのBluetoothモジュールが少し変更になった
下の画像のように、Bluetoothモジュールが変更になっておいます。多分BluetoothSIG(Bluetoothの規格を取り決める団体)による、Bluetoothのバージョン改訂に伴い、モジュールも新しくする必要があったためとみられます。
外観は違いますが、mBotのmCore挿せることには変わりがありません。
私の場合、以前のBluetoothモジュールで問題なくPC(Bluetooth5.0搭載のPC)と接続できていたのが、新しいモジュールだと接続できなくなりました。おー、、、。
変化2 mBlock3からmBlock5にバージョン移行
mBlock3をずっと使っていき、且つ、昔のBluetoothモジュールのmBotという事であれば、問題ないです。但し、昔のBluetoothモジュールのmBotでも、mBlock5に移行した場合は、mBotーPCの、Bluetooth接続が、PC内蔵のBluetoothのバージョンによっては、接続できません。理由は、mBlock5はBluetooth4.0のみのサポートの為です。私のPCの内蔵Bluetoothのバージョンは5.0でしたので、繋がりませんでした。。。およよ。。
mBotのBluetoothが繋がらない事象の対策
新規でmBotを購入すると仮定した場合、Bluetoothモジュールは新バージョンになります。その場合、接続可否に関しては、以下の表の通りになります。

出典:http://docs.makeblock.com/mbot/jp/?fbclid=IwAR2AjQ9L02AWPNsg-cNEFfjcmiunAElc-oSMQ-r162sqmB3bih-bBqaPnfM#method2
上の表を見ると、PC内蔵のBluetoothを使うのは、今後は少し難しくなっていくでしょうね。
対策としては、2つがあります。
■Makeblock専用のBluetooth送受信ドングルを購入する(おすすめ)
追加購入になりますが、これなら、どんなPCでも繋がります。ちなみに、これだと、これまでドングルなしで繋がっていたのに、Bluetoothを繋げる為だけにわざわざドングルを買うのは、損した気分だなあという感じになりそうですよね。
ですが、このBluetoothドングルだと、ケーブルに接続しなくても、Bluetooth無線で、アップロードもできるのです!!
これは、mBotユーザーからすると、かなりの手間が省けることになります。今まで、プログラムを書き直すために、その都度、PCのそばまでもってきて、USBケーブルに繋げていた行為が無くなるのです。
今までmBotとPCが、ドングルなしでBluetoothで繋がっていた人でも、追加で買って絶対に損はしないと思います。日本でも、ここから購入できます。
参考記事:Makeblock専用Bluetooth受信ドングルレビュー
■PCのBluetoothバージョンを4.0にする
内蔵PCのBluetoothを活用したいという人は、ソフトウェアは、mBlock5を使い、PCのBluetoothバージョンは4.0に合わせましょう。ただ、PCのBluetoothバージョン変更をしてしまうと、mBlockを使わないときに、何か不具合が起きたりする可能性がゼロではありません。
これは、私の考えですが、mBlockとPC内蔵のBluetoothで接続した場合、PCのキーで操作は出来ますが(=PC環境で実行したプログラムをBluetoothでmBotにリアルタイムで送信する)、ラインフォロワーセンサーなどを使ったプログラムは、PCーmBot間をUSBケーブルで接続し、プログラムをmBotにアップロードしないと上手くできません(=PC環境でプログラムを実行して無線で送信しても、処理が追い付かずにうまく動かない)。
従いまして、プログラミング学習をするということを目的としている場合、PC-mBotのBluetooth接続はそんなに重要ではなく、必須ではありません。
USBケーブルでmBotとPCを繋げて、COMポート認識し、PCで作ったプログラムをmBotにしっかりアップロードするという手順の方が、重要で、お子さんでも覚えておきたい必須の作業手順だと思います。
こちらのページの内容は、最新状況も踏まえ、mBotを始める際の手順や、説明書には書いていない注意事項・mBlock3からmBlock5へ移行すべき理由やその際の注意事項・トラブルシューティングを書き足して、以下のページにパワーアップ再掲載しています。
特に最新のmBlock5での解説になっていますので、是非、そちらも合わせてご覧ください。
【完全版】mBotの始め方 ーmBlock5対応ー
mBlock5でmBotプログラミングを始める前に知っておきたい4つの事項