趣味探しブログ「研究しましょう」 --- 日記 マガジン

    やりたい趣味を探してネットをさまよう私の、ブログです --- I'm here. Find me out.
0

やっと DJI のドローン Tello をPython から動かせた 💦   #Python #ドローン #プログラミング

Python積ん読
 DJI のドローン Tello を Python からコントロールしながら Python の勉強をしようと、写真右上の本『 Scratchでドローンを・・・』を参考に、試して、動かすことができた。

この本の終わりの方に、Python で Tello API を叩いて動かすコードが載っていたので、それを試していた。Python のバージョンの違いからか、そのままでは動かなかった。

その隣の『インターフェース』を見たら、

  「 tellopy や djitellopy というモジュールがあるじゃん」

知らなかった。

でも、逆に勉強になったので、おっけぇ。

 開発環境は、エディタに Visual Studio Code を使い、そのターミナルからプログラムを実行する形を取った。具体的には、ソースをVSCode で開き、ターミナルのディレクトリをソースコードと同じにした。

ターミナルで Paythonインタープリターを起動して、

exec(open("my_tello.py").read())

これで、main を持たないソースファイル my_tello.py をロードして、自作した connect() 等の関数を、インタープリター上で打ち込んで実行する形。ソースに変更を加えたら、ファイルロードからやり直す感じ。

この方法だと、Python 上で UI をコーディングしなくていいので、楽だった。ソースファイルは、綺麗にしたら、掲載予定。その次に tellopy や djitellopy を import して試してみようと思ったら、ライブラリーが見つからないエラーが出てしまった。これを、修復。

正しい修復方法は、『Visual Studio Codeでライブラリやモジュールが could not be resolved になる時の対処法』に書いてある通り。この例では『django』が見つからないことになっているので、それを、そのまんま『tellopy』に置き換えてやったら、見事にエラーが回避された。

先のサイトの、解決法の書き方、素晴らしいす。そして、私の元の情報は、

  「ゴミ以下す」



PS. 実際のプログラムコードに関しては、もうチョット実験をしてから、別途、紹介予定。

まず、ライブラリーのフォルダを探す為に、ターミナルで conda env list を実行すると、

base    /Users/meKaeru/opt/anaconda3
Python27  /Users/meKaeru/opt/anaconda3/envs/Python27

を得る。Python3 の環境である base のフォルダ名を、VSCode の Python: Conda Path の設定の所に書くと、上記のライブラリーを読み込める様になった。

  「まぁ、困ってない人には、ゴミ情報だけど、、、」

プログラミングに関しては、別記事にする予定。

該当の記事は見つかりませんでした。