Entwicklung einer App für tragbare Laborgeräte auf mehreren Plattformen

Eine Softwarelösung für tragbare Laborgeräte, die auf Android, iOS, Windows und Linux die Gerätesteuerung, Erfassung von Sensordaten, Visualisierung von Experimenten in Echtzeit und erweiterte Analysefunktionen vereint.

Entwicklung einer App für tragbare Laborgeräte auf mehreren Plattformen hero background

Über unseren Kunden

Unser Kunde ist auf Geräte für die Feldforschung und auf Bildungstechnologie spezialisiert. Das Unternehmen stellt kompakte, tragbare Labore mit integrierten Sensoren und universellen Erweiterungsanschlüssen für Umweltanalysen sowie chemische und physikalische Untersuchungen her.

Um den Einsatz dieser Labore in verschiedenen Forschungs- und Bildungseinrichtungen zu ermöglichen, benötigte der Kunde eine vielseitige App für tragbare Laborgeräte, die sowohl auf mobilen Geräten als auch auf Desktop-Systemen läuft.

  • Region: Europa
  • Branche: Hardware und IoT / Laborgeräte
  • Zeitrahmen: ca. 2 Jahre
Über unseren Kunden

Herausforderung

Herkömmliche Laborsoftware besteht häufig aus separaten Anwendungen für die mobile Feldforschung und die Laboranalyse am Desktop. Dies führt zu Kompatibilitätsproblemen und höheren Entwicklungskosten. Die wichtigsten Herausforderungen des Projekts waren:

  • Unterstützung von Android, iOS, Windows und Linux mit einer gemeinsamen Codebasis
  • Kommunikation mit Laborgeräten über Bluetooth und USB
  • Umgehung von BlueZ- und USB-Einschränkungen durch eine eigene Lösung für die Kommunikation
  • Gleichzeitige Verarbeitung mehrerer Datenströme bei wechselnder Konfiguration der Sensoren
  • Unterstützung der Touch-Bedienung auf Mobilgeräten und der präzisen Maussteuerung am Desktop
  • Erweiterte Desktop-Funktionen für Notizen, Markierungen in Diagrammen und statistische Analysen
  • Erkennung von Trends, Anomalien und wesentlichen Veränderungen in hochfrequenten Sensordaten
  • Export, Import und Reproduktion vollständiger Experimente einschließlich Daten, Diagrammen, Anmerkungen und Metadaten
Herausforderung

Hauptziele

Um ein digitales Ökosystem für die tragbaren Laborgeräte des Kunden zu schaffen, legten wir folgende Ziele fest:

  • Entwicklung einer App für Android, iOS, Windows und Linux mit einer gemeinsamen Flutter-Codebasis
  • Zuverlässige Verbindung mit Laborgeräten über Bluetooth Low Energy und USB auf mobilen Geräten und PCs
  • Flexible Verwaltung von IoT-Sensoren und Erfassung von Messdaten in Echtzeit
  • Entwicklung eines Assistenten zur Auswahl der Sensoren sowie zur Festlegung der Anzahl der Messwerte und der Messintervalle
  • Schnelle, responsive Diagramme zur Darstellung mehrerer Messgrößen in Echtzeit
  • Integration KI-gestützter Analysen zur Auswertung und Interpretation von Messdiagrammen
  • Erweiterte Desktop-Funktionen für Notizen, eigene Markierungen und statistische Analysen
  • Import und Export vollständiger Experimente mit Messdaten, Metadaten, Bildern und Notizen
  • Wiederholung von Messungen mit einem Klick zur Prüfung von Gerätetoleranzen und der Streuung von Messwerten
Hauptziele

Projektübersicht

Mit Flutter entwickelten wir eine leistungsstarke App für tragbare Laborgeräte, die auf Android, iOS, Windows und Linux mit einer gemeinsamen Codebasis läuft.

Die App diente als zentrale Oberfläche zur Steuerung der Laborgeräte. Sie verband die Geräte über Bluetooth oder USB, verwaltete frühere Messdaten und steuerte laufende Messprozesse.

Nutzer konnten Experimente mit verschiedenen Sensoren, einer bestimmten Anzahl von Messwerten und unterschiedlichen Messintervallen konfigurieren. Die Ergebnisse wurden in Echtzeit als Diagramme dargestellt.

KI-gestützte Analysen und eine Desktop-Oberfläche ermöglichten detaillierte Untersuchungen, Anmerkungen und statistische Auswertungen.

Vollständige Experimente konnten mit Messdaten, Diagrammen und Anmerkungen importiert und exportiert werden.

Projektübersicht

Lösung

Die fertige Lösung war eine Labor-App für mehrere Plattformen mit einer Flutter-Oberfläche und nativen C/C++-Komponenten. Sie vereinte die Steuerung von Laborgeräten, die Erfassung von Sensordaten und die Visualisierung von Experimenten in Echtzeit.

Kernfunktionen der Plattform

  • App für Android, iOS, Windows und Linux
  • Verbindung mit Laborgeräten über Bluetooth Low Energy und USB
  • Flexible Konfiguration interner und externer Sensoren
  • Erfassung mehrerer Sensordatenströme in Echtzeit
  • Interaktive Diagramme zur Darstellung von Messwerten im Zeitverlauf
  • KI-gestützte Erkennung von Trends und Anomalien
  • Anmerkungen und statistische Analysen auf Desktop-Systemen
  • Anmerkungen mit Bildern und eigene Markierungen in Diagrammen
  • Wiederholung von Messungen mit einem Klick
  • Import und Export vollständiger Experimente
  • Austausch von Forschungsdaten im CSV- und XML-Format
  • Offline-Speicherung von Messdaten und Ergebnissen der Analyse
Lösung

Nutzer-Workflow

  • Nutzer verbanden das tragbare Labor über Bluetooth oder USB mit der App.
  • Die App erkannte verfügbare Sensoren. Nutzer konnten die gewünschte Kombination von Sensoren, die Anzahl der Messwerte und die Abfrageintervalle auswählen.
  • Nutzer konfigurierten den Messablauf entsprechend den Anforderungen ihrer Forschung.
  • Die App erfasste Daten mehrerer Sensoren und zeigte die Messwerte in Echtzeit als Diagramme an.
  • KI-gestützte Analysen erkannten Trends, Anomalien und wesentliche Veränderungen in den erfassten Daten.
  • Forschende konnten unter Windows und Linux Kommentare, Bilder, Markierungen und Diagramme zur Darstellung statistischer Verteilungen hinzufügen.
  • Nutzer konnten Experimente mit denselben Einstellungen wiederholen, um Gerätetoleranzen und die Streuung der Messwerte zu bewerten.
  • Vollständige Messdaten und Anmerkungen ließen sich in Standardformaten für Berichte oder weitere Analysen exportieren.
Nutzer-Workflow

Technologie-Stack

Um eine hohe Leistung auf mehreren Plattformen, die Visualisierung von Daten in Echtzeit, die Kommunikation mit Laborgeräten und lokale Analysen zu ermöglichen, setzten wir folgende Technologien ein:

  • Framework: Flutter für Android, iOS, Windows und Linux
  • Programmiersprachen: Dart, C/C++
  • Zustandsverwaltung: BLoC / Provider
  • Native Integration: Dart FFI
  • Kommunikation mit Hardware: Bluetooth Low Energy (BLE), USB Serial API
  • Hardware-Kommunikation unter Linux: DBus
  • Lokale Datenspeicherung: Isar Database
  • Cloud- und Netzwerkdatenbank: PocketBase
  • Datenformate: CSV, XML, JSON
  • KI und Analytik: ONNX Runtime / TensorFlow Lite
  • Datenverarbeitung: Native C/C++-Module zur Verarbeitung von Telemetriedaten und digitalen Signalen (DSP)
Technologie-Stack

Kernteam

  • Lösungsarchitekt: Entwickelte die Abstraktionsebene für mehrere Plattformen, den nativen C/C++-Kern, die Anbindung über Bluetooth und USB sowie die Architektur für die Synchronisierung mit PocketBase.
  • UI/UX-Designer: Gestaltete eine adaptive Oberfläche für komplexe Abläufe am Desktop und die Touch-Bedienung auf Mobilgeräten.
  • Flutter-Entwickler: Entwickelten die App für mehrere Plattformen, die Steuerung der Laborgeräte, Diagrammansichten und plattformspezifische Funktionen.
  • KI- und Dateningenieure: Integrierten Modelle für maschinelles Lernen zur Analyse von Zeitreihen sowie zur Erkennung von Trends und Anomalien.
  • DevOps- und Backend-Entwickler: Verwalteten die PocketBase-Infrastruktur und synchronisierten Sensorprofile, Metadaten und Einstellungen.
  • QA-Ingenieure: Testeten die Software mit angeschlossener Hardware unter Android, iOS, Windows und Linux. Dabei prüften sie die Messgenauigkeit und die Stabilität der Bluetooth- und USB-Verbindungen.
Kernteam

Zugehörige Fallbeispiele