いよいよ面白くなりTelloを飛ばすことはできましたが、本来の機能であるカメラ画像の送信が生かされていない( ;∀;)
まだお持ちでない方、2台目希望の方 プログラミングドローン ”Tello” の購入はこちらドローンのプログラミングでどうやって画像をPCに送信したらいいだろう? YouTubeをたまたまみていたTechの部屋に出会いました。しかし私はプログラミング初心者でしかもTechの部屋のPCはMAC かなり勉強になりましたが、私はPCはWindowsでしたので、参考にして我流でしてみました。オープンソースはGitHub Tech の部屋「Pythonで小型ドローン Tello EDU を飛ばす!」サンプルプログラムからダウンロードできます。
まずOpenCvのダウンロードからです。
OpenCV(正式名称: Open Source Computer Vision Library)とは、オープンソースのコンピューター・ビジョン・ライブラリです。コンピューターで画像や動画を処理するのに必要な、さまざま機能が実装されており、BSDライセンスで配布されていることから学術用途だけでなく商用目的でも利用できます。加えて、マルチプラットフォーム対応されているため、幅広い場面で利用されていることが特徴です。
画像処理 (Image Processing)構造解析 (Structural Analysis)モーション解析と物体追跡 (Motion Analysis and Object Tracking)物体検出 (Object Detection)などが可能です。

リリースのウインドウズをクリックしダウンロードします。ダウンロードしたら展開してopencvのフォルダーをCドライブの直下に置きます。OPENCVのファイルの中のbild→x64→vc15→binを開きこのアドレスをコピーし、コントロールパネルから
システム&セキュリティのシステム環境変数に追加するため、Pathに先ほどコピーしたアドレスを追加します。
pythonでopencvを使いたいので opencv-pythonをpipを使用してインストールできます。
インストールする場合は以下のコマンドを使用します。
pip install opencv-python

コマンドプロンプトからですがアプリの右クリックで管理者として実行で起動させます。
オープンソースはGitHub Tech の部屋「Pythonで小型ドローン Tello EDU を飛ばす!」サンプルプログラムからダウンロードしたファイル cli.py(先のTello3.pyと同じプログラム) & vc.py(画像送信プログラム)
OpenCVが使われている箇所を強調してみました。
#vc.pyの内容は以下の通りです。
Tello Python3 Control Demo
http://www.ryzerobotics.com/
1/1/2018
Modified by MPS
#
import threading
import socket
import time
import cv2 ⇒ ここでOpenCVがインポートされている
host = ”
port = 9000
locaddr = (host, port)
Create a UDP socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
tello_address = (‘192.168.10.1’, 8889)
sock.bind(locaddr)
def recv():
while True:
try:
data, server = sock.recvfrom(1518)
print(data.decode(encoding=”utf-8″))
except Exception:
print(‘\nExit . . . RECV\n’)
break
print(‘\r\n\r\nTello Python3 Demo.\r\n’)
print(‘Tello: command takeoff land flip forward back left right \r\n up down cw ccw speed speed?\r\n’)
print(‘end — quit demo.\r\n’)
recvThread create
recvThread = threading.Thread(target=recv)
recvThread.start()
sock.sendto(b’command’, tello_address)
print(‘command ok’)
time.sleep(0.5)
sock.sendto(b’streamon’, tello_address)
print(‘stream on’)
time.sleep(1)
sock.close()
cap = cv2.VideoCapture(“udp://%s:%s?overrun_nonfatal=1&fifo_size=50000000” % (‘192.168.10.1’, ‘11111’)) ⇒ #ここでビデをキャプチャーでTelloのカメラから画像受信
print(‘start cap’)
while True:
try:
ret, frame = cap.read()
if ret:
cv2.imshow(‘tello’, cv2.resize(frame, (360, 240))) #受信画像を画面表示
cv2.waitKey(1)
except KeyboardInterrupt:
cv2.destroyAllWindows()
cap.release()
print(‘\nExit . . .\n’)
break
をデスクトップでも貼り付けます。
あとは 各ファイルを実行できるようにコマンドプロンプトを2つ起動させます。
それでは、準備が整いましたので 2つのプログラムを同時に実行させてみます。動画をとってますので御覧ください。
次にOpenCvによる顔認識の仕方こちらへどうぞ!!
youtubeチャンネル登録お願いいたします(^^♪
エラー: 接続されたアカウントがありません。
アカウントを接続するには、YouTube Feeds の設定ページに移動してください。
-
英語のコードが難しい…ならブロックで!BrixelAI×TelloのAIドローン教材

「プログラミングでドローンを動かしてみたい。でも、英語のコードや記号が難しくて…」 講座でPythonを使って…
「プログラミングでドローンを動かしてみたい。でも、英語のコードや記号が難しくて…」
講座でPythonを使ってTello(テロー)を動かしていると、そんな場面に出会うことがあります。そこで、ブロックをつなぐビジュアルプログラミング環境「BrixelAI」に、Tello用の自作ブロックを追加した教材を作ってみました。
この教材のいちばんのポイントは、AIが見つけた位置や大きさの数値を、生徒が「変数」と「もし〜なら」のブロックで判断して、ドローンの動きのルールを自分で作るところです。この記事では、解説動画の内容に沿って、きっかけ・仕組み・考え方・実験のようすを紹介します。

解説動画(約16分)
動画では、ナレーションと図解、実際の画面と実験映像で、教材の考え方をくわしく説明しています。
きっかけは、講座で感じた「入力の壁」
普段の講座では、テキストプログラミング(Python)でTelloを動かしています。自分の書いたプログラムで機体が動く瞬間は、とても楽しい時間です。
ただ、その手前でつまずくこともあります。英語の命令、括弧、コロン、引用符…。一文字ちがうだけでエラーになってしまいます。本当は「どう動かすか」という仕組みを考えたいのに、まず入力で手が止まってしまうのです。

考え方に届く前に、入力でつまずいてしまう(説明用のイメージ) ブロックなら、考え方が「見える」
そこで考えたのが、ブロックをつなぐビジュアルプログラミングです。命令が日本語で書かれていて、形が合うところにだけつなげられます。
- 順番に実行する
- くり返す
- 条件によって動きを変える
こうしたプログラミングの基本の考え方を、ブロックの形とつながりで、目で追って確かめられます。

土台にしたのは「BrixelAI」
BrixelAIは、ブロックを使ってAIを学べるプログラミング環境です。顔や手、体のポーズ、物体の認識など、たくさんのAI機能をブロックで使うことができます。
ここで大事なのは、「もともとBrixelAIにある機能」と「今回追加した部分」を分けて考えることです。
BrixelAIに用意されている機能 MACKY LABが追加した部分 顔の検出、物体の追跡、手・ポーズなどのAI機能 Telloを操作するための自作ブロックと、パソコン側でTelloへ命令を届けるPythonの中継 Tello用ブロックは公式の一覧から追加するものではなく、専用の起動版で読み込む独自の拡張です 
追加したTello用ブロック
「Telloに接続する」「離陸する」「着陸する」といったブロックに加えて、Telloの動きを決める4つの入力を送れるようにしました。
- 左右(平行移動)
- 前後
- 上下
- 旋回(その場で向きを変える)
4つを同時に使わなくても大丈夫。一つの方向だけでも、十分に学ぶことができます。

命令がTelloに届くまで
ブロックが作った命令は、パソコン上で動くPythonの中継プログラムが受け取り、Wi-FiでTelloへ届けます。反対に、Telloのカメラ映像はBrixelAIのAIへ渡されます。
ポイントは、動きの判断をするのはPythonではなく、画面に見えているブロックだということ。生徒が考えるのは、このブロックの部分です。

仕組みの説明図 教材の中心:AIの数値を「変数」と「もし〜なら」で判断する
① AIの数値を変数に入れる
AIで顔や対象が見つかったら、その位置と大きさを読み取って、変数に入れます。変数は、数値を入れておく「名前のついた箱」のようなものです。
- 対象X:横の位置(画面の中心が0)
- 対象Y:縦の位置
- 対象幅:見えている大きさ
見つからなかったときは、それぞれの箱に0を入れます。

② 旋回は「対象X」と境界でくらべる
たとえば旋回の判断です。今の設定では、横の境界は±35。
- もし 対象X が +35 より大きい なら → 右に旋回
- もし 対象X が −35 より小さい なら → 左に旋回
- その間なら → 旋回の命令は0(動かさない)
対象Xが50なら右へ、−10なら境界の内側なので0、というように、数値とルールの関係を具体的に考えられます。

③ 前後は「幅」でくらべる
近くのものは大きく、遠くのものは小さく見えます。そこで、保ちたい距離のときの幅を基準の幅として登録し、今の幅が基準の何パーセントか(幅比)を計算します。
- 幅比が90より小さい(遠い)→ 近づく向きの入力
- 幅比が110より大きい(近すぎる)→ 離れる向きの入力
上下は対象Yと縦の境界(±25)でくらべます。同じAIの結果から、旋回にはX、上下にはY、前後には幅と、別々の判断をつくれるのがおもしろいところです。


実際の画面(録画の一場面)。この場面では対象幅57・基準幅114で、幅比はちょうど50%でした 方向ごとのON/OFFと操作パネル
プログラムでは、1〜4のキーで左右・前後・上下・旋回のON/OFFを切り替えられ、一時停止ですべての命令を0にできます。専用起動版の画面上部には、接続・実機操作の許可・離陸・着陸、4方向のON/OFFと入力の大きさ、入力の停止・再開などの操作パネルもつけました。「判定」の欄には、今なぜ動かさないのかといった理由も表示されます。

操作パネル(実際の画面) 実験のようす
実験① ボールを追跡対象にする
ボールは、BrixelAIの物体追跡で、画面の中央に映したものを対象として登録しています。ボール専用のAIを学習させたわけではなく、登録した対象を追いかける仕組みです。ボールを動かすと、追跡枠と対象X・対象Y・対象幅の数値が変わっていきます。

ボールの追跡(実録) 
部屋のカメラで撮った実験のようす 実験② 顔の位置と幅を使う
顔の実験で調べているのは、顔がどこにあるか、どのくらいの大きさに見えるかです。誰の顔かを見分ける本人認証のような使い方ではありません。最初は一つの方向だけを有効にして、数値の変化を確かめるのがおすすめです。

顔の実験を部屋のカメラから撮ったようす 遅れや見失いも、学ぶ材料に
映像やAIの処理には遅れがあり、対象を見失うこともあります。この教材では、AIの結果が古いときや対象が見つからないときは、移動の入力を0にします。認識の枠が見えていても「機体操作は保留」となる場面があり、こうした状態も生徒と一緒に確かめられる学習の材料になります。

授業での使い方
実際の授業では、次のような順番で進めることを考えています。
- 地上で、AIの数値を観察する
- 基準を登録する
- 一つの方向だけをオンにする
- 操作を許可して、人の手で離陸させる
- 教員が周りと機体を見ながら操作する
そして、こんな問いを生徒と一緒に試してみたいと思っています。
- 境界の数値を大きくすると、いつ反応するようになる?
- 入力を小さくすると、動きはどう変わる?
- 幅の許容を変えると、前後の動きはどうなる?
数値を変える → 観察する → 理由を考える。その結果を、自分の言葉で説明するところまでつなげていきたいと考えています。

ブロックで学んだ考え方は、Pythonにもつながる
「もし 対象X が 境界 より大きい なら」というブロックは、Pythonでは if文として書くことができます。先に考え方をつかんでおけば、英語や記号は、あとから少しずつ覚えていけばいいのです。

右側は考え方の例(Python風)です まとめ:AIで見つけて、自分で考えて、動かす
英語の入力でつまずいても、AIやプログラミングを楽しめる入り口を作りたい。そんな思いから、BrixelAIにTello用のブロックを追加してみました。
AIで見つけて、自分で条件を考えて、その結果がドローンの命令につながる。考えたルールが現実の動きにつながる体験を大切にしながら、これからも講座で使いやすい教材に育てていきます。

よくある質問
Q. BrixelAIの公式機能でTelloを使えるのですか?
A. いいえ。AIの機能(顔の検出・物体の追跡など)はBrixelAIの標準機能ですが、Tello用ブロックとパソコン側の中継は、MACKY LABが専用の起動版で読み込む独自の拡張として作ったものです。
Q. 緑の旗を押すとドローンが飛びますか?
A. 緑の旗では、Telloへの接続やカメラ・AIの準備を行います。離陸は別のキーで行い、基準の登録や方向の確認を済ませてから、人の手で離陸させる進め方を考えています。
Q. 顔の検出で、個人を見分けているのですか?
A. いいえ。使っているのは顔の位置と見かけの大きさだけで、本人認証や個人の識別は行っていません。
※映像は実験中の教材です。認識の遅れや見失いで操作を保留する場面も含まれます。教員が周囲と機体を確認して使用します。ドローンを飛ばす際は、最新の公式情報で飛行ルールを確認してください。
使用プラットフォーム:BrixelAI/Tello用ブロックとPC側中継:MACKY LABの独自拡張/動画ナレーション:VOICEVOX:ずんだもん
-
ドローン操縦練習シミュレーターの使い方|MACKY LAB

MACKY LAB × マッキーの趣味のドローン パソコンで、繰り返し操縦練習。 MACKY LAB ドローン…
MACKY LAB × マッキーの趣味のドローン
パソコンで、繰り返し操縦練習。
MACKY LAB ドローン操縦練習シミュレーター
Windows用ダウンロードソフト/GPS・ATTI切替/風速設定/練習用採点

Windows用のドローン操縦練習ソフト「MACKY LAB」。 こんにちは、マッキーです。今回は、パソコンでドローンの基本操作を練習できる「MACKY LAB ドローン操縦練習シミュレーター」を紹介します。
「スティックの動かし方に慣れたい」「ホバリングや着陸を繰り返し練習したい」。そんなときに、自宅のパソコンで操縦の流れを試せるアプリを制作しました。実際のドローンを飛ばさずに、移動・旋回・高度の調整を練習できます。
どんな練習ができる?

実際のアプリ画面:グリッド床、パイロン、目標地点を見ながら練習します。 - 離陸・前後左右の移動・旋回・上昇下降・着陸
- 自由飛行・ホバリング・スクエア・8の字の4コース
- GPS/ATTIの切替と、0・1・3・5m/sの風速設定
- 操縦者視点・追尾視点・機体視点の切替
- Mode1/Mode2切替、コントローラーの軸調整
- 高度・速度・距離の表示と、練習用の採点
まずは「GPS・風速0m/s・自由飛行」から始めると操作を確かめやすくなります。慣れてきたら風を加えたり、ATTIへ切り替えたりしてみてください。
必要なもの:Windowsパソコンと操作用コントローラー

コントローラーは別売です。BOOTHで販売するのはWindows用ソフトです。 本商品はWindows 64ビット用のダウンロードソフトです。Godotのインストールは不要で、キーボードでも操作できます。コントローラーを使った操作はロジクールF310で確認しています。
コントローラーは付属しません。別途購入が必要です。
BOOTHで販売するのはWindows用ソフトです。F310などの機器は、ご自身でご用意ください。
他機種の動作は接続方式や設定によって異なります。GameSir T1dには直接対応していません。パソコンごとの描画速度や、すべてのコントローラーでの動作を保証するものではありません。購入前にBOOTHの商品説明・対応環境をご確認ください。
起動方法:デスクトップのアイコンからスタート
- BOOTHで購入したZIPファイルをダウンロードし、右クリックして「すべて展開」します。
- 展開したフォルダーを、保存して使いたい場所に移動します。
- フォルダー内のCreateDesktopIcon.batをダブルクリックします。
- デスクトップに作成された「MACKY LAB Drone Simulator」から起動します。
専用アイコンはStandard.batに紐づき、通常画質で起動します。2回目以降はアイコンをダブルクリックするだけです。フォルダーを移動した場合は、その場所でCreateDesktopIcon.batをもう一度実行してください。
動作が重い場合は、同じフォルダーのStart.batから軽量モードを試せます。MACKYLabDroneSimulator.exeを直接起動した場合も軽量モードです。
F310の接続とボタン操作
F310の裏面スイッチを「X」側にしてUSBでパソコンへ接続します。スティックを中央に戻してからアプリを起動し、コントローラー名と操作への反応を確認してください。
ボタン このアプリでの操作 A(緑) 離陸/H中心1m以内で自動着陸 Y(黄) 操縦者視点→追尾視点→機体視点 BACK 機体位置・飛行時間・採点記録をリセット 着陸はA、やり直しはBACKです。BACKを押すと採点記録が消えるため、着陸操作と間違えないようにしてください。
Mode2/Mode1のスティック操作
アプリの起動時はMode2です。画面の「Mode 1/2」ボタン、またはキーボードのMキーで切り替えます。
スティック Mode2 Mode1 左・上下 上昇/下降 前進/後退 左・左右 左旋回/右旋回 左旋回/右旋回 右・上下 前進/後退 上昇/下降 右・左右 左移動/右移動 左移動/右移動 移動方向は機体の向きが基準です。機体がこちらを向くと、画面上の左右が逆に見えます。F310本体の「MODE」ボタンは十字キーと左スティックの機能を入れ替えるボタンで、アプリのMode1/Mode2とは別です。
動く方向が逆の場合や軸が合わない場合は、画面の「軸設定」で調整してください。この操作表はアプリの初期設定を基準にしています。
GPSとATTI:操縦感覚の違いを練習
GPS:スティックを中立に戻すと水平移動を自動で減速します。風がある場合は弱く流されます。
ATTI:中立でも横移動が残り、逆方向に少し操作して減速します。上下スティックが中立のときは高度を維持する簡易モデルです。
切替は「GPS G/ATTI G」ボタンまたはGキー。風速は画面から選べます。まず無風で移動後にスティックを離し、次に風速を上げて違いを比べてみてください。
4つのコース:何を目標に飛べばいい?
コース アプリ内の練習目標 自由飛行 高度3m付近で基本操作。課題点は飛行10秒で満点。 ホバリング H中心付近・高度3.5mで30秒連続保持。 スクエア H上空1.5mで5秒保持後、A→B→C→D→E→A→H。C・Dは3.5m、他の地点は1.5m。 8の字 H上空1.5mで5秒保持後、左の円→右の円。高度1.5mで16地点を順番に通過。 スクエアと8の字では、準備の5秒保持を終えてから、黄色の目標と画面の「次」を確認して進みます。地点は高さも含めて判定するため、水平位置だけでなく目標高度を合わせてください。
練習用採点の見方とコツ
項目 満点 内容 安全 40点 接触は1回10点、外枠逸脱は1回5点を減点。 高度 20点 その時点の目標高度±0.5m以内にいた時間の割合。 課題 30点 各コースの飛行時間・連続保持・順番どおりの地点通過。 着陸 10点 H中心1m以内でA/SPACEによる自動着陸を完了。 課題を終えたらHへ戻り、Aを押してスティックを離し、着陸完了を待ちます。その後「練習終了・結果」で内訳を確認してください。「飛行へ戻る」は記録を保持しますが、リセットやコース変更では記録が初期化されます。
- 操作は小さく:大きく倒し続けず、少し動かして中立へ戻すことから練習。
- 先に減速:目標地点の直前で急停止を狙わず、余裕を持って速度を落とす。
- 高さも確認:黄色の目標を通れないときは、高度表示と「次」の目標を見直す。
- 点数を分けて振り返る:合計点だけでなく、安全・高度・課題・着陸のどこを改善するか考える。
離着陸や高度変更も高度点に影響するため、課題を終えるだけで100点になるわけではありません。詳しい条件とコース別のコツは、同梱の「はじめに.txt」にまとめています。
購入前に知っておいていただきたいこと
このアプリは操縦の基礎練習用の簡易シミュレーターです。実機の飛行特性を完全に再現するものではありません。国家資格の公式教材・公式シミュレーターではなく、採点も独自の練習用方式です。実際の試験の合否を判定・保証するものではありません。
実際の画面や操作の様子を確認して、用途に合うかをご判断ください。ソフトの収録内容、価格、最新の販売情報はBOOTHの商品ページでご確認いただけます。
未来のドローンはここまで進化する!

AIが切り開く空の新時代 近年、ドローンは「空撮する機械」から、人々の生活を支える重要なインフラへと進化してい…
AIが切り開く空の新時代
近年、ドローンは「空撮する機械」から、人々の生活を支える重要なインフラへと進化しています。
AI(人工知能)の発達により、未来のドローンは私たちの想像を超える能力を持つようになります。
今回は、未来のドローンがどのように社会を変えていくのかをご紹介します。
① AIが自律飛行する時代
従来のドローンは操縦者が必要でした。
しかし未来では、
- 人を自動追尾
- 障害物を自動回避
- 最適なルートをAIが判断
- 悪天候を予測して飛行
など、人が細かく操作しなくても安全に飛行できるようになります。
まさに「空飛ぶロボット」と呼べる存在です。
② ドローンタクシーの実現
世界ではすでに
- 空飛ぶタクシー
- eVTOL(電動垂直離着陸機)
の実証実験が進んでいます。
将来的には
- 神戸空港
- 三宮
- 六甲アイランド
などを数分で移動できる日も来るかもしれません。
交通渋滞のない空の移動は、新しい都市交通として期待されています。
③ 災害時の救世主
日本は地震や豪雨が多い国です。
未来のドローンは
- 被災者の捜索
- 医薬品配送
- 通信中継
- 夜間救助
- AI画像解析
など、人命救助の最前線で活躍するでしょう。
④ 配送革命
ネット通販の増加により、
ドローン配送はますます重要になります。
例えば
- 山間部
- 離島
- 高齢者宅
- 災害地域
へ短時間で荷物を届けることが可能になります。
⑤ AIとの融合
未来では
- ChatGPTのようなAI
- 音声認識
- 映像解析
- 顔認識
などがドローンに搭載され、
「考えるドローン」
へ進化していきます。
例えば
「○○さんを探して」
という音声だけで飛び立ち、
目的の人物をAIが発見する時代もそう遠くありません。
⑥ エンターテインメントも進化
未来では
- AIがリアルタイム演出
- 音楽に合わせて編隊飛行
- ARやVRとの融合
- 観客参加型ショー
など、新しいエンターテインメントが誕生していくでしょう。
まとめ
AIとドローンの進化によって、私たちの生活は大きく変わろうとしています。
「空を飛ぶカメラ」だったドローンは、これからは
- 人を助ける
- 荷物を運ぶ
- 命を守る
- 空の交通を支える
未来のパートナーへと進化していくでしょう。
これからも「マッキーの趣味のドローン」では、最新のドローン技術やAIとの融合、未来の空の世界について分かりやすく紹介していきます。
