1
Доступно поисковых запросов: 1 из 2
Следующий пробный период начнётся: 13 октября 2022 в 06:55
Снять ограничение

ГОСТ Р 56947-2016

Информационные технологии. Интерфейс интеллектуального преобразователя для датчиков и исполнительных устройств. Общие функции, протоколы взаимодействия и форматы электронной таблицы данных преобразователя (ЭТДП)
Действующий стандарт
Проверено:  05.10.2022

Информация

Название Информационные технологии. Интерфейс интеллектуального преобразователя для датчиков и исполнительных устройств. Общие функции, протоколы взаимодействия и форматы электронной таблицы данных преобразователя (ЭТДП)
Название английское Information technology. Smart transducer interface for sensors and actuators. Common functions, communication protocols, and transducer electronic data Sheet (TEDS) formats
Дата актуализации текста 01.01.2021
Дата актуализации описания 01.01.2021
Дата издания 12.07.2016
Дата введения в действие 01.07.2017
Область и условия применения В настоящем стандарте введены понятия интерфейсного модуля преобразователя (ИМП) (transducer interface module, TIM) и сетевого процессора приложений (СПП) (network capable application processor, NCAP), связанных с помощью передающей среды, которая определена в другом стандарте комплекса ИИЭР 1451. ИМП-это модуль, который содержит интерфейс, обработку сигнала, аналого-цифровое и цифро-аналоговое преобразования и во многих случаях преобразователь. ИМП может представлять собой как один датчик или исполнительное устройство, так и блоки, состоящие из нескольких преобразователей (датчиков и исполнительных устройств). СПП-это совокупность аппаратного и программного обеспечения, которое выполняет функцию шлюза между модулями ИМП и пользовательской сетью или главным процессором. В другом стандарте комплекса определен интерфейс связи между СПП или главным процессором и одним или несколькими ИМП. В настоящем стандарте описаны три типа преобразователей: датчики, датчики событий и исполнительные устройства
Опубликован Официальное издание. М.: Стандартинформ, 2016 год
Утверждён в Росстандарт

Расположение в каталоге ГОСТ

     
     ГОСТ Р 56947-2016/ ISO/IEC/IEEE 21450:2010

Группа П85

НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

Информационные технологии

ИНТЕРФЕЙС ИНТЕЛЛЕКТУАЛЬНОГО ПРЕОБРАЗОВАТЕЛЯ ДЛЯ ДАТЧИКОВ И ИСПОЛНИТЕЛЬНЫХ УСТРОЙСТВ

Общие функции, протоколы взаимодействия и форматы электронной таблицы данных преобразователя (ЭТДП)

Information technologies. Smart transducer interface for sensors and actuators. Common functions, communication protocols, and transducer electronic data Sheet (TEDS) formats



ОКС 35.040

Дата введения 2017-07-01

     

Предисловие

1 ПОДГОТОВЛЕН Научно-исследовательским и испытательным центром биометрической техники Московского государственного технического университета имени Н.Э.Баумана (НИИЦ БТ МГТУ им.Н.Э.Баумана) на основе собственного перевода на русский язык англоязычной версии стандарта, указанного в пункте 4, при консультативной поддержке Ассоциации автоматической идентификации "ЮНИСКАН/ГС1 РУС"

2 ВНЕСЕН Техническим комитетом по стандартизации ТК 355 "Технологии автоматической идентификации и сбора данных"

3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 7 июня 2016 г. N 533-ст

4 Настоящий стандарт идентичен международному стандарту ISO/IEC/IEEE 21450:2010* "Информационные технологии. Интерфейс интеллектуального преобразователя для датчиков и исполнительных устройств. Общие функции, протоколы взаимодействия и форматы электронной таблицы данных преобразователя (ЭТДП)" (ISO/IEC/IEEE 21450:2010 "Information technology - Smart transducer interface for sensors and actuators - Common functions, communication protocols, and Transducer Electronic Data Sheet (TEDS) formats", IDT).

________________

     * Доступ к международным и зарубежным документам, упомянутым в тексте, можно получить, обратившись в Службу поддержки пользователей. - Примечание изготовителя базы данных.



При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им национальные стандарты, сведения о которых приведены в дополнительном приложении ДА

5 ВВЕДЕН ВПЕРВЫЕ

6 Некоторые элементы настоящего стандарта могут быть объектами патентных прав. Международная организация по стандартизации (ИСО), Международная электротехническая комиссия (МЭК) и Институт инженеров по электротехнике и радиоэлектронике (ИИЭР) не несут ответственности за установление подлинности каких-либо или всех таких патентных прав


Правила применения настоящего стандарта установлены в ГОСТ Р 1.0-2012 (раздел 8). Информация об изменениях к настоящему стандарту публикуется в годовом (по состоянию на 1 января текущего года) информационном указателе "Национальные стандарты", а официальный текст изменений и поправок - в ежемесячно издаваемом информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя "Национальные стандарты". Соответствующие информация, уведомления и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.gost.ru)

Введение

Настоящее введение не является частью стандарта ИИЭР 1451.0-2007 "Стандарт для интерфейса интеллектуального преобразователя для датчиков и исполнительных устройств. Общие функции, протоколы взаимодействия и форматы электронной таблицы данных преобразователя (ЭТДП)".


Настоящий стандарт является основой для будущих стандартов комплекса ИИЭР 1451, использующих цифровые интерфейсы. Он также должен быть принят во внимание во время пересмотра существующих стандартов комплекса ИИЭР 1451 для обеспечения самой высокой степени совместимости между стандартами комплекса. Настоящий стандарт не распространяется на стандарт ИИЭР 1451.4-2004, в котором описаны только ограниченные по размеру ЭТДП и аналоговый интерфейс.

Взаимосвязи между настоящим стандартом и другими стандартами комплекса ИИЭР 1451 показаны на диаграмме ниже. Стандарты ИИЭР 1451.1-1999, ИИЭР 1451.2-1997 и ИИЭР 1451.3-2003 были завершены до начала разработки настоящего стандарта и не соответствуют настоящему стандарту, но будут соответствовать после пересмотра. Стандарт ИИЭР 1451.1 - приложение, которое в будущем будет согласовывать сеть пользователя с настоящим стандартом. Стандарты ИИЭР 1451.2 и ИИЭР 1451.3 также будут изменены для согласования с настоящим стандартом. Когда эти изменения будут внесены, функции преобразователя ИИЭР 1451 будут соответствовать описанным в данном стандарте, так же как и команды и ЭТДП. Стандарт ИИЭР 1451.5-2007, в котором используется любая беспроводная среда передачи данных из определенного набора, и стандарт ИИЭР P1451.6 были написаны в рамках функций, команд и ЭТДП, описанных в настоящем стандарте. Стандарт ИИЭР 1451.4 использует интерфейс аналогового сигнала и ЭТДП, которая отличается от ЭТДП, используемых другими стандартами комплекса. Данная ЭТДП может использоваться в качестве исходных данных для любых других стандартов комплекса, но она не подчиняется функциям, командам и ЭТДП, определенным в настоящем стандарте. Элементы в таблице на сером фоне не описаны ни в одном из стандартов комплекса ИИЭР 1451, но при этом они могут быть использованы.

Основная цель данного комплекса стандартов - позволить изготовителям разработать элементы системы, имеющие возможность взаимодействовать. Для достижения данной цели в комплексе стандартов ИИЭР 1451 части системы делятся на две основные категории устройств. Одна категория - это сетевой процессор приложений (СПП) (network capable application processor, NCAP), который функционирует в качестве шлюза между сетью пользователей и интерфейсными модулями преобразователей (ИМП) (transducer interface modules, TIM). СПП является устройством на базе процессора, имеющим два интерфейса. Физический интерфейс для сети пользователей не определен ни в одном стандарте комплекса стандартов. В стандарте ИИЭР 1451.1 приведена логическая объектная модель для данного интерфейса. Другие приложения также могут быть использованы по усмотрению изготовителя. Коммуникационный интерфейс между СПП и ИМП определен в остальных стандартах комплекса стандартов. Если СПП и ИМП разработаны различными изготовителями, и при этом оба соответствуют требованиям настоящего стандарта, то они должны взаимодействовать.

В настоящем стандарте описаны функции, которые должны выполняться посредством интерфейсного модуля преобразователя или ИМП. Для обеспечения высокого уровня адресации, не зависящего от протоколов среднего и низкого физического уровня, которые используются для осуществления связи, принимаются определенные меры резервирования. В связи с этим стандарт определяет общие характеристики для всех устройств, которые приводят в действие модули преобразователей. В нем описано время получения или обработки выборок данных, определены методы группировки выходных данных от нескольких преобразователей в пределах одного ИМП. Также определены общепринятые слова состояния (статусы).

Определен стандартный набор команд для облегчения настройки и контроля модулей преобразователей, а также для считывания и записи данных, используемых системой. Также предусмотрены команды для считывания и записи ЭТДП, в которых приводятся необходимые для использования модулей преобразователей операционные характеристики системы. В стандарт также включен метод добавления уникальных команд изготовителя.

Кроме того, в настоящем стандарте представлены форматы для ЭТДП и определены некоторые ЭТДП, четыре из которых являются обязательными, остальные - дополнительными. Некоторые ЭТДП предназначены для того, чтобы позволить пользователю задавать информацию и сохранять ее в ЭТДП.

Настоящий стандарт также определяет области, которые "открыты для изготовителей". Следует отметить, что любое использование этих областей может привести к нарушениям работы функции самонастройки plug&play ("включай и работай"), имеющейся у контроллеров и ИМП.

Замечания для пользователей

Опечатки

Опечатки, если таковые имеются, для настоящего и всех других стандартов доступны по следующему адресу: http://standards.ieee.org/reading/ieee/updates/errata/index.html. Пользователям рекомендуется периодически проверять данный ресурс на предмет наличия исправлений.

Пояснения

Текущие пояснения доступны по следующему адресу: http://standards.ieee.org/reading/ieee/interp/index.html.

Патенты

Следует обратить внимание на то, что некоторые элементы настоящего стандарта могут быть объектами патентных прав. При публикации настоящего стандарта не принимаются во внимание никакие положения относительно наличия или действия любых патентных прав, связанных со стандартом. ИИЭР не несет ответственности за установление подлинности каких-либо или всех таких патентных прав. Дополнительная информация может быть получена в Ассоциации стандартов ИИЭР.

     1 Общие положения


В настоящем стандарте введены понятия интерфейсного модуля преобразователя (ИМП) (transducer interface module, TIM) и сетевого процессора приложений (СПП) (network capable application processor, NCAP), связанных с помощью передающей среды, которая определена в другом стандарте комплекса ИИЭР 1451. ИМП - это модуль, который содержит интерфейс, обработку сигнала, аналого-цифровое и цифро-аналоговое преобразования и во многих случаях преобразователь. ИМП может представлять собой как один датчик или исполнительное устройство, так и блоки, состоящие из нескольких преобразователей (датчиков и исполнительных устройств). СПП - это совокупность аппаратного и программного обеспечения, которое выполняет функцию шлюза между модулями ИМП и пользовательской сетью или главным процессором. В другом стандарте комплекса определен интерфейс связи между СПП или главным процессором и одним или несколькими ИМП. В настоящем стандарте описаны три типа преобразователей: датчики, датчики событий и исполнительные устройства.

Преобразователь называется интеллектуальным, если ему присущи следующие признаки:

- он описан в машиночитаемой электронной таблице данных преобразователя (ЭТДП) (transducer electronic data sheet, TEDS);

- управление и данные, связанные с преобразователем, являются цифровыми;

- запуск, состояние и управление предоставляются для поддержания нормального функционирования преобразователя.

СПП или главный процессор управляет ИМП с помощью цифровой интерфейсной среды. СПП является посредником между ИМП и цифровой сетью более высокого уровня и может обеспечить локальный обмен информацией.

В настоящем стандарте определен прикладной программный интерфейс (API) для приложений, которые обеспечивают связь между сетью пользователей и уровнем ИИЭР 1451.0. Также с помощью API обеспечивается связь между уровнем ИИЭР 1451.0 и нижележащими физическими уровнями связи, которые обозначены в настоящем стандарте как ИИЭР 1451.Х. Такое определение API относится к системам, имеющим видимые интерфейсы. Для СПП и ИМП с единым набором аппаратного и программного обеспечения без учета отличительных особенностей отдельных интерфейсов ИИЭР 1451.0 и ИИЭР 1451.Х API не является обязательным до тех пор, пока сообщения на видимых интерфейсах подчиняются правилам остальной части настоящего стандарта. Задача таких API заключается в облегчении модульного принципа проектирования до такой степени, чтобы различные поставщики могли закладывать различные выполняемые функции и при этом иметь возможность простого интегрирования различных частей по "бесшовной" технологии.

В настоящем стандарте определены ИМП, которые могут быть подключены к системе и могут быть использованы без добавления специальных драйверов, профилей или других изменений в системе. Данный процесс аналогичен технологии plug&play ("включай и работай"). Основными компонентами, обеспечивающими данную технологию, являются ЭТДП и набор команд. ИМП могут быть добавлены или удалены из физического уровня ИИЭР 1451 путем не более чем мгновенного воздействия на данные, передаваемые по шине. Для обозначения этой функции используется термин "горячая замена".

Настоящий стандарт построен следующим образом.

В разделе 1 "Общие положения" описана область применения настоящего стандарта.

В разделе 2 "Нормативные ссылки" перечислены стандарты и документы, на которые имеются ссылки в настоящем стандарте.

В разделе 3 "Термины и определения, обозначения и сокращения" содержатся определения, которые либо не встречаются в других стандартах, либо были изменены для использования в целях настоящего стандарта.

В разделе 4 "Типы данных" определены типы данных, используемые в настоящем стандарте.

В разделе 5 "Функциональная спецификация интеллектуальных преобразователей" определены функции ИМП и каждого канала преобразователя, который он включает.

В разделе 6 "Структура сообщений" определены структуры сообщений, которые используются для инкапсуляции данных, передаваемых между СПП и модулями ИМП.

В разделе 7 "Команды" представлены синтаксис команд и ожидаемые ответы.

В разделе 8 "Спецификация ЭТДП" определены структура и содержание электронной таблицы данных преобразователя.

В разделе 9 "Введение в прикладной программный интерфейс (API) уровня ИИЭР 1451.0" приведены общие черты двух API.

В разделе 10 "API сервисов преобразователя" представлен API, который должен быть использован приложением для работы по настоящему стандарту.

В разделе 11 "API модульных связей" описан API, который должен использоваться настоящим стандартом для связи с модулями ИМП, использующими функции связи физического интерфейса, определенные в другом стандарте комплекса ИИЭР 1451.

В разделе 12 "Протокол HTTP" описан протокол, используемый для передачи информации в Интернет. Он является более простым по сравнению с протоколом, применяемым в настоящее время согласно ИИЭР 1451.1-1999.

В приложении А "Библиография" содержатся ссылки на дополнительную информацию о темах, упомянутых в настоящем стандарте.

В приложении B "Руководящие указания для интерфейса сервисов преобразователя" приведены примеры использования данного интерфейса для измерительных и управляющих приложений, которые взаимодействуют с уровнем ИИЭР 1451.0 с помощью интерфейса сервисов преобразователя.

В приложении C "Руководящие указания для интерфейса модульных связей" приведены дополнительные указания по логической связи между СПП и модулями ИМП или между модулями ИМП, использующими API модульных связей.

В приложении D "XML-схема для текстовых ЭТДП" приведены основные схемы для текстовых ЭТДП, определенных в настоящем стандарте.

В приложении E "Пример ЭТДП мета-идентификации" приведен пример возможной ЭТДП мета-идентификации.

В приложении F "Пример ЭТДП идентификации канала преобразователя" приведен пример возможной ЭТДП идентификации канала преобразователя.

В приложении G "Пример ЭТДП идентификации калибровки" приведен пример возможной ЭТДП идентификации калибровки.

В приложении H "Пример командной ЭТДП" приведен пример возможной командной ЭТДП.

В приложении I "Пример ЭТДП места нахождения и заголовка" приведен пример возможной ЭТДП места нахождения и заголовка.

В приложении J "Пример ЭТДП с расширенным набором единиц измерения" приведен пример возможной ЭТДП с расширенным набором единиц измерения.

В приложении K "Примеры физических единиц" приведена серия примеров представлений физических единиц, используя представление, определенное в настоящем стандарте.

В приложении L "Протоколы считывания и записи ЭТДП" описаны процессы, которые могут быть использованы для записи или считывания ЭТДП.

В приложении М "Конфигурации логических блоков триггера" показаны некоторые возможные логические конфигурации триггера, разрешенные настоящим стандартом.

В приложении N "Система обозначений для IDL" приведены рекомендации по использованию системы обозначений IDL в настоящем стандарте.

В приложении O "Реализация ЭТДП простого датчика" приведен пример простого датчика, реализующего использование структур, определенных в настоящем стандарте.

     1.1 Область применения


В настоящем стандарте разработан набор общих функций для комплекса ИИЭР 1451 стандартов интерфейса интеллектуальных преобразователей. Данный набор функций не зависит от физических сред передачи данных. Он включает в себя основные функции, необходимые для контроля и управления интеллектуальными преобразователями, общие протоколы передачи данных и форматы ЭТДП, независимые от среды связи. Это, в свою очередь, определяет набор независимых от конечной реализации API. В настоящем стандарте не рассматриваются вопросы обработки и преобразования сигнала, физическая среда и вопросы использования ЭТДП в приложениях.

     1.2 Цели


В настоящее время в комплексе стандартов ИИЭР 1451 существуют три одобренных и три предлагаемых стандарта интерфейса интеллектуальных преобразователей. Все они имеют некоторые общие характеристики, однако отсутствует общий набор функций, протоколов связи и форматов ЭТДП, который обеспечивал бы взаимодействие между этими стандартами. Настоящий стандарт обеспечивает необходимую функциональную совместимость и облегчает разработку последующих стандартов для различных физических уровней, имеющих возможность взаимодействовать в рамках комплекса стандартов.

     1.3 Соответствие


Основным принципом, лежащим в основе требований соответствия в настоящем подразделе, является обеспечение структуры, необходимой для повышения уровня совместимости преобразователей и систем, построенных в соответствии с настоящим стандартом, при сохранении возможности постоянного технического совершенствования и дифференциации. Реализация ИМП считается соответствующей настоящему стандарту, если она удовлетворяет следующим требованиям:

a) ИМП поддерживает необходимые технические характеристики, указанные в разделе 5;

b) ИМП поддерживает структуру сообщений, указанную в разделе 6;

c) ИМП поддерживает необходимые команды, указанные в разделе 7;

d) ИМП поддерживает необходимые ЭТДП, формат и содержание которых указаны в разделе 8;

e) ИМП поддерживает один из протоколов связи и физические носители, определенные в другом стандарте семейства комплекса ИИЭР 1451.

Примечание - Существуют некоторые рекомендации, которые желательно учитывать и которые определены в настоящем стандарте, но которые нецелесообразно переводить в разряд жестких требований. Желательно, чтобы чувствительный элемент датчика был неотъемлемой частью ИМП, но для чувствительных элементов, таких как структурные тензодатчики и термопары, это нецелесообразно, поэтому данная рекомендация не превратилась в жесткое требование. Кроме того, очень желательно, чтобы ЭТДП была расположена в пределах ИМП, но существуют системы, где окружающая среда и/или физические размеры делают это требование нецелесообразным, так что в настоящем стандарте не запрещено удаленное расположение ЭТДП от ИМП.

________________

Примечания в тексте, таблицах и на рисунках приведены для справки и не содержат требований, необходимых для соответствия настоящему стандарту.


Реализация СПП считается соответствующей настоящему стандарту, если она удовлетворяет следующим требованиям:

- СПП поддерживает необходимые технические характеристики, указанные в разделе 5;

- СПП поддерживает структуру сообщений, указанную в разделе 6;

- СПП поддерживает необходимые команды, указанные в разделе 7;

- СПП поддерживает один из протоколов связи и физические носители, определенные в другом стандарте комплекса ИИЭР 1451.

1.3.1 Соответствие ключевых слов

В настоящем стандарте для различных уровней требований и рекомендаций используются следующие ключевые слова.

1.3.1.1 Ключевое слово "должен"

Ключевое слово "должен" указывает на обязательное требование. Разработчики обязаны выполнять все такие требования для обеспечения совместимости с другими продуктами, которые соответствуют настоящему стандарту.

1.3.1.2 Ключевое слово "не должен"

Ключевое слово "не должен" указывает на обязательное недопущение. Разработчики обязаны выполнять все такие требования для обеспечения совместимости с другими продуктами, которые соответствуют настоящему стандарту.

1.3.1.3 Ключевое слово "рекомендуется"

Ключевое слово "рекомендуется" указывает на гибкость выбора с предпочтением предлагаемой альтернативы. Ключевое слово "следует" имеет тот же смысл.

1.3.1.4 Ключевое слово "следует"

Ключевое слово "следует" указывает на гибкость выбора с предпочтением предлагаемой альтернативы. Ключевое слово "рекомендуется" имеет тот же смысл.

1.3.1.5 Ключевое слово "не следует"

Ключевое слово "не следует" указывает на гибкость выбора с предпочтением того, что данная альтернатива не будет реализована.

1.3.1.6 Ключевое слово "может"

Ключевое слово "может" указывает на гибкость выбора без какого-либо предпочтения.

     2 Нормативные ссылки


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

_______________

     * Таблицу соответствия национальных стандартов международным см. по ссылке. - Примечание изготовителя базы данных.


ANSI Х3.4-1986 (Reaff 1992) Coded Character Sets - 7-bit American National Standard Code For Information Interchange (Кодированные наборы знаков. 7-битовый американский стандартный код для обмена информацией)

________________

Публикации АНСИ доступны в отделе продаж Американского национального института стандартов, 25 West 43rd Street, 4-й этаж, Нью-Йорк, 10036, США (http://www.ansi.org/).


Extensible Markup Language (XML) 1.0 (Second Edition), W3C Recommendation, 6 October 2000 [Расширяемый язык разметки (XML) 1.0 (второе издание), рекомендация W3C, 6 октября 2000 года]

________________

Документы на языке ExtensibleMarkup можно загрузить с http://www.w3.org/TR/2000/REC-xml-20001006 или заказать в WorldWideWebConsortium, з/MIT, 32 Вассар-стрит, номер 32-G515, Кембридж, Массачусетс, 02139, США.


HTTP URL syntax (RFC 2616) HyperText Transfer Protocol (W3C)  [Синтаксис URL HTTP (RFC 2616), протокол передачи гипертекста (W3C)]

________________

Документы, описывающие Протокол HTTP 1.1, можно загрузить с http://www.w3.org/Protocols/ или заказать в WorldWideWebConsortium, з / MIT, 32 Вассар-стрит, номер 32-G515, Кембридж, Массачусетс, 02139, США.


IEEE Std 754-1985 (Reaff 1990) IEEE Standard for Binary Floating-Point Arithmetic,  (Стандарт ИИЭР для двоичных исчислений с плавающей запятой)

________________

Публикации ИИЭР доступны в Институте инженеров по электротехнике и радиоэлектронике, Inc, 445 Hoes Lane, Piscataway, NJ 08854, США (http://standards.ieee.org/).

Стандарты ИИЭР или продукты, упомянутые в настоящем пункте, являются товарными знаками Института инженеров по электротехнике и радиоэлектронике, Inc.


IEEE Std 802.3-2002 IEEE Standard for Information technology - Telecommunications and information exchange between systems - Local and metropolitan area networks - Specific requirements - Part 3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) access method and physical layer specifications [Стандарт ИИЭР по информационным технологиям. Телекоммуникации и обмен информацией между системами. Местные и городские сети. Особые требования. Часть 3. Метод доступа CSMA/CD (коллективный (параллельный) доступ с контролем несущей частоты с обнаружением конфликтов сети) и требования к физическому уровню]

IEEE Std 1451.1-1999 IEEE Standard for a Smart Transducer Interface for Sensors and Actuators - Network Capable Application Processor (NCAP) Information Model [Стандарт ИИЭР для интерфейса интеллектуальных датчиков и исполнительных устройств. Информационная модель сетевого процессора приложений (СПП, NCAP)]

IEEE Std 1451.2-1997 IEEE Standard for a Smart Transducer Interface for Sensors and Actuators - Transducer to Microprocessor Communication Protocols and Transducer Electronic Data Sheet (TEDS) Formats [Стандарт ИИЭР для интерфейса интеллектуальных датчиков и исполнительных устройств. Протоколы связи между преобразователем и микропроцессором, форматы электронной таблицы данных преобразователя (ЭТДП, TEDS)]

IEEE Std 1451.3-2003 IEEE Standard for a Smart Transducer Interface for Sensors and Actuators - Digital Communication and Transducer Electronic Data Sheet (TEDS) Formats for Distributed Multidrop Systems (Стандарт ИИЭР для интерфейса интеллектуальных датчиков и исполнительных устройств. Цифровая связь и форматы ЭТДП для распределенных моноканальных систем)

IEEE Std 1451.4-2004 IEEE Standard for a Smart Transducer Interface for Sensors and Actuators - Mixed-Mode Communication Protocols and Transducer Electronic Data Sheet (TEDS) Formats [Стандарт ИИЭР для интерфейса интеллектуальных датчиков и исполнительных устройств. Протоколы связи в смешанном режиме и форматы электронной таблицы данных преобразователя (ЭТДП, TEDS)]

IEEE Std 1588-2002 IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems (Стандарт ИИЭР для протокола точной синхронизации времени для сетевых измерений и систем управления)

ISO 639:1988 Codes for the Representation of Names of Languages (Коды для представления названий языков)

________________

Заменен на серию стандартов ИСО 639, состоящую из пяти частей. Однако для однозначного соблюдения требования настоящего стандарта, выраженного в датированной ссылке, рекомендуется использовать только указанное в этой ссылке издание.

Публикации ИСО доступны в центральном секретариате ИСО по адресу: Case Postale 56, 1 rue de , CH-1211, 20, Switzerland/ Suisse (http://www.iso.ch/). Публикации ИСО также доступны в США в отделе продаж Американского института национальных стандартов: American National Standards Institute, 25 West 43rd Street, 4th Floor, New York, NY 10036, USA (http://www.ansi.org/).


ISO 19136 Geographic information - Geography Markup Language (GML) [Географическая информация. Язык географической разметки (GML)]

ISO/IEC 14750:1999 Information technology - Open Distributed Processing - Interface Definition Language  (Информационные технологии. Открытые процессы. Язык интерфейса)

________________

Публикации ИСО доступны в центральном секретариате ИСО по адресу: Case Postale 56, 1 rue de , CH-1211, 20, Switzerland/ Suisse (http://www.iso.ch/). Публикации ИСО также доступны в США в Global Engineering Documents, 15 Inverness Way East, Englewood, CO 80112, USA (http://global.ihs.com/). Электронные копии доступны в США в Американском институте национальных стандартов: American National Standards Institute, 25 West 43rd Street, 4th Floor, New York, NY 10036, USA (http://www.ansi.org/).

     3 Термины и определения, обозначения и сокращения

     3.1 Термины и определения


В настоящем стандарте применены термины и определения в соответствии со словарем терминов стандартов Института инженеров по электротехнике и радиоэлектронике (ИИЭР, IEEE) [B2], а также следующие термины с соответствующими определениями:

________________

Ссылка на литературу, указанную в приложении А.

3.1.1 исполнительное устройство (actuator): Преобразователь, на вход которого поступает выборка (выборки) данных, которые затем преобразуются в действие. Действие может быть осуществлено в пределах или за пределами ИМП.

3.1.2 адрес (address): Символ или группа символов, которая определяет регистр, определенную часть запоминающего устройства или какой-либо другой источник данных или место назначения.

3.1.3 адресная группа (Address Group): Совокупность каналов преобразователя, которые соответствуют одному адресу.

3.1.4 буфер (buffer): Промежуточное место хранения данных, которое используется для компенсации разницы в скорости потока данных или во времени возникновения событий при передаче информации от одного устройства к другому.

3.1.5 калибровка (calibration): Процесс определения информации, которая постоянно хранится в ЭТДП калибровки, для обеспечения коррекции.

3.1.6 контрольная группа (Control Group): Технические характеристики изготовителя, которые определяют внутренние связи между каналами многоканального ИМП. Информация контрольной группы, как правило, не используется в самом ИМП. Эта информация применяется для идентификации каналов преобразователя, которые используются для управления какой-либо характеристикой другого канала преобразователя. Например, контрольная группа может быть использована для идентификации исполнительного устройства, которое применяется для установления порога аналогового датчика событий.

3.1.7 коррекция (correction): Вычисление полиномиальной функции с использованием информации от ЭТДП калибровки совместно с данными от одного или нескольких преобразователей.

3.1.8 модель данных (data model): Числовой формат, в котором ИМП должен получать или передавать данные.

3.1.9 набор данных (data set): Совокупность выборок, полученных от датчика (или применяемых исполнительным устройством) в ответ на команду запуска.

3.1.10 таблица данных (data sheet): Перечень информации об устройстве, которая определяет параметры работы и условия применения (как правило, разрабатывается изготовителем).

3.1.11 цифровой интерфейс (digital interface): Средства коммуникации и протокол для передачи информации только в виде двоичного кода.

3.1.12 электронная таблица данных (electronic data sheet): Таблица данных, которая хранится в какой-либо форме в электронно-считываемом запоминающем устройстве (в отличие от бумаги).

3.1.13 встроенный преобразователь (embedded transducer): Устройство, действующее как преобразователь с точки зрения СПП, даже если никакие параметры за пределами ИМП не считываются и не изменяются. Встроенные преобразователи могут быть использованы для установки или считывания рабочих параметров других преобразователей.

3.1.14 нумерация (enumeration): Присвоение числового значения определенным значениям в контексте определенного поля данных. Для удобства пользователя двоичные числа, как правило, выражаются в десятичном виде. Не все возможные числовые значения обязательно должны иметь значения из поля данных. Числовые значения, которым соответствуют пустые значения определенного поля данных, не используются или резервируются для использования в будущем. Нумерация является процессом кодировки интерпретируемой человеком информации в вид, удобный для хранения и обмена в цифровой электронной машине. Любой подраздел, который определяет поле данных ЭТДП для нумерации, должен содержать таблицу, определяющую значение определенного поля данных для каждого возможного числового значения. Значения, закодированные в каждом поле данных, должны быть конкретными и уникальными для этой области данных и только в этой области данных. Числовое значение становится бессмысленным, если оно не связано с полем данных и не определено в таблице.

3.1.15 датчик событий (event sensor): Датчик, который обнаруживает изменение состояния в материальном мире. При этом для такого датчика "измерением" считается факт изменения состояния в материальном мире и/или момент времени изменения состояния, а не величина данного изменения или значение состояния.

3.1.16 горячая замена (hot swap): Акт подключения или отключения ИМП от интерфейсной среды преобразователя без предварительного отключения питания, которое подводится к ИМП через среду.

3.1.17 младший значащий бит; МЗБ (least significant bit; LSB): Бит в двоичной записи числа, который является показателем наименьшей возможной степени.

3.1.18 сообщение (message): Информация, которая должна быть передана между устройствами как единый логический объект. Сообщение может занимать один или несколько пакетов.

3.1.19 мета- (meta-): Приставка, заимствованная из греческого языка, которая означает что-то, относящееся к целому или общему логическому объекту или являющееся общим или совместным со всеми логическими элементами, составляющими целое.

3.1.20 мета-ЭТДП (meta-TEDS): Совокупность тех полей данных ЭТДП, которые относятся к целому или общему объекту, или тех, которые являются общими или совместными со всеми логическими элементами каналов преобразователя, составляющими весь продукт.

3.1.21 полином (multinomial): Линейная сумма слагаемых, возведенных в степень для более чем одной переменной (степенной ряд).

3.1.22 сетевой процессор приложений; СПП (network-capable application processor; NCAP): Устройство между модулями преобразователей и сетью. СПП осуществляет сетевую связь, связь модулей ИМП и преобразование данных или другие функции обработки.

3.1.23 нечисло; НЧ (not-a-number; NaN): Как определено в ИИЭР 754-1985 - битовая комбинация действительного числа одинарной точности или двойной точности, которая является результатом неправильной операции с плавающей точкой. Для действительных чисел одинарной точности битовая комбинация должна иметь степень 255 (десятичное число) и ненулевую мантиссу. Знак не учитывается при определении того, является ли значение нечислом.

________________

Информация о ссылках приведена в разделе 2.

3.1.24 байт (octet): Группа из 8 битов (в Соединенных Штатах Америки октет обычно называют байтом).

________________

В оригинале ISO/IEC/IEEE 21450:2010 используется термин "октет".

3.1.25 пакет (packet): Блок информации, который должен быть передан физическим уровнем между устройствами за одну передачу.

3.1.26 отсчет зафиксирован (sample latched): Данный термин используется в датчике, чтобы сигнализировать, что отсчет был получен. Например, когда выборка и блокировочная схема переключаются в режим "hold" (режим "удержать") или при другой подобной операции. Для исполнительного устройства данный термин сигнализирует, что отдельный входной сигнал исполнительного устройства был обработан согласно логике устройства.

3.1.27 датчик (sensor): Преобразователь физического, биологического или химического параметра в электрический сигнал.

3.1.28 время установки (setup time): Время между первоначальным запросом выполнения функции и непосредственным запуском задачи.

3.1.29 формирование сигнала (signal conditioning): Обработка сигнала преобразователя, которая включает такие операции, как усиление, компенсация, фильтрация и нормализация.

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

3.1.31 сигнал синхронизации (synchronization signal): В настоящем стандарте сигнал, передаваемый через СПП, чтобы обеспечить сигналы тактовой или временной синхронизации для ИМП или группы ИМП. Сигналы синхронизации имеются в распоряжении не для всех стандартов физического уровня. ИМП с низкой стоимостью и производительностью могут не содержать ресивер для синхронизации сигнала.

3.1.32 преобразователь (transducer): Устройство, которое преобразует энергию из одного вида в другой. Устройство может быть либо датчиком, либо исполнительным устройством.

3.1.33 интерфейсный модуль преобразователя; ИМП (transducer interface module; TIM): Модуль, содержащий ЭТДП, логику реализации интерфейса преобразователя, преобразователь (преобразователи) или подключение к преобразователю (преобразователям), а также любое преобразование или формирование сигнала.

3.1.34 канал преобразователя (Transducer Channel): Преобразователь и все связанные с ним компоненты формирования и преобразования сигнала.

3.1.35 номер канала преобразователя (Transducer Channel number): 16-битное число, присвоенное изготовителем индивидуальному каналу преобразователя в ИМП.

3.1.36 прокси-сервер канала преобразователя (Transducer Channel proxy): Устройство, которое обеспечивает обработку совокупности каналов преобразователя как единого целого. Прокси-сервер канала преобразователя аналогичен каналу преобразователя за исключением того, что он не требует наличия ЭТДП канала преобразователя, не может иметь ЭТДП калибровки, ЭТДП передаточной функции или ЭТДП частотной характеристики. Он может поддерживать другие ЭТДП. Прокси-сервер канала преобразователя может реагировать на команды.

3.1.37 электронная таблица данных преобразователя; ЭТДП (Transducer Electronic Data Sheet; TEDS): Электронная таблица данных, описывающая ИМП или канал преобразователя. Структуры сложных ЭТДП описаны в настоящем стандарте.

3.1.38 передача (transfer): Акт или процесс перемещения информации из одного цифрового устройства в другое.

3.1.39 передаточная функция (transfer function): Функция, которая определяет отклик канала преобразователя на сигналы различной амплитуды и частоты.

3.1.40 триггер (trigger): Сигнал или сообщение, которое используется для запуска действия.

3.1.41 векторная группа (Vector Group): Технические характеристики изготовителя, которые определяют внутренние связи между каналами многоканального ИМП. Информация векторной группы, как правило, не используется в самом ИМП. Данная информация обычно применяется в приложениях СПП, чтобы правильно составить читаемые человеком дисплеи или при формулировке других вычислений. Например, векторные группы могут быть использованы для указания, какие каналы преобразователя представляют каждую из трех векторных осей в трехмерном пространстве измерений.

3.1.42 виртуальная ЭТДП (virtual TEDS): ЭТДП, которая постоянно хранится в отличном от ИМП месте.

     3.2 Сокращения


В настоящем стандарте применены следующие сокращения:

н.э. - нашей эры (Anno Domini, AD);

ОСК - опорная система координат (Coordinate Reference System, CRS);

DTD - объявление типа документа со ссылкой на язык разметки XML (Extensible Markup Language, XML);

HTTP - протокол передачи гипертекста (Hypertext Transfer Protocol);

MJD - измененный юлианский календарь (modified Julian date);

НЧ - нечисло (not a number, NaN);

СПП - сетевой процессор приложений (network-capable application processor, NCAP);

OMG - группа управления объектами (Object Management Group, OMG) - консорциум, который стремится к разработке технически совершенных, коммерчески жизнеспособных и независимых от поставщиков спецификаций для индустрии программного обеспечения;

ФУ - физический уровень (physical layer, PHY);

СИ - Международная система единиц (International System of Units, SI) [B9];

MAB - Международное атомное время (International Atomic Time, TAI);

ИМП - интерфейсный модуль преобразователя (transducer interface module, TIM);

ЭТДП - электронная таблица данных преобразователя (transducer electronic data sheet, TEDS);

СИП - сервисный интерфейс преобразователя (Transducer Service Interface, TSI);

АСКОИ - американский стандартный код для обмена информацией (АНСИ X3.4-1986) (U.S. American standard code for information interchange, USASCII);

BCB - Всемирное скоординированное время (universal coordinated time, UTC);

УУИД - универсальный уникальный идентификатор (universal unique identifier, UUID);

Xdcr - преобразователь (transducer);

XML - расширяемый язык разметки (eXtensible Markup Language).

     4 Типы данных


Все типы данных, используемые в настоящем стандарте, определены в соответствующих подразделах.

     4.1 8-разрядное целое число без знака


Символ:  Uint8.

Размер: 1 байт.

IDL: typedefoctet  Ulnt8.

Данный тип данных используется для представления положительных целых чисел от 0 до 255.

     4.2 16-разрядное целое число без знака


Символ:  Ulnt16.

Размер: 2 байта.

IDL: typedef unsigned short  Ulnt16.

Данный тип данных может принимать любое значение от 0 до 65535.

     4.3 32-разрядное целое число со знаком

         

Символ: Int32.

Размер: 4 байта.

IDL: typedef long Int32.

Данный тип данных используется для представления целого числа от -2147483648 до 2147483647.

     4.4 32-разрядное целое число без знака


Символ:  Ulnt32.

Размер: 4 байта.

IDL: typedef unsigned long  Ulnt32.

Данный тип данных используется для представления положительных целых чисел от 0 до 4294967295.

     4.5 Действительное число одинарной точности


Символ: Float32.

Размер: 4 байта.

IDL: typedef float Float32.

Действительное число одинарной точности является 32-разрядной двоичной последовательностью, которая кодирует действительные числа, как определено в стандарте ИИЭР 754-1985.

4.5.1 НЧ с плавающей точкой в ЭТДП

В соответствии с ИИЭР 754-1985 число одинарной точности с показателем (порядком, степенью) 255 и дробной частью (мантиссой), отличной от нуля, является НЧ независимо от знакового бита (знакового разряда). Рекомендуемое значение для НЧ для использования в поле ЭТДП - 0x7FFFFFFF (шестнадцатеричный).

     4.6 Действительное число двойной точности


Символ: Float64.

Размер: 8 байтов.

IDL: typedef double Float64.

Действительное число двойной точности является 64-разрядной двоичной последовательностью, которая кодирует действительные числа, как определено в стандарте ИИЭР 754-1985.

     4.7 Тип данных String (тип данных "строка")


Символ: _String.

Размер: переменный.

IDL: typedef string_String; // Leading `_' to escape reserved IDL keyword.

Использование текстовых строк как типовой строки в качестве основного типа, который определен в ИИЭР 1451.2-1997, было заменено с использованием стандартов консорциума Object Management Group (OMG) для языка описания интерфейса (IDL).

XML, используемый в 8.9, - это текстовые ЭТДП. Регулирующим документом для XML являются Рекомендации W3C по расширяемому языку разметки (XML) 1.0 (второе издание) [W3C Recommendation Extensible Markup Language (XML) 1.0 (Second Edition)]. Все текстовые строки в ЭТДП должны соответствовать этим рекомендациям или будущим обновлениям к ним.

     4.8 Тип Boolean (логический тип данных)


Символ : _Boolean.

Размер: 1 байт.

IDL: typedef boolean_Boolean; // Leading '_' to escape reserved IDL keyword.

Логический тип является основным типом, который определен в стандартах консорциума Object Management Group (OMG) для языка описания интерфейса (IDL).

В настоящем стандарте бит или байт с ненулевым значением имеет статус "True" ("истина"). Переменная с нулевым значением имеет статус "False" ("ложь").

     4.9 Класс "IEEE1451Dot0::Args::TimeRepresentation"

(класс "ИИЭР1451.0::Аргументы::Представление времени")

Данный абстрактный класс определяет представление времени. Он состоит из двух подклассов: Timelnstance и TimeDuration. Определение данных двух аргументов приведено в таблице 1.

IDL: struct TimeRepresentation {

Ulnt32 secs;

Ulnt32 nsecs;

}.

Примечание - Для данного формата исправлены недостатки неправильного временного представления, обнаруженные в ИИЭР 1588-2002.


Таблица 1 - Структура представления временных данных

Параметр

Тип

Описание

secs (c)

Ulnt32

Секунды - беззнаковое 32-разрядное число, представляющее собой число секунд с начала периода отсчета времени (обычно 00 часов 1 января 1970 г.)

nsecs (нс)

Ulnt32

Знак, наносекунды - беззнаковое 32-разрядное целое число, состоящее из двух меньших по размеру полей. Старший бит будет интерпретироваться как знаковый бит значения времени. Младшие 31 бит представляют число наносекунд, которые будут добавлены к значению, определенному в поле "секунды" до применения знака. Значение, указанное в поле "наносекунды", ограничивается областью от 0 до 999999999 включительно


В настоящем стандарте используется временное представление, которое определено в стандарте ИИЭР 1588-2002. Одним из последствий этого выбора является то, что время измеряется в секундах в соответствии с Международным атомным временем (International Atomic Time, TAI), а не Всемирным координированным временем (Universal Time Coordinated, UTC). TAI является международным стандартом для времени на основе секунды международной системы СИ, основанной на вращающемся геоиде. TAI обеспечивается набором атомных часов и формирует основу отсчета времени для других общепринятых временных шкал. Из этих шкал UTC является временной шкалой, представляющей наибольший инженерный и коммерческий интерес. Представление UTC определено в ИСО 8601 [B5] в формате ГГГГ-ММ-ДД для даты и чч:мм:сс для времени суток.

Длительность секунды во времени по UTC идентична длительности секунды по TAI. Время UTC отличается от времени TAI на постоянное смещение. Данное смещение преобразуется время от времени путем прибавления или вычитания секунд координации (високосных секунд).

Начиная с 00 часов 1 января 1972 г. [согласно измененному юлианскому календарю (MJD) 41 317.0] стандартные системы времени в мире начали вводить секунды координации для обеспечения только интегральной секундной коррекции между секундами по UTC и по TAI. И в UTC, и в TAI время выражается в днях, часах, минутах и секундах. Внесение секунд координации, которое применяется в системе UTC, но не применяется в TAI, предпочтительно осуществляется после 23:59:59 в последний день июня или декабря. Первая такая коррекция, одиночная положительная коррекция за счет секунд координации, была сделана после 23:59:59 30 июня 1972 г., и на тот момент время по UTC отставало на 11 секунд от времени по TAI.

4.9.1 Подкласс "IEEE1451Dot0::Args::TimeDuration"

(подкласс "ИИЭР1451.0::Аргументы::Продолжительность по времени")

Данный подкласс представления времени используется для указания временного интервала, а не временного значения. Определение данных двух аргументов приведено в 4.9.

IDL: struct TimeDuration {

Ulnt32 secs;

Ulnt32 nsecs;

}.

4.9.2 Подкласс "EEE1451Dot0::Args::TimeInstance"

(подкласс ИИЭР1451.0::Аргументы::Момент времени")

Значения времени задаются данной структурой на уровне ИИЭР 1451.0. Данная структура используется, когда необходимо представить значение времени, а не продолжительность времени. Значение времени до начала отсчетного периода времени задается отрицательным полем "нс" (nsecs).

IDL: struct Timelnstance {

Ulnt32 secs;

Ulnt32 nsecs;

}.

Подкласс Timelnstance основан на периоде, который начался в 00 часов 1 января 1970 г. Определение данных двух аргументов приведено в 4.9.

     4.10 Типы данных для соответствующих приложений


Типы данных, описанные в подразделе, не используются в настоящем стандарте, но приводятся для обеспечения передачи данных в этих форматах приложениям, использующим настоящий стандарт.

4.10.1 Восьмиразрядное целое число со знаком

Символ: Int8.

Размер: 1 байт.

IDL: typedef char Int8.

Данный тип данных используется для представления целых чисел от минус 128 до 127.

4.10.2 Шестнадцатиразрядное целое число со знаком

Символ: Int16.

Размер: 2 байта.

IDL: typedef short Int16.

Данный тип данных используется для представления целых чисел от минус 32768 до 32767.

     4.11 Физические единицы измерения


Символ: UNITS.

Размер: 11 байтов.

IDL: struct Units {

UInt8 interpretation;

UInt8 radians;

UInt8 steradians;

UInt8 meters;

UInt8 kilograms;

UInt8 seconds;

UInt8 amperes;

UInt8 kelvins;

UInt8 moles;

UInt8 candelas

UInt8 Units Extension TEDS Access Code

}.

Физические единицы измерения - это двоичная последовательность из 10 байтов, которая кодирует физические единицы в соответствии с таблицами 2 и 3. Каждое поле должно толковаться как целое число без знака. Каждая единица должна быть представлена в виде произведения основных единиц СИ, а также радиан и стерадиан, каждая из которых возведена в рациональную степень. Структура, представленная в таблице 2, кодирует только показатели степени; само произведение является неявным. Примеры физических единиц приведены в приложении J. Для получения дополнительной информации см. Hamilton [B1].


Таблица 2 - Структура типов данных физических единиц

Поле

Описание

Тип
данных

Число
байтов

1

Интерпретация физических единиц (см. таблицу 3)

 UInt8

1

2

(2 х <показатель степени для единицы "радиан">) + 128

 UInt8

1

3

(2 х <показатель степени для единицы "стерадиан">) + 128

 UInt8

1

4

(2 х <показатель степени для единицы "метр">) + 128

 UInt8

1

5

(2 х <показатель степени для единицы "килограмм">) + 128

 UInt8

1

6

(2 х <показатель степени для единицы "секунда">) + 128

 UInt8

1

7

(2 х <показатель степени для единицы "ампер">) + 128

 UInt8

1

8

(2 х <показатель степени для единицы "кельвин">) + 128

 UInt8

1

9

(2 х <показатель степени для единицы "моль">) + 128

 UInt8

1

10

(2 х <показатель степени для единицы "кандела">) + 128

 UInt8

1


Формы U/U (значения 1 и 3 графы "Нумерация" в таблице 3) используются для выражения "безразмерных" единиц, таких как деформация (в метрах на метр) и концентрация (в молях на моль). Числитель и знаменатель единиц идентичны, каждый из них определяется подполем от 2 до 10.

Логические данные (значения {0, 1} или {False, True}) должны быть представлены в виде цифровых данных (значение 4 графы "Нумерация" в таблице 3).


Таблица 3 - Интерпретация физических единиц

Нумерация

Наименование постоянной

Определение

0

PUI_SI_UNITS

Единица описывается произведением основных единиц СИ, а также радиан и стерадиан, возведенных в степени, записанные в полях со 2 по 10 в таблице 2. Единицы измерения для некоторых величин, таких как число людей через турникет, не могут быть представлены с использованием этих единиц. Для таких случаев, когда величина находится в процессе определения, следует пользоваться нумерацией 0 с установленными значениями 128 для полей 2-10

1

PUI_RATIO_SI_UNITS

Единицей является U/U, где U описывается произведением основных единиц СИ, а также радиан и стерадиан, возведенных в степени, записанные в поля со 2 по 10

2

PUI_LOG10_SI_UNITS

Единицей является log10(U), где U описывается произведением основных единиц СИ, а также радиан и стерадиан, возведенных в степени, записанные в поля со 2 по 10

3

PUI_LOG10_RATIO_SI_UNITS

Единицей является log10(U/U), где U описывается произведением основных единиц СИ, а также радиан и стерадиан, возведенных в степени, записанные в поля со 2 по 10

4

PUI_DIGITAL_DATA

Соответствующая величина - это цифровые данные (например, бит-вектор), и эта величина не имеет размерности. В полях 2-10 должно быть установлено значение 128. Тип "цифровые данные" относится к данным, которые не представляют количество, например, текущие положения переключателей коммутационного блока

5

PUI_ARBITRARY

Соответствующая физическая величина представляется значениями на произвольной шкале (например, прочность). Поля 2-10 резервируются, в них должны быть установлены значения 128

6-255

-

Зарезервировано

     

     4.12 Универсальная уникальная идентификация (УУИД)


Символ: UUID.

Размер: 10 байтов.

IDL: typedef UUID Short [5].

Поле "УУИД" является полем идентификации, связанным с ИМП, значение которого является уникальным на планете. Поле "УУИД" должно иметь размер 10 байтов и состоять из четырех расположенных по порядку от старшего (наиболее значимого) к младшему подполей: подполя "Место нахождения", подполя "Изготовитель", подполя "Год" и подполя "Время", определенных в таблице 4.

При этом не требуется, чтобы интерпретация УУИД отражала фактическое место или время изготовления ИМП. Время и место должны использоваться в алгоритме только для обеспечения уникальности. Таким образом, изготовитель должен иметь возможность использовать поля, определенные с помощью алгоритма, по своему усмотрению при условии, что при интерпретации согласно таблице 4 не должно быть никакого другого изготовителя, претендующего на использование той же идентификации УУИД для ИМП.

     4.13 Произвольный байтовый массив


Символ: OctetArray.

Размер: меняется.

Данный тип данных включает в себя произвольное число байтов, обработанных как совокупный логический объект, которые могут быть или не могут быть истолкованы как число. Массив OctetArray может являться структурой, содержащей один или более простейших типов данных, массивы простейших типов данных или меньшие массивы OctetArrays.

     4.14 Массив строк


Символ: StringArray.

Размер: меняется.

Данный тип данных включает в себя произвольное число данных типа String (см. 4.7), обработанных как совокупный логический объект.

     4.15 Массив логических данных


Символ: BooleanArray.

Размер: меняется.

Данный тип данных включает в себя произвольное число данных типа Boolean (см. 4.8), обработанных как совокупный логический объект.

     4.16 Массив 8-разрядных целых чисел со знаком


Символ: Int8Array.

Размер: меняется.

Данный тип данных включает в себя произвольное число байтов, обработанных как совокупный логический объект, состоящий из 8-разрядных целых чисел со знаком (Int8).

     4.17 Массив 16-разрядных целых чисел со знаком


Символ: Int16Array.

Размер: меняется.

Данный тип данных включает в себя произвольное число 16-разрядных целых чисел со знаком (Int16), обработанных как совокупный логический объект.

     4.18 Массив 32-разрядных целых чисел со знаком


Символ: Int32Array.

Размер: меняется.

Данный тип данных включает в себя произвольное число 32-разрядных целых чисел со знаком (Int32), обработанных как совокупный логический объект.

________________

В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведено значение Int16.


Таблица 4 - Структура типов данных универсальной уникальной идентификации УУИД

Поле

Описание

Число
битов

1

Поле "Место нахождения" (Location): значение данного поля должно быть выбрано изготовителем ИМП для определения конкретного места на Земле, места нахождения, над которым изготовитель имеет физический контроль. Данное значение может представлять фактическое место нахождения изготовителя ИМП. Изготовитель может использовать в своей работе различные значения данного поля, но только если они удовлетворяют требованиям настоящего подраздела.

Поле "Место нахождения" должно быть представлено 42 битами. Старший значащий бит указывает на северную (бит установлен) или южную (бит не установлен) широту. Следующие 20 старших значащих битов данного поля представляют собой значение широты места нахождения как целое число угловых секунд. Следующий старший значащий бит должен указывать на восточную (бит установлен) или западную (бит не установлен) долготу. Остальные 20 битов представляют значение долготы места нахождения как целое число угловых секунд.

Значения широты более 90° зарезервированы. Значения долготы более 180° зарезервированы.

42

Примечание - Одна угловая секунда на экваторе составляет около 30 м. Таким образом, диапазон, представляемый каждым 20-битовым полем, составляет от 0 до 1048575 угловых секунд или от 0° до 291°, что является достаточным для представления широты и долготы на поверхности Земли

2

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

4

3

Поле "Год" (Year): значение данного поля должно отображать текущий год. Поле "Год" должно быть представлено 12-разрядным целым значением. Диапазон данного поля должен составлять от 0 г. до 4095 г. н.э. Началом года принято считать 1 января, 00:00:00 по TAI

12

4

Поле "Время" (Time): данное значение должно быть выбрано изготовителем ИМП таким образом, чтобы в сочетании с полями "Место нахождения", "Изготовитель" и "Год" результирующий УУИД являлся уникальным для всех ИМП, сделанных под контролем данного изготовителя. Выбор значений для поля "Время" должен быть, кроме того, ограничен таким образом, чтобы значения, которые интерпретируются как время с начала года, не представляли ни время, предшествующее получению изготовителем физического контроля над местом нахождения, ни значений времени в будущем.

Поле "Время" должно быть представлено 22-разрядным целым числом. Диапазон должен составлять от 0 до 4194303. Если необходимо интерпретировать данное поле как время с начала года, то оно должно быть представлено целым числом 10-секундных интервалов. В этом случае значения времени более одного года зарезервированы. Началом года принято считать 1 января, 00:00:00 по TAI.

22

Примечание - В году примерно 31536000 с

     

     4.19 Массив 8-битовых целых чисел без знака


Символ:  Ulnt8Array.

Размер: меняется.

Данный тип данных включает в себя произвольное число байтов, обработанных как совокупный логический объект, состоящий из 8-разрядных целых чисел без знака (Int8).

     4.20 Массив 16-битовых целых чисел без знака


Символ:  Ulnt16Array.

Размер: меняется.

Данный тип данных включает в себя произвольное число 16-разрядных целых чисел без знака (Int16), обработанных как совокупный логический объект.

     4.21 Массив 32-битовых целых чисел без знака


Символ:  UlNT32Array.

Размер: меняется.

Данный тип данных включает в себя произвольное число 32-разрядных целых чисел без знака (Int32), обработанных как совокупный логический объект.

________________

В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведено значение Int16.

     4.22 Массив вещественных чисел одинарной точности


Символ: Float32Array.

Размер: меняется.

Данный тип данных включает в себя произвольное число вещественных чисел одинарной точности, как определено в ИИЭР 754-1985, обработанных как совокупный логический объект.

     4.23 Массив вещественных чисел двойной точности


Символ: Float64Array.

Размер: меняется.

Данный тип данных включает в себя произвольное число вещественных чисел двойной точности, как определено в ИИЭР 754-1985, обработанных как совокупный логический объект.

     4.24 Массив типов данных TimeDuration


Символ: TimeDurationArray.

Размер: меняется.

Данный тип данных включает в себя произвольное число типов данных TimeDuration, как определено в 4.9.1, обработанных как совокупный логический объект.

     4.25 Массив типов данных Timelnstance


Символ: TimelnstanceArray.

Размер: меняется.

Данный тип данных включает в себя произвольное число типов данных Timelnstance, как определено в 4.9.2, обработанных как совокупный логический объект.

     5 Функциональная спецификация интеллектуальных преобразователей


В настоящем разделе стандарта приведено описание функций интеллектуальных преобразователей ИИЭР 1451. Более детальное описание этих функций приведено в разделах 6-11.

     5.1 Базовая модель комплекса стандартов ИИЭР 1451


В изображении базовой модели, приведенном на рисунках 1 и 2, показаны взаимосвязи между различными представителями комплекса стандартов ИИЭР 1451. Данная информация может быть использована для определения принадлежности к определенному стандарту комплекса. Данная информация не имеет своей целью продемонстрировать необходимое исполнение устройств, соответствующих данному стандарту. Дальнейшее описание элементов, представленных на рисунках 1 и 2, приведено в 5.1.1-5.1.15.

5.1.1 Пользовательская сеть

Пользовательская сеть не является предметом рассмотрения комплекса стандартов ИИЭР 1451. Характеристики данной сети определяются самим пользователем. Единственное требование сети предъявляется к СПП, который должен иметь соответствующее программное и аппаратное обеспечение для работы с определенным сетевым интерфейсом. Для сетей, использующих различные средства связи и протоколы, требуются различные СПП.

5.1.2 Модуль сетевого доступа

Модуль сетевого доступа является частью СПП, предоставляющего интерфейс для пользовательской коммуникационной сети. Такая коммуникационная сеть не подпадает под действие какого-либо раздела стандарта комплекса ИИЭР 1451, и следовательно, функции данного модуля также не могут быть полностью определены каким-либо стандартом ИИЭР 1451. В стандарте ИИЭР 1451.1-1999 приведена логическая модель данного модуля, но при этом использование стандарта ИИЭР 1451.1-1999 для СПП не является обязательным для согласования с данным стандартом или любым другим стандартом комплекса ИИЭР 1451, основанным на данном стандарте.

5.1.3 Интерфейс сервисов интеллектуального преобразователя

В настоящем стандарте данный программный интерфейс определен как API. Детальное описание интерфейса приведено в разделе 10.

5.1.4 Сервисы СПП по ИИЭР 1451.0

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


Рисунок 1 - Базовая модель


Рисунок 2 - Альтернативное описание базовой модели

5.1.5 Интерфейс модульных связей

В настоящем стандарте интерфейс модульных связей определяется в рамках API, использующегося для передачи информации между сервисами СПП ИИЭР 1451.0 и модулем связи СПП по ИИЭР 1451.Х. Физические параметры данного интерфейса в настоящем стандарте не рассматриваются, они определяются изготовителями. Детальное описание данного интерфейса приведено в разделе 11.

5.1.6 Модуль связи СПП по ИИЭР 1451.Х

Модуль связи СПП описывается в других стандартах комплекса ИИЭР 1451: например, ИИЭР 1451.2-1997, ИИЭР 1451.3-2003 и ИИЭР 1451.5-2007 [B4]. Данный модуль передает низкоуровневые пакеты протокола связи и прочие сервисы, необходимые для функционирования СПП в системе.

5.1.7 Интерфейс физического уровня

Интерфейс физического уровня между СПП и ИМП не описывается в настоящем стандарте, его описанию посвящены другие стандарты данного комплекса. В настоящем стандарте приведены некоторые функции данного интерфейса, как, например, синхронизация. Физическая реализация данных функций не представлена.

5.1.8 Модуль связи ИМП по ИИЭР 1451.Х

Модуль связи ИМП по ИИЭР 1451.0/Х является логическим дополнением модуля связи СПП по ИИЭР 1451.0/Х, но не является идентичным данному модулю, так как существуют некоторые сервисы ИМП, отличные от тех, которые требуются для СПП. Как и в случае модуля связи СПП по ИИЭР 1451.0/Х, данный модуль не определяется в настоящем стандарте, но определяется в других стандартах комплекса.

5.1.9 Сервисы ИМП по ИИЭР 1451.0

В настоящем стандарте описываются сервисы, исполняемые данной функцией. Большинство сервисов, предоставляемых СПП, имеют аналоги в данном блоке.

5.1.10 API измерений преобразователя

Данный интерфейс создается изготовителем и не является предметом рассмотрения данного стандарта.

5.1.11 Блок формирования сигналов. Функции преобразования данных

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

5.1.12 Аналоговый интерфейс преобразователя

Данный интерфейс является физическим интерфейсом между функцией формирования сигналов и функцией преобразования данных и не является предметом рассмотрения каких-либо стандартов комплекса ИИЭР 1451, за исключением стандарта ИИЭР 1451.4-2004.

5.1.13 Преобразователь

Преобразователь не является предметом рассмотрения каких-либо стандартов комплекса ИИЭР 1451.

5.1.14 ЭТДП

В настоящем стандарте определены основные ЭТДП и методы доступа к ним. Тем не менее информация, касающаяся физического интерфейса, и соответствующие ЭТДП определены в других стандартах комплекса ИИЭР 1451. Подробное описание ЭТДП приведено в разделе 8.

5.1.15 Применение стандарта ИИЭР 1451.4-2004 для базовой модели

Уровень ИИЭР 1451.0 задан для передачи цифровой информации между модулями системы. ЭТДП ИИЭР 1451.0 используются для полного описания ИМП, включая сам преобразователь, блок формирования сигналов и блоки преобразования данных. Передаваемая через такие интерфейсы аналоговая информация не является предметом рассмотрения стандартов настоящего комплекса. Тем не менее стандарт ИИЭР 1451.4-2004 дополняет аналоговый выход преобразователя ЭТДП. В этих ЭТДП приведены характеристики аналоговой информации, которая может быть получена от датчика ИИЭР 1451.4. Использование преобразователей ИИЭР 1451.4 не требуется ни одним из стандартов комплекса ИИЭР 1451, но допускается, что и показано в описании базовой модели. Совместное использование устройства ИИЭР 1451.4 и совместимого с ним устройства ИИЭР 1451.0 требует наличия соответствующего блока формирования сигналов для преобразователя и транслятора ЭТДП ИИЭР 1451.4. Транслятор ЭТДП требуется для согласования данных ЭТДП ИИЭР 1451.4 и характеристик блока формирования сигнала и позволяет полностью описать ИМП с помощью ЭТДП ИИЭР 1451.0. Оба типа ЭТДП описываются в стандартах данного комплекса, но описание метода совмещения ЭТДП не является предметом рассмотрения какого-либо из данных стандартов.

Для преобразователей ИИЭР 1451.4 часто используются интерфейсы, не соответствующие остальным стандартам комплекса ИИЭР 1451. В таком случае данная базовая модель не применяется.

     5.2 Возможность автоматической конфигурации (plug-and-play)


ИМП и СПП, разрабатываемые для работы по настоящему стандарту, должны иметь возможность соединения с использованием совместимых физических средств связи и быть способны работать без каких-либо изменений системного программного обеспечения. При этом не должно быть необходимости в различных драйверах, профилях или прочих изменениях в программном обеспечении для выполнения базовых функций преобразователя. Данное утверждение не подразумевает приложений, использующих, создающих или отображающих относящиеся к преобразователю данные. Использование компонентов, выходящих за пределы рассмотрения настоящего стандарта, допускается, но такие компоненты могут оказывать влияние на способность конфигурации plug-and-play для ИМП или СПП.

     5.3 Адреса


В настоящем стандарте применяется два уровня адресации. Первый уровень адресации связан с физическим уровнем и детально описан в стандартах комплекса ИИЭР 1451, определяющих средства связи. API модульных связей делает привязку данного адреса к "destId" (к "идентификатору получателя") с использованием "discoverDestination call" ("запроса для определения получателя"), описанного в 11.3.13. На данном уровне адресации возможен обмен сообщениями (см. раздел 6) между ИМП и СПП или между модулями ИМП. Детальное рассмотрение данного вида адресации представлено в стандарте для связей физического уровня.

Второй уровень адресации - обращение к номеру канала преобразователя, присваиваемому заданному каналу преобразователя в рамках ИМП. Данные номера каналов преобразователя, имеющие длину в 16 битов, применяются в командных сообщениях в качестве номера канала-получателя (см. 6.1.2) или в ответных сообщениях (см. 6.1.4) в качестве номера канала-отправителя. Данный уровень используется для информирования ИМП о направлении отправки сообщения или для информирования СПП о том, откуда поступило сообщение в рамках ИМП. Правила, связанные с трактовкой номера канала преобразователя, приведены в таблице 5. Каждая строка данной таблицы содержит имя определенного класса адресов, используемое на протяжении всего стандарта.

Не всем командам можно присвоить любой класс адреса. Классы адресов, присваиваемые определенным командам, как и определения самих команд, приведены в разделе 7.


Таблица 5 - Правила использования номера канала преобразователя

Класс адреса

Значение

Описание

Глобальный

0xFFFF

К глобальной адресации относится особый адрес группы (GroupAddress), принадлежащий всем каналам ИМП

Адресная группа (AddressGroup)

0x8000<A0xFFFE

Как показано в таблице 6, существуют две адресные группы. Адресные группы с побитовым отображением применяются в случае, когда есть необходимость в небольшом числе адресных групп и желательна отправка команды к нескольким адресным группам одновременно. Двоичные адресные группы применяются в случае, когда нужно использовать большое число различных адресных групп. Адрес 0x8000 не используется

Канал преобразователя

1A0x7FFF

Адрес, старший значащий бит которого равен нулю. Оставшиеся 15 битов определяют канал преобразователя, которому направлено сообщение

ИМП

0

Адрес в нулевом сообщении означает, что сообщение предназначено для ИМП, а не для отдельного канала преобразователя



Таблица 6 - Адресные группы

Класс адреса

Значение

Описание

Адресные группы с побитовым отображением

0x8000<A0xBFFF

Установленное значение старшего значащего бита равно единице, следующего старшего значащего бита - нулю, и как минимум еще одного бита - единице. Данная последовательность значений двух старших значащих битов (битовая комбинация) сигнализирует, что это адрес группы. Оставшийся бит или биты указывают на группу (группы)

Двоичные адресные группы

0xC0000xFFFE

Значения двух старших значащих битов установлены равными единице, а из оставшихся 14 битов формируется двоичная последовательность, определяющая одиночную адресную группу (группу с одним адресом)

5.3.1 Глобальные адреса

Команды, отправленные на глобальный адрес, должны быть получены и выполнены всеми каналами преобразователя модулей ИМП, которым была адресована команда. В случае если полученная команда не выполняется ИМП или каналом преобразователя, команда должна быть проигнорирована без генерации сигнала ошибки.

5.3.2 Адреса адресных групп

Команды, отправленные адресным группам, должны быть исполнены всеми каналами преобразователя, которые опознаны как члены адресной группы. Определения команд адресной группы и способы их присваивания или удаления определенным адресным группам рассмотрены в 7.1.2.3. В случае если полученная команда не выполняется ИМП или каналом преобразователя, команда должна быть проигнорирована, при этом должен быть установлен бит "Отказ от выполнения" в ИПМ или канале преобразователя.

Использование адресных групп с несколькими модулями ИМП требует установки метода множественной адресации ИМП до присвоения адресных групп каналам преобразователя. Более подробно указанный метод присвоения описан в 10.1.3 и 10.2.4.

5.3.2.1 Адреса адресных групп с побитовым отображением

Каждая адресная группа содержит в себе старший значащий бит, равный единице, следующий старший значащий бит, равный нулю, и еще один бит, установленный в классе адреса в поле "Номер канала преобразователя". Битовая комбинация из единицы и нуля в двух старших значащих битах в поле "Номер канала преобразователя" сигнализирует, что адрес относится к адресной группе с побитовым отображением. При использовании побитовой операции "OR" ("логическое ИЛИ") одна команда может быть отправлена нескольким адресным группам одновременно. Возможна отправка сообщений 14 различным адресным группам.

5.3.2.2 Адреса двоичных адресных групп

Каждая адресная группа содержит в себе два старших значащих бита, равных единице. Оставшиеся 14 битов в поле "Номер канала преобразователя" данного класса адреса обозначают адресную группу. Возможна маркировка 16383 различных адресных групп.

5.3.3 Номер канала преобразователя

Команды и ответные сообщения в поле "Номер канала преобразователя", имеющие номер от единицы до 0x7FFF включительно, адресованы каналу преобразователя. Данные команды и сообщения должны быть получены и выполнены тем каналом преобразователя, которому они адресованы. Если полученная команда не выполняется каналом преобразователя, она должна быть проигнорирована, и при этом должен быть сгенерирован сигнал ошибки, как предписано для отдельной команды.

5.3.4 Адреса ИМП

Команды и ответные сообщения, имеющие значение "ноль" в поле "Номер канала преобразователя", адресуются ИМП. Они должны быть получены и выполнены тем ИМП, который помечен при помощи "destId" ("идентификатор получателя"). Команды и ответные сообщения предназначены непосредственно для интерфейсного модуля, а не для какого-либо канала преобразователя внутри ИМП. Если полученная команда не исполняется ИМП, она должна быть проигнорирована, и при этом должен быть сгенерирован сигнал ошибки, как предписано для отдельной команды.

     5.4 Общие характеристики


Рабочие характеристики, общие для всех типов каналов преобразователя, определены в 5.4.1-5.4.4.

5.4.1 Рабочие режимы

На рисунке 3 приведена диаграмма высокоуровневого состояния канала преобразователя. После инициализации канала преобразователя существуют два основных рабочих режима. После инициализации канал преобразователя входит в "режим ожидания преобразователя". Большую часть команд канал преобразователя получает в режиме ожидания. В рабочий режим канал преобразователя входит только после получения команды "Transducer Channel Operate" ("Перевести канал преобразователя в рабочий режим") (см. 7.1.4.1) и остается в этом режиме до получения команды "Transducer Channel Idle" ("Перевести канал преобразователя в режим ожидания") (см. 7.1.4.2).

Как показано на рисунке 4, ИМП может находиться в трех состояниях. ИМП может войти в состояние инициализации при получении команды "Reset" ("Перезагрузка") (см. 7.1.7.1) или в случае подачи питания. После завершения процесса инициализации ИМП переходит в активное состояние. В спящий режим ИМП переходит при получении команды "TIM Sleep" ("Перевести ИМП в спящий режим") (см. 7.1.6.2). Единственной командой, которую ИМП должен принимать в спящем режиме, является команда "TIM Wake-up" ("Вывести ИМП из спящего режима"), переводящая модуль в активное состояние.

Подробное описание команд, принимаемых каналом преобразователя в каждом из режимов, приведено в разделе 7.

5.4.2 Включение и отключение триггеров

В канале преобразователя может быть предусмотрена возможность включения или выключения триггеров при помощи команд. Если не указано обратное, все операции, описанные в настоящем стандарте, рассматриваются для канала преобразователя с включенными триггерами.

5.4.3 Диагностика

Одной из главных причин ввода в эксплуатацию интеллектуальных преобразователей является их способность к самостоятельной проверке и диагностике. В настоящем стандарте представлен механизм запуска процесса диагностики, но требований к логике диагностики не предъявляется.

5.4.4 Структуры хранения и передачи данных

В настоящем стандарте используются три структуры для хранения и передачи данных: набор данных, сообщение и пакет. Каждая из этих трех структур описывается в нижеследующих подпунктах. Приложения уровня выше стека (набора) протоколов работают с наборами данных. Более высокие уровни стека протокола работают с сообщениями. Если в наборе данных содержится больше байтов, чем может быть передано в одном сообщении, то он должен быть разбит приложением на несколько сообщений.


Рисунок 3 - Режимы работы канала преобразователя


Рисунок 4 - Режимы работы интерфейсного модуля преобразователя

5.4.4.1 Наборы данных

Все каналы преобразователя работают с наборами данных. Набор данных определяется тремя полями ЭТДП канала преобразователя. Поле "Максимальное повторение данных" (см. 8.5.2.28) определяет максимальное число отдельных выборок данных из набора данных. Фактическое число выборок может быть уменьшено по сравнению с числом выборок в поле "Максимальное повторение данных" за счет установки дополнительной команды "Set Transducer Channel data repetition count" ("Установить число повторений данных канала преобразователя") (см. 7.1.2.1). При перезагрузке или исходной подаче питания используются значения по умолчанию. В случае если число повторения данных является программируемым, значение по умолчанию должно быть равно нулю. Если число повторения данных не является программируемым, значение по умолчанию должно быть таким же, как и значение поля "Максимальное повторение данных" ЭТДП. Второе поле - поле "Шаг дискретизации серии" (см. 8.5.2.30). Данное поле используется для определения интервалов между данными и может быть изменено заложенной изготовителем командой или встроенным исполнительным механизмом. Третье поле - поле "Единицы измерения серии" (см. 8.5.2.31). Данное поле определяет единицы измерения для поля "Шаг дискретизации серии". Данное поле создано таким образом, что единицами измерения шага дискретизации серии не обязательно должны быть значения времени, и в таком случае временные интервалы между данными могут быть неодинаковыми.

Пример - Единица измерения серии - кельвин, а шаг дискретизации серии составляет 0,5. При такой комбинации датчик будет собирать данные с интервалом в 0,5 K. И таким образом, данные будут получены с равным температурным интервалом вместо равного временного интервала.

5.4.4.2 Сообщения и пакеты

Сообщения могут содержать до 65535 байтов, не считая байтов в заголовках. Тем не менее канал передачи данных и физические уровни стека протоколов работают с пакетной передачей данных. Максимальная длина пакетов определяется в стандарте для физических уровней и каналов данных. Если сообщение не помещается в один пакет, то на уровне канала данных стека протоколов оно разбивается на несколько пакетов для передачи.

     5.5 Электронная таблица данных преобразователя (ЭТДП, TEDS)


ЭТДП являются блоками информации, представленными в одном из форматов, определенных в разделе 8. ЭТДП должны храниться в энергонезависимой памяти ИМП. Тем не менее в случаях, если определенные применения не позволяют выполнить данное требование, стандарт позволяет хранение ЭТДП в других местах внутри пользовательской системы. В случае если ЭТДП хранится не в ИМП, она называется "виртуальной" ЭТДП. Изготовитель канала передатчика может поставлять виртуальные ЭТДП, чтобы не хранить их в ИМП. В этом случае задача пользовательской системы заключается в обеспечении взаимодействия между такой гарантированно доступной и находящейся в ИМП информацией, как УУИД, и файлом, содержащим виртуальную ЭТДП в системе. Сервис предоставляется СПП или главным процессором. ИМП может одновременно использовать различные ЭТДП: хранящиеся непосредственно в ИМП и виртуальные. Ответ на команду "Query TEDS" ("Запросить ЭТДП") (см. 7.1.1.1) содержит указатели (флажки), которые сигнализируют, является ли ЭТДП поддерживаемой и является ли она виртуальной. Виртуальная ЭТДП считается "поддерживаемой" в случае, если изготовителем предоставлен файл с соответствующей информацией на совместимом носителе, не принимая во внимания факт загрузки данного файла в систему пользователем.

Как правило, содержание ЭТДП, записанное изготовителем или пользователем в первый раз, не меняется. Тем не менее существует возможность создания каналов преобразователя, изменяющих содержание ЭТДП во время работы. Необходимость изменения содержания ЭТДП может быть вызвана наличием встроенного исполнительного устройства, которое требует изменения информации ЭТДП, ранее считаемой постоянной. Изменения могут быть вызваны логикой построения ИМП или канала преобразователя, если изменения внутри устройства требуют изменений в ЭТДП. Для проведения таких изменений в атрибутах ЭТДП имеется бит "Adaptive" ("Адаптивность"), который задает возможность изменения внутренними логическими операциями ИМП или канала преобразователя. Если содержание ЭТДП изменяется без записи (сохранения), устанавливается бит "Status" ("Статус").

Четыре вида ЭТДП являются обязательными для всех ИМП, остальные виды обязательными не являются. Список обязательных ЭТДП следующий:

- мета-ЭТДП;

- ЭТДП канала преобразователя;

- ЭТДП с именем преобразователя, заданным пользователем;

- ЭТДП физического уровня.

Технические характеристики всех видов ЭТДП приведены в разделе 8 настоящего стандарта.

5.5.1 Обязательные ЭТДП

Технические характеристики обязательных ЭТДП и их назначения приведены в 5.5.1.1-5.5.1.4.

5.5.1.1 Мета-ЭТДП

Мета-ЭТДП содержит ряд аварийных временных параметров, доступных СПП для установления значений времени ожидания (тайм-аута) в коммуникационном программном обеспечении, что позволяет определить, когда ИМП не отвечает. Оставшаяся часть ЭТДП содержит описание связей между каналами преобразователя внутри ИМП. Технические характеристики данного вида ЭТДП представлены в 8.4.

5.5.1.2 ЭТДП канала преобразователя

В ЭТДП канала преобразователя содержится подробная информация об определенном преобразователе: измеряемый или контролируемый физический параметр, рабочий диапазон канала преобразователя, характеристики цифрового входа-выхода, рабочие режимы блока и временные характеристики. Технические характеристики данного вида ЭТДП представлены в 8.5.

5.5.1.3 ЭТДП с именем преобразователя, заданным пользователем

ЭТДП с именем преобразователя, заданным пользователем, предоставляет пользователю преобразователя место для хранения имени, по которому система сможет опознавать преобразователь. Рекомендуется составлять ЭТДП в соответствии с приведенной в настоящем стандарте структурой, однако данное требование не является обязательным, так как содержание ЭТДП определяется самим пользователем. При этом изготовителю ИМП необходимо предоставить область энергонезависимой памяти, в которой пользователь может создать запись, используя стандартные методы доступа к ЭТДП. Технические требования к данного вида ЭТДП представлены в 8.11.

________________

В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведена ссылка на 5.5.1.3.


Примечание - Предполагается, что ЭТДП с именем преобразователя, заданным пользователем, должна поддерживать "Object Tags" ("объектные метки"), как определено в стандарте ИИЭР 1451.1-1999, или другие подобные применения.

5.5.1.4 ЭТДП физического уровня

ЭТДП физического уровня зависит от физических средств связи, используемых для связи ИМП и СПП. Данная ЭТДП не является предметом рассмотрения настоящего стандарта, в стандарте рассмотрены только методы доступа к ней.

5.5.2 Необязательные ЭТДП

Технические характеристики и назначение необязательных ЭТДП приведены в 5.5.2.1-5.5.2.10.

5.5.2.1 ЭТДП калибровки

ЭТДП калибровки содержат калибровочные постоянные, необходимые для преобразования сигнала на выходе датчика в инженерные единицы измерения или для преобразования значений, заданных в инженерных единицах измерения, в форму, требуемую для исполнительного устройства. Для осуществления таких преобразований поддерживаются два метода. Первый - обычный линейный метод с применением формулы общего вида у=mx+b. Второй - метод с использованием формулы еще более общего вида, имеющей универсальное применение. Технические характеристики данного вида ЭТДП приведены в 8.6.

5.5.2.2 ЭТДП частотной характеристики

В ЭТДП частотной характеристики используется таблица для задания частотной характеристики канала преобразователя. Технические характеристики данного вида ЭТДП приведены в 8.7.

5.5.2.3 ЭТДП передаточной функции

ЭТДП передаточной функции описывает способ объединения нескольких отдельных передаточных функций для описания частотной характеристики канала преобразователя в алгоритмической форме. Технические характеристики данного вида ЭТДП приведены в 8.8.

5.5.2.4 Текстовые ЭТДП

Текстовые ЭТДП принадлежат комплексу ЭТДП, предоставляющих текстовую информацию об ИМП или канале преобразователя. Такие ЭТДП могут быть составлены на одном или более языках. Они состоят из директории, облегчающей доступ к определенному языковому подблоку внутри ЭТДП, за которым следуют блоки ЭТДП, составленные с учетом требований языка XML. Технические характеристики данного вида ЭТДП приведены в 8.9.

5.5.2.5 Командная ЭТДП

Командная ЭТДП относится к текстовым ЭТДП, предоставляющим изготовителю способ установить дополнительные команды, помимо уже включенных в стандарт. Данные команды в первую очередь предназначены для того, чтобы при необходимости настроить определенные преобразователи и обработчики сигналов. Пример схемы подобной ЭТДП приведен в приложении D, пример командной ЭТДП приведен в приложении H.

5.5.2.6 Идентификационные ЭТДП

В стандарте ИИЭР 1451.2-1997 определены ЭТДП мета-идентификации, ЭТДП идентификации канала, а также ЭТДП идентификации калибровки. Данные ЭТДП предназначены для того, чтобы предоставлять текстовую информацию об интеллектуальном ИМП, канале преобразователя и калибровке. В настоящем стандарте все виды подобных ЭТДП были объединены в категорию текстовых ЭТДП, а не определены отдельно. Схема в приложении D и примеры в приложениях E, F и G могут быть использованы для дублирования информации о предназначении таких ЭТДП, определенных в стандарте ИИЭР 1451.2-1997. Наименования ЭТДП в стандарте ИИЭР 1451.2-1997 соответствуют их наименованиям в настоящем стандарте.

5.5.2.7 ЭТДП географического места нахождения

ЭТДП географического места нахождения относятся к текстовым ЭТДП, содержащим информацию о статичном географическом месте нахождения. Данные о месте нахождения, в котором установлен ИМП, вводятся пользователем. Содержание данной ЭТДП должно соответствовать требованиям к текстовой ЭТДП приведенным в 8.9. Блок данных должен быть написан на языке географической разметки (Geography Markup Language, GML), разработанном открытым геопространственным консорциумом (Open Geospatial Consortium, OGC) и описанном в стандарте ИСО 19136.

ЭТДП географического места нахождения устанавливает данные о месте нахождения датчика, которое на языке GML должно быть задано в соответствии со схемой для точки: "gml:point".

Схема "Gml:point" является частным случаем схемы "gml:PointType", включенной в общую схему "GML: geometryBasic0d1d.xsd".

Схема "GML geometryBasic0d1d.xsd" идентифицируется следующим URI: urn:opengis:specificatio n:gml:schema-xsd:geometryBasic0d1d:v3.1.0.

Применение схемы "gml:point" в настоящей спецификации должно быть ограничено следующими способами:

- схема "gml:point" должна использовать "DirectPositionType", то есть "gml:pos";

- схема "gml:point" не должна использовать "gml:coordinates" или "gml:coord";

- схема "gml:pos" должна включать атрибут "gml:SRSReferenceGroup".

Примечание - Величины "gml:pos" ограничены системой отсчета координат (Coordinate Reference System, CRS), определенной в опорной группе SRSReferenceGroup:

- "gml:SRSReferenceGroup" должна включать "srsName";

- "gml:SRSReferenceGroup" может включать "srsDimension";

- "gml:SRSReferenceGroup" может включать "gml:SRSInformationGroup".


В данной спецификации для "srsName" должно быть присвоено имя из набора возможных имен Унифицированного ресурса имен (Uniform Resource Name, URN). Пример CRS для Мировой геодезической системы 1984 года (World Geodesic System, WGS 84) выглядит следующим образом:

urn:ogc:def:crs:OGC:1.3:CRS84

В системе WGS 84 CRS содержит данные о географической широте, затем данные о географической долготе; при этом ось X соответствует широте, а ось Y соответствует долготе.

Предполагается, что изготовитель предоставляет место для данной ЭТДП, а вся актуальная информация для размещения вводится пользователем. Требуемый объем памяти зависит от выбранного типа места нахождения для языка GML. Настоящий стандарт не регламентирует объем памяти, который необходимо выделить для данного вида ЭТДП. Тем не менее объем памяти стандартного языкового блока данной ЭТДП составляет от 60 до 80 байтов при использования одного байта для каждого символа.

Для упрощения работы с ЭТДП географического места нахождения следует использовать "GML Point" ("Точка языка географической разметки GML"). Данная точка обозначает место нахождения датчика непосредственно после его установки, при этом также должна быть определена система отсчета координат (CRS). Если система отсчета координат не определена, координаты места нахождения точки могут иметь разброс до 100 м из-за разницы начала координат двух географических систем CRS. Поэтому при записи данной ЭТДП рекомендуется включать в нее идентификатор системы отсчета координат (CRS), как определено для "GML Point" ("Точки языка географической разметки GML").

5.5.2.8 ЭТДП с расширенным набором единиц измерения

В некоторых случаях, в особенности при использовании химических датчиков, невозможно полностью выразить физические величины в системе СИ. Например, датчик измеряет процент содержания определенного химического соединения в образце и работает с соотношением величин, соответствующим нумерации 1 в поле "Тип величины", а сам тип измеряемой величины - моль. Разрешить это противоречие возможно при использовании данной текстовой ЭТДП, которая предоставляет место для включения текста, расширяющего ограниченный набор величин в системе СИ.

5.5.2.9 ЭТДП для специальных приложений конечного пользователя

ЭТДП для специальных приложений конечного пользователя подобна ЭТДП с именем преобразователя, заданным пользователем, так как она является блоком памяти, в котором пользователь может хранить любую информацию по собственному усмотрению в любом формате. Технические характеристики данного вида ЭТДП приведены в 8.10.

5.5.2.10 ЭТДП, заданная изготовителем

ЭТДП данного типа включена в стандарт для того, чтобы дать изготовителям возможность задавать ЭТДП, не включенные в настоящий стандарт. Область применения и структура ЭТДП, заданных изготовителем, полностью определяются самим изготовителем. Изготовитель не обязан делать такие ЭТДП доступными для пользователей. Технические характеристики данного вида ЭТДП приведены в 8.12.

________________

В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведена ссылка на 8.11.2.3.

     5.6 Описание типов канала преобразователя


В данном подразделе определены основные свойства трех видов каналов преобразователей. Атрибуты ЭТДП каналов преобразователей описывают свойства различных каналов преобразователей в системе. Более подробные временные и контрольные параметры этих каналов преобразователей приведены в нижеследующих подразделах настоящего стандарта. Существуют следующие виды каналов преобразователя:

- датчики;

- датчики событий;

- исполнительные устройства.

Термин "канал преобразователя" в данном подразделе применяется к физическому преобразователю и ко всем электронным устройствам, обеспечивающим преобразователю выполнение связующих функций.

5.6.1 Датчик

Датчик должен измерять какой-либо физический параметр и отправлять обратно цифровые данные для этого параметра. При срабатывании триггера, если функция триггера активна, датчик начинает сбор и хранение наборов данных внутри ИМП. Величина временных интервалов между отдельными отсчетами в наборе данных должна контролироваться ИМП и является функцией рабочего режима датчика. Датчик в рабочем режиме преобразователя должен отвечать на команды "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя") (см. 7.1.3.1), отправляя в ответ соответствующий набор данных. Если новый набор данных недоступен, канал преобразователя должен отправить в ответ те же самые данные, которые были переданы при предыдущей команде "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя").

5.6.2 Датчик событий

В отличие от обычного датчика датчик событий не определяет величину какого-либо физического параметра, а определяет изменение состояния. Такое изменение состояния может быть аналоговым сигналом, переходящим определенный порог, или набором дискретных битов, совпадающим или не совпадающим с заданной битовой комбинацией. Таким образом, выходной сигнал датчика событий отражает состояние на его входе. Существуют всего два допустимых состояния: ноль и единица. На выходе датчика событий может быть получена информация двух видов:

- текущее состояние на входе;

- время, в которое произошло изменение состояния.

Для датчика событий действительно такое же определение ЭТДП, как и для любого другого преобразователя.

5.6.2.1 Выходной сигнал датчика события

Модель данных на выходе датчика события определена в ЭТДП канала преобразователя аналогично модели данных на выходе для любого другого датчика. Тем не менее величина выходного сигнала должна быть равна нулю или единице.

5.6.2.2 Время события

Датчик событий сообщает только о факте произошедшего события. Для определения времени, в которое событие произошло, необходимы другие элементы системы. Существует множество путей решения данной задачи, и выбор определенного метода зависит от требований конкретного приложения. Если для определения времени события используется метод опроса, время события может быть определено только в пределах интервала опроса. В режиме потоковой передачи данных СПП может определить время события по времени поступления сообщения. Главным фактором в определении задержки во времени между самим событием и его распознаванием СПП является физический уровень. Время, в которое произошло событие, может быть определено в пределах одной микросекунды или менее. Для этого совместно с датчиком событий применяются встроенные в ИМП датчики временных интервалов или датчики временного события (Timelnstance). Обсуждение датчиков временных интервалов и датчиков временного события представлено в М.2 и М.3 (приложение M).

5.6.2.3 Аналоговые датчики событий

Аналоговые датчики событий получают аналоговый входной сигнал. Событие считается произошедшим, когда величина входного сигнала переходит пороговое значение. Для аналоговых датчиков событий определены верхнее и нижнее пороговые значения. Нижний порог отличается от верхнего на величину гистерезиса. Значение гистерезиса должно быть более или равным нулю. Во время стабильной работы повышающий переход (то есть условия на входе датчика, вызывающие изменение сигнала на выходе со значения "ноль" до значения "один") должен происходить при значении "ноль" сигнала на выходе и когда значение аналогового сигнала на входе переходит верхнее пороговое значение. Понижающий переход (то есть условия на входе датчика, вызывающие изменение сигнала на выходе со значения "один" до значения "ноль") должен происходить при значении "один" сигнала на выходе и когда значение аналогового сигнала на входе переходит нижнее пороговое значение. Графически такие переходы изображены на рисунке 5. Изменения состояния на выходе должны регистрироваться только после того, как устройство получило запускающий импульс. Верхнее пороговое значение и величина гистерезиса могут быть фиксированы при изготовлении датчика событий или могут быть программируемыми. Для того чтобы сделать верхний порог или гистерезис программируемыми, рекомендуется использовать встроенные исполнительные устройства для установки их значений.

Несмотря на то что инициализация датчика событий зависит от его устройства, рекомендуется провести описанную ниже процедуру. Выходной сигнал с датчика событий, сообщающего только о понижающих переходах, следует инициализировать в состояние "один", если значение аналогового входного сигнала больше или равно значению верхнего порога. Если значение входного сигнала меньше значения верхнего порога, то выходной сигнал следует инициализировать в состояние "ноль". Выходной сигнал с датчика событий, сообщающего только о повышающих переходах, следует инициализировать в состояние "ноль", если значение входного аналогового сигнала меньше или равно значению нижнего порога. Если значение на входе больше значения нижнего порога, то выходной сигнал следует инициализировать в состояние "один". Для датчиков событий, сообщающих об обоих переходах, следует выбрать один из вышеуказанных методов. При этом следует обратить внимание на то, что если значение входного сигнала находится в пределах гистерезиса, то первый переход может дать сбой. Этого можно избежать путем контроля за величиной входного аналогового сигнала во время инициализации.


Рисунок 5 - Характеристика аналогового датчика событий

5.6.2.4 Цифровые датчики событий

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

Цифровой датчик событий может иметь несколько связанных встроенных каналов преобразователя, а также может включать в себя датчик(и), возвращающий(ие) входной цифровой сигнал по команде, и исполнительные устройства, позволяющие сконфигурировать сложный датчик событий. Встроенные исполнительные устройства могут быть использованы для определения последовательностей, масок, временных задержек и комбинаций из нескольких дискретных входных сигналов, объединенных в одно событие. ЭТДП таких встроенных каналов преобразователя должны соответствовать их функционалу. Функционал каждого встроенного канала преобразователя определяется контрольными группами в мета-ЭТДП, которые представлены в 8.4.2.8.

5.6.2.5 Сообщения о переходах состояний

Датчик событий может быть разработан для сообщений о повышающих либо понижающих переходах или об обоих вариантах переходов. Команда "Edge-to-Report" ("Пороговое значение для посылки отчета") (см. 7.1.2.9) позволяет системе выбирать, какие переходы считать событиями. Возможности команды "Edge-to-Report" ("Пороговое значение для посылки отчета") для датчика событий наряду с условиями по умолчанию определены в разделе ЭТДП канала преобразователя (см. 8.5). Если датчик событий находится в рабочем режиме преобразователя в момент времени, когда происходит событие, он должен установить бит "data/event" ("данные/событие") в регистре состояний и отправить сервисное сообщение запроса, если протокол состояний событий подключен (см. 7.1.1.11). Если протокол состояний событий отключен, бит "data/event" ("данные/событие") в регистре состояния устанавливается, но сообщение не отправляется.

Проверка бита состояния "data/event" ("данные/событие") представлена в 5.13.6 и позволяет определить, произошло ли событие с момента последнего считывания состояния.

5.6.2.6 Состояние датчика событий

Датчик событий должен установить бит состояния "data/event" ("данные/событие") канала преобразователя сразу после того, как событие произошло, независимо от того, находится преобразователь в рабочем режиме или режиме ожидания. Если датчик событий находится в рабочем режиме преобразователя, но при этом датчиком не был получен запускающий импульс, должен быть установлен бит состояния "missed data or event" ("пропущенные данные/событие") канала преобразователя одновременно с любым произошедшим событием. Бит состояния "missed data or event" ("пропущенные данные/событие") канала преобразователя не устанавливается, если датчик событий работает с преобразователем в режиме ожидания.

ИМП может проводить проверки на согласованность в случае, если битовая комбинация цифрового датчика событий является изменяемой или если являются изменяемыми значение верхнего порога или гистерезиса аналогового датчика событий. При наличии несогласованных величин устанавливается бит состояния "hardware error" ("ошибка аппаратного обеспечения") (см. 5.13.7). Проверка несогласованных величин, если она проводится, должна быть проведена сразу после изменения любого из этих параметров. Проверка должна состоять из верификации следующих отношений:

Для аналоговых величин:

максимальное измеряемое значение на входе > верхний порог (верхний порог минус гистерезис) минимальное измеряемое значение на входе.

Для цифровых последовательностей (комбинаций):

последовательность является разрешенной комбинацией цифровых сигналов.

Примечание - При проверке на согласованность ИМП должен использовать только данные из модели данных, содержащейся в ЭТДП канала преобразователя для встроенных каналов преобразователя.

5.6.2.7 Датчики событий с непрерывной выборкой

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

5.6.2.8 Датчики событий в режиме потоковой передачи данных

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

5.6.2.9 Время между событиями

Минимальное время между событиями, которые может обнаружить датчик событий, зависит от устройства датчика событий. Минимальное время между событиями, которые может обнаружить датчик событий, должно быть указано в поле "Период дискретизации канала преобразователя" ЭТДП канала преобразователя (см. 8.5.2.36).

5.6.3 Исполнительное устройство

Исполнительное устройство вызывает физическое или внутреннее выходное действие. Когда происходит запускающее триггерное событие, состояние на выходе исполнительного устройства меняется для приведения в соответствие определенному набору данных. Если в наборе данных содержится больше одного заданного значения, то интервал между отработкой отдельных входных значений должен контролироваться ИМП.

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

     5.7 Встроенные каналы преобразователя


Встроенные каналы преобразователя - это каналы преобразователя, функции которых выполняются исключительно внутри ИМП. Встроенный канал преобразователя не воспринимает и не контролирует какие-либо функции вне ИМП. К примеру, встроенные исполнительные устройства могут использоваться для установки значения порога или гистерезиса датчика событий. Встроенный цифровой датчик событий может быть настроен на обнаружение и сообщение о любых изменениях состояния ИМП. Встроенные каналы преобразователя распознаются системой как обычные каналы преобразователя. Они отвечают на команды, имеют ЭТДП и учитываются при подсчете числа каналов преобразователя ИМП.

Примечание - Преимущество использования "встроенных" каналов преобразователя над контрольными командами заключается в том, что "встроенные" каналы преобразователя снабжены ЭТДП, предоставляющими всей системе стандартный способ получения данных о работе ИМП. Их стоит использовать, когда возникают трудности в отслеживании этапов выполнения контрольной команды стандартным способом.

     5.8 Группы каналов преобразователя


В настоящем стандарте определены две группы каналов преобразователя: "ControlGroups" ("Контрольные группы") и "VectorGroups" ("Векторные группы"). Они сходны в реализации, но используются для двух различных функций.

5.8.1 Контрольные группы

Контрольные группы применяются для определения набора каналов преобразователя, когда один из каналов преобразователя является главным, а оставшиеся каналы группы либо обеспечивают дополнительную информацию о главном канале преобразователя, либо используются для контроля определенного аспекта главного канала преобразователя. Например, при помощи контрольной группы можно определить до трех дополнительных каналов преобразователя, связанных с аналоговым датчиком событий. Первый канал - датчик, измеряющий значения аналоговых входных сигналов для датчика событий. Второй канал - исполнительное устройство, устанавливающее порог для датчика событий. Третий - исполнительное устройство, устанавливающее значение гистерезиса для датчика событий.

5.8.2 Векторные группы

Векторные группы применяются для определения взаимоотношений между каналами преобразователя внутри одного мультиканального ИМП, обеспечивающего отображение или математическое взаимодействие между каналами преобразователя. Например, при помощи векторной группы можно определить взаимоотношения между компонентами трехосевого акселерометра. Векторные группы используются программным обеспечением СПП или главным процессором для группирования выходных сигналов отдельных каналов преобразователя в векторы с целью отображения или вычислений.

Примечание - Векторные группы в некотором роде аналогичны прокси-каналам преобразователя. Прокси-каналы преобразователя применяются для определения каналов преобразователя, сгруппированных для более эффективной передачи данных и/или одновременного запуска. Прокси-каналы могут представлять из себя или не представлять векторные группы для отображения или вычисления. Тем не менее рекомендуется реализовывать все векторные группы как прокси-каналы, особенно в пространственных векторных приложениях (таких как скорость или ускорение), где измерения трех компонент в различных точках и во времени могут привести к неверной интерпретации.

     5.9 Прокси-канал преобразователя


Прокси-канал преобразователя - искусственная конструкция, используемая для объединения множества выходов датчиков или множества входов исполнительных устройств в единую структуру. Прокси-канал преобразователя имеет номер канала преобразователя, который может быть считан или записан, но прочих характеристик канала преобразователя не имеет. Это означает, что прокси-канал не имеет ЭТДП канала преобразователя, ЭТДП калибровки, ЭТДП передаточной функции или ЭТДП частотной характеристики. Прокси-каналы преобразователя, существующие внутри ИМП, определяются в мета-ЭТДП (см. 8.4.2.14).

Прокси-канал преобразователя, как и любой другой канал преобразователя, имеет постоянный номер канала преобразователя, присвоенный изготовителем. Следовательно, ИМП может обращаться к нему по этому адресу тем же образом, которым он обращается ко всем остальным связанным с ним каналам преобразователя.

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

Возможность записи или считывания данных отдельных представителей прокси-канала может быть разрешена или не разрешена изготовителем по его собственному усмотрению. Если изготовитель запрещает возможность считывания или записи отдельных устройств прокси-канала, то ответом на одну из таких команд в слове состояния канала преобразователя должен быть записан соответствующий бит "command rejected" ("отказ от выполнения команды") (см. 5.13.4).

Существуют два метода комбинирования наборов данных для прокси-канала: метод "block" (метод "блоков") и метод "interleave" (метод "чередования"). Оба эти метода изображены графически на рисунке 6. Метод "блоков" позволяет использование наборов данных разной длины. При использовании метода "чередования" наборы данных должны иметь одинаковый размер.


Рисунок 6 - Методы комбинирования наборов данных

     

     5.10 Атрибуты и рабочие режимы


В 5.10.1-5.10.7.3 определены рабочие режимы, характеризующиеся атрибутами, содержащимися в ЭТДП канала преобразователя. Каждый атрибут показывает, поддерживает ли канал преобразователя соответствующий рабочий режим. Некоторые из этих режимов являются взаимоисключающими, а некоторые могут выполняться одновременно.

5.10.1 Режимы выборки данных

Датчик или исполнительное устройство могут работать в одном из пяти режимов выборки данных. В каждом режиме выборки данных существуют различные взаимоотношения между срабатыванием триггера и выборкой датчиком или приложением, обрабатывающим собранные данные и передающим сигнал на выход исполнительного устройства. Режим или режимы работы канала преобразователя определяются атрибутами, приведенными в ЭТДП канала преобразователя. Допустимые значения данных атрибутов представлены в 8.5.2.44.

Режимы "Trigger-initiated" ("Выборка данных по срабатыванию триггера") и "Free-running" ("Автономный режим выборки данных") являются взаимоисключающими. Канал преобразователя должен работать в одном из двух этих режимов. Оставшиеся три режима представляют собой вариации этих двух основных рабочих режимов.

5.10.1.1 Режим "Trigger-initiated" ("Выборка данных по срабатыванию триггера")

В режиме "Trigger-initiated" ("Выборка данных по срабатыванию триггера") датчик должен начинать запрашивать набор данных сразу после получения запускающего сигнала триггера. Исполнительное устройство должно начинать выдавать данные сразу после получения запускающего сигнала триггера. Обработка выборок данных продолжается до тех пор, пока все данные из набора данных не будут обработаны с частотой, определенной ИМП, после чего обработка прекращается.

5.10.1.2 Режим "Free-running without pre-trigger" ("Автономная выборка данных без предварительно заданного счетчика триггера")

В режиме автономной выборки данных, если преобразователь находится в рабочем режиме, датчик непрерывно и автономно измеряет какой-либо физический параметр. Полученные и преобразованные данные аннулируются до получения запускающего сигнала триггера. Следующий отсчет, преобразованный сразу после получения запускающего сигнала, сохраняется в канале преобразователя или ИМП как первое слово в наборе данных. Последующие отсчеты сохраняются до тех пор, пока не закончится заполнение всего набора данных. После этого канал преобразователя снова начинает аннулировать отсчеты до получения следующего запускающего сигнала. Возможность осуществления выборок данных каналом преобразователя, когда преобразователь находится в режиме ожидания, оставлена на усмотрение изготовителя.

Исполнительное устройство, работающее в режиме автономной выборки данных, должно использовать полученный до прихода запускающего сигнала триггера набор данных в соответствии с его рабочим режимом "End-of-data-set" ("Набор данных закончен").

5.10.1.3 Режим "Free-running with pre-trigger" ("Автономная выборка данных с предварительно заданным счетчиком триггера")

В автономном режиме выборки данных, если преобразователь находится в рабочем режиме, датчик непрерывно и автономно измеряет какой-либо физический параметр. Полученные и преобразованные данные сохраняются до получения запускающего сигнала или достижения предварительного значения счетчика триггера (см. 7.1.2.2 и 8.5.2.32). После того как число сохраненных отсчетов данных достигает предварительно заданного значения счетчика триггера, получение следующего отсчета должно вызвать аннулирование старшего по времени отсчета, при этом новое значение должно быть сохранено. Следующий отсчет, преобразованный сразу после получения запускающего сигнала, сохраняется в ИМП как следующее слово в наборе данных. Последующие отсчеты сохраняются до тех пор, пока не закончится заполнение всего набора данных. Набор данных будет полным, когда после приема запускающего сигнала будет получено число выборок (отсчетов), равное размеру набора данных за вычетом предварительного значения счетчика триггера. Порядок действий после заполнения набора данных приведен в 5.10.1.4-5.10.1.5. Отклик на дополнительные запускающие сигналы, полученные до завершения отработки первого запускающего сигнала, описан в 5.11.5.

Исполнительное устройство может не работать в режиме "Free-running with pre-trigger" ("Автономная выборка данных с предварительно заданным счетчиком триггера").

5.10.1.4 Режим "Free-running with pre-trigger without buffers enabled" ("Автономная выборка данных с предварительно заданным счетчиком триггера без доступа к буферу")

Когда набор данных завершен, канал преобразователя начинает аннулировать отсчеты до поступления следующего запускающего сигнала или до завершения считывания набора данных. После считывания набора данных канал преобразователя должен возобновить сохранение отсчетов до получения нового запускающего сигнала. В этом режиме набор данных может быть считан только один раз. При последующих считываниях до получения следующего запускающего сигнала будет возвращено 0 байтов. Возможность осуществления выборок данных каналом преобразователя, когда преобразователь находится в режиме ожидания, оставлена на усмотрение изготовителя.

5.10.1.5 Режим "Free-running with pre-trigger and buffers enabled" ("Автономная выборка данных с предварительно заданным счетчиком триггера с доступом к буферу")

Когда набор данных завершен, канал преобразователя должен переключиться на следующий пустой буфер и начать получать выборки данных для следующего набора данных. Если свободных буферов не осталось, то все полученные выборки должны быть аннулированы до появления доступного буфера. Буфер будет считаться доступным после его считывания. Возможность осуществления выборок данных каналом преобразователя, когда преобразователь находится в режиме ожидания, оставлена на усмотрение изготовителя.

5.10.1.6 Режим "Continuous sampling" ("Непрерывная выборка")

В режиме "Continuous sampling" ("Непрерывная выборка") датчик должен начать получать и сохранять отсчеты (выборки) в одном из буферов после получения запускающего сигнала. Работа в этом режиме аналогична работе в режиме "Free-running without pre-trigger" ("Автономная выборка данных без предварительно заданного счетчика триггера"), приведенном в 5.10.1.2, за исключением того, что после заполнения набора данных канал преобразователя не прекращает работу, а переключается на следующий доступный буфер и продолжает получать данные. Для работы в данном режиме датчику требуется несколько доступных буферов для хранения выборок данных. При заполнении всех буферов данные в старшем буфере аннулируются вне зависимости от того, были ли они переданы СПП или нет, а буфер получает на хранение новые данные. Если поток данных поступает в режиме передачи с фиксированным интервалом, описанным в 5.10.2.3, то датчик должен переключиться на свободный буфер в начале нового интервала передачи вне зависимости от того, заполнен ли текущий буфер. Тем не менее если число выборок, полученных за один интервал передачи, больше числа "Max Data Repetitions" ("Максимального повторения данных"), указанного в ЭТДП канала преобразователя (см. 8.5.2.28), то набор данных урезается до числа максимального повтора данных, и канал преобразователя устанавливает бит "Missed data or event" ("Пропущенные данные или событие") (см. 5.13.5).

При получении начального запускающего сигнала датчик событий, работающий в режиме "Continuous sampling" ("Непрерывная выборка"), должен обнаружить изменение состояния на его входе, сохранить это изменение состояния для передачи и продолжить поиск дополнительных изменений состояния на его входе. Для этого датчику событий требуется несколько буферов, которые он использует так же, как и любой другой датчик. Если поток данных поступает в режиме передачи с фиксированным интервалом, то канал преобразователя должен переключиться на свободный буфер в начале нового интервала передачи вне зависимости от того, заполнен ли текущий буфер.

В режиме "Continuous sampling" ("Непрерывная выборка") после получения первого запускающего сигнала исполнительное устройство должно отработать все данные из его текущего буфера с частотой, контролируемой каналом преобразователя. После того как все данные из этого буфера отработаны, устройство переключается на буфер, заполненный ранее остальных, и продолжает отрабатывать данные. Если другой заполненный буфер недоступен, то исполнительное устройство должно предпринять действия, описанные в 5.10.4 и контролируемые установкой атрибута операции "End-of-data-set" ("Набор данных закончен"), как указано в 8.5.2.48. Если предпринято действие "recirculate" ("зациклить"), то устройство не будет искать новый заполненный буфер, а продолжит повторно отрабатывать данные текущего буфера. Если предпринято действие "hold" ("yдepжaть"), то устройство должно переключиться на новый буфер, как только он будет получен и сохранен в памяти. Если будет предпринята попытка записать данные в такой канал преобразователя, и при этом не окажется доступных пустых буферов, то входящие данные должны быть проигнорированы, а канал преобразователя должен установить бит "Missed data or event" ("Пропущенные данные или событие").

5.10.1.7 Режим "Immediate operation" ("Немедленное выполнение")

Датчик, работающий в данном режиме выборки, немедленно получает наборы данных и передает их в виде ответа на команду "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя"). Получение команды "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя") будет работать как запускающий сигнал триггера.

Исполнительное устройство в этом режиме выборки немедленно отрабатывает набор данных, полученный после команды "Write Transducer Channel data-set segment" ("Записать сегмент набора данных канала преобразователя"). Получение команды "Write Transducer Channel data-set segment" ("Записать сегмент набора данных канала преобразователя") будет работать как запускающий сигнал триггера.

5.10.2 Режим "Data transmission" ("Передача данных")

Режимы "Data transmission" ("Передача данных") определены в настоящем стандарте согласно таблице 7.


Таблица 7 - Режимы "Data transmission" ("Передача данных")

Нумерация

Наименование аргумента

Режим
передачи данных

Описание

0

XmitMode.reserved[0]

Зарезервировано

1

XmitMode.OnCommand

Только по команде

ИМП должен передавать набор данных только в ответ на команду "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя") (см. 7.1.3.1)

2

XmitMode.BufferFull

Потоковый при заполненном буфере

Передача данных осуществляется сразу после заполнения буфера, без ожидания от СПП команды "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя") (см. 7.1.3.1)

3

XmitMode.Interval

Потоковый с фиксированным интервалом

Данные из буфера передаются с фиксированным интервалом. Канал преобразователя должен прекратить использование текущего буфера вне зависимости от степени его заполнения данными, должен начать сохранять данные в другом буфере и передать данные из ранее используемого буфера без ожидания команды "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя") (см. 7.1.3.1)

4-127

XmitMode.reserved[N]
4127

Зарезервировано

128-255

XmitMode.
open[N]128255

Открыто для изготовителей

5.10.2.1 Режим "XmitMode.OnCommand" ("Передача данных только по команде")

В данном режиме передачи данных канал преобразователя должен передавать набор данных только в ответ на команду "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя") (см. 7.1.3.1).

5.10.2.2 Режим "XmitMode.BufferFull" ("Потоковый режим передачи данных при заполненном буфере")

В данном режиме передачи данных датчик или датчик событий должен передать данные сразу после получения полного набора данных. Исполнительное устройство не работает с потоковыми данными и не может работать в этом режиме. Эквивалентным режимом для исполнительного устройства является режим "Continuous sampling" ("Непрерывная выборка"), описанный в 5.10.1.6.

5.10.2.3 Режим "XmitMode.Interval" ("Потоковый режим передачи данных с фиксированным интервалом")

В данном режиме передачи данных канал преобразователя должен передавать полный или частичный набор данных с фиксированным интервалом. При работе в данном режиме повторы данных канала преобразователя не должны быть использованы для определения числа выборок в наборе данных. Число выборок в наборе данных определяется по частоте выборки и периоду передачи данных. Тем не менее если число выборок, собранное в течение одного интервала передачи, больше числа "Max Data Repetitions" ("Максимального повторения данных"), указанного в ЭТДП канала преобразователя (см. 8.5.2.28), то набор данных должен быть ограничен до числа "Max Data Repetitions" ("Максимального повторения данных"), а также должен быть установлен бит "Hardware error" ("Аппаратная ошибка") канала преобразователя (см. 5.13.7).

Метод определения интервала выборки определен в соответствующем стандарте для средств передачи и не является предметом рассмотрения настоящего стандарта.

5.10.3 Режим "Buffered operation" ("Передача данных через буфер")

Датчик или исполнительное устройство могут иметь возможность работы в режиме передачи данных с использованием и без использования буфера. В режиме "Передача данных через буфер" один из буферов доступен для считывания информации от датчика или для отработки данных на выходе исполнительного устройства. В свою очередь, другие буферы доступны для заполнения данными. Характеристикой канала преобразователя, работающего в режиме "Передача данных через буфер", является то, что данные, доступные для считывания или получения, - это всегда те данные, которые были доступны в буфере до получения предыдущего запускающего сигнала. В режиме передачи данных без использования буфера для хранения набора данных доступен только один буфер. Возможности буферизации заданного канала преобразователя описаны в атрибутах буфера в ЭТДП канала преобразователя. Допустимые значения данного атрибута представлены в 8.4.2.47.

При работе преобразователя в режиме ожидания и перед переходом в рабочий режим преобразователя датчик в первый раз после инициализации должен отправлять 0 байтов данных в ответ на любую команду "Считать сегмент набора данных канала преобразователя" (см. 7.1.3.1). Если при возвращении в режим ожидания преобразователя датчик имеет полностью или частично заполненные буферы, то в ответ на команду "Read Transducer Channel data-set segment" ("Cчитать сегмент набора данных канала преобразователя") датчик должен вернуть содержимое буфера с информацией, записанной раньше. В ответ на последующие команды "Read Transducer Channel data-set segment" ("Cчитать сегмент набора данных канала преобразователя") должно быть возвращено содержимое оставшихся буферов. После того как считано все содержимое каждого буфера, имевшего непрочитанные данные в момент получения каналом преобразователя команды перехода в режим ожидания (см. 7.1.4.2), канал преобразователя или прокси-канал преобразователя должен возвращать 0 байтов в ответ на команды "Read Transducer Channel data-set segment" ("Cчитать сегмент набора данных канала преобразователя").

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

5.10.4 Режим "End-of-data-set" ("Набор данных закончен")

Данный режим используется только для исполнительных устройств. Атрибут операции "End-of-data-set" ("Набор данных закончен") ЭТДП канала преобразователя (см. 8.5.2.48) определяет возможные операции, которые может производить исполнительное устройство после окончания набора данных. Два возможных режима работы приведены в 5.10.4.1-5.10.4.2.

Примечание - В данных рабочих режимах описываются способы, благодаря которым исполнительные устройства могут осуществлять плавные переходы от одного набора данных к другому. Несмотря на то что в большинстве случаев предпочтительны плавные переходы между наборами данных, иногда необходимо совершить быстрый переход, например, в случае аварийного выключения. В таких случаях для перехода в новое состояние может быть использован канал преобразователя второго исполнительного устройства того же ИМП. Механизм контроля переключения выходов одного исполнительного устройства на выходы другого содержится внутри ИМП и не является предметом рассмотрения настоящего стандарта.

5.10.4.1 Режим "Hold" ("Удержать")

Исполнительное устройство, работающее в режиме "Hold" ("Удержать"), должно отработать все выборки из набора данных и затем должно продолжать отрабатывать последнее значение из набора данных до получения нового запускающего сигнала.

Примечание - Данный режим подходит для исполнительных устройств, содержащих клапан или иной механический механизм позиционирования. Данный режим также подходит для устройств с двумя устойчивыми состояниями выходного сигнала логического типа, но при этом часто связан с режимом выборки данных по срабатыванию триггера.

5.10.4.2 Режим "Recirculate" ("Зациклить")

Исполнительное устройство, работающее в режиме "Recirculate" ("Зациклить"), должно отработать все выборки из набора данных в выходные сигналы, затем должно вернуться к началу набора данных и повторять отработку набора данных до тех пор, пока не будет получен другой запускающий сигнал или не будет отключен канал преобразователя. При переходе к началу повторного набора данных или к новому набору данных должен поддерживаться соответствующий интервал между выборками. При получении другого запускающего сигнала триггера канал преобразователя должен переключиться на новый набор данных после окончания текущего набора данных.

5.10.5 Режим "Streaming operation" ("Потоковый режим работы")

Данный режим работы достигается сочетанием режима "Continuous sampling" ("Непрерывная выборка") (см. 5.10.1.6) с режимом "XmitMode.BufferFull" ("Потоковый режим передачи данных при заполненном буфере") (см. 5.10.2.2) либо режимом "XmitMode.Interval" ("Потоковый режим передачи данных с фиксированным интервалом") (см. 5.10.2.3). Датчик или датчик событий, работающий в данном режиме, должен получать и передавать данные без дополнительных команд от СПП. Исполнительное устройство в потоковом режиме отрабатывает полученные данные без получения запускающей триггерной команды для каждого набора данных.

5.10.6 Рабочий режим "Edge-to-report" ("Пороговое значение для посылки отчета")

Данный рабочий режим существует только для датчиков событий.

Датчик событий может работать в одном из трех таких режимов. В режиме понижающих переходов датчик сообщает только о понижающих переходах. В режиме повышающих переходов датчик сообщает только о повышающих переходах. Определения повышающих и понижающих переходов см. в 5.6.2.3-5.6.2.4. В режиме любых переходов датчик сообщает как о повышающих, так и о понижающих переходах. Поле атрибута "Edge-to-report" ("Пороговое значение для посылки отчета") ЭТДП канала преобразователя определяет способность датчика событий поддерживать данный рабочий режим. Если включены настройки по умолчанию, то существует шесть возможных значений данного атрибута. Более детальное описание см. в 8.5.2.50.

5.10.7 Режим "Actuator-halt" ("Остановка исполнительного устройства")

Данный атрибут применяется только к исполнительным устройствам. Данный режим определяет действия, которые совершает исполнительное устройство при получении команды о переходе канала преобразователя в режим ожидания. Возможные действия определяются атрибутом "Actuator-halt" ("Остановка исполнительного устройства") в ЭТДП канала преобразователя (см. 8.5.2.51).

5.10.7.1 Режим "Halt immediate" ("Немедленная остановка")

Исполнительное устройство должно удерживать текущее состояние на его выходе до возвращения преобразователя в рабочий режим или до перехода в спящий режим.

5.10.7.2 Режим "Halt at the end of the data set" ("Остановка по окончании набора данных")

Исполнительное устройство должно завершить отработку текущего набора данных и сохранить последнее значение сигнала на его выходе до возвращения преобразователя в рабочий режим или до перехода в спящий режим.

5.10.7.3 Режим "Ramp to a predefined state" ("Переход в заданное состояние")

Исполнительное устройство должно использовать заданный изготовителем процесс для перевода своего выхода в заданное состояние.

     5.11 Использование триггеров


Триггером является сигнал, применяемый к одному каналу преобразователя или набору каналов преобразователя и приводящий к совершению ими определенного действия. На диаграмме состояний на рисунке 7 изображены триггерные состояния датчика, а на рисунке 8 показаны триггерные состояния исполнительного устройства.

5.11.1 Использование триггеров для датчиков

Переход от одного состояния к другому зависит от полученных команд, определенных в разделе 7, состояния канала преобразователя (см. рисунок 3), состояния ИМП (см. рисунок 4), происходящих событий и состояния набора данных "полный/пустой".

Если ИМП выводится из активного состояния, то датчик должен немедленно вернуться в состояние "Sensor Trigger Initialize State" ("Инициализация датчика по триггеру"). Если канал преобразователя выводится из рабочего состояния, то датчик должен немедленно вернуться в состояние "Sensor Trigger Initialize State" ("Инициализация датчика по триггеру"). При получении команды перезагрузки датчик должен немедленно вернуться в состояние "Sensor Trigger Initialize State" ("Инициализация датчика по триггеру").

5.11.2 Использование триггеров для исполнительных устройств

Переход от одного состояния к другому при использовании триггеров для исполнительного механизма зависит от полученных команд, определенных в разделе 7, состояния канала преобразователя (см. рисунок 3), состояния ИМП (см. рисунок 4), происходящих событий и состояния набора данных "полный/пустой".

Если ИМП выводится из активного состояния, а исполнительное устройство находится в состоянии "Transverse Data-set" ("Поперечный набор данных"), то исполнительное устройство должно немедленно через состояние "Actuator-halt" ("Остановка исполнительного устройства") перейти в состояние "Actuator Trigger Initialize" ("Инициализация исполнительного устройства по триггеру"). Если преобразователь не находится в активном состоянии, а исполнительное устройство находится в режиме "Transverse Data-set" ("Поперечный набор данных"), то исполнительное устройство должно немедленно через состояние "Actuator-halt" ("Остановка исполнительного устройства") перейти в состояние "Actuator Trigger Initialize" ("Инициализация исполнительного устройства по триггеру"). Если получена команда "Reset" ("Перезагрузка"), а исполнительное устройство находится в режиме "Transverse Data-set" ("Поперечный набор данных"), то исполнительное устройство должно немедленно через состояние "Actuator-halt" ("Остановка исполнительного устройства") перейти в состояние "Actuator Trigger Initialize" ("Инициализация исполнительного устройства по триггеру"). В состоянии "Actuator-halt" ("Остановка исполнительного устройства") для обработки набора данных используется рабочий режим "Actuator-halt" ("Остановка исполнительного устройства") (см. 5.10.7).

Если триггерный сигнал получен во время работы канала исполнительного устройства в состоянии "Transverse Data-set" ("Поперечный набор данных") (см. рисунок 8), а режим работы "End-of-data-set" ("Набор данных закончен") (см. 5.10.4) установлен в положение "Recirculate" ("Зациклить"), и при этом устройство получает новый набор данных, то канал преобразователя должен переключиться на новый набор данных по окончании текущего набора данных.

Для корректного выхода из набора данных в состоянии "Actuator-halt" ("Остановка исполнительного устройства") должен быть использован аргумент команды рабочего режима "Actuator-halt" ("Остановка исполнительного устройства").

В настоящем стандарте приведено несколько методов запуска триггеров. Это заданные в явном виде триггерные команды от СПП, команды СПП для доступа к ИМП, события внутри ИМП, которые могут быть использованы как триггеры, и триггерные команды, которые могут быть инициализированы ИМП с подключенным СПП, если событие произошло внутри ИМП.


Рисунок 7 - Триггерные состояния датчика


Рисунок 8 - Триггерные состояния исполнительного устройства

5.11.2.1 Триггерные команды

Триггерные команды посылаются от СПП одному или более каналам преобразователя в обычной среде передачи данных. Определение триггерной команды приведено в 7.1.3.3. Триггерная команда может быть адресована любому из следующих элементов:

- канал преобразователя;

- прокси-канал преобразователя;

- ИМП;

- адресная группа;

- глобальный адрес.

Триггерная команда, адресованная определенному каналу преобразователя, передается одному каналу преобразователя одного ИМП.

Прокси-канал преобразователя является ресурсом, имеющим адрес внутри одного ИМП (см. 5.9), и способен "представлять" один или более каналов преобразователя внутри данного ИМП. Триггерная команда, адресованная прокси-каналу преобразователя, исполняется для каждого канала преобразователя, входящего в прокси-канал преобразователя.

Триггерная команда, адресованная ИМП, запускает все доступные для сигналов триггера каналы преобразователя, входящие в такой ИМП.

Пользователь системы может определить адресную группу (см. 5.3). В настроенной системе каждый канал преобразователя, включенный в адресную группу, программируется реагировать на идентификатор данной адресной группы. Триггерная команда, отправленная такой адресной группе, запускает все элементы данной адресной группы. Если триггерная команда, составленная с применением технологии, приведенной в 10.2.3-10.2.4, отправлена нескольким ИМП, то она запускает все каналы преобразователя для всех ИМП, которым она была отправлена.

Глобальная триггерная команда запускает все доступные триггерным командам каналы преобразователя внутри ИМП. Для создания глобальной триггерной команды система использует отправку триггерной команды на глобальный адрес. Если триггерная команда, составленная с применением технологии, приведенной в 10.2.3-10.2.4, отправлена нескольким ИМП, то она запускает все каналы преобразователя для всех ИМП, которым она была отправлена. Независимо от режима адресации канал преобразователя должен принимать триггерные команды только в том случае, если функция приема триггерных команд канала преобразователя активна, то есть канал преобразователя доступен для триггерных команд.

5.11.2.2 События, используемые как триггеры

События могут использоваться как триггеры для других каналов преобразователя непосредственно внутри одного ИМП. События такого характера не являются триггерными командами, но выполняют такие же функции. Событие, являющееся триггером, может формально рассматриваться как датчик событий. В результате события датчик событий может начать передачу триггерного сообщения другим ИМП в той же среде связи.

Примечание - В системах, где есть датчики событий, используемые в качестве триггеров, и где важно определить точное время события, необходимо дополнить датчик событий датчиком временных интервалов или датчиком временного события ("Timelnstance").

5.11.3 Номинальная триггерная логика

Функциональная блок-схема триггерной логики внутри ИМП приведена на рисунке 9.


Рисунок 9 - Элементарные функциональные блоки канала преобразователя


Логический блок передачи данных отвечает на триггерные команды. После получения триггерной команды при условии, что функция получения триггерных команд каналом преобразователя активна, логический блок передачи данных передает сигнал "StartSamp" ("Начать выборку").

При получении сигнала "StartSamp" ("Начать выборку") обычный датчик должен начать собирать новый набор данных. Для простейших датчиков это может означать обновление состояния одноступенчатого триггера или начало конвертации сигнала аналого-цифровым преобразователем. Более сложные датчики в ответ на триггерный сигнал могут выполнять многочисленные отсчеты, разнесенные в пространстве или во времени либо в каком-либо другом пространстве измеряемых величин.

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

При получении сигнала "StartSamp" ("Начать выборку") исполнительное устройство канала преобразователя должно отработать полученный набор данных, преобразовав его в выходные сигналы. В случае простейших исполнительных устройств это может означать обновление состояния одноступенчатого триггера или начало конвертации сигнала цифро-аналоговым преобразователем. Более сложные исполнительные устройства в ответ на триггерный сигнал могут отрабатывать многочисленные выборки данных, разнесенные в пространстве или во времени либо в каком-либо другом пространстве полученных величин.

Логический блок контроля выборок отвечает за организацию последовательности операций, необходимых для получения или отработки набора данных. Логический блок преобразователя обеспечивает формирование всех сигналов, преобразование данных, а также логику буферизации данных. Сигнал "Initiate Operation" ("Инициализировать операцию") применяется для инициализации процесса преобразования данных на примере одной выборки, а сигнал "Sample Latched" ("Выборка (отсчет) зафиксирован") показывает, что выборка была получена или преобразована в выходной сигнал.

Для каналов преобразователей, функционирующих с применением номинальной триггерной модели, определение времени фиксации выборки выполняется исключительно СПП или главным процессором и основано на информации, предоставленной ИМП. Для этого существуют два метода. При этом метод определения T, рассмотренный в 8.5.2.40, должен быть определен в ЭТДП канала преобразователя в графе "Source" ("Источник") для поля "Time of sample" ("Время выборки").

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

                                                          (1)

     
для i = от 1 до N,


где N - число выборок в наборе данных,

T - время i-выборки,

T - время последней выборки в наборе данных,

t  - интервал между выборками (период дискретизации).

Если нумерованное значение источника для времени выборки показывает, что время задержки между срабатыванием триггера и последующей фиксацией значения выборки постоянно, а в ИМП отсутствует встроенное аппаратное оборудование для обеспечения маркировки (сопровождения) времени, то время выборки должно рассчитываться от времени запуска триггерной команды путем прибавления поправки, равной времени задержки на распространение входящего сигнала, представленного в ЭТДП канала преобразователя в поле "Логика передачи данных". Данный метод пренебрегает величиной задержки распространения за счет среды транспортировки.

Расчетная формула имеет следующий вид:

,                                                           (2)


где T - время дня, когда триггерная команда была отправлена от СПП,

t - время задержки на распространение входного сигнала представленного в ЭТДП канала преобразователя в поле "Логика передачи данных",

T - время дня, в которое была зафиксирована первая выборка из набора данных.

Такие временные расчеты позволяют получить время первой выборки в наборе данных. В следующей формуле показан способ расчета времени любой другой выборки в наборе данных:

                                                   (3)

     
для i = от 1 до N,


где N - число выборок в наборе данных,

T - время i-выборки,

T - время первой выборки в наборе данных,

t - интервал между выборками.

Другие возможные конфигурации триггерной логики приведены в приложении L.

5.11.4 Триггерная логика, основанная на определении события

Функциональная блок-схема, приведенная на рисунке 9, изображает канал преобразователя с датчиком событий в качестве триггера. Датчик событий может содержать дополнительные встроенные исполнительные устройства, позволяющие обеспечить выполнение таких функций, как программируемый аналоговый порог срабатывания и гистерезис, или программируемая цифровая последовательность (цифровая комбинация).

Датчик событий связан на аппаратном уровне с одним или более каналами преобразователя, определенными в мета-ЭТДП как "ChannelGroup" ("Группа каналов"). При получении триггерной команды датчик событий начинает мониторинг. Произошедшее событие также может служить триггером для соответствующего(их) канала(ов) преобразователя.


Рисунок 10 - Выход датчика событий, использующийся в качестве триггера


Канал преобразователя может не принимать триггерные команды, адресованные каналам преобразователя, сконфигурированным таким образом.

5.11.5 Избыточный запуск триггерных команд канала преобразователя

Независимо от времени, необходимого для считывания данных канала преобразователя, для успешного получения триггерных команд СПП должен отправлять их с интервалом времени не меньшим, чем интервал между выборками канала преобразователя. Интервал между выборками канала преобразователя приведен в ЭТДП канала преобразователя (см. 8.5.2.36).

Термин "избыточный запуск триггерных команд" относится к последующему триггеру, выпущенному до окончания времени интервала между выборками канала преобразователя. В этом случае канал преобразователя может не успеть полностью обработать предыдущий триггер. В таблице 8 приведен список ответов на избыточный запуск триггерных команд канала преобразователя, находящегося в рабочем режиме, описанном в 5.10.


Таблица 8 - Ответ на избыточные триггерные команды

Рабочий режим

Ответ на триггер

Потоковый

Буферный

Да

Не важно

Игнорировать все, кроме первого триггера

Нет

Да

Воспринимать как предварительный триггер

Нет

Нет

Игнорировать триггеры до завершения предыдущей операции


В непотоковом буферном режиме устройство воспринимает триггер, полученный до фиксации всех выборок в наборе данных, как предварительный триггер. Иначе говоря, устройство принимает триггер в качестве команды для запуска другого буфера после завершения обработки данных текущего буфера таким образом, что все получаемые или отрабатываемые выборки проходят с сохранением одинакового интервала. Если во время обработки буфера получено более одного избыточного триггера, то такие триггеры игнорируются. В этом случае время выборки не может быть рассчитано из времени отправки триггера. В любом случае, если триггерная команда проигнорирована, в соответствующем регистре состояния устанавливается бит "Command Rejected" ("Отказ от выполнения команды") (см. 5.13.4).

     5.12 Синхронизация


Основным требованием для крупномасштабного сбора данных с распределенных многоточечных массивов датчиков является обеспечение в системе функции запуска синхронизированных во времени триггерных сигналов для различных преобразователей данных. Так как для точного временного "снимка состояния" измеряемых параметров принципиально важно обеспечить одновременный сбор широкого спектра точек данных, то отдельные выборки от распределенных в пространстве датчиков нужно координировать в довольно точных временных интервалах. Для выполнения этой задачи в настоящем стандарте описано несколько функций, приведенных в 5.12.1-5.12.2.

5.12.1 Методы получения синхронизации

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

5.12.1.1 Применение триггеров

Самым простым путем достижения синхронизации выборок данных являются адресные группы и глобальные триггеры, описанные в 5.3. Если синхронизация выборок данных должна быть достигнута для нескольких ИМП, то требуется использовать метод адресации для нескольких ИМП, приведенный в 10.2.3-10.2.4. При использовании данного метода максимально достижимая временная точность зависит от базовых средств и протокола связи. Данный метод хорошо работает для каналов преобразователей, загружающих или обрабатывающих одиночную выборку после получения одного триггерного сигнала. Метод является менее точным при работе с наборами данных, содержащими более одной выборки. Метод также имеет ограничения при очень большой длине кабелей или при очень строгих требованиях к синхронизации.

5.12.1.2 Применение отсроченного триггера

Задержки в системе, возникающие по причине различной длины кабелей между СПП и ИМП, а также по причине задержек внутри ИМП, могут быть устранены при использовании функции отсроченного триггера. Более детально данный процесс описан в приложении L. Данная функция ИМП может быть использована, если СПП обладает методом определения задержек для различных ИМП. Данный метод может быть применен в том случае, если в стандарте для физической среды передачи данных оговорен метод определения задержек передачи информации.

5.12.1.3 Применение сигнала синхронизации

Сигнал синхронизации обеспечивает синхронный тактовый импульс с одинаковой частотой для всех ИМП в обычной среде. Применение сигнала синхронизации позволяет улучшить работу с адресными группами или глобальными триггерами каналов преобразователя, работающих с наборами данных, содержащих более одной выборки. Тем не менее применение сигнала синхронизации не устраняет напрямую различные задержки, связанные с длиной кабеля.

5.12.2 Сигнал синхронизации

В некоторых из стандартов настоящего комплекса описаны СПП, способные генерировать тактовые импульсы синхронизации и передавать их ИМП. Модули ИМП могут получать данные тактовые импульсы, загружать их в буфер и использовать для генерации соответствующих тактовых импульсов внутри самого ИМП. Детальная информация о передаче тактовых импульсов от СПП к ИМП приведена в соответствующем стандарте комплекса ИИЭР 1451.

     5.13 Состояние (статус)


Как показано на рисунке 11, существуют два вида регистра состояния, и оба вида имеют длину в 32 бита. Первый регистр носит название "Condition Register" ("Регистр условия"). Его можно считать при помощи команды "Read Status-Condition Register" ("Считать статус состояния регистра условия") (см. 7.1.1.9). Данный регистр содержит информацию о текущем состоянии передаваемых атрибутов. Второй регистр называется "Event Register" ("Регистр события"). Данный регистр содержит значение "True" при условии, если "Condition Register" ("Регистр условия") изменил значение на значение "True" с момента последней очистки регистра события. Регистр можно считать при помощи команды "Read Status-Event Register" ("Считать статус состояния регистра события") (см. 7.1.1.8). Некоторые биты регистра события представляют собой фактические события, такие как ошибки выполнения команд. В регистре условия такие биты всегда должны быть равны нулю, поскольку иначе в модели будет отображено изменение условия с его немедленной очисткой.


Рисунок 11 - Логика создания сообщений состояния


Оба регистра состояний должны быть применимы к ИМП и к каждому каналу преобразователя внутри ИМП. Возвращенное состояние-событие представляет собой состояние ИМП в целом. Во многих случаях бит состояния-события ИМП представляет собой "OR" ("логическое ИЛИ") соответствующих битов для всех каналов преобразователя.

Каждый бит регистра состояния-события означает наличие или отсутствие определенного события. Значение "1" в соответствующей позиции бита должно означать, что условие выполняется или что событие произошло с момента последнего считывания или очистки статуса.

Каждый регистр состояния-события используется в сочетании с соответствующей маской сервисного запроса (см. 5.14.1), позволяющей проконтролировать выбор битов для формирования сервисного запроса.

Биты состояния, определенные в настоящем стандарте, приведены в таблице 9.

Некоторые биты состояния зарезервированы для будущих версий настоящего стандарта. Некоторые биты являются необязательными и могут быть не предусмотрены изготовителем. Биты, обозначенные как "открытые для изготовителей", могут использоваться для сообщения о состояниях, не представленных уже определенными битами. Описания новых битов регистра состояния-события ИМП должны отражать состояния внутри ИМП в целом. Биты состояния, отмеченные как "зарезервированные", или не использующиеся "необязательные", или "открытые для изготовителей", при считывании должны быть равны нулю.


Таблица 9 - Биты состояния

Бит

Биты состояния ИМП

Биты состояния канала преобразователя

Обязательный/
необязательный

0

Service request ("Запрос сервиса")

Service request ("Запрос сервиса")

Обязательный

1

TEDS changed ("ЭТДП изменена")

TEDS changed ("ЭТДП изменена")

Необязательный

2

Invalid command ("Неверная команда")

Зарезервировано

Обязательный

3

Command rejected ("Отказ от выполнения команды")

Command rejected ("Отказ от выполнения команды")

Обязательный

4

Missed data or event ("Пропущенные данные или событие")

Missed data or event ("Пропущенные данные или событие")

См. 5.13.5

 

5

Data/event ("Данные/событие")

Data/event ("Данные/событие")

См. 5.13.6

 

6

Hardware error ("Ошибка аппаратного оборудования")

Hardware error ("Ошибка аппаратного оборудования")

См. 5.13.7

 

7

Not operational ("Нерабочее состояние")

Not operational ("Нерабочее состояние")

Обязательный

8

Protocol error ("Ошибка протокола")

Зарезервировано

Обязательный

9

Data available/data processed ("Данные доступны/данные обработаны")

Data available/data processed ("Данные доступны/данные обработаны")

Необязательный

10

Busy ("Занято")

Busy ("Занято")

Необязательный

11

Failed calibration ("Сбой калибровки")

Failed calibration ("Сбой калибровки")

Необязательный

12

Failed self-test ("Сбой самоконтроля")

Failed self-test ("Сбой самоконтроля")

Необязательный

13

Data over range or under range ("Данные выходят за верхнюю или нижнюю границы диапазона")

Data over range or under range ("Данные выходят за верхнюю или нижнюю границы диапазона")

Необязательный

14

Corrections disabled ("Коррекции отключены")

Corrections disabled ("Коррекции отключены")

Необязательный

15

Consumables exhausted ("Закончились расходные материалы")

Consumables exhausted ("Закончились расходные материалы")

Необязательный

16

Зарезервировано

Not-the-first-read-of-this-data-set ("Не первое считывание из этого набора данных")

Обязательный

17-23

Зарезервировано

Зарезервировано

-

23-31

Открыто для изготовителей

Открыто для изготовителей

-

    В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведена ссылка на 5.13.4.

  В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведена ссылка на 5.13.5.

  В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведена ссылка на 5.13.6.


Очистка битов в регистре состояния-события может быть проведена одним из следующих способов:

- очистка битов "Summary" ("Сводка") должна быть проведена немедленно после считывания соответствующего нижележащего (базового) регистра состояния-события. Любой бит в регистре состояния-события ИМП, определенный как "OR" ("логическое ИЛИ") для соответствующего бита регистров состояния-события канала преобразователя, должен быть очищен таким же образом;

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

- биты состояния также могут меняться при изменении рабочих режимов, приведенных в 5.4.1.

При инициализации во время включения питания или перезагрузки время задержки передачи данных может превысить значения времени задержки, оговоренные в ЭТДП. ИМП должен провести проверку считываний регистра состояния и убедиться, что они возвращают точные данные о состоянии ИМП. В противном случае ИМП должен отложить любое считывание регистра состояния.

Считывание регистров состояния должно быть доступно при помощи команд "Read status-event register" ("Считать статус состояния регистра события") и "Read status-condition register" ("Считать статус состояния регистра условия"), определенных в 7.1.1.8-7.1.1.9. Полученный в ответ статус должен иметь размер 4 байта. Информация, полученная в ответ на обращение к ИМП, определена в таблице 9, в графе "Биты состояния ИМП". Биты, полученные в ответ на обращение к каналу преобразователя, определены в графе "Биты состояния канала преобразователя".

Регистр состояния-события также может быть передан в запущенном ИМП сообщении (см. 6.4) при условии, что маска установлена для бита регистра состояния-события, который был установлен, и протокол состояния-события был активирован при помощи команды "Write status-event protocol state" ("Записать состояние протокола состояния-события") (см. 7.1.1.11). После того как данный протокол активирован, должен быть инициирован поток, отправляющий 32-битовый регистр состояния каждый раз после установки бита "Service request" ("Запрос сервиса"). При запросе сервиса каналом должен быть отправлен регистр канала. Если запрос совершает ИМП, то должен быть отправлен регистр состояния ИМП. Информация, отправленная через протокол состояния-события, должна быть идентична информации, полученной в ответ на команду "Read status-event register" ("Считать статус состояния регистра события").

5.13.1 Бит "Service request" ("Запрос сервиса")

Бит "Service request" ("Запрос сервиса") для любого канала преобразователя должен быть установлен при запросе сервиса этим каналом преобразователя. Указанный бит должен быть очищен после считывания, после отправки сообщения протокола состояния или после отправки команды "Clear status-event register" ("Очистить регистр состояния-события") (см. 7.1.1.10) для данного канала. Для определения условий, при которых канал преобразователя запрашивает сервис, применяются маски сервисного запроса.

Описание маски сервисного запроса приведено в 5.14.1.

Бит "Service request" ("Запрос сервиса") для ИМП должен быть установлен в случае любого запроса сервиса ИМП, как определено масками ИМП. Он должен быть очищен после считывания, после отправки сообщения протокола состояния или после отправки команды "Clear Transducer status-event register" ("Очистить регистр события-состояния преобразователя"). Бит "Service request" ("Запрос сервиса") для ИМП не должен очищаться при получении протокола очистки устройства.

Бит "Service request" ("Запрос сервиса") для канала преобразователя должен быть применим для каждого канала преобразователя внутри ИМП. Бит "Service request" ("Запрос сервиса") для ИМП должен быть применим для каждого ИМП.

Бит "Service request" ("Запрос сервиса") очищается при изменении рабочего режима при условии, что бит состояния, вызвавший это изменение, изменяется или очищается.

Бит "Service request" ("Запрос сервиса") должен быть определен при включении питания, а также он должен быть установлен при пометке бита активизации какого-либо состояния, в особенности если активизирован бит состояния "Power on" ("Включение питания").

5.13.2 Бит "TEDS changed" ("ЭТДП изменена")

Бит "TEDS changed" ("ЭТДП изменена") для модуля ИМП должен быть установлен при любых производимых ИМП изменениях содержания адаптивных ЭТДП. Бит "TEDS changed" ("ЭТДП изменена") для канала преобразователя должен быть установлен при любых изменениях содержания адаптивных ЭТДП, производимых каналом преобразователя. Бит должен быть очищен после считывания.

Данный бит не зависит от изменения рабочего режима преобразователя.

5.13.3 Бит "Invalid command" ("Неверная команда")

Бит "Invalid command" ("Неверная команда") для ИМП должен быть установлен в случае обнаружения модулем ИМП любой невыполнимой команды или при считывании или записи неприменимой функции. Бит должен быть очищен после считывания.

Данный бит не зависит от изменения рабочего режима преобразователя.

5.13.4 Бит "Command rejected" ("Отказ от выполнения команды")

Бит "Command rejected" ("Отказ от выполнения команды") должен быть установлен в случае обнаружения ИМП действительной команды, которая не может быть выполнена в текущем режиме работы ИМП или канала преобразователя. Также данный бит должен быть установлен, если по какой-либо причине аргумент команды является неприемлемым. Бит должен быть очищен после считывания.

Бит "Command rejected" ("Отказ от выполнения команды") является обязательным и должен быть применим к ИМП и всем каналам преобразователя.

Данный бит не зависит от изменения рабочего режима.

5.13.5 Бит "Missed data or event" ("Пропущенные данные или событие")

Бит "Missed data or event" ("Пропущенные данные или событие") должен быть установлен одновременно с временем выборки данных (временем снятия отсчета) датчика события или датчика, находящегося в режиме автономной выборки, если канал преобразователя находится в рабочем режиме преобразователя, но еще не получил запускающей триггерной команды. Исключение составляет случай, когда после того как бит был очищен, он не должен быть установлен до получения первого триггерного сигнала для любого канала преобразователя. Данный бит должен быть очищен после считывания.

Бит "Missed data or event" ("Пропущенные данные или событие") для ИМП должен быть установлен, если установлен какой-либо бит "Missed data or event" ("Пропущенные данные или событие") канала преобразователя.

Данный бит состояния должен быть применим для любого датчика событий или датчика, способного работать в режиме автономной выборки. Бит также должен быть применим для любого ИМП, содержащего подобный датчик или датчик событий.

Бит "Missed data or event" ("Пропущенные данные или событие") должен быть очищен при переходе канала преобразователя из режима остановки в рабочий режим преобразователя. Описание рабочих режимов приведено в 5.4.1.

Примечание - Если канал преобразователя в режиме ожидания преобразователя не собирает или не потребляет данные, то бит должен оставаться установленным до тех пор, пока не будет считан. С другой стороны, если бит был установлен, то он должен быть очищен при переходе канала преобразователя из рабочего режима в режим ожидания.

5.13.6 Бит "Data/event" ("Данные/событие")

Бит "Data/event" ("Данные/событие") для канала преобразователя должен быть установлен во время получения выборки данных (отсчета) датчика в рабочем режиме преобразователя, работающего в автономном режиме выборки данных или при обнаружении события датчиком события. Бит "Data/event" ("Данные/событие") должен быть очищен после считывания. Бит "Data/event" ("Данные/событие") для ИМП должен быть установлен, если установлены какие-либо из битов "Data/event" ("Данные/событие") для канала преобразователя.

Данный бит состояния должен быть применим для любых датчиков событий или датчиков, способных работать в режиме автономной выборки. Бит также должен быть применим для любого ИМП, содержащего подобный датчик или датчик событий.

Бит "Data/event" ("Данные/событие") для канала преобразователя должен быть очищен при переходе канала преобразователя из режима ожидания в рабочий режим преобразователя. Описание рабочих режимов представлено в 5.4.1.

Примечание - Если канал преобразователя в режиме ожидания преобразователя не собирает или не потребляет данные, то бит должен оставаться установленным до тех пор, пока не будет считан. С другой стороны, если бит был установлен, то он должен быть очищен при переходе канала преобразователя из рабочего режима в режим ожидания.

5.13.7 Бит "Hardware error" ("Аппаратная ошибка")

Бит "Hardware error" ("Аппаратная ошибка") для канала преобразователя должен быть установлен, если выполняются условия, о которых он сообщает. Бит "Hardware error" ("Аппаратная ошибка") должен быть очищен после считывания, если условия, о которых он сообщает, больше не выполняются. Датчик событий должен установить данный бит после неудавшихся проверок на совместимость. Бит "Hardware error" ("Аппаратная ошибка") для ИМП должен быть установлен, если установлены какие-либо биты "Hardware error" ("Аппаратная ошибка") для канала преобразователя. Изготовитель ИМП может определить дополнительные критерии аппаратной ошибки.

Бит "Hardware error" ("Аппаратная ошибка") для ИМП при возвращении статуса ИМП и бит "Hardware error" ("Аппаратная ошибка") для канала преобразователя должны быть применимы для любого ИМП, содержащего датчик событий и проводящего проверки на совместимость (см. 5.6.1).

Данный бит не зависит от изменения рабочего режима.

5.13.8 Бит "Not operational" ("Нерабочее состояние")

Бит "Not operational" ("Нерабочее состояние") для канала преобразователя должен быть установлен, если канал преобразователя не соответствует спецификациям изготовителя. Бит "Not operational" ("Нерабочее состояние") должен быть установлен при прогреве или любом другом состоянии, когда канал преобразователя не соответствует спецификациям или не функционирует.

Бит "Not operational" ("Нерабочее состояние") для ИМП должен представлять результат операции "OR" ("логическое ИЛИ") для всех битов нерабочего состояния канала преобразователя. Бит "Not operational" ("Нерабочее состояние") также должен быть установлен, если ИМП находится в нерабочем состоянии по любой другой причине. Бит "Not operational" ("Нерабочее состояние") для ИМП должен быть очищен после того, как причина, приведшая к его установке, устранена.

Данный бит не зависит от изменения рабочего режима.

5.13.9 Бит "Protocol error" ("Ошибка протокола")

Бит "Protocol error" ("Ошибка протокола") устанавливается, если в сообщении, полученном через интерфейсную среду преобразователя, содержатся ошибки протокола.

Данный бит не зависит от изменения рабочего режима.

5.13.10 Бит "Data available/data processed" ("Данные доступны/данные обработаны")

Бит "Data available/data processed" ("Данные доступны/данные обработаны") для канала преобразователя должен быть установлен, если у данного канала преобразователя есть данные, доступные для считывания датчиком, или если канал преобразователя завершил обработку данных в исполнительном устройстве. Бит "Data available/data processed" ("Данные доступны/данные обработаны") для ИМП должен быть установлен, если у какого-либо канала преобразователя для данного ИМП есть данные, доступные для считывания датчиком, или если канал преобразователя завершил обработку данных в исполнительном устройстве. Бит "Data available/data processed" ("Данные доступны/данные обработаны") должен оставаться установленным до тех пор, пока условия сохраняются. В случае датчика это означает, что данный бит должен оставаться установленным, пока данные не будут считаны. В случае исполнительного устройства это означает, что данный бит должен оставаться установленным, пока на устройство не будут записаны новые данные или не будет считано состояние.

Бит "Data available/data processed" ("Данные доступны/данные обработаны") должен быть очищен при переходе канала преобразователя из режима остановки в рабочий режим преобразователя. Описание рабочих режимов приведено в 5.4.1.

Примечание - Если канал преобразователя в режиме ожидания преобразователя не собирает или не потребляет данные, то бит должен оставаться установленным до тех пор, пока не будет считан. С другой стороны, если бит был установлен, то он должен быть очищен при переходе канала преобразователя из рабочего режима в режим ожидания.

5.13.11 Бит "Busy" ("Занято")

Бит "Busy" ("Занято") для канала преобразователя должен быть установлен, если канал преобразователя не может поддерживать доступ к записи или считыванию данных канала преобразователя через транспортировку данных. Существует ряд команд, в результате которых канал преобразования может оказаться занят: например, команда "Run self-test" ("Запустить самодиагностику") (см. 7.1.1.5), команда "Calibrate Transducer Channel" ("Калибровать канал преобразователя") (см. 7.1.2.10), команда "Reset" ("Перезагрузка") (см. 7.1.7.1), команда "Zero Transducer Channel" ("Обнулить канал преобразователя") (см. 7.1.2.11) или любая другая команда, изменяющая нормальный режим работы. Данный бит должен оставаться установленным, только пока сохраняются условия, указывающие на то, что канал занят. Бит "Busy" ("Занято") для ИМП должен представлять результат операции "OR" ("логическое ИЛИ") всех битов "Busy" ("Занято") каналов преобразователя внутри ИМП.

Данный бит не зависит от изменения рабочего режима.

5.13.12 Бит "Failed calibration" ("Сбой калибровки")

Бит "Failed calibration" ("Сбой калибровки") для канала преобразователя должен быть установлен, если во время "калибровочной" проверки (см. 7.1.2.10) не были получены ожидаемые результаты. Бит "Failed calibration" ("Сбой калибровки") должен быть очищен после считывания. Бит "Failed calibration" ("Сбой калибровки") для ИМП должен представлять результат операции "OR" ("логическое ИЛИ") всех битов "Failed calibration" ("Сбой калибровки") каналов преобразователя внутри ИМП.

Данный бит не зависит от изменения рабочего режима.

5.13.13 Бит "Failed self-test" ("Сбой самодиагностики")

Бит "Failed self-test" ("Сбой самодиагностики") для канала преобразователя и бит "Failed self-test" ("Сбой самодиагностики") для ИМП должны быть установлены, если в результате запуска команд "Run self-test" ("Запустить самодиагностику") не были получены ожидаемые результаты (см. 7.1.1.5). Бит "Failed self-test" ("Сбой самодиагностики") должен быть очищен после считывания. Бит "Failed self-test" ("Сбой самодиагностики") для ИМП должен представлять результат операции "OR" ("логическое ИЛИ") всех битов "Failed self-test" ("Сбой самодиагностики") каналов преобразователя внутри ИМП.

Данный бит не зависит от изменения рабочего режима.

5.13.14 Бит "Data over-range or under-range" ("Данные выходят за верхнюю или нижнюю границы диапазона")

Бит "Data over-range or under-range" ("Данные выходят за верхнюю или нижнюю границы диапазона") для канала преобразователя должен быть установлен, когда канал преобразователя обнаруживает условия выхода сигналов за верхнюю или нижнюю границы диапазона. Бит "Data over-range or under-range" ("Данные выходят за верхнюю или нижнюю границы диапазона") для ИМП должен представлять результат операции "OR" ("логическое ИЛИ") всех битов "Data over-range or under-range" ("Данные выходят за верхнюю или нижнюю границы диапазона") каналов преобразователя внутри ИМП. Данный бит должен быть очищен после считывания.

Условие выхода за верхнюю границу диапазона выполняется, если величина сигнала на выходе канала преобразователя больше (или имеет большее по модулю положительное значение) величины, указанной в поле верхней границы рабочего диапазона устройства в ЭТДП канала преобразователя (см. 8.5.2.19). Условие выхода за нижнюю границу диапазона выполняется, если величина сигнала на выходе канала преобразователя меньше (или имеет большее по модулю отрицательное значение) величины, указанной в поле нижней границы рабочего диапазона устройства в ЭТДП канала преобразователя (см. 8.5.2.7).

Бит "Data over-range or under-range" ("Данные выходят за верхнюю или нижнюю границы диапазона") канала преобразователя должен быть очищен при переходе канала преобразователя из режима остановки в рабочий режим. Описание рабочих режимов приведено в 5.4.1.

Примечание - Если канал преобразователя в режиме ожидания преобразователя не собирает или не потребляет данные, то бит должен оставаться установленным до тех пор, пока не будет считан. С другой стороны, если бит был установлен, то он должен быть очищен при переходе канала преобразователя из рабочего режима в режим ожидания.

5.13.15 Бит "Corrections disabled" ("Коррекции отключены")

Бит "Corrections disabled" ("Коррекции отключены") должен быть установлен для любого ИМП или канала преобразователя, для которых корректировка данных возможна, но отключена. Бит "Corrections disabled" ("Коррекции отключены") должен быть применим для любого канала преобразователя или ИМП, содержащего возможность корректировки данных. Данный бит должен быть равен нулю для любого канала преобразователя или ИМП, не имеющего возможности корректировки данных.

Данный бит не зависит от изменения рабочего режима.

5.13.16 Бит "Consumables exhausted" ("Закончились расходные материалы")

Бит "Consumables exhausted" ("Закончились расходные материалы") для канала преобразователя должен быть установлен, если канал преобразователя не может больше получать какие-либо расходные материалы, необходимые для продолжения работы. Бит "Consumables exhausted" ("Закончились расходные материалы") для ИМП должен представлять результат операции "OR" ("логическое ИЛИ") всех битов "Consumables exhausted" ("Закончились расходные материалы") каналов преобразователя внутри ИМП. Данный бит должен быть установлен, только пока выполняются описанные в данном пункте условия.

Данный бит не зависит от изменения рабочего режима.

5.13.17 Бит "Not-the-first-read-of-this-data-set" ("Не первое считывание из этого набора данных")

Бит "Not-the-first-read-of-this-data-set" ("Не первое считывание из этого набора данных") для любого канала преобразователя должен быть установлен при считывании набора данных более одного раза. Данный бит должен быть очищен после считывания.

Данный бит не зависит от изменения рабочего режима.

     5.14 Логика сервисного запроса


В случае если внутри ИМП существует какое-либо требующее внимания условие, то от ИМП к СПП отправляются сервисные запросы, представляющие собой грубую аналогию с компьютерными сигналами прерывания. Тем не менее отличие от компьютерных сигналов прерывания заключается в том, что сервисные запросы не имеют независимого механизма для передачи СПП информации о существующем условии, кроме случаев, когда протокол состояния-события включен (см. 7.1.1.11). Бит "Service request" ("Запрос сервиса") может быть считан при помощи команды "Read Status-Event Register" ("Считать регистр состояния-события") (см. 7.1.1.8). Это означает, что СПП не способен в минимальное время ответить на сервисный запрос. Также запрос может быть отправлен обратно, если он был подтвержден через сообщение протокола состояния.

5.14.1 Маски сервисного запроса

ИМП должен содержать регистр маски сервисного запроса для самого ИМП и для каждого используемого канала преобразователя внутри ИМП. Ширина таких регистров составляет 4 байта. Для того чтобы установить бит "Service request" ("Запрос сервиса") после установки соответствующего бита в регистре состояния, нужно записать единицу в любой бит регистра маски сервисного запроса. Детальное описание представлено на рисунке 11.

Положение битов регистра маски сервисного запроса полностью соответствует положению битов в регистре состояния-события, определенных в таблице 9. Значение, расположенное в 0-битовой позиции регистра маски сервисного запроса, не используется, так как данное положение соответствует биту "Service request" ("Запрос сервиса"). Бит "Service request" ("Запрос сервиса") не может быть маскирован, так как он непосредственно создает сервисный запрос. При включенном питании значение по умолчанию для регистров масок сервисного запроса равно только нулям (то есть ни один бит состояния не может создавать сервисный запрос). На значение данного регистра не должно оказывать влияние ни получение протокола "Device Clear" ("Очистка устройства"), ни команда "Reset" ("Перезагрузка").

5.14.2 Сервисные запросы

Сигнал сервисного запроса применяется в сочетании с регистрами состояния и регистрами масок сервисного запроса для отображения особых условий ИМП. Как правило, СПП считывает состояние всех каналов преобразователя для того, чтобы определить, какой канал преобразователя запрашивает сервис и по какой причине. СПП не обязательно должен немедленно отвечать на сервисный запрос.

Если установлено автоматическое сообщение о состоянии, то ИМП или любой канал, запрашивающий сервис, должен вернуть регистр состояния-события через сообщение протокола состояния-события.

На рисунке 12 показана логика генерирования сервисного запроса ИМП.


Рисунок 12 - Генерация сервисного запроса ИМП

     

     5.15 Возможность горячей замены


В системе должна существовать возможность отсоединения ИМП от интерфейса или подсоединения ИМП к интерфейсу без отключения питания системы и без повреждения подключаемого ИМП или другого устройства, подключенного к среде. При подсоединении ИМП к среде связи во время передачи данных или его отсоединении допускаются кратковременные воздействия. При этом необратимые повреждения недопустимы.

Возможность СПП обнаруживать добавленный или отсоединенный ИМП поддерживается настоящим стандартом, но при этом зависит от способности физических слоев более низкого уровня обнаруживать подобные изменения и вызывать соответствующие методы в API модульных связей (см. 11.5-11.6).

     6 Структура сообщений


Данный раздел определяет структуру сообщений, пересылаемых через интерфейс модульных связей.

     6.1 Порядок передачи данных. Значимость битов


Порядок передачи заголовков и данных, описанных в настоящем стандарте, решен на уровне байтов. В случае если диаграмма представляет группу байтов, они передаются в обычном порядке, то есть в порядке их прочтения в русском или английском языке. Например, представленные в таблице 10 байты передаются в порядке их нумерации.

Примечание - Данный порядок передачи данных применим только к интерфейсу модульных связей и является исключительно абстрактным. Порядок передачи данных и значимость битов для физического уровня могут отличаться.


Таблица 10 - Порядок передачи байтов

1 байт

1 байт

1 байт

1 байт

7

6

5

4

3

2

1

0

7

6

5

4

3

2

1

0

7

6

5

4

3

2

1

0

7

6

5

4

3

2

1

0

1 (первый передаваемый байт)

2

3

4

5

6

7

8

9

-


В случае если байт представляет числовое значение, крайний левый бит, представленный в таблице 11, является битом высшего порядка или старшим значащим битом, то есть бит под номером 7 является старшим значащим битом. Например, числовое значение в таблице 11 представляет собой число 170 (десятичное число) или 0хАА (шестнадцатеричное число).


Таблица 11 - Пример значимости битов

Биты

7

6

5

4

3

2

1

0

Значение = 170 (десятичное)

1

0

1

0

1

0

1

0

     

     6.2 Структура командных сообщений


Формат командных сообщений представлен в таблице 12.


Таблица 12 - Структура командных сообщений

1 байт

7

6

5

4

3

2

1

0

Номер канала-получателя (старший значащий байт)

Номер канала-получателя (младший значащий байт)

Класс команды

Функция команды

Длина (старший значащий байт)

Длина (младший значащий байт)

Командно-зависимые байты
.
.
.

6.2.1 Поле "Номер канала-получателя для преобразователя"

Данное поле содержит 16-битный номер канала преобразователя, который является получателем сообщения.

6.2.2 Поле "Класс команд"

Класс команд определен в 7.1, главный индекс классов команд представлен в таблице 15.

6.2.3 Поле "Функция команд"

Функция команд определена в разделе 7. Функция команды должна рассматриваться в соответствии с классом команды, как описано в рамках раздела 7.

6.2.4 Поле "Длина"

Длина - это число командно-зависимых байтов в данном сообщении. Если длина полученного сообщения не совпадает с заданной в данном поле длиной получаемых сообщений, то такое сообщение должно быть отклонено и должен быть установлен бит "Protocol error" ("Ошибка протокола") в регистре состояний (см. 5.13.9).

6.2.5 Поле "Командно-зависимые байты"

Данное поле содержит информацию, которая должна быть определена для команд. Подробное описание команд и указанной информации представлено в разделе 7.

     6.3 Ответные сообщения


Ответные сообщения используются для ответа на полученные команды. Формат ответных сообщений приведен в таблице 13.


Таблица 13 - Структура ответных сообщений

1 байт

7

6

5

4

3

2

1

0

Флаг (индикатор) удача/сбой

Длина (старший значащий байт)

Длина (младший значащий байт)

Байты, зависимые от ответного сообщения
.
.
.

6.3.1 Поле "Флаг "удача/сбой"

Ненулевое значение данного байта указывает на успешное завершение команды. Нулевое значение байта показывает, что для данной команды произошел сбой, при этом системе следует провести проверку состояния для определения причины сбоя.

6.3.2 Поле "Длина"

Длина - это число зависимых от ответного сообщения байтов в данном сообщении. Если длина полученного сообщения не совпадает с заданной в данном поле длиной получаемых сообщений, то такое сообщение должно быть отклонено и должен быть установлен бит "Protocol error" ("Ошибка протокола") в регистре состояний (см. 5.13.9).

6.3.3 Поле "Зависимые от ответного сообщения байты"

Данное поле содержит информацию, которая должна быть определена для команд. Подробное описание команд и указанной информации представлено в разделе 7.

     6.4 Структура сообщений, инициируемых ИМП


Формат сообщений, запускаемых ИМП, представлен в таблице 14. Примерами таких сообщений являются потоковые данные или сообщения о статусе.


Таблица 14 - Структура сообщений, инициируемых ИМП

1 байт

7

6

5

4

3

2

1

0

Номер канала-отправителя (старший значащий байт)

Номер канала-отправителя (младший значащий байт)

Класс команды

Функция команды

Длина (старший значащий байт)

Длина (младший значащий байт)

Командно-зависимые байты
.
.
.

6.4.1 Поле "Номер канала-отправителя для преобразователя"

Данное поле содержит 16-битный номер канала преобразователя, который является источником (отправителем) сообщения.

6.4.2 Поле "Класс команд"

Данное поле полностью повторяет поле, описанное в 6.2.2.

6.4.3 Поле "Функция команд"

Данное поле полностью повторяет поле, описанное в 6.2.3.

6.4.4 Поле "Длина"

Данное поле полностью повторяет поле, описанное в 6.2.4.

6.4.5 Поле "Командно-зависимые байты"

Данное поле полностью повторяет поле, описанное в 6.2.5.

     7 Команды


Команды подразделяются на две категории: стандартные и определенные изготовителем. Вне зависимости от категории команда разделена на два байта. Старший значащий байт должен использоваться для определения класса команды. Младший значащий байт, называемый функцией, должен определять конкретную команду в рамках определенного класса. Например, в случае если старший значащий байт определяет класс команд режима ожидания преобразователя, то младший значащий байт определяет конкретную команду внутри данного класса, при этом их возможные варианты перечислены в таблице 25.

Различные классы команд перечислены в таблице 15.


Таблица 15 - Классы стандартных команд

cmdClassId (идентификатор класса команды)

Наименование
атрибута

Категория

0

Reserved

Зарезервировано

1

CommonCmd

Общие команды для ИМП и канала преобразователя

2

Xdcrldle

Режим ожидания преобразователя

3

XdcrOperate

Рабочий режим преобразователя

4

XdcrEither

Режим ожидания или рабочий режим преобразователя

5

TIMsIeep

Спящий режим ИМП

6

TIMActive

Команды активного режима ИМП

0

Reserved

Зарезервировано

7

AnyState

Любой режим

8-127

ReservedClass

Зарезервировано

128-255

ClassN

Открыто для изготовителей, N = номер класса


ИМП может генерировать ответ на команды в случае выполнения одного из двух условий. Первое условие: сама команда требует ответа. Например, в случае получения команды "Query TEDS" ("Запросить ЭТДП"). Второе условие: активирован протокол состояния-события. В данном случае канал преобразователя или ИМП передает ответы каждый раз, когда в регистре состояния происходит не скрытое маской изменение.

Информация, описываемая как "передаваемая", передается с использованием структуры командных сообщений, приведенной в 6.2. В следующих пунктах описывается содержание командно-зависимых октетов, приведенных в таблице 12. В случае приема или передачи ответа на команду применяется структура ответных сообщений (см. 6.3).

В таблицах данного раздела присутствует нумерация для полей, "зарезервированных" для будущих версий настоящего стандарта. Некоторые типы нумерации являются необязательными, и возможность их применения остается на усмотрение изготовителя ИМП. Нумерация, обозначенная как "открыто для изготовителя", может быть использована для описания условий, лежащих за пределами рассмотрения настоящего стандарта.

     7.1 Стандартные команды


Контрольные функции позволяют отправлять команды ИМП в целом либо каждому каналу преобразователя по отдельности, в результате чего происходит изменение их режима работы. Список классов стандартных команд приведен в таблице 15.

ИМП должен отвечать на любые невыполнимые команды установкой бита "Invalid command" ("Неверная команда") ИМП в регистре состояния. Более полное описание данного бита см. в 5.13.3.

________________

В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведена ссылка на 5.13.2.

7.1.1 Общие команды для ИМП и канала преобразователя

Команды данного класса могут быть адресованы и для ИМП, и для канала преобразователя. Для того чтобы определить, кому предназначается команда - ИМП или каналу преобразователя, используется адрес (см. 5.3). Команды данного класса перечислены в таблице 16. Команды данного класса не должны быть адресованы какой-либо адресной группе, прокси-каналу преобразователя или иметь глобальный адрес. В случае если команда данного класса адресована адресной группе, прокси-каналу преобразователя или имеет глобальный адрес, она должна быть проигнорирована, а в регистре состояния-условия ИМП должен быть установлен бит "Command rejected" ("Отказ от выполнения команды").


Таблица 16 - Общие команды

cmdFunctionId (идентификатор функции команды)

Команда

Состояние


Ответ
ожида-
ется

Обязательная/
необя-
зательная

Канала преобра-
зователя

ИМП

0

Зарезервировано

-

-

-

-

1

Запросить ЭТДП

Любое

Активен

Да

Обязательная

2

Считать сегмент ЭТДП

Любое

Активен

Да

Обязательная

3

Записать сегмент ЭТДП

Любое

Активен

Нет

Обязательная

4

Обновить ЭТДП

Любое

Активен

Да

Обязательная

5

Запустить самодиагностику

Режим ожидания

Активен

Нет

Обязательная

6

Записать маску сервисного запроса

Любое

Активен

Нет

Обязательная

7

Считать маску сервисного запроса

Любое

Активен

Да

Обязательная

8

Считать регистр состояния-события

Любое

Активен

Да

Обязательная

9

Считать регистр состояния-условия

Любое

Активен

Да

Обязательная

10

Очистить регистр состояния- события

Любое

Активен

Нет

Обязательная

11

Записать состояние протокола состояния-события

Режим ожидания

Активен

Нет

Обязательная

12

Считать состояние протокола состояния-события

Любое

Активен

Да

Обязательная

13-127

Зарезервировано

-

-

-

-

128-255

Открыто для изготовителей

-

-

-

-

7.1.1.1 Команда "Query TEDS" ("Запросить ЭТДП")

Имя атрибута аргумента: TEDSAccessCode data type  UlNT8.

Данная команда используется СПП для запроса информации, необходимой для считывания или записи ЭТДП. Для данной команды существует один-единственный аргумент: "TEDS Access Code" ("Код доступа к ЭТДП"), который определяет ЭТДП, к которой должен быть осуществлен доступ. Коды доступа к ЭТДП, определенным в настоящем стандарте, перечислены в таблице 17.

Ответ на команду "Query TEDS" ("Запросить ЭТДП") должен содержать информацию, приведенную в таблице 18. Требуется, чтобы ИМП обеспечивал ответ на все команды запроса ЭТДП вне зависимости от того, выбрана ли кодом доступа выполняемая ЭТДП. Поле атрибутов в ответном сообщении (см. таблицу 19) должно отображать, поддерживается данная ЭТДП или нет, может ли она быть изменена, верно ли ее текущее содержание, а также является ли ЭТДП встроенной в ИМП или расположенной удаленно (виртуальной). Описание поля состояния ЭТДП приведено в таблице 20.

В случае если установлен атрибут неподдерживаемой ЭТДП, то ИМП в ответном сообщении должен установить "ноль" для атрибутов "TEDSSize" ("Размер ЭТДП") и "MaxTEDSSize" ("Максимальный размер ЭТДП").

В случае если установлен атрибут виртуальной ЭТДП, то также должен быть установлен атрибут "Read-only" ("Только для чтения"), и ИМП в ответном сообщении также должен установить "ноль" для атрибутов "TEDSSize" ("Размер ЭТДП"), "TEDSCkSum" ("Контрольная сумма ЭТДП") и "MaxTEDSSize" ("Максимальный размер ЭТДП"). Определение размеров и атрибутов в ответном сообщении для приложения, отправившего запрос, осуществляет СПП или главный процессор. В случае если файл не может быть найден, то должен быть установлен атрибут "Unsupported" ("Не поддерживается"), и ИМП в ответном сообщении должен установить "ноль" для атрибутов "TEDSSize" ("Размер ЭТДП"), "TEDSCkSum" ("Контрольная сумма ЭТДП") и "MaxTEDSSize" ("Максимальный размер ЭТДП"). В случае если файл найден, атрибуты "Invalid" ("Недействительный") и "Unsupported" ("Не поддерживается") должны быть очищены, а атрибуты "Read-Only" ("Только для чтения"), "TEDSSize" ("Размер ЭТДП"), "TEDSCkSum" ("Контрольная сумма ЭТДП") и "MaxTEDSSize" ("Максимальный размер ЭТДП") должны быть определены согласно атрибутам удаленного файла, в котором хранится ЭТДП.


Таблица 17 - Коды доступа к ЭТДП

Код доступа к ЭТДП

Наименование атрибута ЭТДП

ЭТДП

Обязательная/необязательная

0

-

Зарезервировано

-

1

MetaTEDS

Мета-ЭТДП1

Обязательная

2

MetaldTEDS

ЭТДП2 мета-идентификации

Необязательная

3

ChanTEDS

ЭТДП1 канала преобразователя

Обязательная

4

ChanldTEDS

ЭТДП2 идентификации канала преобразователя

Необязательная

5

CalTEDS

ЭТДП1 калибровки

Необязательная

6

CalldTEDS

ЭТДП2 идентификации калибровки

Необязательная

7

EUASTEDS

ЭТДП3 специальных приложений конечного пользователя

Необязательная

 

8

FreqRespTEDS

ЭТДП1 частотной характеристики

Необязательная

9

TransferTEDS

ЭТДП1 передаточной функции

Необязательная

10

CommandTEDS

Командная ЭТДП2

Необязательная

11

TitleTEDS

ЭТДП2 места нахождения и заголовка

Необязательная

12

XdcrName

ЭТДП2 имени преобразователя, установленного пользователем

Обязательная

13

PHYTEDS

ЭТДП1 физического уровня

Обязательная

14

GeoLocTEDS

ЭТДП2 географического места нахождения

Необязательная

15

UnitsExtention

ЭТДП2 с расширенным набором единиц измерения

Необязательная

16-127

-

Зарезервировано

-

128-255

-

ЭТДП, заданная изготовителем

Необязательная

Примечание -

ЭТДП1 - двоичная ЭТДП;

ЭТДП2 - текстовая ЭТДП;

ЭТДП3 - содержание, определяемое пользователем.


  В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведено значение "обязательная", что не соответствует описанию в 5.5.2.9 и 5.5.2.




Таблица 18 - Поле данных ответного сообщения на запрос ЭТДП

Поле

Тип данных

Наименование атрибута поля

Функция

1

UInt8

TEDSAttrib

Атрибуты ЭТДП (см. таблицу 19)

2

UInt8

TEDSStatus

Состояние (статус) ЭТДП

3

UInt32

TEDSSize

Текущий размер ЭТДП

4

UInt16

TEDSCkSum

Контрольная сумма ЭТДП

5

UInt32

MaxTEDSSize

Максимальный размер ЭТДП



Таблица 19 - Атрибуты ЭТДП

Бит

Тип данных

Наименование атрибута поля

Определение

0 (МЗБ, Isb)

Логический

TEDSAttrib.ReadOnly

Только для чтения - устанавливается на значение "True" ("Истина"), если ЭТДП может быть считана, но не может быть записана

1

Логический

TEDSAttrib.NotAvail

Не поддерживается - устанавливается на значение "True" ("Истина"), если ЭТДП не поддерживается данным каналом преобразователя

2

Логический

TEDSAttrib.Invalid

Недействительная - устанавливается на значение "True" ("Истина"), если текущее отображение ЭТДП не верно

3

Логический

TEDSAttrib.Virtual

Виртуальная ЭТДП - данный бит устанавливается на значение "True" ("Истина"), если данная ЭТДП является виртуальной. (Виртуальной ЭТДП является любая ЭТДП, которая не хранится внутри ИМП. За доступ к виртуальной ЭТДП отвечает СПП или главный процессор)

4

Логический

TEDSAttrib.TextTEDS

Текстовая ЭТДП - устанавливается на значение "True" ("Истина"), если ЭТДП является текстовой

5

Логический

TEDSAttrib.Adaptive

Адаптивная - устанавливается на значение "True" ("Истина"), если содержание ЭТДП может быть изменено ИМП или каналом преобразователя без получения от СПП команды "Записать сегмент ЭТДП"

6

Логический

TEDSAttrib.MfgrDefine

MfgrDefine (определен изготовителем) - устанавливается на значение "True" ("Истина"), если содержание ЭТДП определяется изготовителем. Соответствие структурам, определенным в настоящем стандарте, достигается, если также установлен атрибут текстовой ЭТДП

7
(СЗБ, msb)

Логический

TEDSAttrib.Reserved[7]

Зарезервировано



Таблица 20 - Состояние (статус) ЭТДП

Бит

Тип данных

Наименование атрибута поля

Определение

0
(МЗБ, Isb)

Логический

TEDSStatus.TooLarge

Слишком большой размер - размер последнего полученного отображения ЭТДП превышает объем памяти, отведенный для данной ЭТДП

1

Логический

TEDSStatus Reserved[1]

Зарезервировано

2

Логический

TEDSStatus Reserved[2]

Зарезервировано

3

Логический

TEDSStatus Reserved[3]

Зарезервировано

4

Логический

TEDSStatus Open[4]

Открыто для изготовителей

5

Логический

TEDSStatus Open[5]

Открыто для изготовителей

6

Логический

TEDSStatus Open[6]

Открыто для изготовителей

7
(СЗБ, msb)

Логический

TEDSStatus Open[7]

Открыто для изготовителей

7.1.1.2 Команда "Read TEDS segment" ("Считать сегмент ЭТДП")

Данная команда используется для считывания ЭТДП в СПП. Аргументы для данной команды приведены в таблице 21. Так как максимальный размер байтового массива меньше максимального размера ЭТДП, то для доступа к месту ЭТДП, с которого должно начинаться считывание, используется смещение сегмента ЭТДП относительно ее начала.

Примечание - Размер большинства ЭТДП не превышает размера одного сегмента. В таких случаях смещение сегмента ЭТДП должно быть равно нулю. Тем не менее допускаются ЭТДП с размером больше максимального размера байтового массива данных. ЭТДП такого объема требуют сегментирования для передачи.


Таблица 21 - Поле данных команды "Read TEDS segment" ("Считать сегмент ЭТДП")

Поле

Тип данных

Наименование атрибута поля

Функция

1

 Uint8

TEDSAccessCode

Код доступа к ЭТДП, как определено в таблице 17

2

 UlNT32

TEDSOffset

Смещение сегмента ЭТДП (значения от 0 до [текущий размер минус 1]) - это адрес относительно начала ЭТДП, с которого должно происходить считывание блока данных


Для ответа на команду "Read TEDS segment" ("Считать сегмент ЭТДП") используется ответное сообщение (см. 6.3). Изменяемые байты в ответном сообщении должны соответствовать таблице 22. Первое поле содержит смещение в ЭТДП, для которого было произведено считывание блока данных, и в большинстве случаев величина данного смещения совпадает со значением смещения сегмента ЭТДП для команды "Read TEDS segment" ("Считать сегмент ЭТДП"). Оставшиеся байты содержат данные, считанные с соответствующей ЭТДП. Ответное сообщение должно содержать только "единицы" в поле смещения сегмента ЭТДП и "нулевые" байты данных в случае виртуальных, не поддерживаемых или недействительных ЭТДП. Число байтов в ответном сообщении зависит от строения и определено в заголовке сообщения (см. 6.3). Если значение "TEDSOffset" ("Смещение сегмента ЭТДП") больше длины ЭТДП, то значение "TEDSOffset" ("Смещение сегмента ЭТДП") в ответном сообщении должно быть равно длине ЭТДП и ответное сообщение должно содержать "ноль" байтов.


Таблица 22 - Поле данных ответного сообщения для команды "Read TEDS segment" ("Считать сегмент ЭТДП")

Поле

Тип данных

Наименование атрибута поля

Функция

1

 Ulnt32

TEDSOffset

Смещение сегмента ЭТДП (значения от 0 до [текущий размер минус 1])

2

OctetArray

RawTEDSBIock

Байты данных ЭТДП

7.1.1.3 Команда "Write TEDS segment" ("Записать сегмент ЭТДП")

Данная команда используется для записи части ЭТДП. Аргументы для данной команды приведены в таблице 23. Так как максимальный размер байтового массива данных меньше максимального размера ЭТДП, то для доступа к месту, с которого должна начаться запись данных поля 3, используется смещение сегмента ЭТДП. Если значение "TEDSOffset" ("Смещение сегмента ЭТДП") больше максимальной длины ЭТДП, то данные должны быть отклонены, и в слове состояния должен быть установлен бит "Command rejected" ("Отказ от выполнения команды") (см. 5.13.4).

Примечание - Размер большинства ЭТДП не превышает размера одного сегмента. В таких случаях содержание поля смещения сегмента ЭТДП должно быть равно нулю. Тем не менее допускаются размеры ЭТДП, превышающие максимальный размер байтового массива данных. ЭТДП такого объема требуют сегментирования для передачи.


Таблица 23 - Поле данных команды "Write TEDS segment" ("Записать сегмент ЭТДП")

Поле

Тип данных

Наименование атрибута поля

Функция

1

 UlNT8

TEDSAccessCode

Код доступа к ЭТДП, как определено в таблице 17

2

 UlNT32

TEDSOffset

Смещение сегмента ЭТДП (значения от 0 до [текущий размер минус 1])

3

OctetArray

RawTEDSBIock

Содержание ЭТДП


Для команды "Write TEDS segment" ("Записать сегмент ЭТДП") используется структура командного сообщения (см. 6.2). В случае если превышен максимальный размер ЭТДП, дополнительные данные не должны записываться в память, а текущий размер ЭТДП должен быть установлен равным нулю.

Команда "Write TEDS segment" ("Записать сегмент ЭТДП") должна создать новую ЭТДП с соответствующим кодом доступа, в случае если она еще не существует. В случае если устройство ИМП не позволяет создание ЭТДП, команда "Write TEDS segment" ("Записать сегмент ЭТДП") не должна записывать какие-либо данные в память ЭТДП, так как данная ЭТДП не поддерживается.

Когда ИМП начинает перезапись существующей ЭТДП, перезаписываемая ЭТДП должна быть помечена как недействительная. Отметка о недействительной ЭТДП должна сохраняться до тех пор, пока не будет получена команда "Update TEDS" ("Обновить ЭТДП"), описанная в 7.1.1.4.

Команда "Write TEDS segment" ("Записать сегмент ЭТДП") не генерирует ответного сообщения.

7.1.1.4 Команда "Update TEDS" ("Обновить ЭТДП")

Наименование атрибута аргумента: TEDSAccessCode data type  Ulnt8.

Данная команда используется для вызова предварительно записанной в канал преобразователя ЭТДП для ее проверки и копирования в энергонезависимую память (в случае если это не было сделано при получении ЭТДП). После проверки ЭТДП она может быть отмечена как действительная. Если проверка дает отрицательный результат, то отметка о недействительной ЭТДП должна сохраняться.

Для данной команды существует один аргумент: код доступа к ЭТДП, как определено в таблице 17.

Ответное сообщение для команды "Update TEDS" ("Обновить ЭТДП") должно содержать информацию, которая имеется в ответном сообщении для команды "Query TEDS" ("Запросить ЭТДП"), описанной в 7.1.1.1.

7.1.1.5 Команда "Run self-test" ("Запустить самодиагностику")

Наименование атрибута аргумента: Test2Run data type  UlNT8.

Данная команда используется для запуска процесса самодиагностики для устройства, которому она адресована. Для данной команды имеется один аргумент: 8-битовая нумерация, определяющая тип запускаемой диагностики, как показано в таблице 24. Изготовитель может установить дополнительные виды проверок, доступных для определенного устройства. В случае запроса неприменимой нумерации в соответствующем регистре состояния должен быть установлен бит состояния "Invalid command" ("Неверная команда") (см. 5.13.3).

________________

В оригинале ISO/IEC/IEEE 21450:2010 допущена ошибка. Ошибочно приведена ссылка на 5.13.2.


Таблица 24 - Нумерация для команды "Run self-test" ("Запустить самодиагностику")

Нумерация

Наименование атрибута аргумента

Диагностика

0

Test2Run.ConfidenceTest

Короткая проверка на достоверность

1

Test2Run.TestAll

Полная проверка

2-255

Test2Run.RunTest[N], 2255

Определено изготовителем


Если изготовитель применяет дополнительные проверки, они должны быть перечислены в командных ЭТДП для канала преобразователя или ИМП.

Данная команда должна выполняться, только если канал преобразователя находится в режиме ожидания. Если данная команда получена, когда канал преобразователя находится в любом другом режиме, то должен быть установлен бит "Command rejected" ("Отказ от выполнения команды") (см. 5.13.4).

Если изготовитель намеревается записать единственную программу диагностики, проверяющую ИМП и каналы преобразователя, то такая команда должна быть адресована ИМП, при этом все каналы преобразователя должны находиться в режиме ожидания. В противном случае команда должна быть отклонена, и установлен бит "Command rejected" ("Отказ от выполнения команды").

7.1.1.6 Команда "Write service request mask" ("Записать маску сервисного запроса")

Наименование атрибута аргумента: SRMask data type  Ulnt32.

Данная команда используется для записи маски сервисного запроса ИМП или канала преобразователя, которым она была адресована. Маска представляет собой 32-битовое слово, которое используется согласно описанию, приведенному в 5.14.1.

7.1.1.7 Команда "Read service request mask" ("Считать маску сервисного запроса")

Наименование атрибута аргумента ответа: SRMask data type  UIntT32.

Данная команда используется для считывания маски сервисного запроса с ИМП или канала преобразователя, которым она была адресована. Данная команда не имеет аргументов. Тем не менее она вызывает ответное сообщение, имеющее единственный аргумент. Данный аргумент передает текущую активную маску сервисного запроса согласно 5.14.1 для канала преобразователя, которому была адресована исходная команда.

7.1.1.8 Команда "Read status-event register" ("Считать регистр состояния-события")

Наименование атрибута аргумента ответа: SERegister data type  Ulnt32.

Данная команда используется для считывания состояния ИМП или канала преобразователя, которым она была адресована. Данная команда не имеет аргументов. Тем не менее она вызывает ответное сообщение, имеющее единственный аргумент. Данный аргумент сообщает текущее содержание регистра состояния-события согласно 5.13 для канала преобразователя, которому была адресована исходная команда.

7.1.1.9 Команда "Read status-condition register" ("Считать регистр состояния-условия")

Наименование атрибута аргумента ответа: SCRegister data type  Ulnt32.

Данная команда используется для считывания регистра состояния-условия ИМП или канала преобразователя, которым она была адресована. Данная команда не имеет аргументов. Тем не менее она вызывает ответное сообщение, имеющее единственный аргумент. Данный аргумент сообщает текущее содержание регистра состояния-условия согласно 5.13 для канала преобразователя, которому была адресована исходная команда.

7.1.1.10 Команда "Clear status-event register" ("Очистить регистр состояния-события")

Данная команда используется для очистки регистра состояния-события ИМП или канала преобразователя, которым она адресована. Если команда адресована для всего ИМП, должны быть очищены все регистры состояния-события самого ИМП и все регистры состояния-события всех каналов преобразователя. Команда не очищает соответствующие маски и регистры условия. Данная команда не имеет аргументов.

7.1.1.11 Команда "Write status-event protocol state" ("Записать состояние протокола состояния-события")

Наименование атрибута аргумента: SEProtocol data type Boolean.

Данная команда используется для включения или отключения протокола состояния-события, приведенного в 5.13. Если протокол включен, должен быть инициализирован поток данных для отправки 32-битового регистра состояния при каждой отметке бита "Service request" ("Запрос сервиса"). Следует заметить, что если канал запрашивает сервис, то должен быть отправлен регистр канала, а в случае если сервис запрашивает сам ИМП, должен быть отправлен регистр состояния ИМП.

Данная команда имеет единственный аргумент. Если его значение "True" ("Истина"), то протокол состояния-события включен. В противном случае протокол состояния-события отключен.

7.1.1.12 Команда "Read status-event protocol state" ("Считать состояние протокола состояния-события")

Наименование атрибута аргумента ответа: SEProtocol data type Boolean.

Данная команда используется для считывания состояния протокола состояния-события, описанного в 5.13. Данная команда не имеет аргументов. Тем не менее она вызывает ответное сообщение, имеющее единственный аргумент. Данный аргумент содержит текущее состояние протокола состояния-события. Если его значение "True" ("Истина"), протокол состояния-события включен. В противном случае протокол состояния-события отключен.

7.1.2 Команды для преобразователя в режиме ожидания

Команды из класса команд режима ожидания, перечисленные в таблице 25, должны выполняться, только когда канал преобразователя находится в режиме ожидания. Если какая-либо из таких команд получена, когда канал преобразователя находится в любом другом режиме, то она должна быть проигнорирована, и в регистре состояния-условия канала преобразователя (см. 5.13) должен быть установлен бит "Command rejected" ("Отказ от выполнения команды").

Для всех команд данного класса требуется, чтобы значение номера канала-получателя для преобразователя было больше нуля. В случае если байтовый массив номеров каналов-получателей преобразователя (см. 5.3) содержит нулевое значение, команда должна быть проигнорирована, а в регистре состояния-условия канала преобразователя (см. 5.13) должен быть установлен бит "Command rejected" ("Отказ от выполнения команды").

Если команда для преобразователя в режиме ожидания была отправлена каналу преобразователя, который не поддерживает такую функцию или ее изменение, то такая команда должна быть проигнорирована, и в слове состояния должен быть установлен бит "Invalid command" ("Неверная команда") (см. 5.13.2).

Для получения какой-либо из таких команд каналом преобразователя, ИМП должен находиться в активном режиме. Если такая команда была получена, когда ИМП находился в неактивном режиме, то команда должна быть проигнорирована, и в регистре состояния-условия канала преобразователя (см. 5.13) должен быть установлен бит "Command rejected" ("Отказ от выполнения команды").

Команды, обозначенные в таблице 25 как "необязательные", становятся обязательными в случае, если функция, которую они поддерживают, является программируемой.

Некоторые команды данного класса могут быть отправлены для прокси-канала преобразователя (если в таблице 25 в графе "Прокси" отмечено "Да"). Если какая-либо из таких команд отправлена прокси-каналу преобразователя, она должна действовать также, как если бы была отправлена каждому члену прокси-канала преобразователя по отдельности.


Таблица 25 - Команды для канала преобразователя в режиме ожидания

cmdFunctionld
(иденти-
фикатор
функции
команды)

Команда

Класс адреса



Ответ ожида-
ется

Обяза-
тельная/
необяза-
тельная

Канал преобра-
зователя

Прокси

Группа

0

Зарезервировано

-

-

-

-

-

1

Установить число повторений данных канала преобразователя

Да

Нет

Нет

Нет

Необязательная

2

Установить предварительное значение счетчика триггера

Да

Нет

Нет

Нет

Необязательная

3

Установить адресную группу

Да

Да

Нет

Нет

Обязательная

4

Режим выборки данных

Да

Да

Нет

Нет

Необязательная

5

Режим передачи данных

Да

Да

Да

Нет

Необязательная

6

Состояние буферизации

Да

Да

Нет

Нет

Необязательная

7

Рабочий режим "набор данных закончен"

Да

Да

Нет

Нет

Необязательная

8

Режим остановки исполнительного устройства

Да

Да

Нет

Нет

Необязательная

9

Сообщить о достижении порогового значения

Да

Да

Нет

Нет

Необязательная

10

Калибровка канала преобразователя

Да

Да

Да

Да

Необязательная

11

Обнулить канал преобразователя

Да

Да

Да

Да

Необязательная

12

Записать состояние коррекции данных

Да

Да

Нет

Нет

См. 7.1.2.12

13

Считать состояние коррекции данных

Да

Да

Нет

Нет

См. 7.1.2.13

14

Записать состояние канала преобразователя с инициализацией триггера

Да

Нет

Нет

Нет

Необязательная

15

Записать конфигурацию канала преобразователя с инициализацией триггера

Да

Нет

Нет

Нет

Необязательная

16-127

Зарезервировано

-

-

-

-

-

128-255

Открыто для изготовителей

-

-

-

-

-

Примечание - Необязательные команды становятся обязательными, если функции, которые они поддерживают, являются программируемыми.

7.1.2.1 Команда "Set Transducer Channel data repetition count" ("Установить число повторений данных канала преобразователя")

Наименование атрибута аргумента: RepCount data type  Ulnt16.

Данная команда используется для изменения числа выборок в наборе данных от нуля до значения в поле "Максимальное повторение данных" в ЭТДП канала преобразователя (см. 8.5.2.28).

Данная команда имеет единственный аргумент: 16-битовое целое число, представляющее собой число выборок в наборе данных. Если данное значение превышает значение максимального повторения данных, то число повторений данных не должно меняться, а в регистре состояния канала преобразователя должен быть установлен бит "Command rejected" ("Отказ от выполнения команды") (см. 5.13.4).

7.1.2.2 Команда "Set Transducer Channel pre-trigger count" ("Установить предварительное значение счетчика триггера")

Наименование атрибута аргумента: PreTrigCount data type  Ulnt16.

Данная команда используется каналами преобразователя, способными работать в режиме автономной выборки данных с предварительно заданным счетчиком триггера (см. 5.10.1.3), для изменения числа выборок в наборе данных, которые могут быть получены и сохранены до получения триггерного сигнала. Число выборок может иметь значение от нуля до значения в поле "Максимальное число выборок с предварительным триггером" в ЭТДП канала преобразователя (см. 8.5.2.32).

Данная команда имеет единственный аргумент: 16-битовое целое число, представляющее собой число выборок в наборе данных, которые должны быть собраны до получения триггерного сигнала. Если данное число превышает значение поля "Максимальное число выборок с предварительным триггером" (см. 8.5.2.32), то предварительное значение счетчика триггера не должно меняться, а в регистре состояния канала преобразователя должен быть установлен бит "Command rejected" ("Отказ от выполнения команды") (см. 5.13.4).

7.1.2.3 Команда "AddressGroup definition" ("Установить адресную группу")

Наименование атрибута аргумента: GroupAdd data type  Ulnt16.

Данная команда приписывает канал преобразователя к адресной группе и имеет единственный аргумент в поле данных, представляющий собой адрес группы. Детальная информация об адресах приведена в таблице 5. Таким образом, обычный или прокси-канал преобразователя, которому адресована команда, приписывается к группе. Если аргумент данной команды равен нулю, канал преобразователя, которому была адресована команда, удаляется из всех адресных групп, к которым он был приписан.

7.1.2.4 Команда "Sampling mode" ("Режим выборки данных")

Наименование атрибута аргумента: SampleMode data type  Ulnt8.

Данная команда используется СПП для изменения режима выборки данных канала преобразователя. Не все допустимые режимы работы, определенные в настоящем стандарте, поддерживаются заданным каналом преобразователя. Допустимые режимы работы для заданного канала преобразователя основаны на атрибутах выборки и приведены в ЭТДП канала преобразователя (см. 8.5.2.44).

Данная команда имеет единственный аргумент. Список допустимых значений для данного аргумента приведен в таблице 26. В случае если команда "Sampling mode" ("Режим выборки данных") отправлена какому-либо каналу преобразователя, который не поддерживает такой режим или изменения данного режима, то в слове состояния должен быть установлен бит "Invalid command" ("Неверная команда") канала преобразователя (см. 5.13.2).


Таблица 26 - Допустимые значения для аргумента режима выборки

Нумерация

Наименование атрибута аргумента

Рабочий режим

0

SampleMode.Reserved[0]

Зарезервировано

1

SampleMode.TriggerInit

Инициированный триггером

2

SampleMode.FreeNoPre

Автономный без предварительного триггера

3

SampleMode.FreePreTrig

Автономный с предварительным триггером

4

SampleMode.Continuous

Непрерывная выборка

5

SampleMode.Immediate

Немедленная работа

6-127

SampleMode.Reserved[N], 6127

Зарезервировано

128-255

SampleMode.Open[N], 128255

Открыто для изготовителей

7.1.2.5 Команда "Data transmission mode" ("Режим передачи данных")

Наименование атрибута аргумента: XmitMode data type  Ulnt8.

Данная команда используется для контроля режима передачи данных, описанного в 5.10.2. Сведения о возможности заданного канала преобразователя поддерживать допустимые рабочие режимы передачи данных представлены в атрибуте передачи данных ЭТДП канала преобразователя (см. 8.5.2.49).

Данная команда имеет единственный аргумент. Список допустимых значений для данного аргумента приведен в таблице 7. В случае если команда "Data transmission mode" ("Режим передачи данных") отправлена какому-либо каналу преобразователя, который не поддерживает такой режим или изменения данного режима, в слове состояния должен быть установлен бит "Invalid command" ("Неверная команда") канала преобразователя (см. 5.13.2).

7.1.2.6 Команда "Buffered state" ("Состояние буферизации")

Наименование атрибута аргумента: BufferOnOff data type Boolean.

Данная команда используется для включения или отключения режима буферизации, описанного в 5.10.3. Сведения о возможности заданного канала преобразователя поддерживать режим буферизации представлены в атрибуте буферизации ЭТДП канала преобразователя (см. 8.5.2.47).

Данная команда имеет единственный аргумент. Если данный аргумент принимает значение "True" ("Истина"), то режим буферизации включен. В противоположном случае режим буферизации отключен.

7.1.2.7 Команда "End-of-Data-Set operation mode" ("Рабочий режим "набор данных закончен")

Наименование атрибута аргумента: EndDataSetMode data type  Ulnt8.

Данная команда используется для исполнительных устройств, чтобы сообщить, какое действие должно предпринять исполнительное устройство по достижении окончания набора данных, как описано в 5.10.4. Сведения о возможности заданного исполнительного устройства поддерживать рабочий режим "End-of-Data-Set" ("Набор данных закончен") и допустимые режимы представлены в атрибуте "End-of-Data-Set" ("Набор данных закончен") ЭТДП канала преобразователя (см. 8.5.2.48).

Данная команда имеет единственный аргумент. Список допустимых значений для данного аргумента приведен в таблице 27. В случае если команда "End-of-Data-Set operation mode" ("Рабочий режим "набор данных закончен") отправлена какому-либо каналу преобразователя, который не поддерживает такой режим или его изменения, в слове состояния должен быть установлен бит "Invalid command" ("Неверная команда") канала преобразователя (см. 5.13.2).


Таблица 27 - Список допустимых значений для аргумента рабочего режима "End-of-Data-Set" ("Набор данных закончен")

Нумерация

Наименование атрибута аргумента

Рабочий режим

0

EndDataSetMode.Reserved[0]

Зарезервировано

1

EndDataSetMode.Hold

Удержать

2

EndDataSetMode.Recirc

Зациклить

3-127

EndDataSetMode.Reserved[N], 3127

Зарезервировано

128-256

EndDataSetMode.Open[N], 128255

Открыто для изготовителей

7.1.2.8 Команда "Actuator halt operating mode" ("Режим остановки исполнительного устройства")

Наименование атрибута аргумента: ActuatorHalt data type  Ulnt8.

Данная команда используется для контроля работы выхода исполнительного устройства при получении команды "Transducer Channel Idle" ("Перейти в режим ожидания канала преобразователя") во время обработки устройством набора данных. Возможные варианты работы заданного исполнительного устройства приведены в атрибуте "Actuator halt" ("Остановка исполнительного устройства") ЭТДП канала преобразователя (см. 8.5.2.51).

Данная команда имеет единственный аргумент. Список допустимых значений для данного аргумента приведен в таблице 28.


Таблица 28 - Допустимые значения для аргумента режима "Actuator halt" ("Остановка исполнительного устройства")

Нумерация

Наименование атрибута аргумента

Рабочий режим

0

ActuatorHalt.Reserved[0]

Зарезервировано

1

ActuatorHalt.Hold

Удержать

2

ActuatorHalt.Finish

Завершить набор данных

3

ActuatorHalt.Ramp

Линейный

4-127

ActuatorHalt.Reserved[N], 4127

Зарезервировано

128-256

ActuatorHalt.Open[N], 128255

Открыто для изготовителей

7.1.2.9 Команда "Edge-to-Report" ("Сообщить о достижении порогового значения")

Наименование атрибута аргумента: EdgeReported data type  Ulnt8.

Данная команда используется для назначения порогового значения или пороговых значений, о достижении которых должен сообщать датчик событий. Возможные варианты работы заданного датчика событий приведены в атрибуте "Edge-to-Report" ("Сообщить о достижении порогового значения") (см. 8.5.2.50) ЭТДП канала преобразователя.

Данная команда имеет единственный аргумент. Список допустимых значений для данного аргумента приведен в таблице 29.


Таблица 29 - Допустимые величины для аргумента режима работы "Edge-to-Report" ("Сообщить о достижении порогового значения")

Нумерация

Наименование атрибута аргумента

Рабочий режим

0

EdgeReported.Reserved[0]

Зарезервировано

1

EdgeReported.Rising

Сообщать о переходе верхнего порогового значения

2

EdgeReported.Falling

Сообщать о переходе нижнего порогового значения

3

EdgeReported.BothEdges

Сообщать о переходе обоих пороговых значений

4-127

EdgeReported.Reserved[N], 4127

Зарезервировано

128-256

EdgeReported.Open[N], 128255

Открыто для изготовителей

7.1.2.10 Команда "Calibrate Transducer Channel" ("Калибровать канал преобразователя")

Данная команда используется для запуска каналом преобразователя процедуры проверки состояния на его выходах на предмет соответствия ожидаемым параметрам. Конкретные действия по отработке команды "Calibrate Transducer Channel" ("Калибровать канал преобразователя") зависят от устройства канала преобразователя и не являются предметом рассмотрения настоящего стандарта.

Ответное сообщение на данную команду всегда должно генерироваться после завершения работы. Ответное сообщение должно быть таким же, как и для команды "Read Status-Event Register" ("Считать регистр состояния-события") (см. 7.1.1.8).

7.1.2.11 Команда "Zero Transducer Channel" ("Обнулить канал преобразователя")

Данная команда используется для запуска процедуры обнуления входов или выходов канала преобразователя. Конкретные действия по отработке команды "Zero Transducer Channel" ("Обнулить канал преобразователя") зависят от устройства канала преобразователя и не являются предметом рассмотрения настоящего стандарта.

Ответное сообщение на данную команду всегда должно создаваться после завершения работы. Ответное сообщение должно быть таким же, как и для команды "Read Status-Event Register" ("Считать регистр состояния-события") (см. 7.1.1.8).

Примечание - Общим результатом при выполнении данной команды является нулевая величина на выходе датчика, которая затем используется в качестве нуля отсчета.

7.1.2.12 Команда "Write corrections state" ("Записать состояние коррекции данных")

Наименование атрибута аргумента: CorrectState data type  Ulnt8.

Данная команда используется для каналов преобразователя, способных вносить поправки внутри ИМП, как описано в 8.6.1. В результате данной команды канал преобразователя включает процесс коррекции выходных данных физических величин, оговоренных в ЭТДП калибровки. Данная команда является обязательной для всех каналов преобразователя со встроенной функцией внесения поправок.

Данная команда имеет единственный аргумент. В случае если его значение "True" ("Истина"), то режим коррекции данных включен. В противоположном случае режим коррекции данных отключен.

После получения данной команды бит "Corrections disabled" ("Коррекции отключены") (см. 5.13.15) должен быть очищен.

7.1.2.13 Команда "Read corrections state" ("Считать состояние коррекции данных")

Наименование атрибута аргумента: CorrectState data type  Ulnt8.

Данная команда используется для каналов преобразователя, способных вносить поправки внутри ИМП. Данная команда является обязательной для всех каналов преобразователя со встроенной функцией внесения поправок.

Ответное сообщение на данную команду имеет единственный аргумент. В случае если его значение "True" ("Истина"), то режим коррекции данных включен. В противоположенном случае режим коррекции данных отключен.

7.1.2.14 Команда "Write Transducer Channel initiate trigger state" ("Записать состояние канала преобразователя с инициализацией триггера")

Наименование атрибута аргумента: EventTrig data type Boolean.

Данная команда используется для датчика событий канала преобразователя и позволяет ему инициировать триггерную команду после того, как произошло событие. В случае если данную команду получает датчик или исполнительное устройство, то в слове состояния должен быть установлен бит "Command rejected" ("Отказ от выполнения команды") (см. 5.13.4).

Данная команда имеет единственный аргумент. В случае если его значение "True" ("Истина"), то для датчика событий доступна возможность инициировать сигнал триггера после того, как произошло событие. В противоположенном* случае триггерный сигнал отключен.

_______________

* Текст документа соответствует оригиналу. - Примечание изготовителя базы данных.

7.1.2.15 Команда "Write Transducer Channel initiate trigger configuration" ("Записать конфигурацию канала преобразователя с инициализацией триггера")

Наименование атрибута аргумента: InitTrig data type Boolean.

Данная команда используется для предоставления датчику событий информации, необходимой для инициирования триггерной команды. Аргументы для данной команды приведены в таблице 30.


Таблица 30 - Аргументы команды "Write Transducer Channel initiate trigger configuration" ("Записать конфигурацию канала преобразователя с инициализацией триггера")

Поле

Тип
данных

Наименование атрибута аргумента

Функция

1

 Ulnt16

InitTrig.destId

"destId" определяет требуемый идентификатор получателя команды

2

 Ulnt16

InitTrig.channelId

"channelId" определяет требуемый канал преобразователя

3

Struct

InitTrig.qosParams

"qosParams" сообщает о требуемом качестве сервисных параметров. Более подробное описание приведено в 9.3.1.3

7.1.3 Команды для рабочего режима преобразователя

Команды класса команд рабочего режима преобразователя должны выполняться, только когда канал преобразователя находится в рабочем режиме. Если какая-либо из таких команд получена, когда канал преобразователя находился в любом другом режиме, то она должна быть проигнорирована, а в регистре состояния-условия канала преобразователя (см. 5.13) должен быть установлен бит "Command rejected" ("Отказ от выполнения команды").

Команды, допустимые для рабочего режима преобразователя, перечислены в таблице 31.

Для получения какой-либо из таких команд каналом преобразователя ИМП должен находиться в рабочем (активном) режиме. Если такая команда была получена, когда ИМП находился не в рабочем режиме, то команда должна быть проигнорирована, а в регистре состояния-условия ИМП (см. 5.13) должен быть установлен бит "Command rejected" ("Отказ от выполнения команды").

Для всех команд данного класса требуется, чтобы значение номера канала-получателя преобразователя было больше нуля. В случае если номер канала-получателя преобразователя в сообщении равен нулю, то команда должна быть проигнорирована, а в регистре состояния-условия ИМП (см. 5.13) должен быть установлен бит "Command rejected" ("Отказ от выполнения команды").


Таблица 31 - Команды для рабочего режима преобразователя

cmdFunctionId (иденти-
фикатор функции команды)

Команда

Класс адреса



Ответ
ожидается

Обяза-
тельная/
необяза-
тельная

Канал
преобра-
зователя

Прокси

Группа/
глобальный

0

Зарезервировано

-

-

-

-

-

1

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

Да

Да

Нет

Да

См. примечание

2

Записать сегмент набора данных канала преобразователя

Да

Да

Нет

Нет

См. примечание

3

Запустить триггер

Да

Да

Да

Нет

Обязательная

4

Прервать триггер

Да

Да

Да

Нет

Необязательная

5-127

Зарезервировано

-

-

-

-

-

128-255

Открыто для изготовителей

-

-

-

-

-

Примечание - Команда "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя") является обязательной для датчиков. Команда "Write Transducer Channel data-set segment" ("Записать сегмент набора данных канала преобразователя") является обязательной для исполнительных устройств.

7.1.3.1 Команда "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя")

Наименование атрибута аргумента: DataSetOffset data type  Ulnt32.

Данная команда используется для считывания сегмента набора данных и имеет единственный аргумент, задающий значение смещения от начала набора данных, откуда должно начинаться считывание. Так как максимальный размер байтового массива данных, который может быть обработан на физическом транспортном уровне, меньше, чем максимальный размер набора данных, то смещение набора данных используется для определения допуска к месту внутри набора данных, с которого должно начинаться считывание.

Примечание - Размер большинства наборов данных не превышает размера одного сегмента. Тем не менее стандарт допускает максимальное число повторений данных канала преобразователя, равное 65356, и модель данных, определяющую 255 байтов в выборке данных, в результате чего максимальный размер набора данных составляет 16777216 байтов. В случаях когда набор данных не превышает размеров одного сообщения, значение поля смещения сегмента должно быть равно нулю. Тем не менее большие наборы данных, превышающие размеры одного сообщения, требуют сегментирования набора данных для передачи, а значения смещения набора данных должны быть соответствующими для каждого сегмента.


Для ответного сообщения на команду "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя") используется структура ответного сообщения (см. 6.3). Зависимые от содержания ответа байты, отправленные в ответном датаграммном сообщении, должны иметь вид, указанный в таблице 13. Как показано в таблице 32, первое поле содержит значение смещения набора данных, с которого начинается считывание блока данных. В большинстве случаев его значение будет совпадать со значением смещения набора данных в команде "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя"). Оставшиеся байты содержат данные, считанные из набора данных. В случае пустого набора данных ответное сообщение должно содержать только "единицы" для всех значений смещения набора данных и "ноль" байтов данных. Число байтов в ответном сообщении зависит от конструкции канала преобразователя и определяется СПП с помощью аргументов метода API, используемого для ответных сообщений (см. 11.2 или 11.3). Если значение "ReadSensor.Offset" ("Смещение набора данных") больше числа байтов в наборе данных, то значение "ReadSensor.Offset" ("Смещение набора данных") в ответном сообщении должно быть равно максимальному числу байтов в наборе данных, и ответное сообщение должно содержать ноль байтов данных.


Таблица 32 - Аргументы для ответного сообщения на команду "Read Transducer Channel data-set segment" ("Считать сегмент набора данных канала преобразователя")

Поле

Тип данных

Наименование атрибута аргумента

Функции

1

 Ulnt32

ReadSensorOffset

Смещение набора данных (от 0 до [текущий размер минус 1]) - адрес относительно начала набора данных, с которого должно начинаться считывание данных

2

NUlnt8

ReadSensorData

Блок данных, считанных с датчика


Если данная команда была получена каналом преобразователя, работающим в потоковом режиме передачи данных (см. 5.10.2), то в регистре состояния должен быть установлен бит "Command rejected" ("Отказ от выполнения команды"), а команда должна быть проигнорирована.

Если номер канала-получателя преобразователя в байтовом массиве данных равен нулю, то в регистре состояния-условия ИМП (см. 5.13.4) должен быть установлен бит "Command rejected" ("Отказ от выполнения команды"), а команда должна быть проигнорирована.

7.1.3.2 Команда "Write Transducer Channel data-set segment" ("Записать сегмент данных канала преобразователя")

Наименование атрибута аргумента: WriteActuator.

Данная команда используется для перезаписи предыдущего содержания набора данных канала преобразователя. Аргументы для команды "Write Transducer Channel data-set segment" ("Записать сегмент данных канала преобразователя") должны соответствовать аргументам, приведенным в таблице 33.

Так как максимальный размер байтового массива данных, который может быть обработан на заданном физическом транспортном уровне, меньше, чем максимальный размер набора данных, то смещение набора данных используется для определения допуска к месту внутри набора данных, с которого должна начинаться запись.

Если значение "WriteActuator.Offset" ("Смещение набора данных") для исполнительного устройства больше максимальной длины набора данных, то данные должны быть отклонены, а в слове статуса должен быть установлен бит "Command rejected" ("Отказ от выполнения команды") (см. 5.13.4).

Примечание - Размер большинства наборов данных не превышает размера одного сегмента. Тем не менее стандарт допускает максимальное число повторений данных канала преобразователя, равное 65356, и модель данных, определяющую 255 байтов в выборке данных, в результате чего максимальный размер набора данных составляет 16777216 байтов. В случаях когда набор данных не превышает размеров одного сообщения, значение поля смещения сегмента должно быть равно нулю. Тем не менее большие наборы данных, превышающие размеры одного сообщения, требуют сегментирования набора данных для передачи, а значения смещения набора данных должны быть соответствующими для каждого сегмента.


Таблица 33 - Поля данных команды "Write Transducer Channel data-set segment" ("Записать сегмент данных канала преобразователя")

Поле

Тип данных

Наименование атрибута аргумента

Функции

1

 Ulnt32

WriteActuator.Offset

Смещение набора данных (от 0 до [текущий размер минус 1]) - это адрес относительно начала набора данных, с которого должна начинаться запись данных

2

NUlnt8

WriteActuator.DataBlock

Блок данных


В случае если данная команда была получена каналом преобразователя, работающим в потоковом режиме передачи данных, то в регистре состояния должен быть установлен бит "Command rejected" ("Отказ от выполнения команды") (см. 5.13), а команда должна быть проигнорирована.

Если номер канала-получателя преобразователя в байтовом массиве данных равен нулю, то в регистре состояния-условия ИМП должен быть установлен бит "Command rejected" ("Отказ от выполнения команды") (см. 5.13), а команда должна быть проигнорирована.

7.1.3.3 Команда "Trigger" ("Запустить триггер")

Данная команда вызывает последовательность действий, описанную для триггерных команд в 5.11.2.1.

Данная команда не имеет аргументов. Команда может быть адресована каналу преобразователя, прокси-каналу преобразователя, адресной группе или глобальному адресу. В случае глобальной адресации она должна выполняться каждым каналом преобразователя внутри ИМП, для которого функция триггера включена. Если канал преобразователя является датчиком, то он должен действовать согласно триггерной диаграмме состояния датчика (рисунок 7). Если канал преобразователя является исполнительным устройством, то он должен действовать согласно триггерной диаграмме состояния исполнительного устройства (рисунок 8).

7.1.3.4 Команда "Abort trigger" ("Прервать триггер")

Данная команда используется для прерывания работы триггера. Если канал преобразователя является датчиком, то он должен действовать согласно триггерной диаграмме состояния датчика (рисунок 7). Если канал преобразователя является исполнительным устройством, то он должен действовать согласно триггерной диаграмме состояния исполнительного устройства (рисунок 8).

Данная команда не имеет аргументов. Команда может быть адресована каналу преобразователя, прокси-каналу преобразователя, адресной группе или глобальному адресу. В случае глобальной адресации она должна прервать работу триггеров для каждого канала преобразователя с включенной функцией триггера внутри ИМП.

7.1.4 Общие команды для режима ожидания и рабочего режима преобразователя

Команды данного класса могут быть отправлены каналу преобразователя в любое время после его выхода из режима инициализации преобразователя. Допустимые команды для данного класса приведены в таблице 34.


Таблица 34 - Общие команды для режима ожидания и рабочего режима преобразователя