GPIB является стандартизированным интерфейсом, который позволяет вам соединять и управлять несколькими устройствами от различных поставщиков. GPIB также упомянут его настоящим именем HP-IB, или его обозначением IEEE 488 IEEE®. Функциональность GPIB развивалась в зависимости от времени и описана в нескольких спецификациях:
Спецификация IEEE 488.1-1975 задает электрические и механические характеристики интерфейса и его основных функциональных характеристик.
Спецификация IEEE-488.2-1987 основывается на спецификации IEEE 488.1, чтобы задать приемлемую минимальную настройку и основной набор инструментальных команд и форматов общих данных.
Стандартные Команды для Программируемого Инструментирования (SCPI), спецификация основывается на командах, данных спецификацией IEEE 488.2, чтобы задать стандартный инструментальный набор команд, который может использоваться GPIB или другими интерфейсами.
Для многих приложений GPIB можно связаться с инструментом без детального знания того, как GPIB работает. Коммуникация устанавливается через объект GPIB, который вы создаете в рабочей области MATLAB®.
Если ваше приложение является прямым, или если вы уже знакомы с упомянутыми выше темами, вы можете хотеть начать с Создания Объекта GPIB. Если вы захотите высокоуровневое описание всех шагов, то вы, вероятно, возьмете при передаче с инструментом, относиться к Созданию Инструментальных Объектов.
Часть функциональности GPIB требуется для всех устройств GPIB, в то время как другая функциональность GPIB является дополнительной. Кроме того, много устройств поддерживают только подмножество набора команд SCPI или используют различный специфичный для поставщика набор команд. Обратитесь к своей документации устройства для полного списка ее возможностей GPIB и ее набора команд.
Важные функции GPIB описаны ниже. Для получения дальнейшей информации о функциональности GPIB, смотрите соответствующие ссылки в Библиографии.
Шина GPIB является кабелем с двумя 24-контактными коннекторами, которые позволяют вам соединять несколько устройств друг другу. Шина и коннектор имеют эти функции и ограничения:
Можно соединить до 15 устройств к шине.
Можно соединить устройства в звездообразной настройке, линейной настройке или комбинации настроек.
Чтобы достигнуть максимальных скоростей передачи данных, длина кабеля не должна превышать 20-метровое общее количество или в среднем 2 метра для каждого устройства. Можно устранить эти ограничения при помощи расширителя шины.
Каждое устройство GPIB должно быть некоторой комбинацией Говорящего, Прослушивателя или Контроллера. Контроллер обычно является платой, которую вы устанавливаете в своем компьютере. Говорящие и Прослушиватели обычно являются инструментами, такими как осциллографы, функциональные преобразователи, мультиметры, и так далее. Большинство современных инструментов является и Говорящими и Прослушивателями.
Говорящие — Говорящий передает данные по интерфейсу, когда обращено, чтобы говорить Контроллером. За один раз может быть только один Говорящий.
Прослушиватели — Прослушиватель получает данные по интерфейсу, когда обращено, чтобы послушать Контроллером. В установленный срок может быть до 14 Прослушивателей. Как правило, Диспетчер является Говорящим, в то время как одним или несколькими инструментами на GPIB являются Прослушиватели.
Контроллеры — Контроллер задает, какие устройства являются Говорящими или Прослушивателями. Система GPIB может содержать несколько Контроллеров. Один из них определяется Контроллер системы. Однако только один Контроллер может быть активным в установленный срок. Текущий активный контроллер является Ответственным за контроллер (CIC). CIC может передать управление неактивному Контроллеру, но только Контроллер системы может сделать себя CIC.
Когда Контроллер не отправляет сообщения, затем Говорящий может отправить сообщения. Как правило, CIC является Прослушиватель, в то время как другое устройство включено как Говорящий.
Каждый Контроллер идентифицирован уникальным номером параметра плат. Каждый Говорящий/Прослушиватель идентифицирован уникальным первичным адресом в пределах от от 0 до 30, и дополнительным вторичным адресом, который может быть 0 или может лежать в диапазоне от 96 до 126.
Существует два типа данных, которые могут быть переданы по GPIB: инструментальные данные и интерфейсные сообщения:
Инструментальные данные — Инструментальные данные состоят из специфичных для поставщика команд, которые конфигурируют ваш инструмент, возвращают результаты измерения и так далее. Для полного списка команд, поддержанных вашим инструментом, обратитесь к его документации.
Интерфейсные сообщения — Интерфейсные сообщения заданы стандартом GPIB и состоят из команд, которые очищают шину GPIB, обращаются к устройствам, возвращают результаты самопроверки и так далее.
Передача данных состоит из одного байта (8 битов), отправленных параллельно. Скорость передачи данных через интерфейс ограничивается 1 мегабайтом в секунду. Однако эта скорость передачи данных обычно не достигается на практике и ограничивается самым медленным устройством на шине.
GPIB состоит из 24 линий, которые совместно используются всеми инструментами, соединенными с шиной. 16 линий используются в сигналах, в то время как восемь линий для земли. Сигнальные линии разделены на эти группы:
Восемь линий данных
Пять интерфейсных линий управления
Три линии квитирования
Сигнальные линии используют низко-истинное (отрицательное) логическое соглашение с уровнями TTL. Это означает, что линия является низкой (верный или утверждаемый), когда это - низкий уровень TTL, и линия высока (ложь или неутверждаемый), когда это - высокий уровень TTL. Схему назначения контактов коннектора GPIB показывают ниже.
Контакт GPIB и присвоения сигнала
Контакт | Метка | Имя сигнала | Контакт | Метка | Имя сигнала |
---|---|---|---|---|---|
1 | DIO1 | Передача данных | 13 | DIO5 | Передача данных |
2 | DIO2 | Передача данных | 14 | DIO6 | Передача данных |
3 | DIO3 | Передача данных | 15 | DIO7 | Передача данных |
4 | DIO4 | Передача данных | 16 | DIO8 | Передача данных |
5 | EOI | Закончите или идентифицируйте | 17 | ЖЭНЬ | Удаленный включают |
6 | DAV | Допустимые данные | 18 | GND | Земля DAV |
7 | NRFD | Не готовый к данным | 19 | GND | Земля NRFD |
8 | NDAC | Не принятые данные | 20 | GND | Земля NDAC |
9 | IFC | Интерфейс Clear | 21 | GND | Земля IFC |
10 | SRQ | Запрос на обслуживание | 22 | GND | Земля SRQ |
11 | ATN | Внимание | 23 | GND | Земля ATN |
12 | Щит | Земля шасси | 24 | GND | Сигнальная земля |
Восемь линий данных, DIO1 через DIO8, используются в передаче данных один байт за один раз. DIO1 является младшим значащим битом, в то время как DIO8 является старшим значащим битом. Переданные данные могут быть инструментальной командой или командой интерфейса GPIB.
Форматы данных специфичны для поставщика и могут быть основаны на тексте (ASCII) или двоичный файл. Команды интерфейса GPIB заданы стандартом IEEE 488.
Интерфейсные линии управления управляют потоком данных через интерфейс GPIB.
Линии управления интерфейсом GPIB
Строка | Описание |
---|---|
ATN | Используемый Контроллером, чтобы сообщить всем устройствам о GPIB, что байты отправляются. Если линия ATN высока, байты интерпретированы как инструментальная команда. Если линия ATN является низкой, байты интерпретированы как интерфейсное сообщение. |
IFC | Используемый Контроллером, чтобы инициализировать шину. Если линия IFC является низкой, Говорящий и Прослушиватели не обращены, и Контроллер системы становится Ответственным за контроллер. |
ЖЭНЬ | Используемый Контроллером, чтобы поместить инструменты в удаленный или локальный режим программы. Если REN является низким, все Прослушиватели помещаются в удаленный режим, и вы не можете изменить их настройки от передней панели. Если REN высок, все Прослушиватели помещаются в локальный режим. |
SRQ | Используемый Говорящими, чтобы асинхронно запросить сервис от Диспетчера. Если SRQ является низким, то один или несколько Говорящих требуют сервиса (например, ошибка, такая как недопустимая команда была получена). Вы выпускаете последовательный опрос, чтобы определить, какой Говорящий запросил сервис. Опрос автоматически устанавливает линию SRQ высоко. |
EOI | Если линия ATN высока, линия EOI используется Говорящими, чтобы идентифицировать конец потока байтов, такого как инструментальная команда. Если линия ATN является низкой, линия EOI используется Контроллером, чтобы выполнить параллельный опрос (не поддерживаемый тулбоксом). |
Можно исследовать состояние интерфейсных линий управления с BusManagementStatus
свойство.
Три линии квитирования, DAV, NRFD, и NDAC, используются, чтобы передать байты по линиям данных от Говорящего к одному или нескольким обращенным Прослушивателям.
Прежде чем данные передаются, все три линии должны быть в соответствующем состоянии. Активный Говорящий управляет линией DAV, и Прослушиватель (прослушиватели) управляют NRFD и линиями NDAC. Процесс квитирования допускает безошибочную передачу данных.
Квитируйте линии
Строка | Описание |
---|---|
DAV | Используемый Говорящим, чтобы указать, что байт может быть считан Прослушивателями. |
NRFD | Указывает, готов ли Прослушиватель получить байт. |
NDAC | Указывает, принял ли Прослушиватель байт. |
Процесс квитирования выполняет эти шаги:
Первоначально, Говорящий содержит линию DAV, высоко указывающую, что никакие данные не доступны, в то время как Прослушиватели содержат линию NRFD высоко и линию NDAC, низко указывающую, что они готовы к данным, и никакие данные не приняты, соответственно.
Когда Говорящий помещает данные по шине, они устанавливают линию DAV низко, которая указывает, что данные допустимы.
Прослушиватели устанавливают линию NRFD низко, которая указывает, что они не готовы принять новые данные.
Прослушиватели устанавливают линию NDAC высоко, которая указывает, что данные приняты.
Когда все Прослушиватели указывают, что приняли данные, Говорящий устанавливает линию DAV, высоко указывающую, что данные больше не действительны. Следующий байт данных может теперь быть передан.
Прослушиватели содержат линию NRFD, высоко указывающую, что они готовы получить данные снова, и линия NDAC сохранена, низко указав, что никакие данные не приняты.
Если линия ATN высока во время процесса квитирования, информация рассматривается данными, такими как инструментальная команда. Если линия ATN является низкой, информация рассматривается сообщением интерфейса GPIB.
Шаги квитирования показывают ниже.
Можно исследовать состояние линий квитирования с HandshakeStatus
свойство.
GPIB обеспечивает систему для создания отчетов о состоянии и информации о событии. С этой системой можно узнать, имеет ли инструмент данные, чтобы возвратиться, произошла ли ошибка команды и так далее. Для многих инструментов система отчетности состоит из четырех 8-битных регистров и двух очередей (выход и событие). Четыре регистра сгруппированы в эти две функциональных категории:
Регистры состояния — Регистр байта состояния (SBR) и Стандартный регистр состояния события (SESR) содержат информацию о состоянии инструмента.
Включите Регистры — Состояние события включает регистр (ESER) и Запрос на обслуживание включает регистр (SRER) определяют, о каких типах событий сообщают регистрам состояния и очереди событий. ESER включает SESR, в то время как SRER включает SBR.
Регистры состояния, включите регистры, и очередь вывода показывают ниже.
Каждый бит в Регистре байта состояния (SBR) сопоставлен с определенным типом события. Когда событие имеет место, инструмент устанавливает соответствующий бит на 1. Можно включить или отключить биты SBR с Запросом на обслуживание включает регистр (SRER). Можно определить, который события имели место путем чтения активированных битов SBR.
Биты регистра байта состояния
Бит | Метка | Описание |
---|---|---|
0-3 | – | Специфичные для инструмента итоговые сообщения. |
4 | MAV | Доступный бит сообщения указывает, доступны ли данные в Очереди вывода. MAV равняется 1, если Очередь вывода содержит данные. MAV 0, если Очередь вывода пуста. |
5 | ESB | Бит состояния События указывает, имели ли одно или несколько активированных событий место. ESB равняется 1, если активированное событие имеет место. ESB 0, если никакие активированные события не имеют место. Вы включаете события со Стандартным Состоянием События, Включают Регистр. |
6 | MSS | Основное Итоговое Состояние обобщает ESB и биты MAV. MSS равняется 1, если или MAV или ESB равняются 1. MSS 0, если и MAV и ESB 0. Этот бит получен из |
RQS | Сервисный бит Запроса указывает, что инструмент запрашивает сервис от диспетчера GPIB. Этот бит получен из последовательного опроса. | |
7 | – | Специфичное для инструмента итоговое сообщение. |
Например, если вы хотите знать, когда определенный тип инструментальной погрешности происходит, вы включили бы биту 5 из SRER. Кроме того, вы включили бы соответствующий бит Стандартного Состояния События, Включают Регистр (см. Стандартный Регистр состояния События) так, чтобы об ошибочном мероприятии сообщил бит ESB SBR.
Каждый бит в Стандартном регистре состояния события (SESR) сопоставлен с определенным состоянием инструмента. Когда изменения состояния, инструмент устанавливает соответствующие биты на 1. Можно включить или отключить биты SESR со Стандартным Состоянием события включает регистр (ESER). Можно определить состояние инструмента путем чтения активированных битов SESR. Биты SESR описаны ниже.
Биты SESR
Бит | Метка | Описание |
---|---|---|
0 | OPC | Полный бит Операции указывает, что все команды завершились. |
1 | RQC | Бит управления Запроса не используется большинством инструментов. |
2 | QYE | Бит ошибки Запроса указывает, что инструмент попытался считать пустой буфер вывода, или что данные в буфере вывода были потеряны. |
3 | DDE | Зависимый от устройств Бит ошибки указывает, что ошибка устройства произошла (такие как ошибка самопроверки). |
4 | EXE | Бит ошибки Выполнения указывает, что ошибка произошла, когда устройство выполняло команду или запрос. |
5 | CME | Бит ошибки Команды указывает, что ошибка синтаксиса команд произошла. |
6 | URQ | Пользовательский бит Запроса не используется большинством инструментов. |
7 | PON | Степень На бите указывает, что устройство включается. |
Например, если вы хотите знать, когда ошибка выполнения происходит, вы включили бы биту 4 из ESER. Кроме того, вы включили бы биту 5 из SRER (см. Регистр Байта состояния) так, чтобы об ошибочном мероприятии сообщил бит ESB SBR.
В этом разделе описываются общие команды GPIB, используемые, чтобы считать и записать состояние и информацию о регистре события.
Укажите команды
Регистр | Операция | Команда | Описание |
---|---|---|---|
SESR | Чтение |
| Возвратите десятичное значение, которое соответствует взвешенной сумме всего набора битов в регистре SESR. |
Запись | Нет данных | Вы не можете записать в регистр SESR. | |
ESER | Чтение |
| Возвратите десятичное значение, которое соответствует взвешенной сумме всех битов, включенных |
Запись |
| Запишите десятичное значение, которое соответствует взвешенной сумме всех битов, которые вы хотите включить в регистре SESR. | |
SBR | Чтение |
| Возвратите десятичное значение, которое соответствует взвешенной сумме всего набора битов в регистре SBR. Эта команда возвращает тот же результат как последовательный опрос за исключением того, что бит MSS не очищен. |
Запись | Нет данных | Вы не можете записать в регистр SBR. | |
SRER | Чтение |
| Возвратите десятичное значение, которое соответствует взвешенной сумме всех битов, включенных |
Запись |
| Запишите десятичное значение, которое соответствует взвешенной сумме всех битов, которые вы хотите включить в регистре SBR. |
Например, чтобы включить биту 4 из SESR, вы пишете команде *ESE 16
. Чтобы включить биту 4 и биту 5 из SESR, вы пишете команде *ESE 48
. Чтобы включить биту 5 из SBR, вы пишете команде *SRE 32
.
Чтобы видеть, как использовать многие из этих команд в контексте инструментального сеанса управления, обратитесь к Выполнению Последовательного Опроса.