MicoAir
Docs directory
Table of contents

MicoVIO — Benutzerhandbuch zur visuell-inertialen Odometrie

Produktübersicht

MicoVIO ist ein von MicoAir Tech entwickeltes und gefertigtes Modul für monokulare visuell-inertiale Odometrie. Es kombiniert eine Kamera, eine IMU und ToF-Abstandsmessung, um in Umgebungen ohne GPS oder mit eingeschränktem Satellitenempfang relative Position, Geschwindigkeit und Lage in Echtzeit auszugeben. Damit liefert es zuverlässige Zustandsinformationen für Schwebeflug, Positionshaltung und autonome Navigation von Drohnen.

Das Modul verwendet einen Global-Shutter-Bildsensor mit hohem Dynamikumfang, ein lichtstarkes Weitwinkelobjektiv und umfassend optimierte Bildverarbeitungsalgorithmen. Es bietet eine hohe Anpassungsfähigkeit an die Umgebung und sehr gute Leistung bei schwachem Licht. Auch schwierige Bedingungen wie abrupte Helligkeitswechsel zwischen Innen- und Außenbereichen, strukturarme Oberflächen und reflektierende Böden werden bewältigt. Selbst bei schnellen Drehungen um die Gierachse und geneigten Kreisflugmanövern bleibt die Bewegungsverfolgung zuverlässig.

MicoVIO

Mit Abmessungen von nur 29.5 × 29.5 × 15 mm und einem Gewicht von etwa 16 g verbindet MicoVIO eine kompakte Bauform mit hoher Leistung und lässt sich leicht in Rahmen unterschiedlicher Größe integrieren. Es gibt MAVLink-Daten über eine serielle Schnittstelle aus und kann nach dem Anschluss an einen Flugcontroller verwendet werden. Es unterstützt Open-Source-Autopilot-Firmware wie ArduPilot und PX4 und ermöglicht präzisen Schwebeflug sowie stabilen Flug ohne GPS — mit einem Steuerungserlebnis, das mit handelsüblichen Kameradrohnen vergleichbar ist.

Kaufen

Technische Daten

Technische Daten von MicoVIO

Positionierung und Bewegungsverfolgung

  • Positionierungsverfahren: visuell-inertiale Fusion von Kamera und IMU; der integrierte ToF-Abstandssensor liefert Höheninformationen
  • Ausgabedaten: relative Position, Geschwindigkeit auf drei Achsen, Lage, Abstand zum Boden und Informationen zur Positionierungsqualität
  • VIO-Trajektorienpositionsfehler: 1% (typisch) [1]
  • VIO-Aktualisierungsrate: typisch 50 Hz; üblicherweise 45–70 Hz, abhängig von der Komplexität der Bildstrukturen in der Szene
  • VIO-Verfolgungsgeschwindigkeit: typisch bis zu 10 m/s bei 2 m Höhe über dem Boden; abhängig von Betriebshöhe, Beleuchtung, Oberflächenstruktur und Bewegung
  • Maximale VIO-Betriebshöhe: 30 m; die nutzbare Höhe hängt von Bildstrukturen, Beleuchtung und Bodenreflexion ab
  • Mindestbodenabstand für die Initialisierung: 1 cm [2]
  • Maximaler Neigungswinkel im Betrieb: 60°
  • Maximale verfolgbare Winkelgeschwindigkeit: 300°/s
  • Lokaler Schleifenschluss: standardmäßig aktiviert; verbessert Schwebeflug und Positionshaltung durch erneuten Bildabgleich, ohne die dynamischen Flugeigenschaften zu beeinträchtigen
  • Startzeit: etwa 12 Sekunden vom Einschalten bis zum Beginn der Datenausgabe

Kamera und Abstandsmessung

  • Sichtfeld des Objektivs (FOV): 120° diagonal
  • Erforderliche Umgebungsbeleuchtungsstärke: >1 lux, mit hoher Leistungsfähigkeit bei schwachem Licht
  • ToF-Messbereich: 0.02–12 m; bis zu 12 m in Innenräumen oder im Freien bei bedecktem Himmel, etwa 8 m im Freien bei starkem Sonnenlicht [3]
  • ToF-Aktualisierungsrate: 43 Hz

Kommunikationsschnittstelle und Protokoll

  • Ausgabeprotokoll: MAVLink 2
  • Odometrienachricht: ODOMETRY (Nachrichten-ID: 331)
  • Abstandsnachricht: DISTANCE_SENSOR (Nachrichten-ID: 132)
  • Kommunikationsschnittstelle: seriell, 3.3 V LVTTL
  • Baudrate: 921600; 8 Datenbits, keine Parität, 1 Stoppbit (8N1)
  • Steckverbinder: GH1.25-4P

Elektrische und mechanische Daten

  • Versorgungsspannung: 5 V
  • Mittlerer Betriebsstrom: etwa 200 mA
  • Typische Leistungsaufnahme: etwa 1 W
  • Modulabmessungen: 29.5 × 29.5 × 15 mm
  • Modulgewicht: 16 g
  • Montage: nach unten gerichtet und in der vorgegebenen Ausrichtung befestigt

Abmessungen von MicoVIO

Hinweise zu den technischen Daten

Hinweis 1. Der typische Trajektorienpositionsfehler von 1% wird als Wurzel des mittleren quadratischen absoluten Trajektorienfehlers in drei Dimensionen (ATE RMSE), geteilt durch die gesamte Länge der Referenztrajektorie, berechnet. Die tatsächliche Leistung hängt von den Umgebungs- und Bewegungsbedingungen ab.

Hinweis 2. Dies ist der Mindestbodenabstand, bei dem eine Initialisierung zulässig ist. Die Genauigkeit der ToF-Abstandsmessung oder Positionierung bei diesem Abstand wird dadurch nicht garantiert.

Hinweis 3. Die tatsächliche Messleistung hängt von Umgebungslicht, Reflexionsvermögen des Ziels, Einfallswinkel und Montagebedingungen ab.

Funktionen und Eigenschaften

Niedrige Kosten und hohe Leistung

Visuell-inertiale Odometrie (VIO) ist eine Schlüsseltechnologie für stabilen Flug ohne GPS und wird in hochwertigen Endverbraucherdrohnen breit eingesetzt. Kosten, Größe, Gewicht und Integrationsaufwand erschweren jedoch weiterhin den Einsatz visueller Positionierung in der Open-Source-Flugcontroller-Community, bei DIY-Projekten und in industriellen Anwendungen. Herkömmliche Open-Source-VIO-Lösungen benötigen häufig leistungsstarke Bordcomputer und komplexe Sensorkonfigurationen. Kompakte Abmessungen und niedrige Kosten lassen sich damit nur schwer gleichzeitig erreichen.

Auf Basis langjähriger Erfahrung in der Sensorforschung und -entwicklung hat MicoAir Tech seine Bildverarbeitungsalgorithmen kontinuierlich optimiert und Hard- und Software gemeinsam entwickelt. So konnten vollständige visuelle Positionierungsfunktionen in ein nur 29.5 × 29.5 × 15 mm großes und etwa 16 g schweres Modul integriert werden. Durch den günstigen Preis, die kompakte Bauweise und die hohe Leistung ermöglicht MicoVIO mehr Drohnen Schwebeflug, Positionshaltung und autonome Navigation ohne GPS.

Hervorragende Leistung bei schwachem Licht und hohe Umweltanpassung

MicoVIO verwendet einen hochwertigen, großformatigen Global-Shutter-Bildsensor mit hohem Dynamikumfang und sehr guten Schwachlichteigenschaften. Dadurch bleibt die Bewegungsverfolgung auch in schwach beleuchteten Umgebungen wirksam. Die umfassende Optimierung für abrupte Beleuchtungswechsel, starkes Licht, strukturarme Oberflächen und reflektierende Böden ermöglicht einen stabilen Betrieb in der überwiegenden Mehrheit realer Einsatzsituationen. Mit Zusatzbeleuchtung kann das Modul auch in ansonsten vollständig dunklen Umgebungen wie Tunneln und Bergwerken arbeiten.

Robuste Verfolgung und Widerstandsfähigkeit gegen Schätzdivergenz

Bei den meisten Open-Source-VIO-Projekten neigt die Zustandsschätzung im praktischen Einsatz stark zur Divergenz, was einen produktiven Einsatz erschwert. MicoVIO arbeitet dagegen auch bei starken Beleuchtungsänderungen, heftigen Stößen und schnellen Lageänderungen stabil, ohne dass die Schätzung divergiert. Auch bei schnellen Drehungen der Drohne um die Gierachse und geneigten Kreisflugmanövern bleiben visuelle Verfolgung und Positionierung zuverlässig.

Lokaler Schleifenschluss

Der Schleifenschluss ist eine wichtige Funktion visueller SLAM-Systeme, stellt jedoch hohe Anforderungen an die Rechenleistung und ist in VIO-Systemen üblicherweise nicht verfügbar. Durch schlanke, effiziente Algorithmen realisiert MicoVIO einen lokalen Schleifenschluss auf einer kompakten, kostengünstigen Plattform mit begrenzten Rechenressourcen. Der erneute Abgleich bereits aufgenommener Bilder liefert visuelle Positionsbedingungen, die akkumulierte Drift begrenzen und die Genauigkeit von Schwebeflug und Positionshaltung weiter verbessern.

Präzise Trajektorienschätzung

MicoVIO gibt relative Position, Geschwindigkeit auf drei Achsen und Lage in Echtzeit aus. Es erfüllt damit die Anforderungen an einen stabilen Schwebeflug und liefert gleichzeitig präzise Positionsreferenzen für Trajektorienverfolgung und autonome Navigation. Mit einem typischen Trajektorienpositionsfehler von 1% ermöglicht es trotz geringer Größe und niedriger Kosten eine hervorragende Rekonstruktion der Flugbahn. Diese präzise Trajektorienschätzung kann eine automatische Rückkehr zum Startpunkt ohne GPS ermöglichen, sofern die Flugsteuerungsfirmware diese Funktion unterstützt.

Ergebnisse der Trajektorienpositionierung

Tests und Parametereinstellung

Verbinden Sie MicoVIO über den USB-Anschluss des Moduls mit einem Computer. Verwenden Sie anschließend MicoAssistant für Tests und zur Parametereinstellung.

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

Eine Treiberinstallation ist normalerweise nicht erforderlich. Wählen Sie beim Verbinden den richtigen Port aus; bei der USB-Verbindung kann die Baudrate beliebig gewählt werden.

MicoAssistant

Pinbelegung der Schnittstelle

Verkabelung von MicoVIO

Anschlussplan für den Flugcontroller

Anschlussplan

Einbau

MicoVIO unterstützt ausschließlich die nach unten gerichtete Montage und wird üblicherweise an der Unterseite des Fluggeräts angebracht. Der Pfeil auf dem Modul muss zur Nase zeigen. Die Montageausrichtung (Yaw) lässt sich in MicoAssistant in Schritten von 45° im Uhrzeigersinn einstellen, von unten betrachtet.

Montageausrichtung

Montagebeispiel

Konfiguration des Flugcontrollers

Für die grafische Konfiguration des Flugcontrollers empfehlen wir MicoConfigurator.

ArduPilot

Die ArduPilot-Firmwareversion muss >= 4.5.2 sein.

Flugcontroller mit F405-MCU und weniger als 2 MB Flash-Speicher unterstützen externe Vision normalerweise nicht in der Standardkonfiguration.

Portkonfiguration

SERIALn_BAUD  = 921
SERIALn_OPTIONS   1024 (vor Version 4.7)
MAVn_OPTIONS = 2 (nach Version 4.7)
SERIALn_PROTOCOL = 2

n hängt davon ab, an welchen Port des Flugcontrollers MicoVIO angeschlossen ist. Die Zuordnung physischer Anschlüsse zu seriellen Portnummern finden Sie im Handbuch des Flugcontrollers oder auf der Seite für Porteinstellungen in MicoConfigurator.

ArduPilot-Portkonfiguration

Konfiguration des Vision-Sensors

VISO_TYPE = 3
VISO_YAW_M_NSE = 0.1
Belassen Sie alle anderen Einstellungen auf den Standardwerten. Starten Sie den Flugcontroller neu, um die Änderungen zu übernehmen.

Konfiguration des Vision-Sensors

Konfiguration des Entfernungssensors

RNGFND1_TYPE = 10
(n hängt vom verwendeten physischen Port ab.)
Starten Sie den Flugcontroller neu oder laden Sie die Parameter neu. Beachten Sie: Nach Version 4.7.0 ändert sich die Einheit in m.
RNGFND1_MAX_CM = 1200
RNGFND1_MIN_CM = 1
RNGFND1_ORIENT = 25

Konfiguration des Entfernungssensors

EKF-Konfiguration

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 kann alternativ auf 1: Compass gesetzt werden. Stellen Sie dabei sicher, dass VISO_TYPE = 3 gilt.

ArduPilot-EKF-Konfiguration

PX4

Portkonfiguration

MAV_1_CONFIG   TELEM n
Starten Sie den Flugcontroller neu.
MAV_1_MODE = Onboard
MAV_1_FORWARD = Disabled
SER_TELn_BAUD   921600 8N1

n hängt davon ab, an welchen Port des Flugcontrollers MicoVIO angeschlossen ist. Die Zuordnung physischer Anschlüsse zu seriellen Portnummern finden Sie im Handbuch des Flugcontrollers oder auf der Seite für Porteinstellungen in MicoConfigurator.

PX4-Portkonfiguration

EKF-Konfiguration

EKF2_EV_CTRL = 9
EKF2_HGT_REF = 2: Range sensor

PX4-EKF-Konfiguration

Parameter für den Montageversatz

Wenn das MicoVIO-Modul nicht im Rotationszentrum der Drohne montiert ist, müssen die X/Y/Z-Positionsversätze im Flugcontroller korrekt eingestellt werden.

Falsche oder fehlende Versatzeinstellungen können die Flugstabilität und die Positionierungsgenauigkeit bei dynamischen Manövern beeinträchtigen. Insbesondere bei einer Drehung auf der Stelle kann die Drohne abdriften oder um ihr vorgesehenes Rotationszentrum kreisen, statt eine stabile Position zu halten.

Montageversatz von MicoVIO