CodeZine読者の皆様、こんにちは。本稿は、教育ICT(EdTech)のオンラインメディア「EdTechZine」で公開中の記事からの転載(一部)です。全文はEdTechZineのページでお読みいただけます。
読者対象
- プログラミングについて学びたい人・教えたい人
- プログラムが動く楽しさを知りたい人
- プログラムでロボットを動かしたい人
デバイスの種類
「LEGO MINDSTORMS EV3」でロボットを作る為にはどういったデバイスがあり、それらのデバイスにどういった機能があるのか知る必要があります。
LEGO MINDSTORMSには大きく分けて「本体(EV3ブロック)」と「モーター」、「センサー」の3種類のデバイスがあります。それぞれ、持っている役割が大きく異なるので、まずそれらの概要を紹介します。
EV3ブロックデバイス
EV3ブロック(図1)は、ロボットの中心的なデバイスです。
EV3ブロックは、表1のインターフェースもしくは機能を持ちます。
インターフェース・機能 | 説明 |
---|---|
入力ポート(1,2,3,4) | 各種センサーの入力を受けつける |
出力ポート(A,B,C,D) | モーターを接続する |
スピーカー | 周波数を指定した音の再生や音階を指定した音の他に、音声ファイル等を指定した再生が可能 |
ディスプレイ | 178x128ピクセルのディスプレイ。ディスプレイ上には画像や図形の表示が可能 |
ステータスライト | 緑・黄・赤色のライトを操作可能。主にプログラム内のステータスなどを表現する際に利用 |
ボタン | 5つのボタン(左・中央・右・上・下)の機能を提供。ボタンを押して何らかの処理を開始、もしくは停止などをする際に利用 |
どの入力ポートにモーターをつないでも、また、どの出力ポートにセンサーをつないでも動作させることができます。
ただし、入力ポートと出力ポートの端子の形式が同じで、どちらにも接続できてしまうのですが、入力ポートと出力ポートを間違えて接続しても動作しないので注意してください。
また、提供されているサンプルプログラムでは、各デバイスで表1の通り初期ポートが設定されています。プログラミングの際に変更することも可能ですが、できるだけ初期ポートに合わせた接続をすることで簡単な間違いを減らせます。
デバイス名 | 初期ポート |
---|---|
タッチセンサー | ポート1 |
カラーセンサー | ポート3 |
赤外線センサー | ポート4 |
Mモーター | ポートA |
Lモーター(2つ同時利用) | ポートB、ポートC |
Lモーター(1つで利用) | ポートD |
モーターデバイス
モーターには、図2の通りLモーターとMモーターの2種類あります。
Lモーターはパワーが必要な動作をするために利用します。特に移動のために利用する場合には2つセットで利用されます。そのため、プログラミングブロックでも2つを同時に操作し、移動することを前提としたものが用意されています。
また、MモーターはパワーはLモーターよりも劣りますが、素早く動かすことができるモーターです。ロボットでは主に何かをつかんだりするような手の役割のように利用します。
センサーデバイス
LEGO MINDSTORMSがロボットとして面白いのは図3に示すセンサーがある点です。
センサーの動作の仕組みを理解するのは少々難しいですが、機能とセンサーの関係を知ることだけでも、非常に面白いと感じると思います。
例えば、赤外線で距離や方位がわかるのですが、どう赤外線を使うと距離や方位がわかるのかなど、発展的に別の興味が生まれてくることもこの製品の特徴の1つでしょう。
ここで紹介する以外にもこちらのように他のデバイスも追加可能です。
タッチセンサー
タッチセンサーでは、先端部分が何かに「触れた」「ぶつかった」「離れた」を管理します。ロボットが何かにぶつかったことを検知することや、何かのアクションを起こすためのボタンの役目にも利用します。
カラーセンサー
カラーセンサーでは、表3の3つのモードがあり、色情報以外も把握できます。
モード | 説明 |
---|---|
色モード | 黒、青、緑、黄、赤、白、茶の7色および無色の識別ができます。ロボットを動かす際に色がついたエリアで停止することなどができます。 |
反射光の強さモード | センサーからの発光ランプから反射される光の強さの測定が可能です。線の上を動くようなことをしたい場合などに利用できます。 |
周辺の光の強さモード | 周辺の光に応じて反応を変えることが可能です。ライトが当たると自動的に動く、もしくは止まるなどを行いたい場合などに利用できます。 |
赤外線センサー・遠隔赤外線ビーコン
赤外線センサーには、単体で利用する接近度モードと、遠隔赤外線ビーコンと一緒に利用するビーコンモード、遠隔モードがあります。
モード | 説明 |
---|---|
接近度モード | 送信するシグナルの反射を検出して、センサーの正面にある物体までの接近度(距離)を検出できます。障害物に近づくと自動的に止まるといった場合などに利用できます。 |
ビーコンモード | ビーコンモードは遠隔赤外線ビーコンまでの距離と大まかな方位がわかります。例えば、ビーコン端末に自動的についていくようなことをしたい場合に利用できます。 |
遠隔モード | 遠隔赤外線ビーコンにあるボタンの検知が行えます。特定の動作をするための切替スイッチやコントロールをするためのボタンなどを作りたい場合に利用できます。 |