ビジュアルプログラミング「Scratch(スクラッチ)」を使って、Telloをプログラミングで動かす設定方法と使い方を解説

Ryze Tech社のトイドローン「Tello」は、Scratch(スクラッチ)を使ったプログラミングで、自動飛行を設定する事ができます。

iPhoneアプリでTelloのプログラミングができる「Drone Blocks」の設定方法と使い方を解説

2018.04.23

ScratchでTelloを自動飛行させよう

Scratchとは

Scratchは子どもやプログラミング初心者のために作られた「ビジュアルプログラミング」ツールの一つで、MITメディアラボによって開発されました。ビジュアルプログラミングとは視覚的な表現でキャラクターを動かすといったことが出来る言語です。

Scratchウェブサイト:https://scratch.mit.edu/

直感的に操作できる

Scratchでは難しいコードを書く必要がなく、簡単に使いこなせるようになっています。命令の書かれたブロックを組み合わせるだけで、ゲームやアニメーション、インタラクティブな物語作品ができあがりますので、簡単にプログラミングの仕組みを学ぶ事が出来ます。

Scratchでプログラミングすれば子供から大人までドローンの自動飛行を楽しめる

Scratchは可愛い絵柄や直感的な操作、日本語対応されたスクリプト、ドラッグ&ドロップなどの簡単なマウス操作でプログラミングできますので、大人はもちろん、子供でもプログラミングによる自動飛行を楽しめます。

大人の趣味として楽しめることはもちろん、子供のプログラミング教材としても使えるTelloはお勧めです。

 

TelloをScratchで動かす流れ

それでは、TelloをScratchでプログラミング飛行させるための流れを解説します。Telloを開発したRyze Tech社のウェブサイトにScratchで動かす手順を確認する事ができます。

https://www.ryzerobotics.com/tello/downloads

「Scratch READEME」をクリックすると、手順が記載されたPDFファイルをダウンロードできます。

  1. Visit https://scratch.mit.edu/download and follow the instructions to install the Scratch 2.0 Offline Editor.
  2. Download and install node.js from https://nodejs.org/en/.
  3. Download Tello.js and Tello.s2e from https://dl-cdn.ryzerobotics.com/downloads/tello/20180222/Scratch.zip, open the terminal, go to the file directory where you saved the previous files,and type “node Tello.js”
  4. Open Scratch 2.0, hold the “Shift” key, click the “File” menu, click “Import Experimental HTTP Extension,” and select “Tello.s2e” file in the file directory.
  5. The Tello interface will be shown in Scratch under “More Blocks.”

引用元:Ryze Tech社ウェブサイト

https://dl-cdn.ryzerobotics.com/downloads/tello/0222/Tello+Scratch+Readme.pdf

上記を翻訳すると、次のような内容となります。

  1. Scratchのウェブサイトで「Scratchオフラインエディタ」をダウンロードしてインストールして下さい。
  2. https://nodejs.org/ja/へアクセスし、「node.js」をダウンロードしてインストール。
  3. 「Tello.js」と「Tello.s2e」をダウンロードします。
  4. Scratchのソフトを立ち上げたら、Shift”キーを押しながら 「ファイルメニューをクリック」し、一番下に表示される「実験的なHTTP拡張を読み込み(import experimental HTTP extension)」を選択し、 “Tello.s2e”ファイルを開きます。
  5. Telloインターフェースはスクラッチの「その他(More Blocks)」に表示されます。

パソコンに詳しい方であれば、この手順書を見れば設定できると思いますが、そうでない方がこの手順書を見て設定するのは結構難しいと感じます。なので、パソコンに詳しくない方でもScratchで動かす事が出来るよう、順を追って解説していきます。

 

TelloとScratchの設定方法(Windows版)

1. Scratchをパソコンにインストールする

Scratchのソフトを使用するには、Scratchをパソコンにインストールする必要があります。Scratchの公式サイトにアクセスします。

https://scratch.mit.edu/download

ソフト(Scratch オフラインエディタ)をダウロードします。

ダウロード終了後、ファイルを実行してパソコンにScratchをインストールします。

お使いのパソコンに「Adobe AIR」がインストールされていないと、インストール中に下記画面が表示されます。

この画面が表示された場合、Scratchオフラインエディタの左にある「Adobe AIR」をダウンロードしてインストールして下さい。

インストールが完了するとScratchが立ち上がります。スクラッチチームに情報を自動送信するかどうか画面中央に表示されますが、これはどちらをクリックしてもOKです。いずれかをクリックするとソフトが使えるようになります。

このままだと英語表記のままなので、日本語に変えたい方は言語セレクタで日本語に変換します。

「日本語」の下に「にほんご」とありますが、「にほんご」を選択すると全てひらがなで表示されるようになります。子供でも使えるように配慮されています。

「日本語」に変換されましたね。これでScratchのインストール作業は完了です。

2. node.jsをダウンロードしてインストール

次に、node.jsをパソコンにインストールする必要があるため、node.jsのサイトにアクセスしてソフトをダウンロードします。

https://nodejs.org/ja/

左側にある「推奨版」をクリックしてダウンロードします。node.jsのインストール手順については割愛します(ひたすら「Next」をクリックするだけで、特に操作するような事がないため)。

執筆時点ではバージョンが「8.11.1LTS(推奨版)」でした。今後もしバージョンアップしても、左側の「推奨版」を選んでおけば間違い無いと思います。

3. Tello.jsとTello.s2eをダウンロードする

「Tello.js」と「Tello.s2e」というファイルをRyze Tech社のサイトからダウンロードします。

https://dl-cdn.ryzerobotics.com/downloads/tello/20180222/Scratch.zip

ファイルはzip形式で圧縮してあるので、ファイルを解凍します。

フォルダの中には、「Tello.js」「Tello.s2e」「TelloChs.s2e」というファイルが入っています。ちなみに、「TelloChs.s2e」は中国語のファイルなので使う事がありません。削除しても問題無いです。

次に、コマンドプロンプトを立ち上げます。

デスクトップの左下にあるWindowsマークの横に、「ここに入力して検索」という検索ボックスがありますので、ここに「cmd」と入力します。

「コマンド プロンプト デスクトップアプリ」と表示されますので、クリックすると、コマンドプロンプトが立ち上がります。

コマンドプロンプトを立ち上げたらコマンドを入力

コマンドプロンプトを立ち上げたら、コマンドを入力して「Tello.js」を動かすのですが、コマンドプロンプトの操作をしたことが無い方はうまくいかないと思いますので、手順に沿ってやってみて下さい。

1.スクラッチのフォルダのパスを入力します。

コマンドを入力して、スクラッチのフォルダにアクセスします。

「cd C:¥Users¥〇〇〇〇¥Desktop¥Scratch¥Scratch」と入力し、「Enterキー」を押します(こちらのカッコ内はコピペしないで下さい。環境依存文字が含まれているのでコピペしても「指定されたパスが見つかりません」と出てきてしまいます)。

コピペする場合は下記をコピペして下さい

cd C:\Users\ユーザー名\Desktop\Scratch\Scratch

いったんメモ帳にコピーして、ユーザー名を変更すると良いかと思います。

※1:デスクトップ上でファイルを解凍してある事を想定しています。
※2:〇〇〇〇の部分はご自身のパソコンのユーザー名に変更して下さい(画像でいうところのモザイク部分)
※3:もし「指定されたパスが見つかりません」と表示されたら、上記の「¥Scratch」をひとつ削除して試してみて下さい(「¥Scratch¥Scratch」という部分を「¥Scratch」だけにする)。私もこれで何回か躓いたので。

次に、「node Tello.js」と入力し、「Enterキー」を押します。

この画面が表示されれば成功です。これでTelloと通信できるようになります。

※パソコンをログオフしたり再起動したあとには再度コマンドプロンプトを立ち上げ、再度設定する必要があります。

セキュリティの警告が出てきた場合

「node Tello.js」を実行した後、パソコンによってはセキュリティの警告が出てくるかもしれませんが、「アクセスを許可する」を選択しないとTelloと通信できませんので、「アクセスを許可する」を選択して下さい。

4. ScratchにTelloのデータを取り込む

Scratchオフラインエディタに戻り、ダウンロードしたTelloのデータを取り込みます。

「Shiftキー」を押しながら「ファイル」をクリックすると「実験的なHTTP拡張を読み込み」という項目がメニューに表示されますので、ここをクリックします。

「Tello.s2e」を選択し、「開く」をクリックします。

5. Telloインターフェースが「その他」に表示される

スクリプトの「その他」を選択すると、Telloのコマンドが表示されます。これでScratchの中にTelloのデータが取り込む事が出来ました。

注意
「ファイル」をクリックする際、「Shiftキー」を押さないと「実験的なHTTP拡張を読み込み」という項目が表示されません。ですので、必ず「Shiftキー」を押しながら「ファイル」をクリックして下さい

これで、Scratchでプログラミングする為の準備が完了です。

 

Scratchでプログラムを組んでみよう

以上でScratchでプログラミングする準備が整いましたので、実際にTelloのプログラミングをしたいと思います。

Scratchで使用するスクリプト

Scratchのスクリプトは、「動き」、「見た目」、「音」、「ペン」、「データ」、「イベント」、「制御」、「調べる」、「演算」、「その他(Tello control)」とありますが、Telloを動かすスクリプトは、「イベント」、「制御」、「その他(Tello control)」の3つになります(データの使い方がよく分かりません…)。

イベント

イベントは、プログラミングを動かすきっかけの様なものを設定できます。Telloのプログラミングでは「スペース(変更可)キーが押されたとき」ぐらいしか使わないかもしれません。

制御

制御は、イベントの後のTelloの動きの間の制御を設定できます。例えば、離陸した後に「10秒待つ」とか、1m直進して、180度旋回を「2回繰り返す」等といった制御をする際に使用します。

Tello control(その他)

Telloの飛行に関するアクションを設定する事が出来ます。

take off:離陸
land:着陸
fly up with distance:上昇(数字は移動距離)
fly down with distance:下降(数字は移動距離)
fly left with distance:左移動(数字は移動距離)
fly right with distance:右移動(数字は移動距離)
fly forward with distance:前進(数字は移動距離)
fly back with distance :後進(数字は移動距離)
rotate CW with angle:右回転(数字は角度)
rotate CCW with angle:左回転(数字は角度)
flip with duration:8方向フリップ(F,B,R,Lでフリップする方向を指定できます)
set speed =スピード変更?(数字は速度?)

※移動距離はcm単位です。

これらのスクリプトを組み合わせる事により、自分の好きな様にTelloを自動飛行させることができます。

Telloの動作を実際にプログラミングしてみます

それでは、Scratchでドローンの動作をプログラミングしていきます。非常に簡素ではありますが、試しに、下記動作をプログラミングしてみました。

  1. スペースキーを押したらプログラム実行
  2. 10秒後に離陸
  3. 5秒間待ったら、20cm直進
  4. 直進後、3秒待って180度旋回
  5. 20cm直進
  6. 5秒待って着陸

スクリプトを選択し、画面右のスペースにスクリプトをドラッグして積み重ねるだけです。

プログラムの実行(パソコンとTelloを接続する)

Scratchでプログラミングできましたら、いよいよプログラムの実行です。

Telloの電源を入れ、パソコンとTelloをWi-Fi接続します。パソコンとTelloが接続できましたら準備完了です。後はスペースキーを押すだけで、ドローンをプログラミングで動かす事が出来ます。

プログラミングで動いた後は、パソコンのコマンドプロンプトでは下記のように表示されます。

※プログラムを実行したという確認ですかね…多分。

 

まとめ

いかがでしたでしょうか。Scratchを使えば難しいプログラミング言語を覚えなくてもドローンの動作をプログラミングで動かす事が出来るようになります。

Telloは大人が空撮やプログラミングを趣味として楽しむのはもちろん、お子さんのプログラミング教育にも使えると思います。

自分で考えたプログラムでドローンを自動飛行で動かすのは、お子さんも興味を持つと思います。是非、Scratchを使ったプログラミングにチャレンジしてみて下さい。

iPhoneアプリでTelloのプログラミングができる「Drone Blocks」の設定方法と使い方を解説

2018.04.23

DJIの協力のもと製造された高機能トイドローン「RyzeTech Tello」。初心者でも簡単に空撮が可能

2018.04.13

気に入っていただけたらシェアお願いします。


初心者でもプロが作ったようなウェブサイトが作れます

WordPress(ワードプレス)を使う事で、初心者の方でもプロが作ったようなウェブサイトを作る事が出来ます。

パソコンが苦手でも、手順通り進めればウェブサイトを作れるよう解説しています。


ABOUTこの記事をかいた人

1977年神奈川県生まれ。コンサルティング会社勤務を経て独立。店舗ビジネスに特化したコンサルティング業務を展開していたが、身近な人の倒産を目の当たりにした事をきっかけに事業再生に目覚め、平成21年5月より、事業再生に参入。全国各地の中小企業の再生業務に関与し、中小企業の事業再生のサポートを行っている。 平成23年8月、M&Aに特化した株式会社クレアークを設立、代表取締役に就任。現在に至る。業務の幅を広げる事により、サポートの幅を広げている