TELLOのプログラミングで確実に飛ばそう2024 #その3 | Drummer

TELLOのプログラミングで確実に飛ばそう2024 #その3

 前回の#その1 #その2の流れでTELLOのファイル(tello_test.py)を書き換えることで飛ぶようになったかと思います。

ただ、プログラムして飛ばすだけなら、こんなにめんどくさいことやらなくても、

TELLOEDUのアプリで、ブロック並べるだけで出来ちゃう(もちろんEDUでなく、通常のTELLOでも遊べます。)

pythonでいきなりやるよりは、scratchのようなブロックプログラミングと言われるものをやっておくことで組み方や、

関数の考え方が理解しやすいかなと思います。

 話がそれてしまいましたが、ドローンで使いたい機能と言えばカメラ機能ですよね?

カメラの画像をPCで見ながら、ダンジョンを進んでいくようにcommandを入力してドローンを操作してみたいと思います。

では下準備を行いましょう。

 

 今回はOpenCVというものを使います。

その上でffmpegが必要という風に書いてあるサイトもありましたが、現在は?基本的にOpencvダウンロード時に一緒にダウンロードされているはずなので、別口でいれたりパス設定とか難しいことをしなくても問題ないと思います。

まずpythonをダウンロードしていればwindowsシステムツール→コマンドプロンプトというところを開いて

黒い画面にpip install opencv-pythonと入力してENTERキーを押してダウンロードされます。

※ダウンロードが始まらないとかエラーが出る場合は

・パイソンをダウンロードしていない。

・スペルを間違っている。

が大まかな理由かと思います。

pythonの複数のバージョンを入れていてもうopencv入れたという方もバージョンごとにインストールする必要があるのでこの作業は行ってください。

 

 次にTello3.pyファイルをTELLOのユーザーマニュアルの2ページ目にあるリンクからダウンロードしてください。※下記はダウンロードリンクです。コマンドを打ち込んで動かすプログラムです。
https://dl-cdn.ryzerobotics.com/downloads/tello/20180222/Tello3.py

ダウンロードしたらTello3.pyファイルを見ていきましょう。

下の方赤枠の部分に飛ばすためのプログラムが記載されています。inputしたものをエンコードしてソケット(この場合はtello)

に送る。という動作を繰り返す。もしほかのキーが押されたらプログラムを終了するという感じです。

ちなみにタイピングが遅いと信号がないと思って着陸してしまいます。😢

でも、たったこれだけで実際に機械が動くのですから、昔のMSXでBASICなんかでゲームをプログラムしてた頃と比べたらシンプルさが半端ないです。👏

この赤枠の動かすプログラムを取り除いて、画像を取得してPCに映すというプログラムを入れると映像が映る事になります。

この先はまた次回!!

このブログではTelloEDUではなく通常のTelloでどこまでやれるのかを検証しています。

知りたいこと、間違っていることなどもあればコメントよろしくお願いいたします。