#はじめに
このページは,
の1ページです.
全体を見たい場合は上記ページへお戻りください.
#概要
今回はdronekitの話ではなく,
メインである「ドローン操作システム」のシステム構成について,紹介します.
#ドローン操作システム
今回の企画で最終的に作る物は,次の図のようなシステムになります.
ドローン本体にRaspberry Piなどの コンパニオン・コンピュータ を搭載しています.
コンパニオンとは,「添乗員」「同乗者」「連れ」「仲間」を意味しています.
旅館やホテル,展示会でサービスをする女性じゃないですよ!(^^;)
コンパニオン・コンピュータが認識や判断を行う大脳となり,
フライトコントローラが姿勢制御や移動などの運動を司る小脳となって,
体全体を動かすことになります.
コンパニオン・コンピュータは,
- 5G・LTE・3Gなどのセルラー回線
- LoRaなどのLPWA
- WiFi,Bluetooth,ZigBeeなどの2.4GHz無線
などの手段をUSB接続などで持っていて,
インターネットまで接続できるようになっているという前提としています.
地上にいる操縦者は,PCやスマホ・タブレットでWebブラウザを開いて,
ドローンを遠隔操作します.
映像伝送なども考えると,5G・LTEが最も望ましいのですが,
2019年4月現在の時点では,
**地上移動局であるセルラー回線を空中で利用することは電波法に抵触**します.
早期の解禁が望まれますね.
従って,実機ドローンで実験する際には,
別のインターネット接続の手段を考えておく必要があります.
ただし,
- 2.4GHzでは頑張っても50m程度しか届かないし,ネット接続はLTEルータなどを利用する必要がある.
- 920MHzを利用するLPWAは,電波の送信時間に制約があるので,1秒間に1~10回という頻度の通信はできない.映像伝送も無理.
問題も山積みです.
ここから下の章は,最終目的「ドローン操作システム」とは無関係です.
単純にシステムの理解を深めるための比較として書きました.
#テレメトリでの遠隔操作
以前の記事,dronekit-python を使ってみる(実機編)で最後にやった作業は,
以下の図のようになります.
したがって,Pythonとdronekitを使っているものの,
やっている事自体は「フライトモードの変更」「Guidedで緯度経度指定」なので,
MissionPlannerが持っている機能です.
dronekitのサンプルmicrogcs.pyが良い例ですが,
PythonベースでGUIのあるアプリ作成を頑張れば,
「MissionPlannerのようなソフトウェア」を自作することも可能ですね.
#ROSを使う際
ROSでドローンを操作したい理由のほとんどは,SLAMが目的でしょう.
その場合,測域センサや奥行きカメラなどのデータ処理をさせるには
Raspberry Piのような非力なコンピュータでは力不足です.
図のようにCore i7などの高性能CPUを持ったベアボーンPCを搭載することになるでしょう.
ROSからardupilot/PX4系フライトコントローラへアクセスするためには,
mavrosというROSパッケージ が用意されているので,
これを利用することになります.
もちろんdronekitを使って,独自のパッケージを作ることもできますが,
少々大変かと思われます.
#おわりに
今回は脇道にそれて「システム構成」についての解説でした.
次回は本来の目的に戻ってプログラミング関連をやっていきます.