Документация открытых методов класса UsbDevice
pyspectrum.UsbDevice
Класс для работы с USB устройством.
Пример использования:
device = UsbDevice(vendor=0x0403, product=0x6014)
device.set_timer(1)
frame = device.read_frame(10)
device.close()
__init__(vendor, product, read_timeout=10000)
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
vendor
|
int
|
Vendor ID USB устройства |
required |
product
|
int
|
Product ID USB устройства |
required |
read_timeout
|
int
|
Timeout для операций чтения (в миллисекундах) |
10000
|
close()
Закрывает соединение с USB Спектрометром.
is_opened: bool
property
Открыто ли USB устройство.
Returns:
| Type | Description |
|---|---|
bool
|
True если USB Device открыт для работы |
get_pixel_count()
Возвращает кол-во пикселей в линии.
Returns:
| Type | Description |
|---|---|
int
|
Кол-во пикселей |
set_timer(millis)
Выставляет продолжительность единичного кадра (накопления) - время базовой экспозиции τ.
Базовое время экспозиции определяется из мантиссы и экспоненты таймера как:
τ = 0.1 ms * mant * 10 ^ exp
Размеры мантиссы и экспоненты:
-
Мантиса таймера -
10 бит -
Экспонента таймера -
2 бита
Структура данных пакета команды:
Поле ANS_DATA в ответе содержит 0.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
millis
|
int
|
время базовой экспозиции в мс |
required |
read_frame(n_times)
Читает кадр спектральных данных с USB спектрометра.
Один кадр состоит из n_times накоплений/линий.
Каждое накопление/линия в свою очередь состоит из pixelNumber пикселей в гибридной сборке фотодетекторов.
-
pixelNumber- устанавливается командойCMD_CODE_WRITE_PIXEL_NUMBER -
Каждый пиксель -
2 байта -
Каждый кадр =
pixelNumber * n_times * 2 байт
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
n_times
|
int
|
кол-во накоплений/линий (4 байта |
required |
Returns:
| Type | Description |
|---|---|
Frame
|
Объект кадра |