Руководство по программированию генераторов серии SDG |
![]() |
Добавил(а) microsin | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
К семейству генераторов SDG компании Siglent относятся такие генераторы сигналов произвольной формы, как SDG800, SDG1000, SDG1000X, SDG2000X, SDG5000, SDG6000X [1] и соответствующие им генераторы фирмы АКИП (см. таблицу ниже). Генераторы этой серии примечательны тем, что поддерживают интерфейс управления приборами компании National Instruments, так называемый интерфейс программирования NI-VISA [2]. В этой статье приведен перевод документации по программированию генераторов сигналов произвольной формы [3].
[Установка пакета NI-VISA] Перед началом программирования приборов Вам нужно установить NI-VISA. Этот пакет можно загрузить с сайта ni.com (для этого требуется бесплатная регистрация). Есть полная версия NI-VISA (full version), и есть версия только с поддержкой обмена данными (Run-Time Engine version). Полная версия включает драйвер устройства NI (NI device driver) и утилиту NI MAX (Measurement & Automation Explorer), которая дает пользователю базовый интерфейс для управления устройством. Версия Run-Time Engine немного меньше по размеру, чем полная версия, так как в ней присутствует только NI device driver. Обе версии имеют одинаковый принцип инсталляции. [Установка NI-VISA] 1. Скачайте последнюю версию пакета NI-VISA с сайта ni.com. Я советую скачать и установить полную версию, потому что в ней присутствуют примеры приложений, демонстрирующих принцип работы с библиотеками. Для закачки пакета NI-VISA пройдите процесс бесплатной регистрации на сайте ni.com. Также можете скачать NI-VISA версии 17.0 по ссылке [5]. 2. Если Вы скачали NI-VISA с сайта ni.com, то это будет самораспаковывающийся архив WinZip. Запустите его, и укажите любую временную папку на диске, куда WinZip распакует файлы, необходимые для установки. После этого нажмите кнопку Unzip. После распаковки автоматически запустится процесс установки пакета. Если Вы скачали полный пакет NI-VISA по ссылке [5], то это будет ZIP-архив. Распакуйте его в любую временную папку на диске, после этого запустите установщик setup.exe, находящийся в папке NI-VISA\17.0 архива. 3. Диалоги установки самые обычные. Нужно будет согласиться с условиями лицензии, выбрать путь на диске, куда будет установлен пакет, и в конце нужно выбрать составляющие части пакетов для установки. Можно оставить все по умолчанию, но я на всякий случай выбрал "установить все". 4. После того, как установка завершится, потребуется перезагрузить компьютер. [Подключение к инструменту] Управляемые через интерфейс VISA приборы и оборудование в терминологии National Instruments называются "инструментами". В зависимости от определенной модели Вашего генератора подключение между прибором и компьютером PC может осуществляться через интерфейс USB или LAN. Это руководство в качестве примера использует USB. a. Подключите генератор SDG через USB к компьютеру, который должен быть при этом включен. После этого включите SDG, и если он был подключен к этому компьютеру первый раз, то отобразится сообщение об установке устройства (Device Setup), и будет автоматически установлен драйвер устройства. b. Подождите несколько секунд окончания процесса установки драйвера. [Дистанционное управление] Пользователь может использовать команды SCPI для программирования и управления функциями генератора. Подробнее про примеры программирования см. соответствующие секции в конце статьи. Отправка команд SCPI через NI-VISA. Вы можете управлять генератором SDG дистанционно, через USB (иногда и через LAN, в зависимости от модели генератора), путем отправки команд SCPI через готовое программное обеспечение NI-VISA (например, с помощью утилиты NI MAX). 1. Запустите утилиту NI MAX, разверните дерево устройств My System -> Devices and Interfaces. Если генератор подключен, то в списке Вы увидите строку наподобие AKIP-3408-1 "USB0::0xF4ED::0xEE3A::NDG080B2150089::INSTR". Заключенная в двойные кавычки строка представляет собой полный путь (уникальный идентификатор инструмента, или имя ресурса VISA) для подключения к прибору в системе программирования NI-VISA. 2. Выберите в меню Tools -> NI-VISA -> VISA Interactive Control. Откроется окно диалога для выбора инструмента, выберите в ней Ваш генератор. В нашем примере это строка USB Instrument Resources -> USB0::0xF4ED::0xEE3A::NDG080B2150089::INSTR, и сделайте на ней двойной клик левой кнопкой мыши. 3. Откроется главное окно, дающее доступ к информации о приборе. Оно также позволяет отправлять в прибор команды и получать от прибора результаты выполнения этих команд. 4. Верхней части окна находятся кнопки для переключения функций утилиты. Кликните на Input/Output, откроется окно, которая на закладке Basic I/O позволяет посылать команды в прибор (Write), читать из прибора ответ (Read), и запрашивать выполнение определенной операции (Query). 5. В верхней части окна Вы увидите список базовых команд VISA, которые понимают большинство измерительных приборов, имеющих встроенную поддержку VISA. Первая команда в этом списке *IDN?\n (она выбрана по умолчанию), это команда получения информации о приборе. Кликните на кнопку Query, это вызовет отправку команды (операция Write) и последующее чтение результата команды (операция Read). Результат выполнения запроса Вы увидите на экране. В поле ввода "Select or Enter Command" можно ввести любую команду Полный список команд, которые можно использовать, есть в руководстве по программированию генераторов SDG [3], также см. таблицу 2.6. Ниже в таблице показаны несколько примеров запуска команд для генератора АКИП-3408/1 (это аналог Siglent SDG805 5MHz Waveform Generator). Некоторые команды не подразумевают ответа от прибора, и их можно запускать операцией записи (Write).
Примечание: \s это символ пробела (он отделяет параметры от команды), \n это символ возврата каретки (обозначает завершение строки команды). [Введение в язык SCPI] Текстовые команды, примеры отправки которых рассматривались во врезке выше, это ничто иное, как команды языка SCPI. В этой секции описывается команды для дистанционного управления, которые распознают генераторы SDG. Каждая команда или запрос передается в прибор в соответствии с её синтаксисом и дополнительной информацией, если таковые имеются. Различают просто команды, которые не требуют от прибора ответа на команду (COMMAND) и запросы, в ответ на которые прибор выдает требуемую информацию (QUERY). Почти всегда команда и запрос отличаются тем, что в команде после команды, через пробел, идут дополнительные параметры, а в запросе после команды указывается знак вопроса (?). Таблица 2.6. Список команд и запросов генераторов SDG.
Ниже приведено подробное описание команд SCPI из этой таблицы. [Общие команды] Стандарт IEEE определяет общие команды, используемые для запроса базовой информации об инструменте или для выполнения базовых операций. Эти команды обычно начинаются со звездочки *, и длина ключевого слова команды обычно составляет 3 символа. IDN. Запрос *IDN? приводит к тому, что инструмент идентифицирует сам себя. Ответ инструмента состоит из полей manufacturer, model, serial number, software version и firmware version. Синтаксис запроса: *IDN? Формат ответа: *IDN, < device id>,< model>,< serial number>,< software version>,< hardware version>. < device id> здесь SDG, что идентифицирует инструмент генератора. Пример, запрос на чтение информации о генераторе: *IDN? Ответ прибора: *IDN *,AKIP-3408-1,NDG080B2150089,1.08.01.08,02-00-00-04-00 Поле hardware version поддерживается не всеми генераторами. SDG800, SDG1000, SDG5000 выдают в ответе поле hardware version, в ответе приборов SDG1000X и SDG2000X не содержится это поле. Поле hardware version имеет 5 значений, отделяемых друг от друга дефисом: value1-value2-value3-value4-value5. value1: PCB, версия печатной платы. OPC. Команда *OPC (Operation Complete) устанавливает бит OPC (бит 0) в стандартном регистре Event Status Register (ESR). Эта команда не дает никакого другого эффекта в операциях устройства, потому что инструмент начинает парсинг команды или запроса только после того, как была полностью обработана предыдущая команда или запрос. На запрос *OPC? всегда придет ответ в виде ASCII-символа 1, потому что устройство ответит на запрос только тогда, когда предыдущая команда полностью выполнена. Таким образом выдавать запрос *OPC? следует только для того, чтобы зафиксировать момент времени, когда была выполнена предыдущая команда, не подразумевающая ответ, и прибор готов к обработке других команд. Синтаксис запроса: *OPC? Формат ответа: *OPC 1 CLS. Команда очищает все данные регистров состояния (status data registers). Синтаксис команды: *CLS ESE. Команда *ESE установит стандартный регистр Event Status Enable (ESE). Эта команда разрешить одно или большее количество событий в регистре ESR, чтобы их появление отражалось в суммарном бите оповещения (ESB summary message bit, бит 5) регистра STB. Запрос *ESE? читает содержимое регистра ESE. Синтаксис команды: *ESE < value> value значение от 0 до 255. Синтаксис запроса: *ESE? Формат ответа на запрос: *ESE < value> Пример: следующая инструкция позволяет устанавливаться биту ESB, если происходит запрос пользователя (URQ bit 6, т. е. десятичное число 64) и/или происходит ошибка, зависящая от устройства (DDE bit 3, т. е. десятичное число 8). Сумма этих значений 64+8=72 дает маску для регистра ESE. *ESE? Ответ на запрос: *ESE 72 См. также команду *ESR. ESR. Запрос *ESR? читает и очищает содержимое регистра состояния событий, Event Status Register (ESR). Ответ представляет сумму двоичных значений бит регистра 7..0. Синтаксис запроса: *ESR? Формат ответа: *ESR < value> < value> значение от 0 до 255. Пример, следующая инструкция читает и очищает содержимое регистра ESR: *ESR? Прибор возвратил: *ESR 0 См. также команды: *CLS, *ESE RST. Команда *RST инициирует сброс устройства, что приводит к восстановлению настроек по умолчанию. Синтаксис команды: *RST SRE. Команда *SRE установит регистр разрешения служб, Service Request Enable register (SRE). Эта команда позволяет пользователю указать, какие биты сообщения в регистре STB будут генерировать запрос обслуживания (service request). Оповещение об определенном сообщении разрешается записью в 1 бита в соответствующей позиции. И наоборот, запись 0 в определенный бит будет запрещать генерацию запроса на обслуживание (service request, SRQ)) для соответствующего события. Очистка регистра SRE запрещает прерывания SRQ. Запрос *SRE? вернет значение регистра SRE. Если перевести это значение в двоичную форму, то установка отдельных бит покажет, оповещение о каких событиях разрешено. Обратите внимание, что бит 6 (MSS) не может быть установлен, и возвращенное значение всегда будет показывать 0 в этой позиции бита. Синтаксис команды: *SRE < value> < value> это значение от 0 до 255. Синтаксис запроса: *SRE? Формат ответа: *SRE < value> Пример: следующая инструкция позволит генерировать SRQ, когда бит MAV (бит 4, что соответствует десятичному значению 16) или бит INB (бит 0, что соответствует десятичному значению 1) установятся в регистре STR вместе или по отдельности. Сумма масок этих бит 16+1 = 17. *SRE? Возвращаемое значение: *SRE 17 STB. Запрос *STB? читает содержимое регистра статуса, Status Register (STB), определенного в стандарте IEEE 488.2, и главного общего состояния, Master Summary Status (MSS). Ответ представляет значения бит 0..5 и бита 7 регистра байта состояния (Status Byte) и суммарного статуса сообщения (MSS). Ответ на запрос *STB? идентичен ответу на опрос SRE с тем лишь отличием, что состояние MSS появляется в бите 6 вместо сообщения RQS. Синтаксис запроса? *STB? Формат ответа: *STB < value> < value> это значение в диапазоне от 0 до 255. Пример: следующий запрос читает регистр байта состояния: *STB? Возвращенное значение: *STB 0 См. также команды: *CLS, *SRE. TST. Запрос *TST? выполняет внутреннее самотестирование, и ответ на него показывает, были ли определены в процессе теста какие-либо ошибки. Самотестирование включает проверку аппаратуры всех каналов. Отказы аппаратуры идентифицируются уникальным двоичным кодом, возвращаемым числом < status>. Ответ 0 означает, что не было никаких ошибок. Синтаксис запроса: *TST? Формат ответа: *TST < status> < status> значение 0 говорит об успешном прохождении теста. Примечание: команда TST не поддерживается генератором SDG800. См. также команду *CAL. WAI. Команда *WAI (WAIT, ожидать продолжения), требуемая стандартом IEEE 488.2, никак не влияет на инструмент, так как сигнал-генератор начнет выполнение команды только тогда, когда была полностью выполнена предыдущая команда. Синтаксис команды: *WAI См. также команду *OPC. DDR. Запрос DDR? читает и очищает содержимое специфичного для устройства регистра ошибки, Device Dependent Register (DDR). В случае отказа аппаратуры регистр DDR указывает место отказа. Синтаксис запроса: DDR? Формат ответа: DDR < value> < value> значение от 0 до 65535, если возвращен 0, то ошибки нет. Следующая таблица дает расшифровку бит значения ошибки:
Примечание: команда не поддерживается генераторами SDG800, SDG1000, SDG5000 и не поддерживается SDG1000x и SDG2000X. CMR. Запрос CMR? читает и очищает содержимое регистра ошибки команды, command error register (CMR). См. таблицу ниже, где показаны типы ошибок синтаксиса, обнаруженные инструментом. Синтаксис запроса: CMR? Формат ответа: CMR < value> < value> код ошибки от 0 до 14, 0 означает отсутствие ошибки.
Примечание: команда не поддерживается генераторами SDG800, SDG1000, SDG5000 и не поддерживается SDG1000x и SDG2000X. CHDR. Команда CHDR (возможен её длинный вариант Comm_HeaDeR) используется для изменения формата данных, возвращаемых в ответ на запрос. Параметр SHORT задает возвращать короткий формат, LONG задает длинный формат. OFF не возвращает ничего. Синтаксис команды: CHDR < parameter> < parameter> одно из значений SHORT, LONG или OFF. Пример, установка длинного формата команды запроса: CHDR LONG Пример чтения формата команды запроса: CHDR? Возврат: COMM_HEADER LONG Примечание: команда не поддерживается генераторами SDG800, SDG1000, SDG5000 и не поддерживается SDG1000x и SDG2000X. [Команда управления выходом] OUTP. Команда OUTP (возможен "длинный" синтаксис OUTPut) разрешает или запрещает выдачу на выход сигнала (коннектор Output, находящийся на передней панели генератора). Запрос вернет ON или OFF и параметры LOAD, PLRT. Синтаксис команды: < channel>:OUTP < parameter>
Примечание: < load> поддерживается не всеми генераторами, см. таблицу далее. Синтаксис запроса: < channel>:OUTP? Формат ответа: < channel>: OUTP < load> Примеры Включение канала 1: C1:OUTP ON Чтение выходного состояния канала 1: C1:OUTP? Возвращенное значение: C1:OUTP ON,LOAD,HZ,PLRT,NOR Установка нагрузки 50 ом: C1:OUTP LOAD,50 Установка load для HZ. C1:OUTP LOAD,HZ Установка нормальной полярности выхода: C1:OUTP PLRT,NOR Установка инверсной полярности: C1:OUTP PLRT,INVT Поддержка функций команды разными моделями приборов:
[Базовая команда управления генерацией] BSWV. Команда BSWV (возможен "длинный" синтаксис BaSic_WaVe) устанавливает или запрашивает основные параметры сигнала. Если в приборе SDG1000X включено комбинирование сигналов (wave combine), то Вы не можете установить для сигнала прямоугольную форму. Комбинация прямоугольных форм сигнала невозможна. Синтаксис команды: < channel>:BSWV < parameter> < channel> одно из значений C1 или C2 < parameter> параметр, см. таблицу ниже
Если команда не устанавливает базовый тип сигнала, то параметр WVPT будет установлен в текущий тип сигнала, где: < type> тип сигнала, одно из значений SINE, SQUARE, RAMP, PULSE, NOISE, ARB, DC. Синтаксис запроса: < channel>:BSWV? < channel> одно из значений C1 или C2. Формат ответа: < channel>:BSWV < type>,< frequency>,< amplitude>,< offset>, Примеры Изменение типа сигнала на спад в канале 1: C1:BSWV WVTP,RAMP Изменение частоты канала 1 на 2000 Гц: C1:BSWV FRQ,2000 Установка амплитуды канала 1 на 3V (размах от пика до пика, Vpp): C1:BSWV AMP,3 Чтение базовых параметров сигнала канала 1: C1:BSWV? Возвращенное значение: C1:BSWV WVTP,SINE,FRQ,100HZ,PERI,0.01S,AMP,2V,OFST,0V,HLEV,1V,LLEV,-1V,PHSE,0 Установка значения полосы шума (bandwidth value) канала 1 на 100 МГц: C1:BSWV BANDWIDTH,100000000 Поддержка параметров команды различными генераторами:
[Команда управления модуляцией] MDWV. Команда MDWV (MoDulateWaVe) устанавливает или получает параметры модуляции. Синтаксис команды: < channel>:MDWV < parameter>
Если волна несущей (carrier wave) установлена в шум (Noise), то Вы не сможете включить модуляцию. Если Вы хотите установить AM, FM, PM, CARR и STATE, то первый параметр будет один из этих значений. < state> состояние, ON или OFF. Примечание: значение некоторых параметров зависит от модели генератора, для получения подробной информации см. документацию генератора. Синтаксис запроса: < channel>:MDWV? < channel> одно из значений C1 или C2. Формат ответа: < channel>:MDWV < parameter> < parameter> будут возвращены все текущие параметры модуляции. Примеры Установка типа модуляции AM для канала 1: C1:MDWV AM Установка для канала 1 формы модулирующего сигнала AM, и установка типа модулирующего сигнала AM на синус: C1:MDWV AM,MDSP,SINE Чтение параметров модуляции канала 1, у которого STATE установлено в ON: C1:MDWV? Возвращенное значение: C1:MDWV STATE,ON,AM,MDSP,SINE,SRC,INT,FRQ,100HZ,DEPTH,100, Чтение параметров модуляции канала 1, у которого STATE установлено в OFF: C1:MDWV? Возвращенное значение: C1:MDWV STATE,OFF Установка частоты FM канала 1 в значение 1000 Гц: C1:MDWV FM,FRQ,1000 Установка формы несущей SINE для канала 1: C1:MDWV CARR,WVTP,SINE Установка частоты несущей канала 1 в значение 1000 Гц: C1:MDWV CARR,FRQ,1000 См. также команды ARWV, BTWV, SWWV, BSWV. Поддержка параметров команды различными генераторами:
[type] одно из значений AM, FM, PM, FSK, ASK, DSBAM, PWM. [Команда ГКЧ] SWWV. Команда SWWV (доступна "длинная" форма SweepWaVe) устанавливает или получает параметры качания частоты. Синтаксис команды: < channel>SWWV < parameter> < channel> C1 или C2
Если несущая установлена в Pulse или Noise, то Вы не можете включить качание частоты. Если Вы хотите установить CARR и STATE, то первый параметр должен быть одним из этих значений. < state> состояние, ON или OFF. Примечание: значение некоторых параметров зависит от модели генератора, для получения подробной информации см. документацию генератора. Синтаксис запроса: < channel>:SWWV? < channel> C1 или C2 Формат ответа: < parameter> будут возвращены все параметры текущего качающегося сигнала. Примеры Установка времени качания сигнала канала 1 в 1 секунду: C1:SWWV TIME,1 Установка на канале 1 значение частоты остановки качания на 1000 Гц: C1:SWWV STOP,1000 Чтение параметров качания частоты канала 2, у которого STATE в значении ON: C2:SWWV? Возвращенное значение: C2:SWWV STATE,ON,TIME,1S,STOP,100HZ,START,100HZ,TRSR,MAN,TRMD,OFF,SWMD,LINE, Чтение параметров качания частоты канала 2, у которого STATE в значении OFF: C2:SWWV? Возвращенное значение: C2:SWWV STATE,OFF Поддержка параметров команды различными генераторами:
[Команда "пакетной волны" (Burst Wave)] BTWV. Команда BTWV (доступна также её "длинная" форма BursTWaVe) устанавливает или читает параметры пакетно формируемого сигнала. Синтаксис команды: < channel>BTWV < parameter> < channel> C1 или C2
Если Вы хотите установить CARR и STATE, то первый параметр должен быть одним из этих значений. < state> состояние, ON или OFF. Примечание: значение некоторых параметров зависит от модели генератора, для получения подробной информации см. документацию генератора. Синтаксис запроса: < channel>:BTWV? < parameter> < channel> C1 или C2 Формат ответа: < channel>:BTWV < type>,< state>,< period>...... Примеры Установка периода пакета канала 1 на 1 секунду: C1:BTWV PRD,1 Установка задержки пакета канала 1 на 1 секунду: C1:BTWV DLAY,1 Установка бесконечной отправки пакетов на канале 1: C1:BTWV TIME,INF Чтение параметров пакета канала 2, когда у него STATE в значении ON: C2:BTWV? Возвращаемое значение: C2:BTWV STATE,ON,PRD,0.01S,STPS,0,TRSR,INT,TRMD,OFF,TIME,1,DLAY,2.4e-07S, Чтение параметров пакета канала 2, когда у него STATE в значении OFF. C2:BTWV? Возвращаемое значение: C2:BTWV STATE,OFF Поддержка параметров команды различными генераторами:
[Команда копирования параметров] PACP. Команда PACP (также есть её "длинная" форма ParaCoPy) копирует параметры из одного канала в другой. Синтаксис команды: PACP < dst>,< src> < dst> канал назначения, C1 или C2. Пример: копирование параметров из канала 1 в канал 2. PACP C2,C1 См. также команды: ARWV, BTWV, MDWV, SWWV, BSWV. Примечание: команда PACP не поддерживается прибором SDG800, потому что у него только один канал. [Команда настройки сигнала произвольной формы] ARWV. Команда ARWV ("длинный" синтаксис ArbWaVe) устанавливает и получает тип сигнала произвольной формы. Синтаксис команды: < channel>:ARWV INDEX,< value1>,NAME,< value2> < channel> C1 или C2. Синтаксис запроса: < channel>:ARWV? < channel> C1 или C2. Формат ответа: < channel>:ARWV < index> Примеры Устанавливает по индексу произвольную форму сигнала на выходе канала 1: C1:ARWV INDEX,2 Чтение текущего сигнала системы: ARWV? Возвращаемое значение: ARWV INDEX,2,NAME,StairUp Устанавливает тип выходного сигнала по имени Cardiac (импульс в виде биения кардиограммы): ARWV NAME,Cardiac Возможная таблица сигналов:
Таблица с формами сигнала дана только для примера, индекс и соответствующая форма сигнала может зависеть от модели, Вы можете выполнить команду STL?, чтобы получить точную таблицу. Пример таблицы, полученной из генератора АКИП-3408/1 (все слоты настроек форм пустые): STL M0, EMPTY, M1, EMPTY, M2, EMPTY, M3, EMPTY, M4, EMPTY, M5, EMPTY, M6, EMPTY, Поддержка параметров команды различными генераторами:
[Команда синхронизации] SYNC. Устанавливает сигнал синхронизации. Синтаксис команды: < channel>:SYNC < parameter> < channel> C1 или C2. Синтаксис запроса: < channel>:SYNC? < channel> C1 или C2. Формат ответа: < channel>:SYNC < parameter> Примеры Включение функции синхронизации канала 1: C1:SYNC ON Чтение состояния синхронизации канала 1: C1:SYNC? Возвращенное значение: C1:SYNC OFF Команда не поддерживается генератором SDG800. [Команда формата числа] NBFM. Команда NBFM (доступна "длинная" форма NumBer_ForMat) устанавливает или получает формат числа. Синтаксис команды: NBFM < parameter> < parameter> см. таблицу ниже.
< pnt> вид разделителя дробной части, Dot или Comma (точка или запятая). Синтаксис запроса: NBFM? Формат ответа: NBFM < parameter> Примеры Установка формата числа, где дробная часть отделена точкой: NBFM PNT,DOT Установка формата разделителя в ON. NBFM SEPT,ON Чтение формата числа: NBFM? Возвращенное значение: NBFM PNT,DOT,SEPT,ON [Команда изменения языка] LAGG. Команда LAGG ("длинная" форма LAnGuaGe) устанавливает язык или получает информацию об установке языка. Синтаксис команды: LAGG < parameter> < parameter> одно из значений EN, CH или RU. Синтаксис запроса: LAGG? Формат ответа: LAGG < parameter> Пример установки английского языка: LAGG EN Команда не поддерживается генераторами SDG800, SDG5000, SDG1000X и SDG2000X. [Команда установки конфигурации] SCFG. Команда SCFG ("длинная" форма Sys_CFG) устанавливает конфигурацию, которая будет применена при включении питания генератора, или получает информацию о том, какая конфигурация загружена. Синтаксис команды: SCFG < parameter> < parameter> значение DEFAULT или LAST. Синтаксис запроса: SCFG? Формат ответа: SCFG < parameter> Пример: установка, чтобы при включении питания применялись последние настройки: SCFG LAST [Включение/выключение пищалки] BUZZ. Команда BUZZ ("длинная" форма BUZZer) разрешает или запрещает работу пищалки. Синтаксис команды: BUZZ < parameter> < parameter> одно из значений ON или OFF. Синтаксис запроса: BUZZ? Формат ответа: BUZZ < parameter> Пример включения пищалки: BUZZ ON [Команда управления скринсейвером] SCSV. Команда SCSV ("длинная" форма SCreen_SaVe) устанавливает время срабатывания выключения экрана при отсутствии действий пользователя, либо выключает эту функцию. Запрос позволяет получить состояние этой настройки. SCSV < parameter> < parameter> одно из значений OFF, 1, 5, 15, 30, 60, 120, 300. Синтаксис запроса: SCSV? Формат ответа: SCSV < parameter> Примеры Устанавливает время сохранения экрана на 5 минут: SCSV 5 Чтение текущего времени сохранения экрана: SCSV? Возвращенное значение: SCSV 5MIN [Команда установки источника тактирования] ROSC. Команда ROSC ("длинная" форма ROSCillator) устанавливает или получает источник тактов для генератора. Синтаксис команды: ROSC < parameter> < parameter> одно из значений INT или EXT. Синтаксис запроса: ROSC? Формат ответа: ROSC < parameter> Пример установки временной базы генератора от внутреннего источника: ROSC INT Генератор SDG800 не поддерживает эту команду. [Команда счетчика частоты] FCNT. Команда FCNT (длинная форма FreqCouNTer) устанавливает или получает параметры счетчика частоты. Синтаксис команды: FCNT < parameter> < parameter> см. таблицу ниже.
< state > состояние, одно из значений ON или OFF. Синтаксис запроса: FCNT? Формат ответа: FCNT < state>,< frequency>,< duty>,< ref freq>,< triglev>,< position width>,< negative width>,< freq deviation>,< mode>,< HFR> Примеры Включение счетчика частоты: FCNT STATE,ON Установка опорной частоты на 1000 Гц: FCNT REFQ,1000 Запрос информации о счетчике частоты: FCNT? Возвращаемое значение: FCNT STATE,ON,FRQ,10000000HZ,DUTY,59.8568,REFQ,1e+07HZ,TRG,0V, Команда не поддерживается генератором SDG800. INVT. Команда INVT ("длинная" форма INVerT) устанавливает или получает полярность (инверсию) текущего канала. Синтаксис команды: < channel>:INVT < parameter> < channel> C1 или C2 Синтаксис запроса: < channel>:INVT? < channel> C1 или C2 Формат ответа: < channel>:INVT < parameter> Примеры Установка инверсии канала 1: C1:INVT ON Чтение полярности выходного сигнала канала 1: C1:INVT? Возвращаемое значение: C1:INVT ON Выбор канала не поддерживается у прибора SDG800 (у него только один канал). Параметр < channel> указывать не обязательно - если канал не указан, то используется по умолчанию текущий канал. COUP. Команда COUP ("длинная" форма COUPling) устанавливает или получает параметры развязки канала. Значение развязки можно установить только когда ключ трассировки (trace switch) выключен. Синтаксис команды: COUP < parameter> < parameter> см. таблицу ниже.
< trace> одно из значений ON или OFF. Синтаксис запроса: COUP? Примеры Установка состояния развязки "включено": COUP STATE,ON Установка значения девиации частоты 5 Гц: COUP FDEV,5 Установка коэффициента амплитуды развязки: COUP ARAT,2 Запрос информации о развязке: COUP? Возвращенное значение: COUP TRACE,OFF,FCOUP,ON,PCOUP,ON,ACOUP,ON,FDEV,5HZ,PRAT,1,ARAT,2 Поддержка параметров команды различными генераторами:
VOLTPRT. Команда устанавливает или получает состояние защиты от перенапряжения. Синтаксис команды: VOLTPRT < parameter> < parameter> ON или OFF. Синтаксис запроса: VOLTPRT? Формат ответа: VOLTPRT < parameter> Команда не поддерживается генераторами SDG800 и SDG5000. STL. Команда используется для чтения сохраненных имен данных сигналов, если ячейка сохранения пуста; для пустой ячейки команда вернет строку EMPTY. Примечание: ячейки M50..M59 это память, определяемая пользователем. Имя ячейки будет возвращено такое, какое Вы определили. Если Вы не определили какое-то произвольное имя, то имя ячейки будет возвращено как EMPTY (однако это зависит от модели генератора). Синтаксис запроса: STL? BUILDIN,USER Примеры Чтение произвольных данных, сохраненных в устройстве: SRL? Возвращенное значение: STL M0, StairUp, M1, StairDn, M2, StairUD, M3, Trapezia, M4, ExpFall, M5, ExpRise, Чтение встроенных данных сигналов: STL? BUILDIN Возвращенное значение: STL M0, Sine, M1, Noise, M10, ExpFal, M11, ExpRise, M12, LogFall, M13, LogRise, M14, Чтение данных сигнала, определенных пользователем: STL? USER Возвращенное значение: STL WVNM, sinec_8M, sinec_3000000, sinec_1664000, ramp_8M, sinec_2000000, sinec_50000, square_8M, sinec_5000, wave1, square_1M Поддержка параметров команды различными генераторами:
WVDT. Устанавливает и получает данные произвольно определяемых сигналов. Синтаксис команды: < channel>:WVDT < address>,< parameter> < channel> C1 или C2.
Синтаксис запроса для всех произвольных сигналов генераторов SDG800, SDG1000, SDG5000 и встроенных сигналов генераторов SDG1000X и SDG2000X: WVDT? Mn Синтаксис запроса определенных пользователем сигналов для генераторов SDG1000X и SDG2000X: WVDT? USER,< wave name> < wave name> имя сигнала, определенного пользователем. Примеры Отправка wave1 в ячейку M55 генератора SDG1000: C1:WVDT M55,WVNM,wave1,TYPE,5,LENGTH,16KB,WAVEDATA,xxxxxxxx Отправка wave1 в генератор SDG2000X: C1:WVDT WVNM,wave1,TYPE,5,LENGTH,16384B,FREQ,1000,WAVEDATA,xxxxxxxx Запрос генератору SDG1000 на вывод формы встроенного сигнала: WVDT? M2 Возвращенное значение: WVDT\sPOS,\sM2,\sWVNM,\sstairup,\sLENGTH,\s32KB,\sTYPE,\s5, Запрос генератору SDG2000X на вывод формы сигнала, определенного пользователем (wave1): WVDT? USER,wave1 Возвращенное значение: WVDT\sPOS,\s/Local,\sWVNM,\swave1,\sLENGTH,\s1048576B,\sTYPE,\s6, Поддержка параметров команды различными генераторами:
VKEY (виртуальные клавиши). Команда VKEY ("длинное" имя VirtualKEY) используется для симуляции нажатия кнопок на передней панели генератора. Синтаксис команды: VKEY VALUE,< value>,STATE,< sate> < value> параметр из таблицы ниже. Примеры VKEY VALUE,15,STATE,1
Поддержка виртуальных кнопок различными генераторами:
[Команды управления настройками сети] Эти команды управления параметрами сети не поддерживаются генераторами SDG800, SDG1000, SDG5000. SYST:COMM:LAN:IPAD. Команда SYST:COMM:LAN:IPAD (доступна также "длинная" форма SYSTem:COMMunicate:LAN:IPADdress) может установить или получить значение IP-адреса системы. Синтаксис команды: SYST:COMM:LAN:IPAD < parameter1>.< parameter2>.< parameter3>.< parameter4> Здесь параметры parameter1, parameter2, parameter3 и parameter4 это десятичные целые числа: parameter1 в диапазоне от 1 до 223 Синтаксис запроса: SYST:COMM:LAN:IPAD? Примеры Установка IP-адреса 10.11.13.203: SYST:COMM:LAN:IPAD 10.11.13.203 Получение IP-адреса: SYST:COMM:LAN:IPAD? Возвращенное значение: "10.11.13.203" SYST:COMM:LAN:SMAS. Команда SYST:COMM:LAN:SMAS ("длинная" форма SYSTem:COMMunicate:LAN:SMASk) может установить и получить маску подсети сетевого интерфейса системы. Синтаксис команды: SYST:COMM:LAN:SMAS < parameter1>.< parameter2>.< parameter3>.< parameter4> parameter1 целое число в диапазоне между 0 и 255. Синтаксис запроса: SYST:COMM:LAN:SMAS? Примеры Установка маски подсети 255.0.0.0: SYST:COMM:LAN:SMAS 255.0.0.0 Получение маски подсети: SYST:COMM:LAN:SMAS? Возвращенное значение: "255.0.0.0" SYST:COMM:LAN:GAT. Команда SYST:COMM:LAN:GAT ("длинная" форма SYSTem:COMMunicate:LAN:GATeway) устанавливает IP-адрес сетевого шлюза системы. Синтаксис команды: SYST:COMM:LAN:GAT < parameter1>.< parameter2>.< parameter3>.< parameter4> parameter1 целое число в диапазоне от 0 до 223. Синтаксис запроса: SYST:COMM:LAN:GAT? Примеры Установка адреса шлюза 10.11.13.5: SYST:COMM:LAN:GAT 10.11.13.5 Получение адреса шлюза: SYST:COMM:LAN:GAT? Возвращенное значение: "10.11.13.5" SRATE. Команда SRATE ("длинная" форма SampleRATE) устанавливает или получает частоту дискретизации (sampling rate), которая используется для синтеза выходного сигнала. Вы можете использовать команду только в режиме TrueArb. Синтаксис команды: < channel>:SRATE MODE < parameter1>, VALUE, < parameter2> < channel> канал C1 или C2 Синтаксис запроса: < channel>:SRATE? Примеры Получение значения sample rate канала 1: C1:SRATE? Возвращенное значение: C1:SRATE MODE, DDS Установка канала 1 в режим TureArb: C1:SRATE MODE, TARB Установка sample rate канала 1 в значение 1000000 выб./сек (Sa/s): C1:SRATE VALUE, 1000000 Поддержка команды разными моделями генераторов:
HARM. Команда HARM ("длинная" форма HARMonic) устанавливает или получает информацию о гармониках. Команда может использоваться генераторами SDG2000X/SDG1000X, и на текущем канале должен быть установлена базовая синусоидальная форма сигнала (sine). Синтаксис команды: < channel>:HARM HARMSTATE,< value1>,HARMTYPE,< value2>,HARMORDER,< value3>,< parameter>,< value4>,HARMPHASE,< value5> < value1> ON или OFF Синтаксис запроса: < channel>HARM? < channel> C1 или C2 Примеры Установка ключа гармоник канала 1 в состояние "включено": C1:HARM HARMSTATE,ON Получение информации о гармониках канала 1: C1:HARM? Возвращенное значение: C1:HARM HARMSTATE,ON,HARMTYPE,EVEN,HARMORDER,2,HARMAMP,0V,HARMPHASE,0 Команда не поддерживается генераторами SDG800, SDG1000, SDG5000. CMBN. Команда CMBN ("длинная" форма CoMBiNe) устанавливает или получает информацию о комбинировании сигналов. Эта команда может использоваться с генераторами SDG1000X/SDG2000X. Синтаксис команды: < channel>:CMBN < parameter> < channel> канал C1 или C2 Синтаксис запроса: < channel>:CMBN? < channel> канал C1 или C2 Примеры Включение комбинирования форм сигналов для канала 1: C1:CMBN ON Запрос информации о комбинировании форм сигналов для канала 2: C2:CMBN? Возвращенное значение: C2:CMBN OFF Команда не поддерживается генераторами SDG800, SDG1000, SDG5000. [Ссылки] 1. SIGLENT function / arbitrary waveform generators site:siglent.com. |