1. Telloとは?
Telloは、DJIとRyze Techが共同開発した小型ドローンで、手のひらサイズの軽量な機体を持っています。Wi-Fi経由でスマートフォンやPCから操作でき、Python などのプログラミング言語を使って自動操縦も可能です。
Telloの特徴:
- 軽量でコンパクト
- プログラムで制御可能
- 720p HDカメラ搭載
- 安定した飛行が可能
2. 事前準備
TelloをPythonで制御するには、いくつかの準備が必要です。
(1) 必要なもの
- DJI Tello本体
- パソコン(Windows, Mac, Linux どれでもOK)
- Python 3(できれば最新バージョン)
- Wi-Fi環境(TelloのWi-Fiに接続するため)
(2) Python環境のセットアップ
Pythonがインストールされていない場合は、Python公式サイトからインストールしてください。
次に、Telloを制御するためのライブラリ “djitellopy” をインストールします。
ターミナル(またはコマンドプロンプト)で次のコマンドを入力してください:
shコピーする編集するpip install djitellopy
3. Telloと接続する
TelloはWi-Fiで制御するため、パソコンのWi-Fi設定を開き、「TELLO-xxxxxx」 という名前のネットワークに接続してください。
Wi-Fi接続が完了したら、Pythonコードを書いてTelloと通信してみましょう!
(1) 基本的な接続テスト
pythonコピーする編集するfrom djitellopy import Tello
# Telloオブジェクトを作成
tello = Tello()
# Telloと接続
tello.connect()
# バッテリー残量を取得
battery = tello.get_battery()
print(f"バッテリー残量: {battery}%")
# 接続を閉じる
tello.end()
これを実行すると、Telloのバッテリー残量が表示されるはずです。もしエラーが出る場合は、Wi-Fiが正しく接続されているか確認してください。
4. 基本の飛行操作
次に、Telloを実際に飛ばしてみましょう!
(1) 離陸と着陸
pythonコピーする編集するfrom djitellopy import Tello
import time
tello = Tello()
tello.connect()
print(f"バッテリー残量: {tello.get_battery()}%")
tello.takeoff() # 離陸
time.sleep(5) # 5秒間ホバリング(空中で停止)
tello.land() # 着陸
tello.end()
このコードを実行すると、Telloが 離陸 → 5秒間ホバリング → 着陸 します。
5. 自動操縦のプログラム
今度は、Telloを 自動で前進、回転、後退 させるプログラムを書いてみましょう。
pythonコピーする編集するfrom djitellopy import Tello
import time
tello = Tello()
tello.connect()
print(f"バッテリー残量: {tello.get_battery()}%")
tello.takeoff() # 離陸
time.sleep(2)
tello.move_forward(50) # 50cm前進
time.sleep(2)
tello.rotate_clockwise(90) # 90度回転
time.sleep(2)
tello.move_back(50) # 50cm後退
time.sleep(2)
tello.land() # 着陸
tello.end()
このコードを実行すると、Telloは 前進 → 回転 → 後退 → 着陸 という動きを自動で行います。
6. 応用編:四角形を描く
Telloを使って四角形を描く飛行プログラムを作成してみましょう。
pythonコピーする編集するfrom djitellopy import Tello
import time
tello = Tello()
tello.connect()
print(f"バッテリー残量: {tello.get_battery()}%")
tello.takeoff()
for _ in range(4):
tello.move_forward(50) # 50cm前進
time.sleep(2)
tello.rotate_clockwise(90) # 90度回転
time.sleep(2)
tello.land()
tello.end()
このコードでは、4回繰り返して直線移動と回転を組み合わせる ことで、Telloが空中に四角形を描くように飛びます。
7. さらに高度な制御
Telloは カメラを使った画像処理 や、キーボード入力で操作するプログラム も作成できます。
(1) キーボードで操作
Pythonの pynput
ライブラリを使えば、キーボードで自由にTelloを操縦できます。
(2) 画像処理と組み合わせる
Telloのカメラ映像を取得し、OpenCV を使って顔認識や物体検出を行うことも可能です。
まとめ
今回は、DJI TelloをPythonで制御する方法を学びました。
- Telloの基本情報
- Python環境のセットアップ
- TelloとWi-Fi接続
- 離陸と着陸の基本操作
- 自動操縦プログラムの作成
- 応用編として四角形を描く飛行プログラム
Telloをプログラムで動かせるようになると、ドローンの自動飛行や画像認識など、さまざまな応用が可能になります!
ぜひ、いろいろな動きを試して、自分だけの飛行プログラムを作ってみてくださいね!🚀✨
コメント