Assistenzgerät für Suchhunde mit GPS-Sensor und Multimediaübertragung
Kunde
Ein europäisches Software- und Hardwareunternehmen mit Schwerpunkt auf IoT-Geräten.
Herausforderung
Der Kunde beauftragte uns mit der Fertigstellung seines Produkts – eines Assistenzgeräts für Suchhunde mit GPS-Sensor und Multimediaübertragung.
Unsere Aufgabe bestand darin, eine mobile Android-App zu entwickeln und die Übertragung von Audio- und Videostreams zwischen einem Smartphone, einem Server und einem tragbaren Gerät für Suchhunde sicherzustellen. Das Gerät sollte die Position des Hundes bestimmen, eine visuelle und akustische Überwachung ermöglichen, indem es Daten über eine mobile Internetverbindung an einen Cloud-Server überträgt, und Befehle des Hundeführers empfangen.
Lösung
Wir entwickelten eine Android-App zur Kommunikation mit einem tragbaren Gerät, das Suchhunde an der Brust tragen. Das Gerät besteht aus einer Kamera, einem Mikrofon, einem Lautsprecher und einem GPS-Sensor in einem kompakten Gehäuse. So können die Hundeführer sehen und hören, was in der Umgebung der Hunde geschieht, und mit ihnen kommunizieren.
Darüber hinaus stellte unser Entwicklungsteam die Multimediaübertragung sicher. Zur Fernsteuerung und Überwachung des Geräts verwendeten wir MQTT, ein schlankes Signalisierungsprotokoll, das für zuverlässige Verbindungen in Netzwerken mit begrenzten Ressourcen entwickelt wurde.
MQTT ermöglicht es dem Gerät, den Server über den Verbindungsaufbau zu informieren und seinen Status zu melden. Umgekehrt kann der Server das Gerät steuern, beispielsweise die Streamingübertragung starten oder stoppen. QoS 2 gewährleistet, dass jede Nachricht zuverlässig und genau einmal zugestellt wird.

Abbildung 1. Kommunikation zwischen Server und Gerät über MQTT
Auf der Geräteseite wird der Videostream der Kamera an den MJPEG-Encoder und der Audiostream des Mikrofons an den MP3-Encoder weitergeleitet.
Wir entschieden uns für den MJPEG-Codec, um einen stabilen Gerätebetrieb auch bei instabiler mobiler Internetverbindung sicherzustellen. Wenn die Netzwerkbandbreite sinkt, werden weiterhin vollständige Einzelbilder übertragen, lediglich die Bildrate (FPS) verringert sich.
Das MP3-Format wurde aufgrund seines guten Verhältnisses zwischen Audioqualität und Bitrate gewählt. Für die Kodierung und Dekodierung der Video- und Audiostreams verwendeten wir FFmpeg.
Abbildung 2. Kommunikation zwischen mobilem Client und Gerät
Unsere Ingenieure entschieden sich für RTP zur Übertragung von Audio- und Videodaten in Echtzeit. Das Protokoll bietet Mechanismen zum Ausgleich von Jitter sowie zur Erkennung von Paketverlusten und Paketen, die in falscher Reihenfolge eintreffen. RTP wurde zusammen mit dem RTP Control Protocol (RTCP) eingesetzt. Während RTP die Medienstreams (z. B. Audio und Video) übertrug, überwachte RTCP die Übertragungsstatistiken und die Dienstgüte (QoS) und unterstützte die Synchronisierung mehrerer Streams.
Das Gerät überträgt Video- und Audiostreams an den Server. Zusätzlich kann der Benutzer einen Audiokanal zum Gerät aufbauen. Für die Übertragung der Streams zwischen dem mobilen Client und dem Server verwendeten wir WebRTC (gemäß den Anforderungen des Kunden).
Wenn die Netzwerkbandbreite für die Videoübertragung nicht ausreicht, empfängt der Server einen Videostream mit niedriger Bildrate (sogar mit weniger als 1 FPS). Um den Verlust von Videodaten zu vermeiden, kann das Gerät solche Situationen erkennen und Videos im internen Speicher aufzeichnen. Sobald wieder ausreichend Bandbreite verfügbar ist, lädt es die lokal gespeicherten Aufnahmen über HTTPS auf den Server hoch.
Im Projekt eingesetzte Technologien:
|
|
Geschäftlicher Nutzen
Der Kunde erhielt ein neues Produkt für seine Zielgruppe. Die Lösung kann die Positionskoordinaten des Hundes bestimmen, Befehle des Hundeführers empfangen sowie Video- und Audiodaten über eine mobile Internetverbindung an einen Cloud-Server übertragen.









































