Telloをパソコンからプログラミングして飛ばす

ガジェット, プログラミング学習

私がガジェットマニア&プログラミング好きということで、同僚からプログラマブルなトイドローン「Tello」を頂きました。早速、パソコンから操縦することにトライしてみたので、そのときの環境づくりについて説明します。

記載内容はWindowsで試したときのものですが、Mac、Linuxでもほぼ内容は変わらないと思います。キッズ向けプログラミング入門者の方などの参考になれば幸いです。

※iOSやAndroidにはプログラミング操縦アプリがリリースされており、そちらの方がお手軽に試せます。

動画での説明もあります。(内容はブログと同じ)

ソフト、ファイルのダウンロード

下記をダウンロードします。

  • Scratch 2 オフラインエディター
  • Node.js
  • Tello用設定ファイル群(Scratch 2 用のブロック、Node.jsの起動スクリプト)

ダウンロードするためのURLは、TelloもしくはTello EDUの公式ページ → ダウンロード にある「Scratch README」のPDFに記載されています。

Tell、Tello EDUのダウンロードページ
Tello
Tello EDU

Scratchは下図の1、Node.jsは下図の2、Tello用設定ファイル群は下図の3のリンク先からダウンロードできます。

Scratchは、Scratch READMEからジャンプしてすぐのページではなく、旧バージョンのScratch 2 オフラインエディターをダウンロードします。

Node.jsのバージョンは特に気にしなくて大丈夫みたいですが、私は左側の安定しているバージョンをダウンロードしました。

3つめの「Tello用設定ファイル群」はScratch READMEからダウンロードすると7Zip圧縮形式のファイルになっています。
7Zipファイルを解凍できない方は、こちらからZip圧縮形式のファイルをダウンロードしてください。

ソフトのインストール

下図はTello用設定ファイル群を7ZipのものとZipのものを両方ダウンロードしたものです。Scratch.zipかscratch0907.7Zipのどちらかがあれば大丈夫です。

Scratch-461を実行してScratch 2 オフラインエディターをインストールします。設定変更するところはありません。

ダウンロードした「node-v~」を実行してnode.jsをインストールします。「I accept the terms in the License Agreement」にチェックをつけるくらいで、設定変更するところはありません。

「Scratch.zip」か「scratch0907.7Zip」の中に入っている「Tell.js」、「Tello.s2e」をデスクトップに置いておきます。
圧縮ファイルにはもう一つファイルが入っていますが、そちらは不要です。(中国語のScratchブロック)

また、Node.jsのインストールフォルダにある「node.exe」へのショートカットもデスクトップに配置しておきます。

以上で環境の準備は整いました。

プログラミングで操縦

ドローンを操縦するためのプログラムはScratchでブロックを組み合わせて作ります。
Scratchを起動したら、毎回、最初にTello専用のブロックを追加します。Shiftキーを押しながら「ファイル」メニューをクリックし「実践的なHTTP拡張を読み込み」を選択します。

ファイルを選択する画面では、先程デスクトップに置いておいた「Tello.s2e」を選択します。すると、スクリプトの「その他」に「Tello Control」というブロックが追加されます。

このブロックを使ってドローンの操縦をプログラミングします。
例えば、「旗がクリックされたら、離陸 → 前進 → 着陸 の順に動かす」には下記のようにブロックを繋げます。

プログラミングが完成したら、下記の手順でパソコンをTelloに接続します。

  1. Telloの電源を入れる
  2. パソコンのWiFiをTelloに接続する
  3. Node.jsを起動する

Node.jsは直接起動せずに、デスクトップに置いておいた「Tello.js」をNode.jsのショートカットにドラッグ・アンド・ドロップします。
下記のような画面が出ていれば大丈夫です。(画面はダウンロードしたファイルによって多少異なるかもしれません)

この状態で、Scratchからプログラムを実行すればTelloが動きます。

説明はここまでです。

プログラミングと言っても「ドローンをどう操縦するか」という指示を組み合わせるだけで飛ばすことができます。
また、Tello EDUだと編隊飛行などもできるようです。
是非、色々な飛ばし方を試してみてください。