PalmSens SDK für UWP

UWP abgeschrieben
Die Unterstützung für UWP ist veraltet. Version 5.7 ist die letzte Version. Die EmStat4-Reihe wird von dieser Version nicht unterstützt. Für Neuentwicklungen empfehlen wir die Verwendung des .NET WPF oder WinForms SDK.

Mit diesem PalmSens Software Development Kit entwickeln Sie Windows-Anwendungen in Visual Studio .NET unter Verwendung der Universal Windows Platform (UWP). UWP-Apps können auch auf Windows 10 IOT laufen, zum Beispiel auf einem Raspberry Pi 3. Das SDK kann mit allen PalmSens und Potentiostat-Modulen verwendet werden.

Scrollen Sie nach unten zum Download-Bereich

Entwickeln Sie klassische Windows-Anwendungen mit UWP

Wenn Sie vorhaben, eine eigene Windows-Anwendung zur Steuerung eines unserer Potentiostaten oder Potentiostat-Module zu entwickeln, sollten Sie am besten mit einem unserer PalmSens für .NET beginnen. Selbst mit wenig Programmiererfahrung werden Sie in der Lage sein, Ihre eigene Anwendung zu erstellen. Jedes SDK enthält eine Reihe von Code-Beispielen, die sich leicht an Ihre Anforderungen anpassen lassen. Mit den SDKs können Sie verschiedene .NET-Frameworks ansprechen, darunter:

  • WinForms (klassische Windows-Anwendungen)
  • WPF und UWP (für moderne Windows-Apps)

Verfügbare Bibliotheken und Projekte

Das PalmSens SDK besteht aus den folgenden Bibliotheken und Projekten

 

Bibliotheken erklärt

Es gibt zwei Arten von Bibliotheken: Instrumentensteuerung und Plot

Die Open-Source-Projekte PalmSens.Core.Simplified und PalmSens.Core.Simplified.UWP sind im Wesentlichen Wrapper für die PalmSens.Core.dll und PalmSens.Core.UniversalWindows.dll. Die Wrapper ermöglichen Ihnen einen schnellen und einfachen Zugriff auf alle grundlegenden Funktionen der PalmSens und -Module und behandeln die meisten potenziellen Threading-Probleme automatisch für Sie. Wir empfehlen dringend, diese Wrapper-Projekte als Referenzen in Ihre eigenen Projekte einzubinden. Die Wrapper vereinfachen;

  • Verbindung wird hergestellt;
  • manuelle Steuerung der Zelle;
  • Messungen durchführen;
  • sowie Abruf und Verarbeitung von Messdaten

Die Bibliotheken PalmSens.Core und PalmSens.Core.UniversalWindows enthalten die Namespaces mit allen notwendigen Dateien für die Verwendung von PalmSens in Ihrer Software. Diese Namespaces sind:

Bibliothek Beschreibung
PalmSens Alle erforderlichen Klassen und Funktionen zur Durchführung von Messungen und Analysen mit PalmSens oder EmStat.
PalmSens.Comm für serielle, USB- oder TCP-Kommunikation mit PalmSens oder EmStat
PalmSens.DataFiles zum Speichern und Laden von Methoden- und Datendateien
PalmSens.Devices zur Verwaltung der Kommunikation und der Gerätefunktionen
PalmSens.Techniques enthält alle Messverfahren für PalmSens und EmStat
PalmSens.Units enthält eine Sammlung von Einheiten, die von diesen Bibliotheken verwendet werden

Die Projekte „SDKPlot“ und „SDKPlot.UWP“ (.csproj) sind ein Wrapper für das Open-Source-Diagramm-Steuerelement. Mit diesen Wrappern können Sie Ihre Messwerte ganz einfach (in Echtzeit) grafisch darstellen. Für diese Projekte werden die Bibliothek/das Projekt „OxyPlot.dll“ und „OxyPlot.Windows.csproj“ benötigt.

Diese Bibliotheken basieren wiederum auf der Open-Source-Bibliothek OxyPlot, https://oxyplot.github.io.

UWP-Beispiel: Verbindung und Durchführung einer Messung

Der folgende Code zeigt ein Beispiel für asynchrone Programmierung, um zu verhindern, dass die PalmSens SDK-Bibliotheken die Benutzeroberfläche blockieren. Das Basic Example Async zeigt, wie man eine Verbindung herstellt und eine Messung durchführt, mit einem Minimum an Code. Alle Beispiele sind im SDK enthalten. Es gibt drei Versionen:

  • ARM (z. B. zur Verwendung auf einem Raspberry Pi)
  • x64
  • x86
/// Initializes a new instance of the  class.
/// This class handles the communication with a device and it is used
/// to perform measurements and control the device manually.
public PSCommSimpleUWP()
{
    InitializeComponent();

    PalmSens.UniversalWindows.CoreDependencies.Init(Application.Current); //Initiates PSSDK threading dependencies
    InitAsyncFunctionality(Environment.ProcessorCount); //Initiate the asynchronous functions in the SDK
    _psCommSimple = new PSCommSimple(this);
}