Использование LabVIEW без установки специальных драйверов внешних устройств
Operational "How to" Guides
Summary
Пример простой программы с использованием базовых функций прибораDescription
В настоящее время LabVIEW является одним из наиболее широко используемых языков для программирования испытательного и измерительного оборудования. В данном материале приведена наглядная демонстрация того, как можно программировать устройства без использования драйвера. У данного подхода есть несколько преимуществ. Первое и главное преимущество заключается в том, что при этом вы получаете доступ к полному набору SCPI-команд прибора. В вашем распоряжении будет весь спектр возможностей этого прибора. Второе преимущество состоит в том, что вам не нужно тратить время на загрузку и настройку драйверов.
Будет рассмотрен пример с использованием источника питания Keysight серии N6700B, подключенного к локальной сети (LAN). Для связи с прибором будут использованы команды VISA в LabVIEW. Первым делом нужно получить строку инициализации VISA из библиотек ввода/вывода Keysight (или любой другой библиотеки ввода/вывода, которую вы используете). Строка инициализации прибора N6700B показана на приведённом ниже рисунке (из библиотек ввода/вывода Keysight):
Получив адрес VISA, запустите LabVIEW и выберите новый виртуальный прибор (VI). Перейдите в Functions Pallette (Палитра функций) -> Instrument IO (Вводы/выводы прибора) -> VISA -> Advanced (Расширенные настройки) и выберите Open (Открыть). Эта функция откроет сеанс связи VISA с вашим прибором. Функция имеет множество настраиваемых параметров, но можно просто задть адрес прибора и тайм-аут открытия сеанса VISA (VISA Open):
После открытия сеанса можно отправлять первые команды. Обычно первыми отправляются: *RST и *IDN? Таким образом получается подтверждение статуса идентификации и наличия стабильной связи с прибором. Для того чтобы отправить команду, следует перейти в меню VISA и выбрать Write (Запись). Сюда нужно будет присоединить несколько строк. В LabVIEW вы всегда будете присоединять строки «VISA Resource Name Out» и «error out» по всему тексту своей программы (о чем свидетельствует данный пример). Команда имеет другой формат ввода: она должна быть в виде строковой переменной.
При отправке запроса необходимо обеспечить считывание буфера выходных данных. Это выполняется путем выбора операции Read (Чтение) в меню VISA. Для считывания нужно задать число считываемых байтов (обычно задаётся 100 байт, чтобы они ничему не мешали). Кроме того, вам нужен индикатор строки, чтобы можно было считывать и отображать результаты запроса *IDN.
В примере программа заканчивается после установления напряжения питания 4 В, включения выхода и измерения напряжения. Во всех этих шагах будут использоваться те же команды считывания и записи, которые использовались ранее. В конце будет истользована команда VISA Close (Закрыть). Использование команды закрытия отменит распределение ресурсов и освободит прибор. Это правильный приём программирования, о котором часто забывают. После всех операций программа выглядит следующим образом:
После запуска готовой программы будут получены следующие результаты:
Очевидно, что результаты полностью соответствуют ожиданиям, а это значит, что программа работает корректно.