3DRのSite Scanサービス、DJI機にも対応

3D Robotcis(3DR)は元々、当時Wiredの編集長だったChris Andersonが始めた、ドローン自作を趣味とする人達のコミュニティ、DIYDrones.comから生まれた会社です。Chris Andersonが自分の子供と一緒にプログラム可能なレゴを使って、自作のドローンを組み立てたことがきっかけとなり、趣味が講じてDIYDrones.comを立ち上げたところ、たまたまコミュニティにいたJordi Muñozという19歳のメキシコ人学生がWiiリモコンの加速度センサーを使ってフライトコントローラーを作ってしまいます。

ちなみに、このWiiリモコンは当時としては珍しかった、Bluetooth接続で手軽に加速度センサーで遊べるガジェットだったので、私もバーチャルライトセーバープログラムを書いて遊んだ記憶があります。

その後、ChrisとJordiが3DRを立ち上げ、16MHz、8ビットのArduinoをベースにした初代ArduPilot(ハード)や、より性能の上がったAPM(ArduPilot Mega)やAPM2といったDIY向けのフライトコントローラーに発展してゆきます。初代APM系のボードは、Autonomous Vehicle Competitionという自立制御乗り物のコンテストを開催していた電子部品販売大手のSparkfunが製造を担当していました。当然、Arduinoボード用に書かれたファームウェアであるArduPilot(ソフト)は、Arduinoのスケッチとして実装されていました。

その一方で、PX4/Pixhawkプロジェクトは、ドローン制御の最先端をゆく、スイス工科大学チューリッヒ校(ETH Zurich)で、オープンソースハードウエア&オープンソースソフトウェアの32bitフライトコントローラーを作る目的で始まりました。

そのPixhawkの製造パートナーに3DRが選ばれ、ArduPilotプロジェクトPX4プロジェクトが共同で、どちらのソフトウェアにも対応したハードウェアとして、Pixhawkが誕生しました。3D Roboticsは、初期段階からPixhawkの生産、販売と、ArduPilot系開発者への金銭的支援を熱心に行っていたため、3DR独自の製品だと勘違いされることが多いですが、PX4/Pixhawkの出処はETH Zurichで、ArduPilotの出処はDIYDrones.comです。

ちなみに、PX4もArduPilotも、元来ハードとソフトがセットになったプロジェクトだったのが、いつの間にかハードとソフトが独立して進化してしまったため、PX4、ArduPilot共にハードウェアとソフトウェア両方が存在し、名前だけではどちらの話なのか不明で、非常にややこしいです。Zenbotでは、PX4(ソフト)、PX4(ハード)、ArduPilot(ソフト)、ArduPilot(ハード)というふうに識別しています。

PX4/Pixhawk/ArduPilotプロジェクトが特徴的なのは、ソフトウェアだけでなく、ハードウェアも多くがオープンソースであることです。比較的安価なのに高性能で、技術力さえあれば自由に拡張できるため、今ではPixhawk系のフライトコントローラーを載せたドローンは、全世界で100万機も飛んでいると言われています。勿論、Zenbotも始めからPixhawk系のコントローラーのみを採用しています。

ハードウェアもオープンソースであるため、当初はマイクロコントローラーベースだったハードウェアも、いまやLinuxシングルボードコンピューターを含む様々な製品が出てきており、PX4(ソフト)も、ArduPilot(ソフト)も、非常に多くのプラットフォームに対応しています。

このように、DIY向け、玄人向けの製品を製造、販売することで有名になった3DRですが、同じようにDIY向けの製品を作っていたDJIが、空撮専用のドローンをコンシューマー向けに販売することで成功したのをみて、我らも遅れまじと、それまでの忠実な顧客ベースだったDIYユーザーをあっさりと切り捨て、コンシューマー市場に参入しようとして見事に撃沈したのはご周知の通りかと思います。

ドローンバブルに乗って、最初から100億円レベルの資金を集めてしまうと、期待値もあがってしまい、市場が熟成していないうちに過度な売上目標を設定してしまうことになり、結局は既存顧客や自社の強みを無視した無理な先行投資と製品開発に突き進んで失敗し、大幅な軌道修正からの事業縮小、大量解雇、という典型的な敗戦処理パターンに陥った3DRですが、その後は、DJIファントムの対抗馬としてコンシューマー向け空撮ドローン市場に鳴り物入りで参入した自社製品、Soloの単体販売を早々に諦め、Site Scanという測量用の業務ソリューションとの抱き合わせ販売に特化するべく大きく舵をきりましたが、売上は今ひとつのようです。

過大な増資は経営リスクでしか無いので、資金集めは必要最小限に留める、というのはベンチャー経営者の鉄則だと思いますが、膨大なお金に目が眩んでしまったのかもしれません。まるでドットコムバブルの再来のようなドローン業界ですが、それでも3DRは4月のシリーズDラウンドで$53Mの追加増資を行っていますので、まだまだ業界としての期待値は高いということでしょうか。

で、ようやく本題ですが、そんな3DRも、ついにSite ScanサービスでDJI機の対応を発表しました。

https://3dr.com/blog/3dr-dji-enterprise-atlas/

ハードに関しては完全に白旗、というのは明白でしたし、3Dソフトウェア最大手のAutoDeskと測量関連で提携しているので、今3DRに潰れてもらっては困る、というのはわかりますが、DJI機でできることをやっても差別化要因がなく、先行するPix4D等に対抗できるとも思えず、余計に自分の首を締めることになるだけのような気がするのは、私だけでしょうか。。。

 

余談ですが、Chris Andersonと共に3DRを立ち上げたメキシコ人学生のJordi Muñozは、既に3DRを離れ、mRoboticsという会社を立ち上げています。mRoboticsは、3DRの製造設備を引き継ぎ、原点に立ち返ってDIYユーザー向けに高品質なPixhawkや後継機を製造・販売しています。この点、HobbyKing製の安物クローンに自社ロゴを貼り付けて販売している3DRとは対象的で、ユーザー視点で改良を続け、商品ラインナップや入手性などにも気を配って活動しているのは非常に好感が持てます。

ドローンコントローラー

仕事でドローンを扱う場合も、趣味のドローンを組む際や、ちょっと自作ロボットで遊んでみようと思いたった時も、プロジェクトを始める前にまず直面するのが、どのコントローラーを使うか、という非常に重要な決断です。

いわゆるフライトコントローラーや、オートパイロット、ロボットコントローラーと一般的に呼ばれるオンボードコンピューターは、ドローンの姿勢制御だけでなく、センサー入力やペイロードへの信号出力をはじめ、飛行中の機体のほぼ全てを司る、非常に重要なコンポーネントです。

このコントローラーを選択する際に誰もが感じるのが、選択肢が多すぎて困る、ということだと思います。一昔前には考えられなかったほど多くの選択肢に恵まれている、とも言えますが、あまりの情報量に頭を抱えてしまうユーザーが非常に多いのも事実です。また、情報がネットのあちこちに分散していて、なおかつものすごいスピードで技術が進化しているので、見つけた情報が古すぎて役に立たないどころが、却って有害でさえある、ということも多々あり、スマートに情報を精査するのは至難の業ですし、すべてのコントローラーの最新情報を網羅的に把握するのはほぼ不可能です。

そこで今回は、最もポピュラーなオープンソース系のフライトコントローラー、特にZenbotでも採用しているPixhawk系のコントローラーに絞って概要を解説したいと思います。

フライトコントローラー・オートパイロット・ロボットコントローラーとは?

定義はいろいろありますが、センサーやユーザーのインプットを処理して、外部のアクチュエーターに操作信号を送る小型コンピューター、と考えれば基本的にみな同じものと考えられます。マルチコプター専用のユニットや、各種ロボットに対応したもの、等いろいろありますが、最近流行りのオープンソースのコントローラーであれば、様々な用途や機体に流用可能です。

これらは一般的に、小型省電力のマイクロコントローラーや、シングルボードコンピューターをベースにし、SDカードやセンサー、各種入出力ポートを備えた小さなボックスで、センサーや外部入力データをI2C、SPI、CAN、シリアル等のポートで受け取り、外部機器にPWMや各種ポート経由で制御信号を送り、モーター、サーボ、その他のアクチュエーターを操作して、機体の姿勢制御等を行う、という基本形はどれも同じです。さらに、WiFi、Bluetooth、ZigBeeなどの通信リンクを経由して、リモート制御やモニタリングもできたり、ログを保存しておいて後で解析したりできるものが多いです。

しかし、性能や機能はそれぞれのコントローラーによって大きく異なります。最もシンプルなフライトコントローラーは、ジャイロと加速度センサーを使って機体を安定させるだけのものから、GPS、レーザーレンジファインダー、画像認識などを使って障害物を避けたり、複数機が連携しながら自律的に飛ぶものまで様々な種類があります。

ControllerComponents

フライトコントローラーのエコシステム

コントローラー本体

IMUやバロメーターなどの基本的なセンサーを搭載したオンボードコンピューターを指します。Controller

フライトコントローラーには大きく分けて、マイクロコントローラーをベースにしたのものと、Linux SBC (Single Board Computer/シングルボードコンピューター)をベースにしたものがあります。また、最近では、マイクロコントローラーベースのコントローラーで姿勢制御し、コンパニオンコンピューターとしてLinux SBCを接続し、そちらに画像処理などの高負荷処理を担当させる方式も増えてきました。

Zenbotでは、様々なコントローラーの中でも、世界最先端のPixhawk系のコントローラーを採用しています。
Pixhawk Hardware TypesController Hardware Types

フライトコントローラーハードウェア

ソフトウェア

ドローン向けのソフトウェアは、機体側で実行するフライトコントロールと、PCやタブレット上で実行するグランドコントロールの2つに大きく分けられます。

ControllerSoftware

オンボードフライトコントロールソフトウェア(ファームウェア)

ファームウェア は、機体上の制御コンピューター(オンボードフライトコントローラー)上で走るソフトウェアです。

Pixhawk系のハードウェアに対応したファームウェアは大きく分けPX4とArduPilotの2種類があります。どちらも長所がありますので、Zenbotでは、機体やアプリケーションに合わせて最適なスタックを使用しています。

グランドコントロールステーション (Ground Control Station / GCS)

Ground Control Stationは、PCやタブレット、スマートフォン上で実行され、ファームウェアの設定や機体の状態を監視したり、ウェイポイントの入力などを行うソフトウェアです。テレメトリーリンクを介して機体側と通信し、センサーの値をモニタリングしたり、機体にコマンドを送ったり、ログ解析を行ったりすることができます。

これも様々な種類があり、それぞれ長所がありますので、Zenbotではどれか一つに限定することはせず、使用するファームウェアや環境に最適なものを使用しています。

外部機器

フライトコントローラー以外に、外部センサー、パワーモジュール、RC送受信機、テレメトリー通信モジュール等が必要です。

外部機器がコントローラーを選択肢を限定することもあります。例えば、最新のLiDARやIRビーコンを使いたい場合、コントローラーやファームウェア側でセンサーに対応していなければ、そのセンサーを使うことはできません。特定のフライトコントローラー向けのドライバーしか提供していないセンサーや、サポート外になるセンサーも多いです。

しかし、Zenbotで採用しているオープンソース系のコントローラーの場合、共通の信号経路さえ確保できれば(I2C、CAN、シリアル等)、自分でドライバーを書く道は残されています。これはテレメトリーモジュールやジンバル、その他のアクチュエーター等も同じです。このあたりは、DJI等のクローズドなコントローラーではそもそも実装できないことが多い領域です。

Perihperals

オープン v.s. プロプライエタリ

オープンソースのフライトコントロールソフトウェアは多数あり、機能や性能が大幅に違います。クローズドな製品は、見た目はカッコ良く初心者には扱いやすいことが多いですが、機能的には劣ることが多く、また機能拡張したい、といった場合のメーカーサポートは殆ど期待できません。

オープンソースシステム

ここでいうオープンソースには、2つの意味があります。通常、オープンソースというとソフトウェアを連想しますが、特にドローン用のコントローラーは、ハードウェアもオープンソースで開発されるケースが増えてきています。この場合、回路図やPCBのレイアウトデータ等がオープンソースで公開され、自由に改変したり、改良を加えたりして自分で製造したり、PCB専門の会社に発注して作ってもらことができます。ドローン向けのフライトコントローラーの多くが、ハードウェアとソフトウェアの双方をオープンソースで展開しています。
PX4 vs ArduPilot

オープンソース・フライトコントローラーの例

部分的オープンソース

オープンとクローズドなソフトウェアとハードウェアを組み合わせたシステムも登場してきています。特に、インテル、クアルコム、テキサス・インスツルメンツといった半導体メーカーがIoTやドローン向けに大々的に参入してきており、これらメーカーが提供するボードはオープンな部分とクローズドな部分を兼ね備えたハイブリッドな構成であることが多いです。

Zenbotでは、これらの新しいフライトコントローラーも常に精査し、要件に合わせて採用しています。

完全クローズドシステム

DJIのようなクローズドなプロプライエタリシステムでは、ソフトウェアもハードウェアもソースは公開されていませんが、限定的な機能拡張を可能にするAPIが提供されていることが多いです。

カスタムドローン開発が専門のZenbotでは、拡張が難しいクローズドなシステムは基本的に使用しません。

ドローン練習風景 – シミュレーター編

Zenbot代表の千財です。

一応ラジコンヘリは12歳からやってますが、Zenbotのメンバーの中では、実は私が一番操縦下手なので影練です。

なにせZenbotの他のメンバーは、プロのドローン空撮パイロットと、ラジコン元全日本チャンピオン、という顔ぶれなので、ハードルが高いです。。。

最近はドローンを飛ばしたことすらない、というドローン会社の社長さんも多くてびっくりしますが、Zenbotは全員が、ハードの組み立て、ソフトの設定、操縦ができる、徹底した現場主義です。

ドローンの操縦スキルを鍛えるためには、アシスト無しのシングルローターヘリで練習するのが一番の早道です。RCヘリコプターは通常、ヨー軸を安定させるためのラダージャイロ以外は全てマニュアル操作ですので、RCヘリが飛ばせるようになると、姿勢制御を自動でやってくれるマルチコプターは、あくびが出るほど簡単に飛ばせるようになります。

逆に、マルチコプターから始めた人は、機械に頼った操縦しか身につかないので、いつまでたってもヘリコプターを飛ばせるようにはなりません。業務用のドローンをマニュアルモードで飛ばすことはありませんが、普段からマニュアルで練習しておくといざというときの対応力に差が出ます。

RCヘリのシミュレーターなら、天気が悪くてもちょっとした時間があれば、毎日練習できるので、オススメです。