sekikazu-86 blog

sekikazu-86といいます。基本的に私個人の趣味について書いています

LEGOでプログラミングをしよう!(EV3_メリット、デメリット)

今日、小学校、中学校のプログラミング教育必修化や世間のIT化、コロナウイルス等のおうち時間などでプログラミングがブームになりつつあります。

プログラミング学習といっても様々な方法があります。子供であれば、スクラッチでプログラムをしたり、高校生や大学生、社会人などは、実際にC言語C#C++javaPythonなど様々あります。しかし、言語プログラムを独学であるとなると、途中で自分で今何をやっているのかを見失った経験はありませんか?

また、子供の将来のためにもプログラミングをさせたいが、何をさせていいかわからないや、子供と親が一緒になってプログラミングを楽しみたい、将来のために今のうちにプログラミングのやり方、意味をしっかりと理解しておきたい。という方が多いのではないでしょうか?

そこで、私sekikazu-86では、レゴブロックでプログラミングをする方法を紹介していきたいと思います。LEGO MINDSTOEMS EV3を使用したロボットの作成、プログラミングの作成をおすすめします。今回は、EV3を使用することのメリットとデメリットを私の独断と偏見でご紹介していきたいと思います。

私個人の意見であったり、偏見が一部あります。ご了承ください。また、詳しく内容を知りたいことなどは、Twitterまたは各専門のホームページを御覧ください。

 

 

 

LEGO MINDSTORMS とは?

そもそも、MINDSTORMSとは、LEGO社とアメリカのマサチューセッツ工科大学との共同開発によって、できたレゴブロックです。今のEV3は、3代目として、今世界中の子どもたちで使用されているプログラミング教材です。

しかし、中にはこのような方々がいるとおもいます。「MINDSTOMS?何だそれ。そんなレゴ見たことない!!そのなのレゴのホビー売り場に売ってないじゃないか!」と、それもそのはずです。こちらの商品、玩具用として売り出しているのではなく、教育用として販売されているからです!日本では、基本的に代理店を通じて販売されています。詳しくは下のURLのLEGO®Educationのページから

 

education.lego.com

 

今回私は、この中から代理店の1つAfrel(今後はカタカナで”アフレル”と表記します。)を中心にご紹介していきます。

基本は、教育用なので教育機関等にしか販売されていませんが、このアフレルは一般の方もオンライン上ではあるが購入は可能です。

購入ページはこちらから

afrel.co.jp

 

基本セットには、約500パーツ入っており、このキットだけでも十分楽しめる仕様にはなっています。

こちらがボックスである。

f:id:sekikazu-86:20210329013203j:plain

ボックスなので使用中のレゴなどは、蓋の上に置くことで落とすや紛失などは少なく済みます。また、作成中の細かいものは下の大きな空間に置くことで落として壊す危険性が減ります。

こちらがEV3本体である。

f:id:sekikazu-86:20210329034346p:plain



そこそこ大きな画面がついているのでわかりやすいです。

下についている6つのボタンである程度の操作は可能です。横にはケーブルを指すところがあり、ここからモーターやセンサー類と送受信を行っています。

モーター、センサーは以下のようなものが入っています。 

f:id:sekikazu-86:20210329091150p:plain

では早速、メリット、デメリットについて項目一つ一つ詳しく見て行きましょう!!

 メリット

1. ブロック表示で、見やすくてわかりやすい。

まずは、下の画像を見てください。

f:id:sekikazu-86:20201108112830p:plain



*1

上に画像はLEGO MINDSTOMS EV3のプログラミング画像です(2020/10月現在)下に「緑、オレンジ、黄、赤、青、水色」のタブがあり、その中のいろいろなブロックがあるのがわかると思います。(画像は緑のブロックです。)これらをつなぎ合わせることで、簡単にプログラミングをすることが可能です。

ソフトのダウンロードはこちらから:

最新版(スクラッチ系統):

education.lego.com

 

従来版(MINDSTOMS EV3) :

education.lego.com

2. タブレットで簡単にプログラムをすることができる。

プログラミングを子供にさせるにあたって、はじめからパソコンを使わせる方も多いと思いますが、やはり小学生低学年の子供いきなり親の管理下にないところでパソコンを自由に使用させるのは、好まない方もいらっしゃることでしょう。そこで、おすすめなのがタブレットを使用してのプログラミングです。

タブレットであれば、重さも軽く持ち運びもしすくインタネットへの接続も管理が簡単にできるので、セキュリティー問題等多くの利点があると思います。また、マウスなどをを使い慣れていない方にもタブレットであれば、手でアイコンを動かしますので楽にプログラムができるかと思います。

下の画像は、タブレットのプログラミング画面です。PC版に劣らず、使用しやすい画面となっており、アイコンもはっきりとして見やすいです。

f:id:sekikazu-86:20201108112906p:plain



 

ipadのダウンロードはこちらから

Androidのダウンロードはこちらから

play.google.com

 

3. ブロック表示でスペルミスをすることがない

言語プログラムを作成するにあたって、最初に絶対にミスをするであろうミスの代表としてスペルミスです。私もはじめここでつまずきました。(苦笑)わかりにくいですよね...うまく動かないといういらだち、思うように動かない焦りなど出てくるかと思います。特に子供は、動かないつまらないと感じてしますとやめてしまう、諦めてしまう可能性が大きく考えられるかと思います。間違いを探すのも時間がかかりますしね(笑)

この簡単なミスを防ぐことができてなおかつ楽しくプログラムできるソフトがこのEV3のプログラムの特徴のひとつです。予め下の各アイコン内にプログラムされているので、これらのアイコンを並べてつなげるだけでプログラムをすることができます。

PC版のアイコン一覧

f:id:sekikazu-86:20201108113829p:plain 

タブレット版のアイコン一覧

f:id:sekikazu-86:20201108113832p:plain

 

4. プログラムの完成度合いをロボットで見ることができる

プログラムをしていく上で、できたという達成感を味合うことは

とても重要なモチベーションになるかと思います。その上で、現在画面上で作成しているプログラムが今どのくらいの完成度でどんな動きをするのかを実際に確認すること1番だと思います。このプログラミングソフトとロボットを使用すると、簡単な前進、後進、左回り、右回りであれば、下のプログラムのように3つのアイコンだけで動かすことができます。なので、少しずつ確実に今作っているプログラムが完成に近づいているんだという実感を持つことができ、持ちーべションの維持に繋がります。

また、プログラムの間違いをロボットで見るだけでわかります。動きを少しずつ確実に完成させることができたり、動きを目で目視しながら完成に近づけるため、動かしている途中で「ここが明らかに違う」ということがわかりやすく、修正場所もすぐに見つけることができ楽にプログラムを楽しむ事ができます。

プログラム(前進)※モーターのパワー(現在:50)を変更することで他の動きが可能になります。

f:id:sekikazu-86:20201108113042p:plain

 

5.ロボットを作ることを通じてものづくりに興味が湧く

小さなお子さんをお持ちの方は、このようなことを思うのではないでしょうか?「子供にものづくりを楽しんでほしい。将来、たくさんの興味を持って多くのことを学んでほしい。」と、私は現在大学生なので、もちろん子供はいませんが、将来自分の子供にはこのようにものづくりなどを通じてたくさんのことを学んでほしいと思います。

レゴは、一見普通のブロック遊びに見えますが考えたり、工夫して使用することで、単純な動きから、複雑な動きまで実現可能です。ロボットをやる上で一番の醍醐味は、自分で作ることです。その点レゴのロボット製作は実際に自分で作るため、立体的思考能力が飛躍的に伸ばすことができると考えています。

はじめは、既存する組み立て書を見ながら作るはずです。しかしバリエーションが少なくだんだん形に飽きてきたり、自分のオリジナルロボットを制作したくなるかと思います。そんなとき市販されている電子部品等を使用したロボット制作キットでは拡張は望めませんし、ロボットをゼロから制作していこうとすると材料費等がかかり制作までが大変です。またもし鉄板などの寸法を間違えたり、途中で思いついた新しいアイデア等を取りと入れたときにはまた「1」からすべてをやり直さないといけません。ここまで来たらめんどくさいを通り越して飽きてくると思います。私ならほぼ確実に諦めます(笑)ましては、子供に工具などを自由に使用させたりするのは危険すぎます。

その点、レゴであればある程度決まったパーツのみの仕様でありますが、パーツ単価はとても安いですし(単品通販ブリッカーズなど)、工具は一切使用しません。制作費もあまりかかりません。何より、中高生や大学生であれば、子供に時に遊んだレゴが使えますし、小学生はこのEV3に使用することを前提にレゴを探すなど様々な方法で簡単にパーツを入手することが可能です。また、一番のポイントは、ロボットの制作において失敗してもレゴブロックなので何度でも簡単にやり直しをすることができます。これに関しては多くのロボット制作においてとても魅力的です。

単品通販ショップ、ブリッカーズはこちらから

www.brickers.jp

 

6. 実際のロボットなどで使用されている機構をレゴで再現することができる。

子供は、理屈よりも体験することで多くのことを学びます。たくさんの玩具やロボット、動きを見てこれを自分も再現してみたいと思って作ることが多いと思います。また、大人も動きの理屈はわかるがちゃんと動くかわからないといった経験があるかと思います。このことに関してもレゴは柔軟に対応することができます。簡単にではありますが様々な動きを再現することが可能です。下の写真のような多くの穴の空いているブロック、長さの異なるブロックであるこれらを駆使することで、たくさんの動きを再現することが可能になります。例えば、リンク機構であったり、クランク機構、スイッチ機構考えるだけでも様々です。逆に子供に「この動きをレゴで再現してごらん。」などを促すことで、その動きの根本的な原理を実際のものを見ながら理解することもできます。つまり、レゴを使用してものづくりをすると「理屈、動き、作り方」この3つを一気に習得することが可能であり、一石三鳥です。 

7. 限られた形、パーツでどこまで多くの動きをさせることができるかを考える力が身につく

レゴには様々な形があると先程書きましたがそれでも限界があります。この形のブロックがほしいと思うことが多々あるでしょう。しかし、それも醍醐味です。このパーツがないなら、どんな風に再現しようかなどの考えの転換や、このパーツがないなら、少し大きなっても形を作ろうであったり、他のパーツでは本当にできないのだろうかと一生懸命考える力を養うことができます。だから、レゴは設計図通り作成するものではなく、再現し表現するための道具なのです。こんなに何度もやり直して夢中になってできるものはないと思います。

8. 言語プログラムを使用して作成することが可能

最初にも紹介しましたが、このLEGO MINDSTORMS EV3には専用のプログラミングソフトが存在します。(画像は2020年10月現在)しかし段々とプログラミンがが上達していくとこれでは物足りなくなってくると思います。その点、このEV3は柔軟に対応しています。多くの言語プログラムに対応してます。現在アフレルさんの方で多くの言語プログラムの環境設定方法が紹介されています。そこから自分がやりたい言語を学習していくのも楽しいでしょう!

アフレルサイトを参照

afrel.co.jp

 

C言語JAVA言語、C#言語、C++言語、mruby、Python など,,,

あくまで、一例です。まだまだ様々な言語を使用することが可能です。詳しくは他のサイトを閲覧ください。

 

9. 周りの友達と大会などに出場する機会がある

自分の実力を確認する場がたくさんあることです。その点、レゴには、大きく3つの大会が毎年開催されています。

(※私個人の調べです。他にある場合は教えていただけると嬉しいです。)

(※今回はEV3を中心としたものなので、TETRIX、WeDo2.0を使用した大会は省かせていただきます。また、レゴのみを使用した大会を取り上げています。)

-大会一覧-

・FLL(FIRST LEGO LEAGUE)

firstjapan.jp

・WRO(World Robot Olympiad)

www.wroj.org

ETロボコン

www.etrobo.jp

 

FLL(FIRST LEGO LEAGUE)

小中学生が中心となる大きな大会です。2020年より、年齢、学年によって大きく3つのカテゴリーに分けられます。

その中で、EV3を使用できるクラスが一番上のFLL Challenge部門です。

対象が小学4年生〜高校1年生までが参加できる大会です。

1チーム2人〜10人でチームを構成します。

ロボット競技の制限時間は2分半でミッションクリアを目指します。競技中は、ミッション中のロボットに対して、ペナルティーありで最高6回までフィールド上でのロボットの接触が認められています。

大会当日開催中も選手は、メンター(監督やコーチ)との交流も可能です。ギリギリまで作戦を練ることができます。

大きな特徴としては、指定されたエリアであれば何回でもロボットを触ることが許されています。この競技は、様々なミッションを時間内にどれだけクリアできるかを競います。簡単なミッションから、難易度の高いミッションまでたくさんあります。この多くのミッションをクリアするためにホームと発進エリア内でロボットを触り、発進方向を自分たちの手できめることができます。またたくさんのミッションは様々で、一つの動作だけではクリアすることはできません。そのため、ホーム内にアタッチメント呼ばれる他の動きをすることができるアームを予め作製をしておきます。そうすることで、各ミッションに最適なものを使用して、時間内たくさんのミッションをクリアします。

そのため、パーツを多く持っているチームが有利になります。しかし、ロボット競技が全てではありません。それは、審査員に対してのアピール合戦です。大きく3つあります。

・コアバリュー

主に、チーム紹介を行います

・プロジェクト

  各年に発表される問題についての解決策をチームでまとめます。

・ロボットデザイン

ロボットの特徴などをまとめます。  

このFLLという大会はロボット競技よりもプレゼンテーションの得点のほうが遥かに大きいいです。そのため、ロボット競技を失敗してしまってもこのプレゼンテーションで大きな点数を出すことができれば、逆転することは容易にできます。内容に関しても毎年様々な内容が用意されています。2019年は、都市開発。2020年はスポーツ。と子供たちの想像力や夢をふくらませることができる大会です。

それから、ルールもきちんと日本語バージョンが公式に存在しており、小学生や初心者だとしてもルールをしっかりと理解することができます。

<p詳しくは、下の公式サイトを閲覧ください。

firstjapan.jp

 

WRO(World Robot Olympiad)

小中高校生を中心とした大会です。大きく2つのカテゴリーとして、オープンカテゴリーレギュラーカテゴリーに分けられます。今回はEV3に焦点を当てているため、レギュラーカテゴリーについての説明をしていきたいと思います。このカテゴリーでは、毎年WROを主催する国が1月ごろにルールブックを発表し、11月頃に行われる世界大会を目指す競技です。

それぞれ、小学生は、中学生は、高校生はと呼ばれるカテゴリーに出場します。

1チームの選手の人数は、2人〜3人と少ないメンバーです。

ロボット競技に制限時間は、2分でミッションクリアを目指します。競技中のロボットの接触は禁止されています。なので、スタートと同時にスタートボタンを押したら、あとはロボットを信じて待ちます。

部門は日本では2つあり、エキスパート部門トミドル部門に別れます。

エキスパート部門は、開催国が発表したルールブックの競技で、世界大会までの存在します。

一方、ミドル部門は日本が独自に開催している部門です。この部門へ選手の参加は1回までとされています。趣旨としては、EV3を初めて間もない人たちへの競技です。使用できるパーツもEV3基本セット1セットのみと予算的にはとても安く抑えて大会に出場することができます。

ここからがWROの一番の特徴となります。

それは、地区にもよりますが地区大会では、完成したロボットを大会当日に持ち込みが可能となっていることが多いですが、全国大会、世界大会になると、完成したロボットは会場内には持ち込めません。最初の車検までの120分の調整時間内にロボットを完成させ、プログラムの調整を行います。そのため、チームでロボットを一度崩して、同じものをもう一度作るという練習を何度も何度も行います。早いチームは5分程度でロボットを完成させ、プログラムの調整に入ります。

大会当日は、選手とコーチ、監督は会場内に入り開会式が始まったら、会話をすることは固く禁じられます。もちろんSNSなどを使用したコミュニケーションもできません。これは、当日選手のみで協力して自分たちだけで課題をクリアさせる能力を見ています。緊張もしますし、何より正解かわからないものをトライするという度胸と勇気が必要です。

更に、サプライズルールと呼ばれる大会当日に追加されるルールがあります。これも解決するためにマシン、またはプログラムの変更をしなければなりません。とても難しく感じるかもしれませんが、選手のみで課題を時間内に解決するという自己解決能力であったり、「時間内できた!」という達成感をものすごく味合うことができます。

詳しくは、HPをご確認ください。

www.wroj.org

 

ETロボコン

これまで2つ大会(FLL、WRO)は主に小中高校生を中心とした大会でしたが、この大会は主に大学生や社会人向けの大会です。

組み込み、ITエンジニアやプログラミングを学び、成長させるための大会です。

今年から、3つのクラスに別れており、エントリークラス、プライマリークラス、アドバンスクラスです。順番に初心者、中級者、上級者のような感じです。(笑)

こちらのプログラミングについては基本的に先程少し紹介した、TOPPERSと呼ばれるものを使用しているチームがほとんどです。レベルも高く、有名な企業の新卒社員などが多く参加しています。本気で組み込み等をやりたい方は、こちらの大会が本当におすすめです。

この大会は基本スピード勝負です。ロボットの形も決まっており、2つのタイヤで立っているロボットのバランスを上手に取り、いかに早くゴールへたどり着けるかとう言う競技です。こちらの大会につきましては、私自身本格的に関わったことがないので、詳しくはかけませんが、エンジニアとして成長するための大会としてはとてもいい大会です。

詳しくはこちらから、

www.etrobo.jp

 

・デメリット

ここまで、LEGO MINDSTOMS EV3のいいところやメリットについて書いてきましたが、ここからは、真逆のデメリットについて紹介していきたいと思います。コリラも読んでいただき、プログラミング教材をどうするか決めてみもいいかもしれません。

1. 基本セット等の金額が高すぎる

金額については、私がなんと言おうが変わりませんが、初期投資が大きいと思います。

まず、必要なのがパソコンまたはタブレットです。こちらに関しては安いモデルから高いモデルまでたくさんありますが、まず、タブレットであればipadを購入しておけば、間違いはないかと思います。EV3の方でも正式に対応していますので、アプリをダウンロードすればすぐに使用を開始することができます。パソコンですが、こちらもはじめはそこまでハイスペックなパソコンは必要ありません。ですが、今後も長く使用していくことを考えるとインテルですと、corei5以上を購入することをおすすめします。

次にLEGO MINDSTORMS EV3ですが、金額がアフレル様のサイトにて、税込62,792円(2020/10現在)ととても高額な商品となっています。金額だけ見ると、「高い」と感じる方は多くいらっしゃると思います。私もはじめ高いと感じました。しかし、中身を見るとそうでもないような気がします。単体での値段を調べてみると、EV3本体の金額が税込み44,814円(2020/10現在)とこの時点でボックスの金額の約7割の金額です。そこにモーターが3個、センサーが5個が同封されていてロボットを約1台作成でき少しではありますが、拡張性もあるLEGOのパーツがはいいていると考えると、とてもお得な買い物だと私は思います。

また、今後子供がプログラミングを学習していく、自分の好きなロボットを作成していく、一般レゴとの互換性、拡張性などを考えると、私は、そこまで高い買い物でもないかと思います。(あくまで、私個人の意見です。)

 

2. タブレットでのプログラミングでは、すぐに限界がきてしまう。

子供にいきなり、「パソコンを使用させるのは何が起きるかわからないから、触らせたくない。」、「親の目がつかないところでは使わせたくない。」と思う親はたくさんいると思います。もちろん、タブレットならではのメリットはたくさんあります。

・プログラムを理解しやすい。

アイコンを手で動かして、操作するためどこに何のアイコンを置いたかを自分の手で操作するので、実感しやすいかと思います。

Bluetoothで簡単接続。

接続がとにかく簡単です。パソコンは、基本的にケーブルでEV3と接続してプログラムをダウンロードします。しかし、Bluetoothであれば常にタブレットと接続できていて何度も接続する必要は全くありませんので、ストレスが少ないです。

だから、タブレットでさせようと思う方がいるかと思います。私も先ほどから、タブレットでもできますといってきました。しかし、私はタブレットでのプログラムについてはデメリットが多くあると思います。

・プログラムが簡素すぎる

下のパソコンとタブレットのアイコンの数を比べていただきたいと思います。明らかにタブレットのアイコン数が少ないです。これには、どういう意図でこのようになっているかはわかりませんが、プログラムによる拡張性が全くありません。

PCのアイコン数

f:id:sekikazu-86:20201108113510p:plain

タブレットのアイコン数

f:id:sekikazu-86:20201108113535p:plain


・プログラミングの幅が狭い

今後の学習において限界がすぐに来てしまいます。また、ソフトの使用方法もパソコンとタブレットでは違う部分も多く、悩んでしまうことが多いかと思います。途中で切り替えるという方法もあるかと思いますが、タブレットとパソコン2台の購入はお財布にも痛い出費だと思います。

パソコンでも安全に子供が使えるように工夫するのがいいと私はもいます。

やり方はさまざまですが、少し紹介したいと思います。

・オフラインでもソフトは起動するので、事前にダウンロードしておいて子供が触るときは、オフライン状態で触らせる。

・子供用のアカウントを別に作成し、制限を付けて利用させる。

など、対策の仕方は様々あります。たまに、オンラインに接続してソフトのアップデート、EV3本体のファームウェアの更新などを行う程度でとても快適に利用ができます。

 

3. 追加パーツの値段が高い

基本セットには、モーターが計3個、センサーは計5個しか入っていません。EV3には、モーター、センサーともに各4個ずつ取り付けることが可能です。やり続けていると、このモーターもう1個欲しいなど欲が出てきます。しかし、モーター、センサーともに約5,000円以上ととても高価です。一般的なセンサーやサーボモーターに比べたら、高い金額です。

しかし、このモーター、センサーから何度もいろいろなロボットを作成することが可能です。一度購入してしまえばいいだけです。普通であれば、ロボットを作るためにそのたびにモーター、センサー等を購入しなくてはなりません。そのようなことを考えれば、安いかと思います。

 

最後に

いかがでしたか?私の個人的な意見が多く入った紹介にはなりましたが、少しでもLEGO MINDSTOMS EV3について興味を持っていただけたら、とても嬉しいです。私自身、高校生の時に出会い今でも楽しく使用させていただいています。

また、今後このEV3を購入したあとのソフトについてやロボットについて書いていきたいと思っています。

私自身もまだまだ未熟な点が多々あります。間違ったことなどがありましたら、ご指摘お願いします。頑張って反映させていきたいと思います。また、リクエスト等が会えいましたら、コメントなどでつぶやいていただけたと思います。

*1:この写真のプログラム画面は、従来版(MINDSTOMS EV3)の画面です。見分けがつけやすいので、今回はこの画像を多用していきます。Classroomについては、また後日レビューしていきたいとともいます。