MicoAir
Docs directory
Table of contents

MicoVIO ビジュアル慣性オドメトリ ユーザーマニュアル

製品概要

MicoVIO は、MicoAir Tech が設計・製造する単眼ビジュアル慣性オドメトリモジュールです。カメラ、IMU、ToF 測距を組み合わせ、GPS を利用できない環境や衛星信号の受信が制限される場所でも、相対位置、速度、姿勢をリアルタイムで出力します。ドローンのホバリング、定点保持、自律航法に必要な信頼性の高い状態情報を提供します。

高ダイナミックレンジのグローバルシャッターイメージセンサー、大口径広角レンズ、十分に最適化された画像処理アルゴリズムを採用しています。優れた環境適応性と低照度性能を備え、屋内外での急激な明るさの変化、テクスチャの乏しい面、光を反射する床面などの厳しい条件に対応します。ヨー軸回りの高速旋回やバンクを伴う周回飛行中も、安定したトラッキングを維持します。

MicoVIO

寸法はわずか 29.5 × 29.5 × 15 mm、重量は約 16 g。小型ながら高い性能を備え、さまざまなサイズのフレームに容易に組み込めます。シリアルインターフェースで MAVLink データを出力し、フライトコントローラーに接続して使用できます。ArduPilot や PX4 などのオープンソース自動操縦ファームウェアに対応し、GPS なしで精密なホバリングと安定した飛行を実現します。一般向け空撮ドローンに匹敵する操作感を提供します。

購入

仕様

MicoVIO の仕様

測位とトラッキング

  • 測位方式:カメラと IMU によるビジュアル慣性融合。内蔵 ToF 測距センサーが高さ情報を提供
  • 出力データ:相対位置、3 軸速度、姿勢、対地距離、測位品質情報
  • VIO 軌跡測位誤差:1%(代表値)[1]
  • VIO 更新レート:代表値 50 Hz。通常は 45–70 Hz で、シーンのテクスチャの複雑さによって変動
  • VIO トラッキング速度:対地高度 2 m で最大 10 m/s 程度。動作高度、照明、テクスチャ、運動状態によって変動
  • VIO 最大動作高度:30 m。有効高度はシーンのテクスチャ、照明、地面の反射率によって変動
  • 初期化に必要な最小対地距離:1 cm [2]
  • 最大動作傾斜角:60°
  • 最大追従角速度:300°/s
  • ローカルループ閉じ込み:初期設定で有効。画像の再マッチングにより、動的な飛行性能に影響を与えずにホバリングと定点保持の精度を向上
  • 起動時間:電源投入からデータ出力開始まで約 12 秒

カメラと測距

  • レンズ画角(FOV):対角 120°
  • 必要な周囲照度:>1 lux。優れた低照度性能
  • ToF 測距範囲:0.02–12 m。屋内または曇天の屋外で最大 12 m、強い日差しの屋外で約 8 m [3]
  • ToF 更新レート:43 Hz

通信インターフェースとプロトコル

  • 出力プロトコル:MAVLink 2
  • オドメトリメッセージ:ODOMETRY(メッセージ ID:331)
  • 測距メッセージ:DISTANCE_SENSOR(メッセージ ID:132)
  • 通信インターフェース:3.3 V LVTTL シリアル
  • ボーレート:921600、データ 8 ビット、パリティなし、ストップ 1 ビット(8N1)
  • コネクター:GH1.25-4P

電気・機械仕様

  • 電源電圧:5 V
  • 平均動作電流:約 200 mA
  • 標準消費電力:約 1 W
  • モジュール寸法:29.5 × 29.5 × 15 mm
  • モジュール重量:16 g
  • 取り付け:下向きにし、指定の向きで固定

MicoVIO の寸法

仕様に関する注記

注 1. 軌跡測位誤差の代表値 1% は、3 次元の絶対軌跡誤差(ATE)の二乗平均平方根(RMSE)を、基準軌跡の全長で除した値です。実際の性能は環境条件や運動条件によって異なります。

注 2. 初期化が許可される最小対地距離を示します。この距離での ToF 測距精度や測位精度を保証するものではありません。

注 3. 実際の測距性能は、周囲光、対象物の反射率、入射角、取り付け条件によって異なります。

特長

低コストと高性能の両立

ビジュアル慣性オドメトリ(VIO)は、GPS を利用できない環境で安定した飛行を実現する重要な技術で、高性能な一般向けドローンに広く採用されています。しかし、コスト、寸法、重量、組み込みの複雑さが、オープンソースのフライトコントローラーコミュニティ、DIY ユーザー、産業用途での画像による測位の普及を妨げてきました。従来のオープンソース VIO ソリューションは、高性能な機上コンピューターと複雑なセンサー構成を必要とすることが多く、小型化と低コスト化を両立するのは困難でした。

MicoAir Tech は、長年にわたるセンサー研究開発の経験を生かし、画像処理アルゴリズムの継続的な最適化とハードウェア・ソフトウェアの一体設計に取り組んできました。その結果、わずか 29.5 × 29.5 × 15 mm、約 16 g のモジュールに、一通りの画像測位機能を統合しました。手頃な価格、小型設計、優れた性能により、より多くのドローンで GPS なしのホバリング、定点保持、自律航法を実現できます。

優れた低照度性能と環境適応性

MicoVIO は、大型で高品質な高ダイナミックレンジのグローバルシャッターイメージセンサーを採用し、優れた低照度特性により薄暗い環境でも有効なトラッキングを維持します。急激な照明変化、強い光、テクスチャの乏しい面、反射する床面などの厳しい条件に対して十分に最適化されており、実環境の大半で安定して動作します。補助照明を使用すれば、トンネルや鉱山など、照明がなければ完全に暗い場所でも動作できます。

安定したトラッキングと推定の発散抑制

多くのオープンソース VIO プロジェクトは、実運用で推定が発散しやすく、実用システムへの導入が難しいという課題があります。これに対し MicoVIO は、大きな照明変化、強い衝撃、急激な姿勢変化などの条件でも、推定を発散させずに安定した動作を維持します。ドローンのヨー軸回りの高速旋回やバンクを伴う周回飛行中も、信頼性の高い画像トラッキングと測位を維持します。

ローカルループ閉じ込み

ループ閉じ込みはビジュアル SLAM システムの重要な機能ですが、高い計算能力を必要とするため、一般的な VIO システムでは利用できません。MicoVIO は、簡潔で効率的なアルゴリズム設計により、計算資源が限られた小型・低コストのプラットフォーム上でローカルループ閉じ込みを実現しています。過去に撮影した画像を再マッチングし、画像に基づく位置制約を与えることで、累積ドリフトを抑制し、ホバリングと定点保持の精度をさらに向上させます。

高精度な軌跡推定

MicoVIO は、相対位置、3 軸速度、姿勢をリアルタイムで出力します。安定したホバリングの要件を満たすとともに、軌道追従と自律航法のための正確な位置基準を提供します。軌跡測位誤差は代表値で 1% と、小型・低コストでありながら優れた軌跡再構成性能を備えています。フライトコントローラーのファームウェアが対応していれば、この高精度な軌跡推定を利用して GPS なしの自動帰還機能を実現できます。

軌跡測位結果

テストとパラメーター設定

モジュールの USB ポートで MicoVIO をコンピューターに接続し、MicoAssistant でテストとパラメーター設定を行います。

MicoAssistant: https://micoair.com/assistant/

通常、ドライバーのインストールは不要です。接続時は正しいポートを選択してください。USB 接続時のボーレートは任意です。

MicoAssistant

インターフェースのピン配置

MicoVIO の配線

フライトコントローラーとの配線図

配線図

取り付け

MicoVIO は下向きの取り付けにのみ対応しており、通常は機体の下面に取り付けます。モジュール上の矢印を機首方向に向けてください。取り付け方向(Yaw)は、MicoAssistant で、下から見て時計回りに 45° 刻みで調整できます。

取り付け方向

取り付け例

フライトコントローラーの設定

フライトコントローラーの設定には、グラフィカルな操作が可能な MicoConfigurator を推奨します。

ArduPilot

ArduPilot ファームウェアのバージョン >= 4.5.2 が必要です。

F405 MCU を搭載したフライトコントローラー(フラッシュメモリーが 2 MB 未満)は、通常、標準構成では外部ビジョンに対応していません。

ポート設定

SERIALn_BAUD  = 921
SERIALn_OPTIONS   1024 (バージョン 4.7 より前)
MAVn_OPTIONS = 2 (バージョン 4.7 より後)
SERIALn_PROTOCOL = 2

n は MicoVIO を接続したフライトコントローラーのポートによって異なります。物理ポートとシリアルポート番号の対応は、フライトコントローラーのマニュアル、または MicoConfigurator のポート設定画面で確認してください。

ArduPilot のポート設定

ビジョンセンサーの設定

VISO_TYPE = 3
VISO_YAW_M_NSE = 0.1
その他の設定はすべて初期値のままにします。変更を反映するにはフライトコントローラーを再起動してください。

ビジョンセンサーの設定

距離センサーの設定

RNGFND1_TYPE = 10
(n は使用する物理ポートによって異なります。)
フライトコントローラーを再起動するか、パラメーターを再読み込みしてください。バージョン 4.7.0 より後では単位が m に変わる点に注意してください。
RNGFND1_MAX_CM = 1200
RNGFND1_MIN_CM = 1
RNGFND1_ORIENT = 25

距離センサーの設定

EKF 設定

EK3_SRC1_POSXY = 6: ExternalNav
EK3_SRC1_POSZ = 2: RangeFinder
EK3_SRC1_VELXY = 6: ExternalNav
EK3_SRC1_VELZ = 6: ExternalNav
EK3_SRC1_YAW = 6: ExternalNav

EK3_SRC1_YAW は 1: Compass に設定することもできます。ただし、VISO_TYPE = 3 であることを確認してください。

ArduPilot の EKF 設定

PX4

ポート設定

MAV_1_CONFIG   TELEM n
フライトコントローラーを再起動してください。
MAV_1_MODE = Onboard
MAV_1_FORWARD = Disabled
SER_TELn_BAUD   921600 8N1

n は MicoVIO を接続したフライトコントローラーのポートによって異なります。物理ポートとシリアルポート番号の対応は、フライトコントローラーのマニュアル、または MicoConfigurator のポート設定画面で確認してください。

PX4 のポート設定

EKF 設定

EKF2_EV_CTRL = 9
EKF2_HGT_REF = 2: Range sensor

PX4 の EKF 設定

取り付け位置のオフセットパラメーター

MicoVIO モジュールをドローンの回転中心以外に取り付ける場合は、フライトコントローラーで X/Y/Z 軸の位置オフセットを正しく設定してください。

オフセットが未設定または不適切な場合、動的な飛行中の安定性や測位精度に影響することがあります。特にその場で機体を回転させると、定点を維持できずにドリフトしたり、本来の回転中心の周囲を回ったりする場合があります。

MicoVIO の取り付け位置オフセット