5. Драйверы приборов в сравнении с прямыми командами SCPI

CH5_InstrumentDriversLayer_16x9.png

В предыдущих разделах мы ознакомились с принципами дистанционного управления приборами Rohde & Schwarz посредством прямых команд SCPI. В качестве альтернативы Rohde & Schwarz предлагает бесплатные драйверы приборов, которые обеспечивают уровень абстракции между вашим приложением и командами SCPI прибора.

Вместо функций записи и чтения VISA и прямых команд SCPI вы можете использовать функции и атрибуты в драйвере прибора. Простой пример такой замены в драйвере прибора LabVIEW rsscope:

Аналогичная замена в C# выполняется с помощью драйвера прибора IVI.NET RsScope. Вы можете задавать отдельные параметры с помощью свойств или множество параметров с помощью метода:

В целях упрощения представленные выше иллюстрации прямых команд SCPI не содержат все операции, выполняемые драйверами приборов. Например, драйверы также ожидают от прибора подтверждения выполнения команды (см. Раздел 6 Синхронизация измерения) и проводят проверку на наличие ошибок после каждой команды (см. Раздел 7 Проверка прибора на наличие ошибок). Если вы используете прямые команды SCPI, вам придется самостоятельно позаботиться об этих задачах.

Преимущества и недостатки применения прямых команд SCPI

Преимущества:

  • Быстрое начало работы; описание всех команд SCPI содержится в руководстве пользователя для прибора.
  • Более быстрое исполнение.

Недостатки:

  • Необходимо отдельно позаботиться о синхронизации измерений и проверке на наличие ошибок на приборе.
  • Необходимо форматировать аргументы в команды SCPI. Это особенно сложно при работе с двоичными данными.
  • Полученную в ответ от прибора строку ресурса необходимо преобразовать в подходящий тип (например, целое число, число двойной точности, логическое значение, массивы или двоичные данные).

Преимущества и недостатки применения драйверов приборов

Преимущества:

  • Выполнение проверки на наличие ошибок после каждой команды. Проверку можно выключить для критических участков, где требуется максимальная скорость.
  • Синхронизация команд, выполнение которых занимает длительное время.
  • Форматирование аргументов в команды SCPI и интерпретация ответов прибора.
  • Драйверы приборов сопровождаются собственными справочными файлами *.chm.
  • Драйверы приборов всегда позволяют применять прямые команды SCPI.

Недостатки:

  • Требуется обучение и знакомство со структурой драйвера.
  • Дополнительные временные затраты. Их можно свести к минимуму за счет правильного подхода, см. Раздел 8 Оптимизация скорости
  • Иногда приходится ждать, пока в драйверах приборов будет реализована поддержка новых функций приборов.

Совместимость драйверов приборов Rohde & Schwarz с различными языками программирования

Представленная далее таблица устанавливает соответствие между драйверами приборов и языками программирования. Особенности каждой среды мы обсудим позднее.

Драйверы VXI plug&play Драйверы LabWindows/CVI Драйверы LabVIEW Драйверы IVI.NET Драйверы SCPI
Python X (громоздкие) X (некоторые приборы)
MATLAB X
C#, VB.NET X (если IVI.NET отсутствует) X X (некоторые приборы)
LabVIEW X
LabWindows/CVI X

Для пользователей Python

В настоящее время Rohde & Schwarz предлагает драйверы на основе Python 3.6+ SCPI для следующих приборов в хранилище pypi: CMW,SMx, CMA, CMX/CMP, OSP.
Для приборов без драйверов Python мы рекомендуем использовать прямые команды SCPI.

Для пользователей MATLAB

Rohde & Schwarz предлагает драйверы MATLAB MDD. Для работы с драйверами MDD требуются глубокие знания структуры драйверов VXI plug&play: необходимо вручную импортировать все перечислимые константы из заголовочного файла драйвера. Кроме того, требуется лицензия на MATLAB Instrument Control Toolbox. Пользователям MATLAB мы рекомендуем использовать прямые команды SCPI. В этом руководстве по применению рассматриваются оба подхода:

1MA171: Использование приборов Rohde & Schwarz в среде MATLAB

Для пользователей LabVIEW

Rohde & Schwarz предлагает полноценные драйверы LabVIEW. Подробнее см. руководство по применению:

1MA228: 10 советов и рекомендаций по использованию драйверов приборов Rohde & Schwarz LabVIEW

Для пользователей C# и VB.NET

Возможные варианты:

  • Драйверы IVI.NET — предлагаются для большинства приборов. Здесь вы также можете использовать драйверы VXI plug&play, которые содержат классы-оболочки C# и VB.NET. См. специальное руководство по применению:
    1MA268: Как использовать драйверы приборов Rohde & Schwarz IVI.NET
    Драйверы можно скачать на страницах нашей продукции.
  • Драйверы на основе SCPI — автоматически генерируются из дерева SCPI-команд прибора и точно следуют его синтаксису. Если вы привыкли работать с командами SCPI, используйте данный вариант. Эти драйверы обеспечивают интеллектуальное дополнение ввода и защищенный от ошибок интерфейс для команд SCPI. Драйверы можно скачать в виде пакетов NuGet на сайте nuget.org:
    https://www.nuget.org/profiles/rohde-schwarz

Для пользователей LabWindows/CVI и прочих сред C/C++

Драйверы VXI plug&play представляют собой компилированные драйверы CVI для 32- и 64-битных приложений Windows. Их можно использовать в языках C/C++.

Чтобы использовать драйвер CVI, необходимо полностью добавить его исходный код в ваш проект.

Чтобы использовать драйвер VXI plug&play, необходимо добавить его LLB-файл (для статического связывания) или DLL-файл (для динамического связывания) в ваш проект.

Request information

Do you have questions or need additional information? Simply fill out this form and we will get right back to you.

Ваш запрос отправлен. Мы свяжемся с вами в ближайшее время.
An error is occurred, please try it again later.