ドローンプログラミング

プログラミング教育向けのおすすめドローン4選!Scratch等に対応

プログラミング教育向けのおすすめドローン!

こんにちはー!自作したドローンで空撮をやったりしてます、K-ki(K-ki@Ailerocket)です。

2020年度から段階的に、小中高生に対しプログラミング教育が必修化されます。時代の流れを見ると当然のこととは思いますが、パソコンや電子機器が苦手な親御さん、先生の中には強い不安を抱いている人も多いと思います。

K-kiは教育の専門家ではないのであまり差し出がましいことは言えませんが、勉強が身につくかどうかは結局の所、指導を受ける側がどこまで能動的に動けるかにかかっているのではないかと思います。好きこそものの上手なれと言う通り、好きであれば教え方が下手だろうと勝手に勉強してできるようになりますし、嫌いなことを学ぶのは大人でも難しいものです。

ということで、今回は子どもに「プログラミングを好きになってもらう」という方向でアプローチするために、興味を引きやすいドローンを教材として使用することを提案します。プログラミング教材に適している具体的なドローンを紹介するので、お困りの方はぜひ参考にしてみてください。

なお、プログラミング教育というよりも、もっと本格的なドローン開発に活用できるプログラマブルドローンは、以下のページで紹介します。ドローンソフトウェアの開発を考えている方は、こちらを参考にしてください。

ドローン開発に活用できる機体とフライトコントローラー
ドローンのソフトウェア開発に活用できる機体とフライトコントローラー

ドローンを利用するシステムやドローン用のソフトウェアを開発する際に利用できる完成品ドローンやフライトコントローラーを紹介します。また、ドローン開発時に利用できる開発プラットフォームやソフトウェアの分野等も解説しています。

プログラミング教育の要点

ドローンの話をする前に、まずはプログラミング教育についておさらいをしておきます。文部科学省が2017年3月に新学習指導要領を制定し、2020年度から小学校、2021年から中学校、2022年から高等学校において「プログラミング教育」が必修化されることになりました。最初にこの新学習指導要領の意図・目的を把握しておきましょう。

2010年代以降、世界的な流れとして「インダストリー4.0(第4次産業革命)」と呼ばれる産業構造の変革が起こっています。インダストリー4.0の主役は、ビッグデータ、人工知能、IoT、ロボットなどのIT技術です。今後、IT関連のビジネスがますます発展していく一方で、IT人材が不足することが見込まれており、多くの子供にこういった分野の素養を身に付けさせたいという意図があると推測できます。

ただし、プログラミング教育の目的は、IT分野で活躍できる人材を育てることではありません。プログラミングを体験しながら「コンピューターに意図した処理を行わせるために必要な、論理的思考力を身に付ける」「身近な生活でコンピュータが活用されていることや問題の解決には必要な手順があることに気付く」ことが目的とされています。

噛み砕いて言えば、プログラムやコンピュータを身近に感じさせ、それを活用するための考え方・思考力を子どものうちに身につけておくことが目標になっていると読み取れるでしょう。また、プログラムを書く際には、発生しうるケースごとに処理を考え全体として整合が取れるようにまとめる必要があり、どんな仕事でも必要になる論理的思考力が鍛えられることも重視されています。

認識しておくべきは、プログラミング教育の主目的は、プログラミング言語を利用してプログラムを記述する「コーディング」の習得ではなく、プログラムを作る上で必要になる思考力、行動力の育成にある、ということです。時代により変化するコーディング技術ではなく、もっと根本的な思考力などが重要だということを理解した上で、プログラミング教育に向き合う必要があります。

どのプログラミング言語が教育向き?

プログラムはプログラミング言語を利用して記述しますが、プログラミング言語には多くの種類があります。プログラミング言語により記述のルールが異なり、直感的に書ける言語、書くのは難しいが高度な処理を実現できる言語など、それぞれに特徴があります。

ただし、上にも書いたとおりプログラミング言語の記述方法(コーディング)をマスターすることはプログラミング教育の目的ではありません。プログラミング教育の目的はあくまで論理的思考力を養うことであり、小学生のプログラミング教育ではプログラミング言語を使ったコーディングも基本的に行わないようです。

そうは言っても、プログラミング教育でより実のある学びを得たいとか、お子さんがプログラミングみ興味を持ち学校で学ぶよりも高度なことをやりたくなったという場合は、何かしらの言語を使って実際にプログラミングをやってみるほうが良いでしょう。この場合、記述が難しい言語よりも、簡単にかける言語のほうが、プログラミング教育の本質ではないコーディング部分に咲かれる労力が少ないため向いていると言えます。

以下に、プログラミング教育で使われそうな言語と、その特徴を紹介しておきます。プログラミング言語を使った学習にチャレンジする場合の参考にしてください。

Scratch(スクラッチ)

小学生がプログラミング言語を使って見る場合、まずはScratchが候補の筆頭になると思います。Scratchのコーディング方法は「ビジュアルプログラミング」と呼ばれ、英単語を組み合わせたテキストでプログラムを書く一般的な方法ではなく、プログラミングに必要になるパーツが「ブロック」という形で用意されており、これらを組み合わせてプログラムを書きます。

ブロックの組み合わせでプログラムを書けるScratchは、視覚的・直感的なコーディングが可能なため、複雑なルールを覚える必要がありません。子どもでもすぐにプログラムを書いて動かせるようになるため、早い段階でプログラミングの楽しさを実感でき、プログラミングに対する学習意欲を保ちやすい非常に教育向きの言語です。

その他にも、世界中のScratchユーザーとの交流が可能な仕組みや、セキュリティ面のケアがしっかりされているなど、子どもでも楽しく、安心してプログラミングを学べる環境が揃っています。小学生が初めてプログラミング言語にふれるなら、まずはScratchから入るのが良いでしょう。

ドローンでScratchを使ったプログラミング教育に挑戦
子供も書ける言語「Scratch」でのプログラミング教育をドローンで!

教育・学習向けのプログラミング言語「Scratch(スクラッチ)」を使い、ドローンを教材にしてプログラミング教育を行うことが可能です。ScratchでプログラミングできるドローンやScratchを学べるプログラミング教室を紹介します。

Python(パイソン)

ビジュアルプログラミングが可能なScratchは、最初のハードルが低い分、できることにも限りがあります。用意されているブロック以上のことはできませんし、セキュリティが厳しいためハードウェアやOSが提供する機能のうち利用できるものが限られています。ある程度プログラミングに慣れてきて、もっと高度なこと、難しいことがしたい場合は、テキストベースのプログラミング言語を使用するほうが可能性が広がってきます。

こういった場合におすすめなのがPythonです。コードを書きやすく、読みやすくすることを重視して開発されたプログラミング言語であるため、記述のルールが比較的簡単で子どもでもとっつきやすいです。ただし、コーディングに使う単語はほとんどが英語をベースにしているため、小学校の高学年以上くらいでないと難しいかもしれません。

Pythonは産業用途でも利用されているプログラミング言語で、ビッグデータの解析や人工知能などの分野ではかなり広く使われています。この言語を使いこなせれば、かなり実用的なプログラムを書くことも可能になります。子どもでも大人顔負けのアプリケーションを開発した事例はいくらでもあり、伸びしろが大きい言語と言えるでしょう。

C言語

Pythonは人間の書きやすさ・読みやすさを重視しているため、プログラムを動かしているハードウェアの挙動をあまり気にしなくてもプログラムが書けるようになっています。しかし、本当の意味でIT技術に明るい人間になるためには、ハードウェアの挙動も理解し、思いのままに操れるようになる必要があります。

こういった面に強いのがC言語やC++というプログラミング言語で、人間にとっての書きやすさ、読みやすさをある程度保ちつつ、ハードウェアの動きをイメージしたプログラムが書けるようにできています。ただ、ここまでくるともはやプログラミング教育という次元は超えていて、職業プログラマに近いレベルだと思います。よほどプログラミングに長けた子どもでなければ、あまり必要にはならないでしょう。

さて、ここまででプログラミング教育の意図・目的や、プログラミング教育で利用できそうなプログラミング言語の、種類別の特徴などを紹介しました。これを踏まえて、次は実際にプログラミング教育に利用するという視点から、プログラミングが可能なドローンについて分析していきたいと思います。

Ryze Technology Telloシリーズ

Ryze Tech Tello EDU Powered by DJI Boost コンボ

プログラミング教育向けドローンの大本命は、Ryze Technology社製の「Tello」というドローンです。重量80gの小さなトイドローンですが、ドローンメーカー世界最大手のDJI製フライトコントロールシステムを搭載しているため十分に安定した飛行が可能で、プログラミングによる機能追加に集中できます。

他のドローンと比べてリーズナブルながら性能が高く、幅広い人におすすめできる良機体です。強いて難点を挙げるとすれば、元々の完成度が高いのでプログラミングをしなくてもドローンととして十分に遊べてしまい、ただのおもちゃになってしまう可能性があるところくらいでしょうか。

ラインナップ

Telloシリーズには、2020年3月時点で3種類のラインナップが存在します。また、それぞれに「Boostコンボ」という予備のバッテリーがついたセット商品も存在します。Telloシリーズの機体は飛行時間が10分強(充電時間は1時間半)なので、連続して長い時間飛ばしたい場合はBoostコンボを選びましょう。

Tello

Ryze Tech Tello Powered by DJI

Telloシリーズの標準になる機体です。通常はボディが白色、プロペラが黒色のカラーリングですが、オプションパーツを購入すると黄色や青色のボディ、プロペラに着せ替えることが可能です。

Tello アイアンマンエディション

Ryze Tech Tello IRON MAN EDITION

アイアンマンとコラボし他特別なTelloです。機体の性能はTelloと変わりませんが、アイアンマンをイメージした赤×金のカラーリングになっています。また、機体を操作するためのスマートフォンアプリも、アイアンマンを意識した専用のものになっています。

Tello EDU

Ryze Tech Tello EDU Powered by DJI Boost コンボ

Telloの上位版に当たる機種です。通常版とは以下の点で違いがあります。

ポイント

Tello EDUのTelloとの違いは以下の通り。

  • 対応するプログラミング言語の追加
  • 高度なプログラミング飛行を可能にするミッションパッド付属
  • 手軽なプログラミングを可能にする専用アプリ

対応プログラミング言語

Tello及びTelloアイアンマンエディションは、Scratchによるプログラミングに対応しています。

Tello EDUは、Scratch、Python、Swiftによるプログラミングに対応しています。

価格

2020年3月時点で、Telloは1万2000円程度、Tello アイアンマンエディション及びTello EDUは1万7000円程度で販売されています。

Parrot Mambo FLY

フランスのドローンメーカーであるParrot社は、プログラミング可能なドローンの先駆け的存在であった「AR.Drone」を開発した、コンシューマー向けプログラマブルドローンのパイオニア的存在です。そんなParrot社が販売するScratchに対応したドローンが、「Mambo FLY」です。

Mambo FLYは、後付できる別売りパーツが豊富に揃っており、物をつかむためのクランプのようなパーツや、FPVカメラなどを後付けできます。プログラミングによるソフトウェア面のアップデートだけでなく、後付けパーツによるハードウェアのアップデートが可能なため、ものづくりが好きなお子さんは特に興味を持ちやすいでしょう。

また、対応するプログラミング言語や開発環境の数が多く、様々な言語を学ぶことができるのも特徴です。

対応プログラミング言語

Parrot Mambo FLYでは、多くのプログラミング言語を学ぶことが可能です。

ポイント

Parrot Mambo FLYが対応するプログラミング言語は以下の通りです。

  • Scratch
  • Tynker
  • Python
  • Swift
  • JavaScript

ScratchとTynkerはブロックを使用したビジュアルプログラミングで、他の言語は基本的にテキストベースでのプログラミングになります。ただし、Mambo FLYは「Blockly」というビジュアルプログラミング言語を作るためのライブラリに対応しており、自身で作ったビジュアルプログラミング言語で操作したり、Blocklyで作ったプログラムを他の言語に変換して実行したりすることが可能で、幅広い使い方が可能になっています。

価格

2020年3月時点で、実売価格1万3000円程度~で販売されています。

Robolink CoDroneシリーズ

Robolink社が販売しているCoDroneシリーズは、クラウドファンディングサイト「kickstarter」発のプログラミング可能なトイドローンです。kickstarterでは5万ドルの目標額に対して20万ドル以上の出資を獲得した、非常に人気のあるドローンです。

ラインナップ

CoDroneには、LITE版とPro版の2種類のラインナップがあります。いずれも機体自体は同じですが、周辺機器に差があります。

CoDrone LITE

LITE版は、CoDroneの機体と、通信可能なBluetoothボードがセットになっています。Bluetoothボードをパソコンに差し、ビジュアルプログラミング言語である「Snap」や「Blockly」を使用してプログラミングしたコードでドローン本体を飛ばすことが可能です。

CoDrone Pro

Pro版は、CoDroneの機体と、電子工作でよく利用されるArduino(アルドゥイーノ)というマイコンボードを搭載した組み立て式の送信機(プロポ)がセットになっています。LITE版でできることに加え、Arduinoを操作してより複雑なプログラムを行うことが可能です。

対応プログラミング言語

CoDrone LITEは、プログラミング言語としてSnap、Pythonをサポートしており、Blocklyによって組み上げがプログラムでも動かすことができます。

CoDrone Proは、LITEと同様にSnap、Python、Blocklyをサポートする上に、Arduino言語でプロポから任意の操縦コマンドを送信するようにプログラミングすることができます。Arduino言語は、Arduinoを操作する専用の言語で、C言語/C++と多くの部分で共通しています。

価格

2020年3月時点で、公式サイトから購入する場合、CoDrone LITEが概ね1万3000円+関税+手数料、CoDrone Proが2万円+関税+手数料、という価格になっています。

DJI RoboMaster S1

DJI RoboMaster S1は、「空を飛ばないドローン」です。これがドローンに分類されることに納得行かない人も多いでしょうが、ドローンという言葉の定義自体が曖昧なので、ある種言ったもん勝ちみたいな状況になっています。ここでは、強く子どもの興味を引くプログラミング教材であるためあえて紹介することにしました。

RoboMaster S1は、ドローンメーカーとしてコンシューマー向け世界シェア1位を誇るDJI社が教育用に開発しました。パーツを組み立てて機体を作り上げるところからスタートする、よくあるロボット教材のような構成です。ただし、赤外線レーザーを撃ったり、ゲル弾を発射したりしてRoboMaster同士で「バトル」が可能になっていたり、スマートフォンやタブレットにダウンロードする専用アプリを介してARゲームが可能になっているなど、男の子の遊び心を強烈に刺激する作りになっています。

対応プログラミング言語

RoboMaster S1は、Scratch及びPythonでのプログラミングに対応しています。

価格

2020年3月時点で、販売価格は6万円~となっています。他の教材に比べると非常に効果ですが、センサーの数が多く、赤外線から物理的な衝撃まで様々な情報を検出できるので、プログラミングしたときにできることが多く、比較的年齢が高い子ども(中学生~高校生)向けの教材としても十分に使えます。

まとめ:ドローンを使って楽しくプログラミングを学ぼう

今回は、2020年度以降、小学校、中学校、高校へと段階的にプログラミング教育が導入されることを踏まえ、ドローンを利用して楽しくプログラミングを学ぶために役立ちそうな知識と、具体的におすすめの機体を紹介しました。

色々な機体を紹介しましたが、個人的にはコストパフォーマンスの面から「Tello EDU」あたりが一番手を出しやすいところではないかな、と思います。Scratchから入れるので最初のハードルが低く、PythonやSwiftにも対応しているためプログラミングに興味が出て技術的にステップアップしたとしても、継続的に使用できるのが良いところですね。

とはいえ、まずはお子さんが興味を持って楽しくプログラミングに向き合えることが重要です。ドローンに興味を持てないようならば、あまりこだわらず他の教材を探すという手もあるので、柔軟に対応してあげるのが良いかと思います。

  • この記事を書いた人
  • 最新記事

K-ki

著者:K-ki 子供のころに作った模型飛行機がきっかけで航空宇宙の世界に足を踏み入れたエンジニア。HNは「けーき」と読みます。 好きなものは航空機(固定翼・回転翼・ドローンなど全般)と生き物・アクアリウム。

-ドローンプログラミング

© 2024 Ailerocket/エルロケット