LoginSignup
4
2

More than 5 years have passed since last update.

ALEXAでTELLOを操作

Last updated at Posted at 2019-04-04

はじめに

2018年のAlexaスキルアワードで音声によるTELLOドローンの操作( https://smarthacks.jp/mag/37640#16Tello_Controller )を間近に見て感激、またコードがgithubに公開されていることを知って、いつかやってみたいと思っていましたが、ついに実現しました。

仕組み

Alexaスキルでは、通常、コードはバックエンドにAWS Lambdaを使いデプロイするところですが、ドローンを飛ばすには自分のPCをバックエンドにして、発話からのコマンドを受ける必要があります。ドローンが発するwifiをPCで受信するので、PCのネット接続は別の手段で確保します(自分は有線LANで接続)。発話部分(フロント側)はAlexa スキルビルダーで作成し、自分のPCをエンドポイントにします。これを実現するのがngrokです。

方法

まず、https://github.com/miso-develop/tello-controller-alexa を自分のPCにクローンします(TMさん、公開ありがとうございます)。先に、npm, ngrokのインストールを済ませておきます。

npm install
npm install -g ngrok

最初、ngrokのインストールのところで、”write access to /usr/local/lib/node_modules” のメッセージが出てうまく行きませんでしたが、こちらを参考に解決しました。https://qiita.com/NaokiIshimura/items/cc07441939b226e779c6

準備が完了したら、ドローンを飛ばす時に、コードファイルを置いたフォルダ上で以下を実行します。

node index.js

別ターミナルを起動し、同フォルダで以下のコマンドを実行します。

ngrok http 3000

ngrokが起動できたら、Forwarding https のURLが表示されるのでそれをメモし、スキルビルダー上でENDPOINTに設定します。このURLは起動の度に変わります(継続有効時間は8時間)ので、操作前に設定する必要があります。

あとがき

TELLOとAmazon ECHOをお持ちの方はぜひお試しください。
Have a nice flight with Alexa!

【関連記事】
https://qiita.com/miso_develop/items/a482dc4d168ec0a33818

4
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2