D.R.O.L. LogoD.R.O.L.DRONE RECON OPERATION LAB
🌐 DE
Sprache / Language

Automatische Übersetzung durch Google; technische Angaben anhand der Originalquellen prüfen.

Automatic translation by Google; technical content is not professionally verified.

Menü ☰
Zum Inhalt
D.R.O.L.

Start / Werkstatt / Vorhandene Drohne

PRAXIS · SOFTWARE · ENTWICKLUNG

Mit der vorhandenen Drohne beginnen

Von der Speicherkarte zur lokalen Auswertung – und von dort zur Frage, ob eine Android-App, Telemetrie oder eigene Flugsoftware für Ihr konkretes Modell zugänglich ist.

Stand 5. November 2026. Technische Quellen wurden gesichtet. Das Bildinventar unten wurde mit synthetischen Testbildern unter Python 3 und Pillow 13.0.0 ausgeführt; Drohne, DJI-SDK und Flugfunktionen wurden nicht praktisch getestet.

1. Was funktioniert ohne Zugriff auf die Flugsoftware?

Für die Auswertung bereits gespeicherter Bilder brauchen Sie zunächst weder ein SDK noch eine neue Drohne: Kopieren Sie Aufnahmen von der Speicherkarte in einen lokalen Arbeitsordner, lassen Sie die Originale unverändert und arbeiten Sie mit Kopien. Prüfen Sie Auflösung, Blickwinkel, Datum und ob GPS-Daten vorhanden sind. Ein Bild mit Koordinate ist nicht automatisch lagegenau oder vermessungstauglich.

Aus einer Bildserie können je nach Qualität und Überlappung mit OpenDroneMap Orthofotos und 3D-Produkte entstehen. Für thermische Messungen werden geeignete radiometrische Daten, korrekte Aufnahmebedingungen und fachliche Bewertung benötigt; ein normales JPG ist kein Thermometer.

Bilder nach dem Flug

Originale → Arbeitskopie → Inventar → Sichtung oder KI → fachliche Prüfung → Bericht. Vorteil: wenig Abhängigkeit vom Hersteller.

Livebild während des Fluges

Erfordert einen tatsächlich zugänglichen Videoweg. Ob Fernsteuerung, App oder SDK einen Stream bereitstellen, ist für die konkrete Kombination zu prüfen.

2. Tutorial: Lokales Bildinventar erstellen

Praktisch getestet: Python 3.12.14 mit Pillow 13.0.0, synthetische JPEG- und PNG-Dateien sowie eine beschädigte Datei. Keine Drohnenhardware getestet.

Ergebnis: Eine CSV-Liste mit Dateiname, Pixelgröße, vorhandener Aufnahmezeit und einem Hinweis, ob ein GPS-EXIF-Eintrag vorhanden ist. Die Anwendung liest keine Koordinaten aus und sendet keine Daten ins Internet. Aufnahmedaten können fehlen oder von der Kamerauhr abhängen.

Voraussetzungen und Installation

Python 3.11 oder neuer, Terminal und Internet für die einmalige Installation. Erstellen Sie einen neuen Arbeitsordner und darin den Unterordner aufnahmen; legen Sie Bildkopien hinein. Öffnen Sie das Terminal im Arbeitsordner.

python3 -m venv .venv
source .venv/bin/activate
python -m pip install pillow==13.0.0

Unter Windows im selben Arbeitsordner stattdessen py -m venv .venv und anschließend .venv\Scripts\activate in der Eingabeaufforderung verwenden; danach python -m pip install pillow==13.0.0. Pillow-Version und Systemvoraussetzungen: offizielle Installation.

Programm

Den folgenden Code als bildinventar.py im Arbeitsordner speichern und mit python bildinventar.py starten.

from pathlib import Path
from PIL import Image, ExifTags
import csv

ordner = Path('aufnahmen')
if not ordner.is_dir():
    raise SystemExit('Ordner aufnahmen fehlt')

with Path('bildinventar.csv').open('w', encoding='utf-8-sig', newline='') as datei:
    spalten = ['datei', 'breite_px', 'hoehe_px', 'aufnahmezeit', 'gps_vorhanden', 'status']
    writer = csv.DictWriter(datei, fieldnames=spalten)
    writer.writeheader()
    for pfad in sorted(ordner.iterdir()):
        if not pfad.is_file() or pfad.suffix.lower() not in ('.jpg', '.jpeg', '.tif', '.tiff', '.png'):
            continue
        # Tabellenprogramme koennen Dateinamen als Formeln interpretieren.
        name = pfad.name
        if name.lstrip(' \t\r\n').startswith(('=', '+', '-', '@')):
            name = "'" + name
        try:
            with Image.open(pfad) as bild:
                exif = bild.getexif()
                details = exif.get_ifd(ExifTags.IFD.Exif) if exif else {}
                writer.writerow(dict(datei=name, breite_px=bild.width, hoehe_px=bild.height,
                    aufnahmezeit=details.get(36867, '') or exif.get(306, ''),
                    gps_vorhanden='ja' if exif.get(34853) else 'nein', status='OK'))
        except (OSError, ValueError, TypeError, SyntaxError) as fehler:
            writer.writerow(dict(datei=name, breite_px='', hoehe_px='', aufnahmezeit='', gps_vorhanden='', status='nicht lesbar'))
print('Fertig: bildinventar.csv')

Kontrolle: bildinventar.csv liegt danach im Arbeitsordner und kann in einer Tabellenkalkulation geöffnet werden. Das Programm überschreibt eine bereits vorhandene Datei dieses Namens. Beschädigte Dateien werden als „nicht lesbar“ aufgeführt. Dateinamen, die wie Tabellenformeln beginnen, werden für den CSV-Export entschärft. Die Originalbilder bleiben unverändert.

Typische Fehler: „Ordner aufnahmen fehlt“: Namen und Arbeitsverzeichnis prüfen. „No module named PIL“: virtuelle Umgebung aktivieren und Pillow darin installieren. Leere Aufnahmezeit oder „GPS nein“ bedeutet, dass kein entsprechender EXIF-Wert erkannt wurde; andere Hersteller-Metadaten werden nicht vollständig ausgewertet.

Quelle: Pillow: EXIF auslesen. Datenschutz: Bildstandort und Aufnahmezeit können sensible Informationen enthalten; vor Weitergabe prüfen.

3. DJI Mini 3 und Mini 3 Pro: Was ist belegt?

DJI führt Mini 3 und Mini 3 Pro auf der offiziellen Liste der vom Mobile SDK unterstützten Produkte. Das ist ein wichtiger Ansatzpunkt für Android-Entwicklung, aber noch kein Beweis, dass jede Funktion mit jeder Fernsteuerung oder Firmware verfügbar ist. Das DJI-SDK macht eine DJI-Drohne nicht automatisch zu einer MAVLink-Drohne.

Prüfstatus: Herstellerdokumentation gesichtet; keine eigene Installation, keine verifizierte Kompatibilitätskombination und kein Flugtest.
  1. Exaktes Modell, Fernsteuerung, Firmware, Android-Version und verwendete SDK-Version festhalten.
  2. In der DJI-Mobile-SDK-Übersicht und der zugehörigen Dokumentation die aktuelle Kompatibilität und Voraussetzungen nachsehen.
  3. Die offizielle Android-Beispielanwendung und Registrierungsvorgaben lesen. Abhängig von der Fernsteuerung wird die App auf einem verbundenen Mobilgerät oder auf einer unterstützten Fernsteuerung ausgeführt; nicht jede Steuerung erlaubt die Installation eigener Apps.
  4. Zuerst Verbindung und Telemetrie prüfen. Videozugriff, Fotodownload und Virtual Stick jeweils separat dokumentieren. Virtual-Stick-Dokumentation beachten; Funktionen und Sicherheitsverhalten können von Modell und Firmware abhängen.
  5. Eine eigene Kompatibilitätsaussage erst nach dokumentiertem Test mit der konkreten Kombination treffen.

Wichtig: Das Android-Gerät, die SDK-Version, die Verbindung und die Fernsteuerung müssen zur dokumentierten Kombination passen.

4. Vier realistische Integrationspfade

Consumer-Drohne + PC

Ideal für den Einstieg mit bestehenden Bildern. OpenCV kann Bilder verarbeiten, ein Modell kann Hinweise markieren; Menschen prüfen die Ergebnisse.

OpenCV-Einstieg

Consumer-Drohne + SDK

Wenn Hersteller und Konfiguration es zulassen: App mit dokumentierter API entwickeln. Zugriff auf Daten und Flugsteuerung sind getrennte Prüfungen.

Softwarewissen

Offene Plattform + Companion

Ein ArduPilot- oder PX4-Controller übernimmt die Stabilisierung. Ein Raspberry Pi oder Jetson bearbeitet Kameradaten; MAVLink verbindet geeignete Komponenten.

ArduPilot Companion

Experimentelle WLAN-Drohne

Ein Community-Projekt kann einen Ansatz für eine bestimmte Hardware liefern. Protokollfamilie, Firmware und Videoformat bleiben konkret zu prüfen; ein fremdes Repository ist kein eigener Test.

Forschungsprojekte

5. Nächster Schritt: Simulation statt Flugrisiko

ArduPilot SITL und PX4 SITL führen die Flugsoftware auf einem Entwicklungsrechner aus. So lassen sich Konfiguration und Telemetrie untersuchen, bevor Hardware hinzukommt. Simulationsergebnisse ersetzen keine Tests mit realen Sensoren, Funkverbindungen und Sicherheitsfunktionen.

Für ArduPilot führt die SITL-Anleitung nach Einrichtung der Build-Umgebung unter anderem folgenden Start auf:

sim_vehicle.py -v copter --console --map -w

Achtung: -w setzt die simulierten Parameter auf Standardwerte zurück. Dieser dokumentierte Start wurde für D.R.O.L. hier nicht selbst ausgeführt; Version und Umgebung müssen vor Nutzung geprüft werden.

PX4 dokumentiert für eine eingerichtete Umgebung den Start make px4_sitl gz_x500. Hinweise zur Einrichtung und unterstützten Ubuntu-Versionen stehen in der PX4-1.16-Anleitung; den Simulationsleitfaden passend zur eigenen Version wählen. MAVSDK-Schnittstellen ändern sich: Ältere Python-Beispiele und die ab Version 4 dokumentierte Python-API nicht ungeprüft mischen. MAVSDK Python QuickStart.

6. Checkliste für das eigene Gerät

  1. Modellvariante, Serienstand, Fernsteuerung und Firmware dokumentieren.
  2. Eigene Aufnahmen und Metadaten exportieren; Originale sichern.
  3. Herstellerdokumentation für SDK, Android und genaue Steuerungsversion prüfen.
  4. Bildzugang, Telemetrie, Missionsfunktionen und Steuerung getrennt bewerten.
  5. Softwareversion, Prüfdaten, Quelle und Ergebnis festhalten: dokumentiert, experimentell, praktisch getestet oder unbekannt.
  6. Vor realen Versuchen geltende Flugregeln, Versicherung, Datenschutz und Sicherheitskonzept klären.

Zur Entwickler-Werkstatt · Drohnenkatalog · FAQ