ГОСТ Р МЭК 61131-3-2016
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
КОНТРОЛЛЕРЫ ПРОГРАММИРУЕМЫЕ
Часть 3
Языки программирования
Programmable controllers. Part 3. Programming languages
ОКС 25.040.40*
35.240.50
_____________________
* В ИУС N 10 2016 г. и на официальном сайте Росстандарта ГОСТ Р МЭК 61131-3-2016 приводится с ОКС 25.040, 35.240.50 ,
здесь и далее. - Примечание изготовителя базы данных.
Дата введения 2017-04-01
Предисловие
1 ПОДГОТОВЛЕН Негосударственным образовательным частным учреждением "Новая Инженерная Школа" (НОЧУ "НИШ") на основе перевода на русский язык англоязычной версии указанного в пункте 4 стандарта, который выполнен Российской комиссией экспертов МЭК/ТК 65, и Федеральным государственным унитарным предприятием "Всероссийский научно-исследовательский институт стандартизации и сертификации в машиностроении" ("ВНИИНМАШ")
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 306 "Измерения и управление в промышленных процессах"
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 13 мая 2016 г. N 313-ст
4 Настоящий стандарт идентичен международному стандарту МЭК 61131-3:2013* "Контроллеры программируемые. Часть 3. Языки программирования (IEC 61131-3:2013, "Programmable controllers - Part 3: Programming languages", IDT).
________________
* Доступ к международным и зарубежным документам, упомянутым в тексте, можно получить, обратившись в Службу поддержки пользователей. - Примечание изготовителя базы данных.
При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им национальные стандарты, сведения о которых приведены в дополнительном приложении ДА
5 В настоящем стандарте часть его содержания может быть объектом патентных прав
6 ВВЕДЕН ВПЕРВЫЕ
Правила применения настоящего стандарта установлены в ГОСТ Р 1.0-2012 (раздел 8). Информация об изменениях к настоящему стандарту публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе "Национальные стандарты", а официальный текст изменений и поправок - в ежемесячном информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.gost.ru)
Настоящий стандарт устанавливает синтаксис и семантику языков программирования программируемых контроллеров, определенных в МЭК 61131 (часть 1).
Функции ввода программы, тестирования, мониторинга, операционной системы и т.п. определены в МЭК 61131 (часть 1).
Настоящий стандарт устанавливает синтаксис и семантику унифицированного набора языков программирования для программируемых контроллеров (PC). Данный набор состоит из двух текстовых языков программирования, списка инструкций (IL) и структурированного текста (ST), и двух графических языков, релейно-контактных схем (LD) и функциональных блоковых диаграмм (FBD).
Дополнительный набор графических и эквивалентных текстовых элементов, именуемый последовательная функциональная схема (SFC), определяется для структурирования внутренней организации программ и функциональных блоков программируемого контроллера. Определены также элементы конфигурации, поддерживающие установку программ программируемого контроллера в системы программируемого контроллера. Кроме того, определены средства, облегчающие взаимодействие между программируемыми контроллерами и другими компонентами автоматизированных систем.
В настоящем стандарте использованы нормативные ссылки на следующие стандарты*. Для недатированных ссылок применяют последнее издание ссылочного документа (включая изменения).
_______________
* Таблицу соответствия национальных стандартов международным см. по ссылке. - Примечание изготовителя базы данных.
МЭК 61131-1 Программируемые контроллеры. Часть 1. Общие положения (IEC 61131-1, Programmable controllers - Part 1: General information)
МЭК 61131-5 Программируемые контроллеры. Часть 5. Взаимодействия (IEC 61131-5, Programmable controllers - Part 5: Communications)
ИСО/МЭК 10646:2012 Информационная технология. Универсальный набор символов (UCS) (ISO/IEC 10646:2012, Information technology - Universal Coded Character Set (UCS)
ИСО/МЭК/IEEE 60559 Информационная технология. Микропроцессорные системы. Арифметика с плавающей точкой (ISO/IEC/IEEE 60559, Information technology - Microprocessor Systems - Floating-Point arithmetic)
В настоящем стандарте применены следующие термины с соответствующими определениями:
3.1 абсолютное время (absolute time): Комбинация времени суток и даты.
3.2 путь доступа (access path): Связь символического имени с переменной для реализации открытого взаимодействия.
3.3 действие (action): Логическая переменная или набор подлежащих выполнению операций вместе со связанной управляющей конструкцией.
3.4 блок действий (action block): Элемент графического языка, который использует входную логическую переменную для определения значения выходной логической переменной или разрешающее условие для действия в соответствии с предопределенной управляющей конструкцией.
3.5
агрегат (aggregate): Структурированная совокупность объектов данных, образующая тип данных. [ИСТОЧНИК: ISO/AFNOR:1989] |
3.6
массив (array): Агрегат, состоящий из объектов данных с идентичными атрибутами, на каждый из объектов данных можно уникально ссылаться с помощью индекса. [ИСТОЧНИК: ISO/AFNOR:1989] |
3.7
присваивание (assignment): Механизм для придания значения переменной или агрегату. [ИСТОЧНИК: ISO/AFNOR:1989] |
3.8 базовый тип (base type): Тип данных, тип функционального блока или класс, из которых наследуются или производятся дальнейшие типы.
3.9 число с основанием (based number): Число, представленное с конкретным основанием, отличным от 10.
3.10 двоично-десятичный код (binary coded decimal; BCD): Код десятичного числа, в котором каждая цифра представлена ее двоичным значением.
3.11 бистабильный функциональный блок (bistable function block): Функциональный блок с двумя устойчивыми состояниями, управляемый одним или более входами.
3.12 битовая строка (bit string): Элемент данных, состоящий из одного или более битов.
3.13 битово-строковый литерал (bit string literal): Литерал, который прямо представляет значение битовой строки типов данных BOOL, BYTE, WORD, DWORD или LWORD.
3.14 тело (body): Набор операций программного компонента.
3.15 вызов (call): Языковая конструкция, вызывающая выполнение функции, функционального блока или метода.
3.16 строка символов (character string): Агрегат, состоящий из упорядоченной последовательности символов.
3.17 символьно-строковый литерал (character string literal): Литерал, прямо представляющий значение символа или строки символов типов данных CHAR, WCHAR, STRING или WSTRING.
3.18 класс (class): программный компонент, состоящий из:
- определения структуры данных;
- набора методов, выполняемых над структурой данных.
3.19
комментарий (comment): Языковая конструкция для включения текста, не влияющего на выполнение программы. [ИСТОЧНИК: ISO/AFNOR:1989] |
3.20 конфигурация (configuration): Элемент языка, соответствующий системе программируемого контроллера.
3.21 константа (constant): Элемент языка, указывающий на элемент данных с фиксированным значением.
3.22 функциональный блок счетчика (counter function block): Функциональный блок, который накапливает значение числа изменений, определяемых на одном или более указанных выходов.
3.23
тип данных (data type): Набор значений вместе с набором допустимых операций. [ИСТОЧНИК: ISO/AFNOR:1989] |
3.24 дата и время (date and time): Дата с годом и время суток, представленные как отдельный элемент данных.
3.25 объявление (declaration): Механизм для определения элемента языка.
3.26 разделитель (delimiter): Символ или комбинация символов, используемая для разделения элементов языка программирования.
3.27 производный класс (derived class): Класс, создаваемый наследованием из другого класса.
Примечание - Производный класс также называют расширенным классом или порожденным классом.
3.28 производный тип данных (derived data type): Тип данных, созданный с использованием другого типа данных.
3.29 производный тип функционального блока (derived function block type): Тип функционального блока, созданный наследованием из другого типа функционального блока.
3.30 прямое представление (direct representation): Средства представления переменной в программе программируемого контроллера, из которых может быть прямо определено физическое или логическое расположение переменной.
3.31 двойное слово (double word): Элемент данных, содержащий 32 бита.
3.32 динамическое связывание (dynamic binding): Ситуация, в которой экземпляр вызова метода возвращается во время выполнения в соответствии с фактическим типом экземпляра или интерфейса.
3.33 оценка (evaluation): Процесс установления значения выражения, функции, выходных переменных сети или экземпляра функционального блока во время выполнения программы.
3.34 элемент управления выполнением (execution control element): Элемент языка, контролирующий поток выполнения программы.
3.35 задний фронт (falling edge): Часть временной диаграммы сигнала, где происходит переход логической переменной из 1 в 0.
3.36 функция (function): Элемент языка, который во время выполнения обычно вырабатывает результат в виде одного элемента данных и, возможно, дополнительные выходные переменные.
3.37 экземпляр функционального блока (function block instance): Экземпляр типа функционального блока.
3.38 тип функционального блока (function block type): Элемент языка, состоящий из:
- определения структуры данных, разделенной на входные, выходные и внутренние переменные; и
- набора операций или набора методов, выполняемых над элементами структуры данных при вызове типа функционального блока.
3.39 функциональная блоковая диаграмма (function block diagram): Сеть, узлы которой являются экземплярами функциональных блоков, графически представленные функции или вызовы метода, переменные, литералы и метки.
3.40 родовой тип данных (generic data type): Тип данных, представляющий более одного типа данных.