NAVIGATION
>AUFGABE
>APP
>CLOUD

Aufgabenstellung

Eine Kunde aus der Baumesstechnik benötigte eine Lösung für seine Datenlogger. Diese Datenlogger zeichnen nach einem Zeitprogramm Messdaten auf und speichern diese.
Es gab zwei Kernaufgaben:

  • Eine App zum Inbetriebnehmen, Parametrieren und Auslesen eines Loggers über USB oder Bluetooth-Verbindung
  • Eine Cloud-Lösung bei der ein Logger über eine GPRS-Funkverbindung ausgelesen und parametriert werden sollte und die Daten über eine Website zur Verfügung gestellt werden.

Die App

Touch-Bedienung - aber kein Windows 8

Die App wurde als klassische Desktop-App mit .NET C# erstellt, um die Lauffähigkeit auf allen Windows-Systemen sicherzustellen.
Die Oberfläche sollte aber dennoch für eine Touch-Bedienung optimiert sein, um die App beispielsweise auf einem Windows 7-Tablet laufen lassen zu können.
Erstellt wurde die Oberfläche mit der Windows Presentation Foundation (WPF).

Stichworte: WPF, XAML, Windows 7, Touch-Bedienung, .Net, C#

Kommunikation per USB oder Bluetooth

Die Kommunikation mit ein Logger erfolgt wahlweise per Kabel über USB oder per Funkverbindung über Bluetooth.
Die Software scannt beim Programmstart automatisch nach verfügbaren Loggern und bietet diese zur Auswahl an.

Stichworte: USB, Bluetooth

Sprachunterstützung

Da der Kunde international tätig ist, musste die Software in mehrere Sprachen übersetzt werden. Dazu gehört auch die richtige Darstellung der Zahlenformate und der korrekte Umgang mit Zeitzonen - besonders im Zusammenhang mit Messdaten.
Zur Übersetzung und Zusammenarbeit mit externen Übersetzungsbüros nutzen wir primär den Cloud-Service www.crowdin.net.

Stichworte: Lokalisierung

Die Cloud-Lösung

Zentrale Website

Über eine zentrale Website ist für die Kunden der aktuelle Status ihrer Logger abrufbar. Sie können Messparameter ändern und aktuelle Messdaten sowohl visualisieren als auch in entsprechenden Formaten herunterladen.
Die Website wurde mit asp.Net MVC unter Verwendung von C#, Javascript und der jQuery-Bibliothek realisiert.

Stichworte: asp.Net MVC, C#, Javascript, HTML, jQuery

Datenbank & Archivierung

Die Messdaten werden zentral in einer Datenbank (SQL-Server) abgelegt. Eine Sicherung erfolgt in regelmäßigen Zyklen sowohl auf dem Server selbst als auch auf einen dezentralen FTP-Server. Damit sind die Daten optimal geschützt und können bei einem Problem jederzeit wiederhergestellt werden.
Der interne Datenzugriff erfolgt größtenteils über ein ORM-Framework (Entity Framework), aus Performancegründen an ausgewählten Stellen aber auch direkt.

Stichworte: SQL Server, Entity Framework, ORM

User-Verwaltung

Die Messdaten sind bestimmten Kunden zugeordnet und dürfen nur von diesen eingesehen werden. Aus diesem Grund wurde eine Benutzerverwaltung mit verschiedenen Rollen und Rechten implementiert (Admin, Projektverantwortlicher, ...)

Kommunikation mit Logger

Der Datenaustauschen mit den Loggern erfolgt über eine GPRS-Verbindung. Dazu stellt der Logger in definierten Zeitabständen eine Verbindung mit dem Server her. Der Server übermittelt dann neue Parametrierungen und lädt die neuen Messdaten heruntern.

Stichworte: GPRS, TCP/IP, SSL, Webservice

Alarm über SMS & Email

Für die Messdaten kann ein Benutzer Alarmgrenzen definieren. Werden diese verletzt, sendet der Server automatisch Nachrichten per SMS oder Email.

Datenexport über Download & FTP-Server

Benutzer können die Messdaten über die Webseite herunterladen. Alternativ können die Daten auch per Email verschickt oder auf einen FTP-Server hochgeladen werden.

Anbindung anderer Server

Andere Server können über eine Webservice (SOAP) Messdaten abfragen.