Wasatch.net ist ein Wrapper auf Anwendungsebene über die USB- und SPI-APIs von Wasatch Photonics. Es wird so bereitgestellt, dass Anwendungsentwickler sich keine Sorgen um Opcodes und [de] -Starben -Oktetten von Rohdaten machen müssen. Sie können einfach hochrangige Eigenschaften und Methoden wie IntegrationTimems und GetSpectrum () aufrufen.
Wasatch.net wird voraussichtlich aus allen .NET-kompatiblen Sprachen funktionieren, einschließlich:
| Plattform | Teststatus |
|---|---|
| C# | getestet mit Visual Studio 2017 Community |
| Labor | getestet mit 2017 32-Bit (siehe Wasatch.lv) |
| Matlab/Simulink | getestet mit 2017b 64-Bit (siehe Wasatch.matlab) |
| Embarcadero Delphi | getestet mit Delphi Community Edition 10.2 über COM (siehe Wasatch.delphi) |
| VBA (Excel) | getestet mit Office 2010 64-Bit (siehe Wasatch.excel) |
| R | nicht begonnen (geplant über RCLR) |
| Xamarin | Nicht begonnen |
| Visual Basic.net | Nicht begonnen |
| F# | Nicht begonnen |
| Wolfram Mathematica | Nicht begonnen |
Wenn es andere gibt, die Sie gerne sehen würden, lassen Sie es uns bitte wissen und wir werden sie testen!
Vorbereitete Installateure sind für 32-Bit- und 64-Bit-Fenster verfügbar:
code {.cs}
WasatchNET.Driver driver = WasatchNET.Driver.getInstance();
if (driver.openAllSpectrometers() > 0)
{
WasatchNET.Spectrometer spectrometer = driver.getSpectrometer(0);
spectrometer.integrationTimeMS = 100;
double[] spectrum = spectrometer.getSpectrum();
}
eNDCODE
Für den Beispiel -Aufrufcode finden Sie im enthaltenen C# WinFormdemo.
API -Dokumentation finden Sie hier:
Der Fahrer soll die in den folgenden Dokumenten definierten USB -APIs genau nachahmen:
Daher können die meisten Fragen zu Parametern, Modi und Optionen wahrscheinlich durch Überprüfung der zugrunde liegenden Spektrometer -Kommunikationsschnittstelle aufgelöst werden.
Die Anwendungstreiber von Wasatch Photonics werden als Referenzimplementierungen bereitgestellt, um zu demonstrieren, wie unsere Spektrometer über USB aus verschiedenen Plattformen und Sprachen befehlen und kontrolliert werden. Als Arbeitsbeispiele und "Convenience -Wrapper" über unsere USB -API werden nicht garantiert die Komfortfunktionen für jeden Anruf und jede Option in der Hardware -API einbezogen, noch sind sie notwendigerweise die effizienteste oder optimalste Implementierung in einer bestimmten Sprache.
Die formale und vollständige Schnittstelle zu unseren Spektrometern ist in unserer USB -API -Dokumentation bereitgestellt. Standard -USB -Treiber, die auf diese direkte Schnittstelle zugreifen können, sind auf allen Standardbetriebssystemen reichlich vorhanden: libusb, winusb usw. Es sind keine zusätzlichen Verpackungen oder Bibliotheken erforderlich, um unsere Spektrometer aus der Plattform Ihrer Wahl vollständig zu nutzen.
Wenn es eine Spektrometer- oder Spektroskopiefunktion gibt, die Sie in unserer Open-Source-Wrapper-Sammlung nicht finden, kontaktieren Sie uns und fordern Sie die Ergänzung an. Oder wenn Sie "Ihre Hände schmutzig machen" möchten, können Sie Ihre eigene Implementierung erstellen und sie optional mit uns teilen, um sich in die Basisverteilung zu verschmelzen. Wasatch Photonics ist stolz darauf, unsere Online -Community zu unterstützen, aber nicht zu stolz darauf, Patches abzulehnen, wenn sie das Produkt verbessern!
Einige bekannte Verbesserungsbereiche finden Sie jedoch in unserem Rückstand (unten).
Wasatch.net ist in einer Microsoft Installer (.mSI) -Datei verteilt, in der die Wasatchnet.dll und libusbdotNet.dll unter C: Windows installiert werden (so dass sie immer im Systempfad sind). FTDI -Treiber sind ebenfalls installiert, um die SPI -Kommunikation zu unterstützen.
Außerdem werden eine einfache C# -Spektroskopie-GUI-App, WinFormDemo, unter Programmdateien Wasatch Photonics (oder Programmdateien (x86) auf 32-Bit-Systemen) installiert, mit denen Sie das Spektrometer steuern und schnell überprüfen können, ob der Treiber installiert ist und korrekt funktioniert.
Neben dem Doppelklicken auf das .msi-Installationsprogramm sind ein oder zwei zusätzliche Schritte für eine vollständige Installation erforderlich:
Wasatch.net ist ein hochrangiger "Anwendungsfahrer", der mit unseren Spektrometern mit dem "mittleren" Treiber Libusbdotnet kommuniziert, das mit dem "Low-Level" -Sb-Treiber Libusb-Win32 kommuniziert. Windows weiß jedoch nicht, dass unsere Spektrometer Libusb-Win32 verwenden sollen, bis wir es erzählen!
Das erste, was wir tun müssen, ist also die .inf -Dateien zu installieren, die unsere USB -Geräte (über VID/PID) mit libusb in Verbindung bringen. Dies ist der Prozess, dies zu tun:
Stecken Sie ein USB -Wasatch -Photonikspektrometer ein.
Windows kann Sie auffordern, "Treiber für dieses Gerät zu finden". Wenn nicht, gehen Sie zum Geräte -Manager (Geben Sie einfach "Geräte -Manager" in das Feld Win10 in der Startleiste ein).
Ihre Spektrometer sollten unter "anderen Geräten" als "Stroker FX2" oder "Stroker Ingas Camera" angezeigt werden.

Klicken Sie mit der rechten Maustaste auf den Stroker-Eintrag und wählen Sie "Treiber aktualisieren".
Wählen Sie "manuell nach Treibern durchsuchen".

Stellen Sie sicher, dass "[x] Unterordner einschließen" überprüft wird
Durchsuchen Sie "C: Programme Wasatch Photonics Wasatch.net libusb_drivers" oder "C: Programme (x86) Wasatch Photonics Wasatch.net libusb_drivers" nach Ansicht.



Dieser Schritt wird angenommen, dass nur für Entwickler erforderlich sind, die Visual Basic 6 (VB6) oder Visual Basic für Anwendungen (VBA, Teil von Microsoft Excel) verwenden.
Da unser .msi -Installationsprogramm die von VB6/VBA benötigte .tlb -Datei nicht registriert, müssen Sie einen zusätzlichen manuellen Schritt ausführen:
Navigieren Sie zu Programmdateien Wasatch Photonics Wasatch.net (oder Programmdateien (x86) auf 32-Bit-Systemen)
Klicken Sie mit der rechten Maustaste auf die Batch-Datei "RegisterDll.bat" und wählen Sie "als Administrator ausführen".


Sie möchten also Wasatch.net von Quelle erstellen und kompilieren? Gut, so machen wir es auch gerne ... du lernst so viel mehr so :-)
Der Fahrer wurde unter Visual Studio 2017 Community auf Win10 64-Bit geschrieben und getestet. Es ist selbst von den folgenden Bibliotheken abhängig:
URL: https://sourceforge.net/projects/libusbdotnet/files/libusbdotnet/
Dies ist ein .NET-Wrapper über den Standard-Libusb-Win32, der von vielen USB-Geräteanbietern verwendet wird. Die in unserem LIB/ Verzeichnis vorbereitete DLL-vorgefertigte DLL wurde aus V2.2.8 mit der Visual Studio 2017-Community gegen das Clientprofil von .NET 4.0 erstellt.
Um die XL-Serie-Spektrometer mit dem Andor-Kamerasystem zu verwenden, muss der Andor-Treiberpaket 2 installiert werden. Dies ist derzeit bei Andor unter dem folgenden Link erhältlich:
Siehe Readme-spi.md.
Unsere Standard -DLL ist gegen das .NET 4.8 -Clientprofil gegen das Debug -Ziel erstellt, sodass die DLL die maximale Menge an Debugging -Symbolen und Metadaten für die Fehlerbehebung der Benutzer aufweist. Der WinFormDemo ist gegen .NET 4.8 gebaut.
Die Standard- und empfohlene Build-Konfiguration beträgt X64, aber wir verteilen auch Installateure für X86 (Win32), da beispielsweise viele Benutzer 32-Bit-Versionen von LabView selbst auf 64-Bit-Betriebssystemen haben.
Auf die Benutzeranforderung fügen wir auch ein "AnyCPU" -Anstallationsprogramm hinzu, aber in dieser Konfiguration fehlt einige Funktionen (z. B. Treiber für Andor / XL -Spektrometer).
Benutzer sind herzlich eingeladen, die Bibliothek selbst gegen jede Zielkonfiguration oder -architektur zu erstellen. Bitte teilen Sie uns mit, ob Sie auf Probleme stoßen, die wir beheben können.
Wenn Sie noch gegen .NET Framework 4.0 erstellen müssen, überprüfen Sie die "Framework40" -Ast und erstellen Sie mit Visual Studio 2019 Community Edition.
Der einfachste Weg, um zu testen, ob Ihre Installation erfolgreich ist, besteht darin, die bereitgestellte WinForformDemo auszuführen, die auf Ihrem Startmenü unter Wasatch Photonics -> Wasatch.net -> WinFormDemo verfügbar sein sollte.
Wenn Sie ein WaSatch Photonics-Spektrometer eingesteckt und unter "libusb-win32-Geräten" im Geräte-Manager korrekt angezeigt haben, sollten Sie die Demo ausführen können. Klicken Sie dann auf "Initialize", um eine Verbindung zum Spektrometer herzustellen.
Obwohl in der Bibliothek die Anwendungen die Protokollierung programmgesteuert über triver.logger.level und .setPathName () konfigurieren können, tun dies nicht alle Anwendungen. Endbenutzer von kompilierten Anwendungen können die Protokollierung weiterhin manuell konfigurieren, indem diese Umgebungsvariablen festgelegt werden, bevor ein Programm mit washatch.net ausgeführt wird:
C:> set WASATCHNET_LOGGER_PATHNAME=C:tempwasatchnet.log (assumes directory exists)
C:> set WASATCHNET_LOGGER_LEVEL=DEBUG (can be DEBUG, INFO, ERROR or NEVER)
Diese Umgebung "Standardeinstellungen" können weiterhin durch den Anwendungscode überschrieben werden, der jedoch die oben genannten Methoden und Eigenschaften explizit aufruft.
Mindestens eine Clientsprache (LabView NXG) unterstützt nur .NET -Baugruppen, die im GAC (General Assembly Cache) geladen werden. Um in den GAC geladen zu werden, muss eine Baugruppe "stark benannt" (digital signiert) ... zusammen mit ihren direkten Abhängigkeiten (Dlls der dritten Party wie libusbdotnet).
Informationen zur digitalen Unterzeichnung von Wasatch.net -Assemblys für GAC -Support sollten Wasatch -Wardierer auf "Admin/Keys/Wasatch.net" verweisen.
Wenn Sie Probleme haben, unsere libusb-win32-Treiber zu installieren, siehe:
Dies kann passieren, wenn das Produkt von Wasatch Dash oder ein anderes älteres Wasatch -Treiberprodukt auf demselben Computer wie Enlighten oder eines unserer neueren Treiber (wie Wasatch.net) installiert wurde.
Sie können erkennen, dass dies das Problem ist, wenn Sie im Windows -Geräte -Manager suchen und "Wasatch Photonics Device FX2" sehen, die unter "Universal Serial Buscontrollers" aufgeführt sind.
Um zu beheben, deinstallieren Sie zuerst den älteren Treiber, indem Sie mit der rechten Maustaste "Wasatch Photonics Device FX2" klicken und "Deinstallation Device" auswählen:

Stellen Sie sicher, dass Sie klicken "Die Treibersoftware für dieses Gerät löschen":

Wählen Sie im Menü "Action" "SCAN" für Hardware-Änderungen aus, um das Gerät unter dem richtigen Gerätetreiber erneut zu ermitteln:

Sie sollten jetzt Ihr Spektrometer sehen, das unter dem erwarteten libusb-win32-Treiber aufgeführt ist:

Sie sollten jetzt in der Lage sein, Ihre Software von Wasatch.net, Wasatch.py oder aufzuklären und eine Verbindung zu Ihrem Spektrometer herzustellen.
Fragen zum Treiber oder zur API, wenden Sie sich bitte an: