Wasatch.net은 Wasatch Photonics의 USB 및 SPI API의 응용 프로그램 수준 래퍼입니다. 응용 프로그램 개발자는 Opcodes 및 [de] 마시 킹 옥넷에 대해 걱정할 필요가 없도록 제공됩니다. 그들은 단순히 높은 수준의 속성 및 integrationtimems 및 getSpectrum ()과 같은 방법을 호출 할 수 있습니다.
Wasatch.net은 다음을 포함하여 모든 .NET- 호환 언어에서 작동 할 것으로 예상됩니다.
| 플랫폼 | 테스트 상태 |
|---|---|
| 기음# | 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 참조) |
| 아르 자형 | 시작되지 않음 (RCLR을 통해 계획) |
| Xamarin | 시작되지 않았습니다 |
| Visual Basic.net | 시작되지 않았습니다 |
| 에프# | 시작되지 않았습니다 |
| 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를 밀접하게 모방하도록 설계되었습니다.
따라서 기본 분광계 통신 인터페이스를 검토하여 매개 변수, 모드 및 옵션에 대한 대부분의 질문을 해결할 수 있습니다.
Wasatch Photonics Application 드라이버는 다양한 플랫폼 및 언어에서 USB를 통해 분광계를 명령하고 제어하는 방법을 보여주기 위해 참조 구현 으로 제공됩니다. USB API에 대한 작업 예제 및 "편의 래퍼"로서 하드웨어 API 내의 모든 통화 및 옵션에 대한 편의 기능을 포함하도록 보장되지 않으며 , 주어진 언어에서 가장 효율적이거나 최적의 구현이 아닙니다 .
분광기에 대한 공식적이고 완전한 인터페이스는 USB API 문서에 제공됩니다. Libusb, Winusb 등 모든 표준 운영 체제에서 직접 인터페이스에 액세스 할 수있는 표준 USB 드라이버는 선택의 플랫폼에서 분광기를 최대한 활용할 필요가 없습니다.
오픈 소스 래퍼 컬렉션에서 제공되지 않은 분광계 또는 분광 기능이있는 경우 저희에게 연락하여 추가를 요청하십시오. 또는 "손을 더럽 히고"원하는 경우 자신의 구현을 자유롭게 만들고 선택적으로 기본 분포에 병합을 공유하십시오. Wasatch Photonics는 온라인 커뮤니티를 지원하는 데 도움이된다는 것을 자랑스럽게 생각하지만 제품을 개선 할 때 패치를 거절하는 것을 자랑스럽게 생각하지 않습니다!
즉, 개선을위한 알려진 일부 영역은 백 로그 (아래)에서 찾을 수 있습니다.
Wasatch.net은 C : Windows 아래에 Wasatchnet.dll 및 libusbdotnet.dll을 설치하는 Microsoft Installer (.msi) 파일에 배포됩니다 (따라서 항상 시스템 경로에 있습니다). FTDI 드라이버도 SPI 통신을 지원하도록 설치됩니다.
또한 Program Files Wasatch Photonics (또는 32 비트 시스템의 Program Files (x86) 아래에 간단한 C# Spectroscopy GUI 앱, WinFormDemo를 설치하여 분광계를 제어하고 드라이버가 설치하고 올바르게 작동하는지 신속하게 확인할 수있는 수단을 제공합니다.
.MSI 설치 프로그램을 두 번 클릭하는 것 외에도 전체 설치에 필요한 하나 또는 두 개의 추가 단계가 있습니다.
Wasatch.net은 "중간 레벨"드라이버 Libusbdotnet을 사용하여 분광기와 통신하는 높은 수준의 "응용 프로그램 드라이버"로, "저수준"USB 드라이버 Libusb-WIN32를 사용하여 통신합니다. 그러나 Windows는 우리의 분광기가 우리가 말할 때까지 libusb-Win32를 사용하기위한 것임을 알지 못합니다!
따라서 가장 먼저해야 할 일은 USB 장치 (VID/PID를 통해)를 libusB와 연결하는 .inf 파일을 설치하는 것입니다. 이것은 그렇게하는 과정입니다.
USB Wasatch Photonics Spectrometer를 연결하십시오.
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) 또는 Applications for Applications (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/ 디렉토리에 제공된 사전 컴파일 된 DLL은 Visual Studio 2017 커뮤니티를 사용하여 .NET 4.0 클라이언트 프로파일에 대해 v2.2.8에서 구축되었습니다.
Andor 카메라 시스템과 함께 XL 시리즈 분광기를 사용하려면 Wasatch.net은 Andor Driver Pack 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 Photonics Spectrometer가 있고 올바르게 표시되면 데모를 실행 한 다음 "초기화"를 클릭하여 분광계에 연결하십시오.
라이브러리에 응용 프로그램이 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 (General Assembly Cache)에로드 된 .NET 어셈블리 만 지원합니다. GAC에로드 되려면 어셈블리는 직접 의존성 (Libusbdotnet과 같은 3 자 DLL)과 함께 "강하게 명명"(디지털 서명)을 받아야합니다.
GAC 지원을위한 디지털 서명 WASATCH.NET 어셈블리에 대한 정보는 Wasatch 관리자가 "admin/keys/wasatch.net"을 참조해야합니다.
Libusb-Win32 드라이버를 설치하는 데 어려움이있는 경우 다음을 참조하십시오.
Wasatch Dash 또는 다른 이전 Wasatch 드라이버 제품이 Enlighten과 동일한 컴퓨터 또는 Wasatch.net과 같은 새로운 드라이버 중 하나에 설치되었을 때 발생할 수 있습니다.
Windows Device Manager를 살펴보면 이것이 문제라고 말할 수 있으며 "Universal Serial Bus Controllers"에 나열된 "Wasatch Photonics Device FX2"를 볼 수 있습니다.
"Wasatch Photonics Device FX2"를 마우스 오른쪽 버튼으로 클릭하고 "설치되지 않은 장치"를 선택하여 먼저 구형 드라이버를 제거하려면 :

"이 장치의 드라이버 소프트웨어 삭제"를 클릭하십시오.

"액션"메뉴에서 "하드웨어 변경 사항 스캔"을 선택하여 올바른 장치 드라이버에서 장치를 다시 표현합니다.

이제 예상 Libusb-Win32 드라이버 아래에 나열된 분광계가 표시되어야합니다.

이제 wasatch.net, wasatch.py 또는 Enlightenenenence 소프트웨어를 다시 실행하고 분광계에 연결할 수 있어야합니다.
운전자 또는 API에 대한 질문은 다음과 같이 문의하십시오.