Wasatch.net是Wasatch Photonics的USB和SPI API的应用程序级包装器。提供了应用程序开发人员无需担心原始数据的opcodes和[de]编组八位位。他们可以简单地调用高级属性和诸如IntegrationTimems和getspectrum()之类的方法。
Wasatch.net有望从所有.NET兼容语言中使用,包括:
| 平台 | 测试状态 |
|---|---|
| C# | 通过Visual Studio 2017社区测试 |
| LabView | 用2017年32位测试(请参见Wasatch.lv) |
| MATLAB/SIMULINK | 用2017b 64位测试(请参见Wasatch.matlab) |
| Embarcadero Delphi | 通过com上的Delphi Community Edition 10.2测试(请参阅Wasatch.delphi) |
| VBA(Excel) | 通过Office 2010 64位测试(请参阅Wasatch.excel) |
| r | 没有开始(通过RCLR计划) |
| Xamarin | 没有开始 |
| Visual Basic.net | 没有开始 |
| F# | 没有开始 |
| Wolfram Mathematica | 没有开始 |
如果您想查看其他人,请告诉我们,我们将对其进行测试!
预编译安装程序可用于32位和64位窗口:
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:
因此,有关参数,模式和选项的大多数问题都可以通过审查基础光谱仪沟通接口来解决。
提供WASATCH PHOTONICS应用程序驱动程序作为参考实现,以演示如何从各种平台和语言中命令和控制USB上的光谱仪。作为在我们的USB API上的工作示例和“便利性包装器”,他们不能保证在硬件API中包含每个呼叫和选项的便利功能,也不一定是任何给定语言中最有效或最佳的实现。
我们的USB API文档中提供了与光谱仪的正式和完整接口。在所有标准操作系统上,标准的USB驱动程序访问该直接接口都很丰富:libusb,hinusb等。从您选择的平台中充分使用我们的光谱仪,不需要其他包装器或库。
如果您没有在我们的开源包装器收藏中找到的光谱仪或光谱函数,请与我们联系并要求添加;或者,如果您想“弄脏双手”,请随时创建自己的实现,并与我们共享以合并为基础分布。 Wasatch Photonics很荣幸能帮助我们的在线社区,但在改善产品时不会太自豪地拒绝补丁!
也就是说,在我们的积压待处理中可以找到一些已知的改进领域(下图)。
WASATCH.NET分布在Microsoft Installer(.msi)文件中,该文件安装了wasatchnet.dll和libusbdotnet.dll c: Windows(因此它们始终在系统路径中)。还安装了FTDI驱动程序以支持SPI通信。
它还在 Program Files Wasatch Photonics(或32位系统上的Program Files(X86))下安装了简单的C#光谱GUI应用程序WinformDemo,在32位系统上),为您提供了控制光谱仪的手段,并快速验证驱动程序已安装并正常工作。
除了双击.msi安装程序外,完整安装还需要一个或两个附加步骤:
Wasatch.net是一个高级“应用程序驱动程序”,它使用“中级”驱动程序libusbdotnet与我们的光谱仪进行通信,该驱动程序使用“低级” USB驱动程序libusb-win32进行通信。但是,Windows不知道我们的光谱仪旨在使用Libusb-Win32,直到我们告诉它!
因此,我们需要做的第一件事是安装.INF文件,该文件将USB设备(通过VID/PID)与Libusb相关联。这是这样做的过程:
插入USB WASATCH光子学光谱仪。
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安装程序未注册VB6/VBA所需的.TLB文件,因此您需要执行一个额外的手动步骤:
导航到 program Files WASATCH PHOTONICS WASATCH.NET(或32位系统上的程序文件(x86))
右键单击批处理文件“ registerdll.bat”,然后选择“作为管理员运行”


因此,您想从源头构建和编译Wasatch.net?很好,这也是我们也喜欢做的……您学到了更多的东西:-)
该驾驶员是在Win10 64位的Visual Studio 2017社区下编写和测试的。它本身取决于以下库:
URL:https://sourceforge.net/projects/libusbdotnet/files/libusbdotnet/
这是许多USB设备供应商使用的标准Libusb-Win32上的.NET包装器。我们的LIB/ Directory中提供的预编译的DLL是使用Visual Studio 2017社区与.NET 4.0客户端配置文件构建的。
要与Andor Camera系统一起使用XL系列光谱仪,Wasatch.net需要安装Andor驱动程序包2。目前可以从Andor中获得以下链接:
请参阅readme-spi.md。
我们的标准DLL是针对.NET 4.8客户端配置文件构建的,因此DLL将具有用于用户故障排除的最大调试符号和元数据。 WinFormDemo是针对.NET 4.8构建的。
标准和推荐的构建配置为X64,但是我们还为X86(WIN32)分发了安装程序,例如,即使在64位操作系统上,许多用户甚至具有32位版本的LabView版本。
通过用户请求,我们还包括一个“ AnyCPU”安装程序,但是此配置缺少某些功能(例如,andor / XL光谱仪的驱动程序)。
欢迎用户根据任何目标配置或体系结构来构建库本身;如果您遇到任何可以帮助解决的问题,请告诉我们。
如果您仍然需要与.NET Framework 4.0建立构建,请查看“ Framework40”分支并使用Visual Studio 2019 Community Edition构建。
测试安装是否成功的最简单方法是运行提供的winformdemo,应该在wasatch photonics下的开始菜单上可用 - > wasatch.net-> winformdemo。
如果您在设备管理器中的“ libusb-win32设备”下正确显示了WASATCH光子光谱仪并正确显示,则应可以运行演示,然后单击“初始化”以连接到光谱仪。
尽管库让应用程序通过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)仅支持加载GAC中加载的.NET组件(大会缓存)。为了加载到GAC中,必须“强烈命名”(数字签名)...及其直接依赖项(例如Libusbdotnet)。
有关数字签名WASATCH.NET组件以获得GAC支持的信息,Wasatch维护者应引用“ Admin/Keys/Wasatch.net”。
如果您在安装我们的libusb-win32驱动程序时遇到困难,请参见:
当Wasatch Dash或其他较旧的Wasatch驱动程序产品与Enlighten或我们的新驱动程序之一(例如Wasatch.net)安装在同一台计算机上时,可能会发生这种情况。
您可以说,如果您在Windows设备管理器中查看,这就是问题所在,并且可以看到在“通用串行总线控制器”下列出的“ Wasatch Photonics Device FX2”。
要解决,请首先通过右键单击“ Wasatch Photonics Device FX2”并选择“卸载设备”:

确保单击“删除此设备的驱动程序软件”:

从“操作”菜单中,选择“扫描硬件更改”以在正确的设备驱动程序下重新数量:

现在,您应该看到在预期的Libusb-Win32驱动程序下列出的光谱仪:

现在,您应该能够重新运行wasatch.net,wasatch.py或启发软件并连接到光谱仪。
有关驾驶员或API的问题,请联系: