Wasatch.net est un wrapper au niveau de l'application sur les API USB et SPI de Wasatch Photonics. Il est fourni pour que les développeurs d'applications n'aient pas à s'inquiéter des OPCodes et [de] les octets de réduction des données brutes; Ils peuvent simplement appeler des propriétés et des méthodes de haut niveau comme Integrationtimems et GetSpectrum ().
Wasatch.net devrait fonctionner à partir de toutes les langages compatibles .NET, notamment:
| Plate-forme | État de test |
|---|---|
| C # | Testé avec Visual Studio 2017 Communauté |
| Labview | Testé avec 2017 32 bits (voir wasatch.lv) |
| Matlab / Simulink | Testé avec 2017b 64 bits (voir wasatch.matlab) |
| Embarcadero Delphi | Testé avec Delphi Community Edition 10.2 sur com (voir wasatch.delphi) |
| VBA (Excel) | Testé avec Office 2010 64 bits (voir wasatch.excel) |
| R | Non démarré (prévu via RCLR) |
| Xamarin | pas commencé |
| Visual Basic.net | pas commencé |
| F # | pas commencé |
| Wolfram Mathematica | pas commencé |
S'il y en a d'autres que vous souhaitez voir répertoriés, veuillez nous le faire savoir et nous les testerons!
Les installateurs pré-compilés sont disponibles pour les fenêtres 32 bits et 64 bits:
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
Pour un exemple de code d'appel, consultez le C # inclus WinFormDemo.
La documentation de l'API est disponible ici:
Le conducteur est conçu pour imiter de près les API USB définies dans les documents suivants:
Par conséquent, la plupart des questions sur les paramètres, les modes et les options peuvent probablement être résolues par l'examen de l'interface de communication du spectromètre sous-jacente.
Les pilotes d'application Photonics Wasatch sont fournis comme implémentations de référence pour montrer comment commander et contrôler nos spectromètres sur USB à partir d'une variété de plates-formes et de langues. En tant qu'exemples de travail et "emballages de commodité" sur notre API USB, ils ne sont pas garantis d'inclure des fonctions de commodité pour chaque appel et option au sein de l'API matériel, et ils ne sont pas nécessairement l'implémentation la plus efficace ou la plus optimale dans une langue donnée.
L'interface formelle et complète de nos spectromètres est fournie dans notre documentation API USB. Les pilotes USB standard pour accéder à cette interface directe sont abondants sur tous les systèmes d'exploitation standard: Libusb, WinUSB, etc. Aucun emballage ou bibliothèque supplémentaire n'est nécessaire pour utiliser pleinement nos spectromètres à partir de la plate-forme de votre choix.
S'il existe une fonction de spectromètre ou de spectroscopie que vous ne trouvez pas fournie dans notre collection de wrapper open source, veuillez nous contacter et demander son ajout; Ou si vous souhaitez «vous salir les mains», n'hésitez pas à créer votre propre implémentation et à la partager éventuellement avec nous pour fusionner dans la distribution de base. Wasatch Photonics est fier d'aider à soutenir notre communauté en ligne, mais pas trop fier pour refuser les correctifs lorsqu'ils améliorent le produit!
Cela dit, certains domaines connus pour l'amélioration peuvent être trouvés dans notre arriéré (ci-dessous).
Wasatch.net est distribué dans un fichier d'installation Microsoft (.msi), qui installe le wasatchnet.dll et libusbdotnet.dll sous c: windows (donc ils seront toujours dans le chemin du système). Les pilotes FTDI sont également installés pour prendre en charge les communications SPI.
Il installe également une application GUI C # Spectroscopy simple, WinFormDemo, sous Program Files Wasatch Photonics (ou Program Files (X86) sur les systèmes 32 bits), vous donnant un moyen de contrôler le spectromètre et de vérifier rapidement le pilote est installé et fonctionne correctement.
En plus de double-cliquer sur le programme d'installation .msi, il y a une ou deux étapes supplémentaires requises pour une installation complète:
Wasatch.net est un "pilote d'application" de haut niveau, qui communique avec nos spectromètres à l'aide du pilote "de niveau intermédiaire" LibusBdotnet, qui communique en utilisant le pilote USB "de bas niveau" LibusB-WIN32. Cependant, Windows ne sait pas que nos spectromètres sont censés utiliser libusb-win32 jusqu'à ce que nous le disons!
Ainsi, la première chose que nous devons faire est d'installer les fichiers .inf qui associent nos périphériques USB (via vid / pid) à libusb. C'est le processus pour le faire:
Branchez un spectromètre photonique USB Wasatch.
Windows peut vous inviter à "localiser les pilotes pour cet appareil". Sinon, accédez au gestionnaire de périphériques (tapez simplement "Gestionnaire de périphériques" dans le champ de recherche Win10 sur la barre de départ).
Votre (s) spectromètre (s) doit apparaître comme "Stroker FX2" ou "Stroker Ingas Camera" sous "d'autres appareils".

Cliquez avec le bouton droit sur l'entrée du Stroker et sélectionnez "Mettre à jour le pilote".
Sélectionnez "Parcourir manuellement pour les pilotes".

Assurer "[x] Inclure les sous-dossiers" est vérifié
Parcourez "C: Program Files Wasatch Photonics wasatch.net libusb_drivers" ou "C: Program Files (x86) wasatch Photonics wasatch.net libusb_drivers" selon le cas.



Cette étape est estimée uniquement requise pour les développeurs utilisant Visual Basic 6 (VB6) ou Visual Basic pour les applications (VBA, partie de Microsoft Excel).
Parce que notre installateur .msi n'enregistre pas le fichier .tlb nécessaire par VB6 / VBA, vous devez effectuer une étape manuelle supplémentaire:
Naviguez vers Program Files Wasatch Photonics wasatch.net (ou Program Files (x86) sur des systèmes 32 bits)
Cliquez avec le bouton droit sur le fichier batch "registerdll.bat" et sélectionnez "Exécuter comme administrateur"


Vous aimeriez donc construire et compiler wasatch.net vous-même à partir de la source? Bien, c'est comme ça que nous aimons le faire aussi ... vous apprenez tellement plus de cette façon :-)
Le conducteur a été écrit et testé sous la communauté Visual Studio 2017 sur Win10 64 bits. Il dépend lui-même des bibliothèques suivantes:
URL: https://sourceforge.net/projects/libusbdotnet/files/libusbdotnet/
Il s'agit d'un wrapper .NET sur le libusb-win32 standard qui est utilisé par de nombreux fournisseurs de périphériques USB. La DLL pré-compilée fournie dans notre lib / répertoire a été construite à partir de la V2.2.8 à l'aide de la communauté Visual Studio 2017 contre le profil Client .NET 4.0.
Pour utiliser les spectromètres de la série XL avec le système de caméra Andor, wasatch.net nécessite que le pack de pilotes ANDOR 2 soit installé. Ceci est actuellement disponible sur ANDOR sur le lien suivant:
Voir Readme-Spi.Md.
Notre DLL standard est construite contre le profil client .NET 4.8 contre la cible de débogage, donc la DLL aura le montant maximal de symboles de débogage et de métadonnées pour le dépannage des utilisateurs. Le WinFormDemo est construit contre .NET 4.8.
La configuration de construction standard et recommandée est x64, mais nous distribuons également les installateurs de x86 (Win32), car par exemple, de nombreux utilisateurs ont des versions 32 bits de LabView même sur les systèmes d'exploitation 64 bits.
Par demande utilisateur, nous incluons également un installateur "AnyCPU", mais cette configuration manque de fonctionnalités (par exemple, les pilotes pour les spectromètres ANDOR / XL).
Les utilisateurs sont invités à créer eux-mêmes la bibliothèque contre toute configuration ou architecture cible; Veuillez nous faire savoir si vous rencontrez des problèmes que nous pouvons aider à résoudre.
Si vous devez toujours construire contre .NET Framework 4.0, consultez la branche "Framework40" et construisez à l'aide de Visual Studio 2019 Community Edition.
Le moyen le plus simple de tester si votre installation est réussie est d'exécuter le WinFormDemo fourni, qui devrait être disponible sur votre menu de démarrage sous Wasatch Photonics -> wasatch.net -> winFormDemo.
Si vous avez un spectromètre photonique Wasatch branché et affiché correctement sous "Dispositifs LibusB-WIN32" dans le gestionnaire de périphériques, vous devriez pouvoir exécuter la démo, puis cliquez sur "Initialiser" pour vous connecter au spectromètre.
Bien que la bibliothèque permet aux applications de configurer la journalisation par programme via Driver.Logger.Level et .SetPathName (), toutes les applications ne le font pas. Les utilisateurs finaux des applications compilés peuvent toujours configurer la journalisation manuellement en définissant ces variables d'environnement avant d'exécuter un programme à l'aide de wasatch.net:
C:> set WASATCHNET_LOGGER_PATHNAME=C:tempwasatchnet.log (assumes directory exists)
C:> set WASATCHNET_LOGGER_LEVEL=DEBUG (can be DEBUG, INFO, ERROR or NEVER)
Ces «par défaut» de l'environnement peuvent toujours être remplacés par le code d'application qui appelle explicitement les méthodes et les propriétés ci-dessus.
Au moins un langage client (LabVIEW NXG) ne prend en charge que les assemblages .NET chargés dans le GAC (General Assembly Cache). Pour être chargé dans le GAC, un assemblage doit être "fortement nommé" (signé numériquement) ... ainsi que ses dépendances directes (DLL de 3e partie comme Libusbdotnet).
Pour plus d'informations sur la signature numérique des assemblages wasatch.net pour le support GAC, les responsables de Wasatch devraient faire référence à "admin / keys / wasatch.net".
Si vous avez du mal à installer nos pilotes LibusB-Win32, voir:
Cela peut se produire lorsque Wasatch Dash ou un autre ancien produit de pilote Wasatch a été installé sur le même ordinateur que l'éclairage ou l'un de nos nouveaux pilotes (comme wasatch.net).
Vous pouvez dire que c'est le problème si vous regardez dans le gestionnaire de périphériques Windows, et vous pouvez voir "Wasatch Photonics Device FX2" répertorié sous "Contrôleurs de bus de série universels".
Pour résoudre, désinstallez d'abord l'ancien pilote, en cliquant avec le bouton droit sur "Wasatch Photonics Device FX2" et en sélectionnant "Disstal Device":

Assurez-vous de cliquer sur "Supprimer le logiciel du pilote pour cet appareil":

Dans le menu "Action", sélectionnez "Sactivez les modifications matérielles" pour réénumérer le périphérique sous le pilote de périphérique correct:

Vous devriez maintenant voir votre spectromètre répertorié sous le pilote LibusB-WIN32 attendu:

Vous devriez maintenant être en mesure de réécrire votre logiciel wasatch.net, wasatch.py ou éclairage et de vous connecter à votre spectromètre.
Pour des questions sur le conducteur ou l'API, veuillez contacter: