Wasatch.net-это обертка на уровне приложения OUS OUL Wasatch Photonics 'USB и SPI API. Он предоставляется таким образом, чтобы разработчикам приложений не нужно беспокоиться о Opcodes и [de] маршалке октетов необработанных данных; Они могут просто вызвать высокоуровневые свойства и методы, такие как интеграция, и GetPectRum ().
Ожидается, что Wasatch.net будет работать со всех совместимых с языками .NET, в том числе:
| Платформа | Статус теста |
|---|---|
| C# | Протестировано с помощью сообщества Visual Studio 2017 |
| Labview | Протестировано с 32-битным 2017 (см. Wasatch.lv) |
| Matlab/Simulink | Протестировано с 64-битным 2017b (см. Wasatch.matlab) |
| Embarcadero Delphi | Протестировано в Delphi Community Edition 10.2 Over Com (см. Wasatch.delphi) |
| VBA (Excel) | Протестировано в Office 2010 64-бит (см. Wasatch.excel) |
| Ведущий | не запускается (запланировано через RCLR) |
| Ксамарин | не началось |
| Visual Basic.net | не началось |
| F# | не началось |
| Wolfram Mathematica | не началось |
Если есть и другие, которые вы хотели бы видеть в списке, пожалуйста, сообщите нам об этом, и мы протестируем их!
Предварительно скомпилированные установщики доступны для 32-битных и 64-битных Windows:
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
Для примера вызова кода см. Включенный C# winformdemo.
Документация API доступна здесь:
Водитель предназначен для того, чтобы внимательно имитировать USB API, определенные в следующих документах:
Таким образом, большинство вопросов о параметрах, режимах и опциях, вероятно, могут быть разрешены путем обзора базового интерфейса связи спектрометра.
В качестве справочных реализаций предоставляются драйверы приложений Photonics Wasatch, чтобы продемонстрировать, как командовать и контролировать наши спектрометры по USB с различных платформ и языков. В качестве рабочих примеров и «удобных оберток» над нашим USB API они не гарантируют включать удобные функции для каждого вызова и опции в аппаратном API, а также не обязательно наиболее эффективная или оптимальная реализация на любом данном языке.
Формальный и полный интерфейс с нашими спектрометрами представлен в нашей документации USB API. Стандартные драйверы USB для доступа к этому прямому интерфейсу многочисленны во всех стандартных операционных системах: Libusb, Winusb и т. Д. Никаких дополнительных обертка или библиотек не требуется для полного использования наших спектрометров с платформы по вашему выбору.
Если существует спектрометр или функция спектроскопии, которую вы не найдете в нашей коллекции обертки с открытым исходным кодом, свяжитесь с нами и запросите его дополнение; Или, если вы хотите «испачкать руки», не стесняйтесь создавать свою собственную реализацию и, необязательно, поделитесь им с нами для слияния в базовое распространение. Wasatch Photonics гордится тем, что помогает поддерживать наше онлайн -сообщество, но не слишком гордится, чтобы отказываться от патчей, когда они улучшают продукт!
Тем не менее, некоторые известные области для улучшения можно найти в нашем отставании (ниже).
Wasatch.net распределяется в файле Microsoft Installer (.msi), который устанавливает Wasatchnet.dll и Libusbdotnet.dll в C: Windows (так что они всегда будут в системном пути). Драйверы FTDI также установлены для поддержки коммуникаций SPI.
Он также устанавливает простое приложение C# Spectroscopy Gui, WinformDemo, в разделе Program Files Wasatch Photonics (или программные файлы (x86) в 32-битных системах), предоставляя вам средства для управления спектрометром и быстро убедиться, что драйвер установлен и работает правильно.
Помимо двойного щелчка установщика .msi, для полной установки требуется один или два дополнительных шага:
Wasatch.net-это «драйвер приложений» высокого уровня, который связывается с нашими спектрометрами, используя драйвер «среднего уровня» Libusbdotnet, который в разводе сообщает, используя «низкоуровневый» драйвер USB Libusb-Win32. Тем не менее, Windows не знает , что наши спектрометры предназначены для использования Libusb-Win32, пока мы не скажем!
Таким образом, первое, что нам нужно сделать, это установить файлы .inf, которые связывают наши USB -устройства (через VID/PID) с Libusb. Это процесс для этого:
Подключите спектрометр фотоники USB Wasb.
Windows может побудить вас «найти драйверы для этого устройства». Если нет, перейдите в диспетчер устройств (просто введите «Диспетчер устройств» в поле поиска Win10 в панели начала).
Ваш спектрометр (ы) должен появляться как «Stroker FX2» или «камера Stroker Ingas» под «другими устройствами».

Щелкните правой кнопкой мыши в запись Stroker и выберите «Обновить драйвер».
Выберите «Вручную просмотрите для водителей».

Убедитесь, что «[x] включают подпапки».
Зайдите на «C: Program Files Wasatch Photonics Wasatch.net libusb_drivers» или «C: Program Files (x86) Wasatch Photonics Wasatch.net libusb_drivers» в зависимости от времени.



Этот шаг считается необходимым только для разработчиков, использующих Visual Basic 6 (VB6) или Visual Basic для приложений (VBA, часть Microsoft Excel).
Поскольку наш установщик .msi не регистрирует файл .tlb, необходимый VB6/VBA, вам необходимо выполнить один дополнительный ручной шаг:
Перейдите к Program Files Wasatch Photonics Wasatch.net (или программные файлы (x86) в 32-битных системах)
Щелкните правой кнопкой мыши пакетный файл "RegisterDll.bat" и выберите «Запустить как администратор»


Итак, вы хотели бы построить и компилировать wasatch.net самостоятельно из источника? Хорошо, вот как нам тоже нравится это делать ... ты учишься намного больше :-)
Драйвер был написан и протестирован в рамках сообщества Visual Studio 2017 на 64-разрядном 64-битном WIN10. Он сам зависит от следующих библиотек:
URL: https://sourceforge.net/projects/libusbdotnet/files/libusbdotnet/
Это обертка .NET над стандартным Libusb-Win32, которая используется многими поставщиками USB-устройств. Предварительно скомпилированный DLL, предоставленный в нашем LIB/ каталоге, был построен из V2.2.8 с использованием сообщества Visual Studio 2017 против профиля клиента .NET 4.0.
Чтобы использовать спектрометры серии XL с системой камер Andor, Wasatch.net требует, чтобы Andor Driver Pack 2 был установлен. В настоящее время это доступно от Andor по следующей ссылке:
Смотрите readme-spi.md.
Наш стандартный DLL построен против профиля клиента .NET 4.8 против цели отладки, поэтому DLL будет иметь максимальное количество символов отладки и метаданных для устранения неполадок. WinformDemo построен против .NET 4.8.
Стандартная и рекомендуемая конфигурация сборки-X64, но мы также распространяем установщики для X86 (WIN32), так как, например, многие пользователи имеют 32-битные версии LabView даже в 64-битных операционных системах.
По пользовательскому запросу мы также включаем установщик "AnyCPU", но в этой конфигурации отсутствуют некоторые функциональные возможности (например, драйверы для Andor / XL -спектрометры).
Пользователи могут самостоятельно создать библиотеку против любой целевой конфигурации или архитектуры; Пожалуйста, дайте нам знать, если вы столкнетесь с любыми проблемами, которые мы можем помочь решить.
Если вам все еще нужно построить против .NET Framework 4.0, проверьте филиал «Framework40» и построить с помощью Visual Studio 2019 Community Edition.
Самый простой способ проверить, успешна ли ваша установка -запустить предоставленную WinformDemo, который должен быть доступен в вашем меню «Пуск» под фотоникой Wasatch -> wasatch.net -> winformDemo.
Если у вас есть подключенный спектрометр Wasatch Photonics и правильно отображает «устройства Libusb-Win32» в диспетчере устройств, вы сможете запустить демонстрацию, а затем нажмите «Инициализировать», чтобы подключиться к спектрометру.
Хотя библиотека позволяет приложениям настраивать журналирование программно через Driver.logger.Level и .SetPathName (), не все приложения делают это. Конечные пользователи скомпилированных приложений все еще могут настроить журнал вручную, установив эти переменные среды, прежде чем запустить программу с использованием 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)
Эти «значения по умолчанию» среды могут быть переопределены кодом приложения, которая явно вызывает вышеуказанные методы и свойства.
По крайней мере, один язык клиента (LabView NXG) поддерживает только сборки .NET, загруженные в GAC (кеш общей сборки). Чтобы быть загруженным в GAC, сборка должна быть «сильно названа» (цифровой подписание) ... наряду с прямыми зависимостями (DLL 3-й части, такие как Libusbdotnet).
Для получения информации о цифровой подписании сборок wasatch.net для поддержки GAC, содействующие Wasatch должны ссылаться на «admin/keys/wasatch.net».
Если у вас проблемы с установкой наших драйверов Libusb-Win32, см.
Это может произойти, когда Wasatch Dash или другой старый продукт драйвера Wasatch был установлен на том же компьютере, что и Onlighten или один из наших новых драйверов (например, Wasatch.net).
Вы можете сказать, что это проблема, если вы посмотрите на диспетчер устройств Windows, и вы можете увидеть «Wasatch Photonics Device FX2», перечисленное в разделе «Универсальные серийные контроллеры шины».
Чтобы разрешить, сначала удалите старшего драйвера, щелкнув правой кнопкой мыши «Устройство фотоники Wasatch Fx2» и выбрав «Устройство удаления»:

Убедитесь, что вы нажмите «Удалить программное обеспечение для драйверов для этого устройства»:

В меню «Действие» выберите «Сканировать для изменений аппаратного обеспечения», чтобы повторно размер устройства под правильным драйвером устройства:

Теперь вы должны увидеть ваш спектрометр, указанный в ожидаемом драйвере Libusb-Win32:

Теперь вы должны иметь возможность перезапустить свое программное обеспечение Wasatch.net, wasatch.py или Onlighten и подключиться к своему спектрометру.
Для вопросов о водителе или API, пожалуйста, свяжитесь: