GPIB.ru


Назначение и описаниеИстория GPIBСтандарт 488.2Приборы и линии управления GPIBЯзык программирования приборов SCPI

National InstrumentsПроизводительность GPIB системНадежность GPIB системПродуктивность GPIB систем

Линейка продуктов

Дополнительная информацияПроблемы GPIB и SCPIДругие шины и технологии

Проблемы GPIB и SCPI.

Стандарт SCPI это полноценная реализация языка программирования приборов, которая с начала 90-х годов получила широкое распространение и в настоящее время доминирует на рынке как наиболее распространенный способ поддержки измерительных приборов. Он активно применяется для аналоговых приборов, особенно для сектора радиочастотных и микроволновых устройств. Стандарт SCPI позволяет работать на языке высокого уровня, а также с популярными графическими языками NI LabView и HP VEE.

Работа пользователя с прибором, поддерживающим стандарты 488 и SCPI, очень проста - не нужны обращения по физическим адресам внутри прибора и разборы тонкостей работы протокола обмена. Достаточно сформировать команду в виде строки ASCII и передать ее с помощью интерактивного средства или, в программной реализации, через процедуру в прибор. Такая простота позволяет работать с приборами персоналу, имеющему базовые навыки пользования компьютером и программирования на языке Basic.

Здесь можно перейти к проблемам и недостаткам GPIB и SCPI. Перефразируя известное высказывание Нильса Бора о простых и глубоких истинах, можно сказать, что неудачные решения плохи сами по себе, а в удачных недостатки являются следствием их достоинств. Стандарт GPIB - это второй случай.

Наиболее очевидные недостатки GPIB:
низкая скорость передачи данных;
относительно высокая стоимость интерфейса;
необходимость поддержки встроенного программного обеспечения 488.x

Наиболее очевидные недостатки SCPI:
очень громоздкий стандарт;
необходимость поддержки встроенного программного обеспечения, требующего лексического интерпретатора;
медленная скорость передачи.

Рассмотрим упомянутые проблемы GPIB подробнее.
Базовая скорость передачи составляет 1 Мбайт/c (488HS 8 Мбайт/c). Для большинства полнофункциональных приборов, которые самостоятельно производят обработку информации, большая скорость и не нужна. Например, газоанализатор, в котором анализ масс остаточных газов построен на времяпролетной спектроскопии, имеет поток входной информации 50-200 Мбайт/с при оцифровке с частотой 5-10 нс и 8-12-разрядной точности измерения амплитуды сигнала [масс-спектрометр]. Обработанные же данные представляют спектрограмму величиной несколько Кбайт, а результат элементного анализа несколько десятков байт. Конечно, если необходим быстрый обмен между приборами, лучше подходят крейтовые реализации.

Необходимость поддержки встроенного программного обеспечения 488.2 наиболее важный аспект для производителя приборов. Помимо аппаратного интерфейса, в прибор необходимо поставить процессор, оперативную память для программ и написать лексический интерпретатор. Перед этой задачей спасовала вся приборостроительная промышленность СССР. Необходимы были недорогие процессоры для установки в приборы и средства разработки встроенного программного обеспечения. Ни того, ни другого отечественная промышленность не выпускала, как впрочем, и приемлемых по цене рабочих станций и ПК. Поэтому приборы шли с интерфейсом КОП (488.1) без поддержки 488.2. Заметим, что требования к памяти достаточно существенны: скомпилированный весьма ограниченный по набору команд (менее 100) интерпретатор в примере с процессором 680x0 занимает около 20 Кбайт.

Что касается SCPI, то здесь проблемы производителя возрастают еще больше. Разработка и поддержка полноценного интерпретатора SCPI выглядит осмысленной при выпуске серии приборов. Не случайно, что даже крупные производители измерительной аппаратуры часто ограничиваются набором команд 488.2 даже для приборов стоимостью более $5000.

В одном ряду со сложностью интерпретатора и требуемого для его работы объёма ОЗУ (RAM) стоит скорость передачи команд SCPI. Передача лексем очень накладна и зачастую не годится для передачи данных. Например, в случае VXI, при сырой скорости передачи в несколько Мбайт/с, скорость протокола обмена сообщениями составляет 20-200 Кбайт/с. В результате появились такие решения, как скомпилированные команды, которые, по существу, вводят дополнительный слой кодировки-декодировки команд, но такие решения являются уже частнофирменными. В случае VXI есть выход в виде использования разделяемой памяти (VXI shared memory), в случае GPIB такой возможности нет.

Уже приводились сведения о поддержке приборов с интерфейсом GPIB в популярных пакетах лабораторной автоматизации LabView/LabWindows. Приведенный в тексте пример использования библиотеки NI-VXI соответствует стилю программирования приборов середины 90-х годов. На смену этой технологии пришла новая технология с так называемыми приборными драйверами. Эта технология опирается на библиотеку VISA, которая берет на себя все проблемы доступа к аппаратной части.

По существу, драйверы приборов представляют собой набор вызовов VISA, специфичных для конкретного прибора. Такой подход впервые появился для приборов VXI в виде спецификации VXIplug-and-play. В настоящее время произведено обобщение этой идеологии на аппаратно-независимые классы приборов IVI (Interchangable Virtual Instruments).

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



Талисман. Роман Татьяны Латуковой
© GPIB.ru, интерфейсная шина общего назначения, 2010-2013
Стандарты и шины контрольно-измерительных приборов и измерительной аппаратуры.
HP-IB, IEEE 488, SCPI
  Контакты
E-mail
Карта сайта