Программное управление Analog Discovery
На этой странице представлены все доступные функции программного управления Analog Discovery в Engee.
|
Чтобы работать с функциями программного управления Analog Discovery в Engee, установите пакет поддержки оборудования как указано в статье. После выполните:
|
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.AnalogDiscovery — Type
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.WaveGenCfg — Method
ANALOGDISCOVERY.WaveGenCfg
Структура конфигурации генератора аналогового сигнала.
Используется в ANALOGDISCOVERY.AO_config(...) для задания параметров генерируемого сигнала.
Поля
-
Wfunction— код типа сигнала; -
frequency— частота сигнала; -
amplitude— амплитуда сигнала; -
phase— фаза сигнала; -
offset— смещение постоянного тока; -
similarity— параметр симметрии/«подобия» сигнала.
Коды типов сигнала (Wfunction)
| Вид сигнала | Код |
|---|---|
Постоянный |
0 |
Синусоида |
1 |
Прямоугольный |
2 |
Треугольный |
3 |
Линейный возрастающий |
4 |
Линейный убывающий |
5 |
Шум |
6 |
Импульсы |
7 |
Трапециевидный |
8 |
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.AI_config — Function
ANALOGDISCOVERY.AI_config(range::Int64=5, sampling_rate::Float64=20e6, buffer_size::Int64=0)::Nothing
Настраивает параметры сбора данных аналогового входного сигнала.
Аргументы
-
range::Int64=5: диапазон входного напряжения. -
sampling_rate::Float64=20e6: частота дискретизации (Гц). -
buffer_size::Int64=0: размер буфера сбора данных. Значение0обрабатывается как максимальный размер буфера (и дополнительно ограничивается возможностями устройства).
Примеры
using Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY
ANALOGDISCOVERY.connect()
# Пример настройки: диапазон 5 В, 1 МГц, буфер 8192 отсчета
ANALOGDISCOVERY.AI_config(5, 1e6, 8192)
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.AI_read — Method
ANALOGDISCOVERY.AI_read(channel::Int64)::Float64
Считывает значение входного напряжения на указанном канале АЦП.
Аргументы
-
channel::Int64: номер входного канала для чтения.
Возвращаемое значение
Float64 — измеренное значение напряжения указанного канала.
Примеры
using Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY
ANALOGDISCOVERY.connect()
ANALOGDISCOVERY.AI_config()
u = ANALOGDISCOVERY.AI_read(1)
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.AI_read_buffer — Method
ANALOGDISCOVERY.AI_read_buffer(channel::Int64)::Vector{Float64}
Считывает буфер указанного канала АЦП.
Аргументы
-
channel::Int64: номер входного канала для чтения.
Возвращаемое значение
Vector{Float64} — вектор значений напряжения из буфера.
Примеры
using Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY
ANALOGDISCOVERY.connect()
ANALOGDISCOVERY.AI_config(buffer_size=4096)
buf = ANALOGDISCOVERY.AI_read_buffer(1)
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.AI_stop — Method
ANALOGDISCOVERY.AI_stop()::Nothing
Останавливает сбор данных.
Примеры
using Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY
ANALOGDISCOVERY.AI_stop()
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.AO_config — Method
ANALOGDISCOVERY.AO_config(channel::Int64, config::ANALOGDISCOVERY.WaveGenCfg)::Int64
Настраивает и запускает генерацию аналогового сигнала на указанном канале.
Аргументы
-
channel::Int64: номер выходного канала для настройки. -
config::ANALOGDISCOVERY.WaveGenCfg: конфигурация генерируемого сигнала.
Возвращаемое значение
Int64 — код статуса:
-
0— успешно; -
-1— сбой настройки.
Примеры
using Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY
ANALOGDISCOVERY.connect()
cfg = ANALOGDISCOVERY.WaveGenCfg(
1, # Wfunction: синус
1000.0, # frequency, Hz
1.0, # amplitude
0.0, # phase
0.0, # offset
0.5 # similarity
)
status = ANALOGDISCOVERY.AO_config(1, cfg)
status == 0 || error("AO_config failed (status=$status)")
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.AO_stop — Method
ANALOGDISCOVERY.AO_stop(channel::Int64)::Nothing
Отключает генерацию сигнала на указанном канале.
Аргументы
-
channel::Int64: номер выходного канала для отключения.
Примеры
using Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY
ANALOGDISCOVERY.AO_stop(1)
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.connect — Method
ANALOGDISCOVERY.connect()::Int64
Устанавливает соединение с устройством Analog Discovery.
Перед использованием функций AO_* и AI_* необходимо вызвать connect().
Возвращаемое значение
Int64 — код статуса:
-
0— подключение установлено успешно; -
-1— сбой подключения; -
2— устройство уже подключено.
Примеры
using Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY
status = ANALOGDISCOVERY.connect()
if status == 0 || status == 2
# можно работать с устройством
else
error("Не удалось подключиться к Analog Discovery (status=$status)")
end
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.disconnect — Method
ANALOGDISCOVERY.disconnect()::Nothing
Закрывает соединение с подключенным устройством Analog Discovery и освобождает ресурсы. При закрытии соединения останавливаются генерация сигналов и захват данных.
Примеры
using Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY
ANALOGDISCOVERY.disconnect()
#
Main.EngeeDeviceManager.Devices.ANALOGDISCOVERY.print_info — Method