Ozarkfalls

Auch bei Spezialsoftware erhöht eine komfortable und reaktionsschnelle Benutzeroberfläche die Effizienz der Nutzung. Dies gilt auch für Ozarkfalls - ein neues Softwareprojekt, das eine spezielle Lösung für die Steuerung und Planung der Feldarbeit von Militärrobotern bieten soll.

Technologies used

Bei der Steuerung von Robotern oder Drohnen besteht einer der beliebtesten Ansätze darin, eine spezielle Anwendung zuentwickeln, die sich wie ein Bedienfeld verhält. Auf diese Weise ist der Benutzer nicht gezwungen, zusätzliche Hardware zu kaufen, und die Entwickler können viele der Funktionen nutzen, die moderne Tablets, Telefone oder andere Gerätean Bord haben. Unser Ziel war es, eine Anwendung zu entwickeln, die es dem Benutzer ermöglicht,die benötigten Informationen vom Gerät abzurufen, sie zu visualisieren und korrekt analysierte Benutzereingabedaten an den Roboter zu senden. Und das alles auf eine einfache und benutzerfreundliche Art und Weise.

Wenn Sie mehr über den Entwicklungsprozess eines solchen Produkts mit Qt erfahren möchten, sind Sie hier genau richtig!

Scythe Studio Verpflichtungen

Dieses Projekt sollte ein MVP (Minimal Value Product) werden. Dieser Begriff beschreibt die Phase des Projekts, in der die meisten wichtigen Funktionen voll funktionsfähig sind, die Entwickler sich aber nicht auf das Aussehen der Benutzeroberfläche konzentrieren. Das Wichtigste ist, dass die Dinge gut funktionieren, nicht wie sie aussehen.

Jedes Projekt muss damit beginnen, eine Liste der benötigten Funktionen zu definieren und die Aufgaben in geeignete Meilensteine zu gruppieren. Gute Kommunikation ist einer der wichtigsten Faktoren bei der Definition der Projektanforderungen. Aus diesem Grund bieten wir unseren Kunden vor Beginn der Implementierung eine Beratung an, um einen reibungslosen Ablauf der App-Entwicklung zu gewährleisten. Um die höchste Qualität des Endprodukts und die Zufriedenheit unserer Kunden zu gewährleisten, stellen wir nach jeder Entwicklungsiteration fertige Pakete zur Verfügung, die vom Kunden überprüft werden können. Auf diese Weise können wir unser Produkt noch während der Produktion anpassen und das Feedback des Kunden berücksichtigen.

Technologie Aspekte

Zu den Funktionen mit der höchsten Priorität gehörte eine interaktive Karte – das Kernelement der Anwendung. Dank der hervorragenden Unterstützung von Qt konnte diese Funktionalität schnell und kostengünstig implementiert werden.

Wenn Sie der Karte benutzerdefinierte Elemente hinzufügen möchten, hilft Ihnen Qt, indem es fertige QML-Komponenten bereitstellt, die Sie nur noch konfigurieren müssen. Im Fall von Ozark Falls haben wir Wegpunkte erstellt, die der Roboter anfahren soll, und einen Roboter-Marker, der seine aktuelle Position auf der Karte anzeigt. Um diese korrekt auf einer interaktiven Karte anzuzeigen, wurde eine Kombination aus Qt Positionierung und Qt Location verwendet. Die von Qt zur Verfügung gestellten Karten-Plugins vereinfachen das Hinzufügen solcher Funktionen zu einer Karte erheblich – die grundlegende Implementierung erfordert nur ein paar Dutzend Zeilen.

Die Karte musste Satellitenansicht und Offline-Caching unterstützen – diese Funktionalitäten scheinen schwierig und teuer zu implementieren zu sein, aber mit Qt ist dies nicht der Fall. Qt Location Plugins bieten eine große Auswahl an Karten mit vielen verschiedenen Funktionen. Um Satellitenansicht und Caching zu aktivieren, müssen Sie nur ein paar Zeilen in das Plugin-Element einfügen.

 

Ozarkfalls main page

Da die Anwendung es dem Benutzer ermöglichen sollte, die im Speicher des Roboters abgelegten Wegpunkte auszulesen und die auf der Karte hinzugefügten Wegpunkte an den Roboter zu senden, musste eine zuverlässige Zwei-Wege-Kommunikation implementiert werden. Aus diesem Grund wurden TCP-Sockets verwendet. Warum TCP? Auf diese Weise können wir sicherstellen, dass alle an das Gerät gesendeten Daten auch empfangen werden, während der Roboter auch Daten an das Benutzergerät senden kann.

 

Ozarkfalls robot connection panel

 

Die Karte verwendet ein benutzerdefiniertes Modell, um Wegpunkte zu speichern. Mit Hilfe dieses Modells kann der Benutzer die Liste der Wegpunkte neu ordnen, indem er ihre Reihenfolge ändert oder ausgewählte Wegpunkte löscht. Alle Änderungen werden sofort in der Karte angezeigt.

 

Ozarkfalls waypoints list with custom model

 

Die gesamte Benutzeroberfläche wurde mit QML (Qt Markup Language) aus dem Modul QtQuick implementiert. Damit kann man im Handumdrehen eine ansprechende, flüssig animierte Benutzeroberfläche erstellen.

Warum Qt?

Ein weiterer Vorteil des Qt-Frameworks ist seine Rechen- und Speichereffizienz. Dadurch kann eine Anwendung auf allen Arten von Geräten eingesetzt werden, sogar auf eingebetteten Geräten. Die gesamte Kommunikations- und Dateiverwaltungslogik wurde in C++ geschrieben, weil wir sie schnell und effizient machen wollten. Qt ermöglicht eine einfache Verknüpfung von C++ und QML. Auf diese Weise erhielten wir eine blitzschnelle Anwendungslogik mit einer reaktionsschnellen und benutzerfreundlichen Oberfläche – eine großartige Kombination. Die App ist für Windows-Tablets gedacht, aber da sie auf Qt basiert, können wir sie auch auf Android oder iOS laufen lassen, ohne den Code ändern zu müssen. Plattformübergreifende Apps sind großartig!

Wenn Sie wissen möchten, wie man eine Qt-Anwendung unter Windows verwendet, lesen Sie den folgenden Blog-Eintrag.

https://scythe-studio.com/blog/deploying-app-and-generating-offline-installers-for-windows-qt-installer-framework-tutorial

 

Lesen des Kundenfeedbacks… 100%!

Vertrauen Sie nicht nur unseren Worten – lesen Sie, was Chris über unsere Arbeit denkt:

Ich habe das Team von Scythe-Studio mit einem Robotik-Mapping-Projekt beauftragt und bin mit dem Ergebnis sehr zufrieden. Sie haben aus meinen losen Vorgaben einen gut organisierten Zeitplan und eine Liste von Meilensteinen erstellt und jeden Punkt erfolgreich abgeschlossen. Das Projekt beinhaltete auch ein Kommunikationsschema, um mit einem Roboter im Feld zu kommunizieren. Ich hatte die Befürchtung, dass die Umsetzung dieses Teils des Projekts eine Herausforderung für die Person sein würde, die ich für diese Aufgabe ausgewählt hatte. Ich war sehr positiv überrascht, als das Team von Scythe Studio diesen Teil gleich beim ersten Versuch richtig und ohne Probleme umgesetzt hat. Großartige Arbeit!

Zusammenfassung 

Versuchen Sie, diese Fragen zu beantworten:

  • Brauchen Sie eine Anwendung?
  • Möchten Sie eine ungewöhnliche Idee umsetzen?
  • Soll Ihre Anwendung effizient sein?
  • Möchten Sie, dass Ihre App reaktionsfähig ist und gut aussieht?

Wenn Sie eine dieser Fragen mit „Ja“ beantwortet haben, rufen Sie uns an.

Wir bei Scythe Studio glauben, dass jede Idee in ein Softwareprodukt umgesetzt werden kann.

Neueste Projekte

Qt QML Desktop-Anwendung – Fallstudie Games Launcher

Das Qt Framework mit seiner großen Vielfalt an Modulen kann für die Umsetzung aller Arten von Projekten verwendet werden, von Bedienfeldern für Militärroboter über medizinische Anwendungen bis hin zu Launchern und Updateprogrammen für Videospiele. In letzterem Fall hatten wir das Vergnügen, eine Anwendung zu implementieren. Wenn Sie sich fragen, wie diese Desktop-Anwendung entstanden ist, können Sie es in diesem Artikel nachlesen. Vergessen Sie nicht, sich in unserem Portfolio über unsere anderen Projekte zu informieren.

Qt Automotive cockpit – Fallstudie

Das Auto-Cockpit für das revolutionäre und innovative Elektroauto war ein weiteres Projekt, bei dem wir unsere Kunden unterstützt haben. Mit Qt haben wir ein Auto-Cockpit entwickelt. Das entworfene Cockpit besteht aus drei unabhängigen Displays, die dem Fahrer wichtige Informationen wie Tachometer, Warnsymbole und andere IVI-Funktionen anzeigen.

Zoho Books Forecasting – plattformübergreifende Qt-Desktop-Anwendung

Zoho Books Forecasting ist eine Desktop-Anwendung zur Visualisierung der finanziellen Entwicklung und zur Erstellung von Prognosen für Unternehmen, die die Zoho Books-Plattform für die Buchhaltung und die Überwachung ihrer finanziellen Situation nutzen. Obwohl es sich um eine Anwendung mit einer recht einfachen Benutzeroberfläche handelt, bietet sie umfassende Funktionen zur Darstellung der Einnahmen, Ausgaben und des Cashflows des Unternehmens und erweitert die Funktionalität der Zoho Books-Plattform.