Товары в корзине: 0 шт Оформить заказ
Стр. 1 

230 страниц

1156.00 ₽

Купить ГОСТ Р МЭК 61131-3-2016 — бумажный документ с голограммой и синими печатями. подробнее

Распространяем нормативную документацию с 1999 года. Пробиваем чеки, платим налоги, принимаем к оплате все законные формы платежей без дополнительных процентов. Наши клиенты защищены Законом. ООО "ЦНТИ Нормоконтроль"

Наши цены ниже, чем в других местах, потому что мы работаем напрямую с поставщиками документов.

Способы доставки

  • Срочная курьерская доставка (1-3 дня)
  • Курьерская доставка (7 дней)
  • Самовывоз из московского офиса
  • Почта РФ

Устанавливает синтаксис и семантику языков программирования программируемых контроллеров, определенных в МЭК 61131 (часть 1).

 Скачать PDF

Идентичен IEC 61131-3(2013)

Оглавление

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

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

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

4 Структурные модели

     4.1 Модель программного обеспечения

     4.2 Модель взаимодействия

     4.3 Модель программирования

5 Совместимость

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

     5.2 Таблицы свойств

     5.3 Декларация соответствия разработчика

6 Общие элементы

     6.1 Использование печатных символов

     6.2 Прагма

     6.3 Литералы - внешнее представление данных

     6.4 Типы данных

     6.5 Переменные

     6.6 Программные компоненты (POU)

     6.7 Элементы последовательной функциональной схемы (SFC)

     6.8 Элементы конфигурации

     6.9 Пространства имен

7 Текстовые языки

     7.1 Общие элементы

     7.2 Перечень инструкций (IL)

     7.3 Структурированный текст (ST)

8 Графические языки

     8.1 Общие элементы

     8.2 Релейно-контактные схемы (язык LD)

     8.3 Функциональные блоковые диаграммы (FBD)

Приложение А (обязательное) Формальная спецификация элементов языка

Приложение В (справочное) Перечень основных изменений и расширений третьего издания

Приложение ДА (справочное) Сведения о соответствии ссылочных международных стандартов национальным стандартам Российской Федерации

Библиография

 
Дата введения01.04.2017
Добавлен в базу01.02.2017
Актуализация01.01.2019

Этот ГОСТ находится в:

Организации:

13.05.2016УтвержденФедеральное агентство по техническому регулированию и метрологии313-ст
ИзданСтандартинформ2016 г.
РазработанНОЧУ НИШ
РазработанВНИИНМАШ

Programmable controllers. Part 3. Programming languages

Стр. 1
стр. 1
Стр. 2
стр. 2
Стр. 3
стр. 3
Стр. 4
стр. 4
Стр. 5
стр. 5
Стр. 6
стр. 6
Стр. 7
стр. 7
Стр. 8
стр. 8
Стр. 9
стр. 9
Стр. 10
стр. 10
Стр. 11
стр. 11
Стр. 12
стр. 12
Стр. 13
стр. 13
Стр. 14
стр. 14
Стр. 15
стр. 15
Стр. 16
стр. 16
Стр. 17
стр. 17
Стр. 18
стр. 18
Стр. 19
стр. 19
Стр. 20
стр. 20
Стр. 21
стр. 21
Стр. 22
стр. 22
Стр. 23
стр. 23
Стр. 24
стр. 24
Стр. 25
стр. 25
Стр. 26
стр. 26
Стр. 27
стр. 27
Стр. 28
стр. 28
Стр. 29
стр. 29
Стр. 30
стр. 30

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ

ГОСТ Р мэк

61131-3—

2016

НАЦИОНАЛЬНЫЙ

СТАНДАРТ

РОССИЙСКОЙ

ФЕДЕРАЦИИ

КОНТРОЛЛЕРЫ ПРОГРАММИРУЕМЫЕ

Часть 3

Языки программирования

(IEC 61131-3:2013, ЮТ)

Издание официальное

Москва

Стандартинформ

2016

Предисловие

1    ПОДГОТОВЛЕН Негосударственным образовательным частным учреждением «Новая Инженерная Школа» (НОЧУ «НИШ») на основе перевода на русский язык англоязычной версии указанного в пункте 4 стандарта, который выполнен Российской комиссией экспертов МЭК/ТК 65, и Федеральным государственным унитарным предприятием «Всероссийский научно-исследовательский институт стандартизации и сертификации в машиностроении» («ВНИИНМАШ»)

2    ВНЕСЕН Техническим комитетом по стандартизации ТК 306 «Измерения и управление в промышленных процессах»

3    УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 13 мая 2016 г. № 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)

© Стандартинформ, 2016

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

Как показано на рисунке 2а), значения переменных в программе могут связываться прямо, соединением выхода одного программного элемента ко входу другого. Данное соединение явно показывается в графических языках и неявно в тестовых языках.

Значения переменных могут передаваться между программами в одной конфигурации через глобальные переменные, как переменная х, показанная на рисунке 2Ь). Такие переменные будут объявляться в конфигурации как GLOBAL, и в программах как EXTERNAL.

Как показано на рисунке 2с), значения переменных могут передаваться между различными частями программы, между программами в одной или различных конфигурациях или между программой PC и системой без PC, используя функциональные блоки взаимосвязи, определенные в МЭК 61131-5.

Кроме того, системы с и PC и системы без PC могут передавать данные, которые делаются доступными путями доступа, как показано на рисунке 2d), используя механизмы, определенные в МЭК 61131-5.

4.3 Модель программирования

На рисунке 3 показана сводка элементов языков программирования PLC. Комбинация этих элементов должна подчиняться следующим правилам:

1    Типы данных объявляются с использованием стандартных типов данных и любых ранее определенных типов данных.

2    Функции объявляются с использованием стандартных или определенных пользователем типов данных, стандартных функций и любых ранее определенных функций.

Данные объявления должны использовать механизмы, определенные для языков IL, ST, LD или

FBD.

3    Типы функциональных блоков объявляются, используя стандартные и определенные пользователем типы данных, функции, стандартные типы функциональных блоков и любые ранее определенные типы функциональных блоков.

Данные объявления используют механизмы, определенные для языков IL, ST, LD или FBD, и могут включать в себя элементы последовательных функциональных схем (SFC).

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

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

Данные объявления используют механизмы, определенные в языках IL, ST, LD или FBD и могут в себя включать элементы последовательных функциональных схем (SFC).

5    Программы могут собираться в конфигурации, используя элементы, то есть: глобальные переменные, ресурсы, задачи и пути доступа.

Ссылка на «ранее определенные» типы данных, функции и функциональные блоки означает, что после того как некоторый элемент был объявлен, его определение доступно (например, в «библиотеке» ранее определенных элементов) для использования в дальнейших определениях.

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

8

ГОСТ Р МЭК 61131 -3—2016

Ранее определенные элементы    Создание    Элементы,    определенные

Рисунок 3 — Сочетание элементов языка программируемых контроллеров, лист 1


где LD — FBD — IL — ST — Другие —

и библиотечные элементы    пользователем

язык релейно-контактных схем;

язык функционально-блоковых диаграмм;

язык списка инструкций;

язык структурированного текста;

другие языки программирования.

Примечание 1 — Числа от (1) до (5) в скобках относятся к соответствующим параграфам 1)—5) выше.

Примечание 2 — Типы данных используются во всех способах создания. Для четкости, соответствующие связи опущены на данном рисунке.

Рисунок 3 — Сочетание элементов языка программируемых контроллеров, лист 2

9

5 Совместимость

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

Средство программирования и отладки PLC (PADT), как определено в МЭК 61131-1, которое удовлетворяет полностью или частично требованиям настоящего стандарта и должно:

a)    обеспечивать подмножество свойств и предоставлять декларацию соответствия разработчика как описано ниже;

b)    не требовать включения альтернативных или дополнительных элементов языка для достижения какого-либо свойства;

c)    предоставлять документ, определяющий все конкретные расширения разработчика. Сюда входят любые принятые системой свойства, которые запрещены или точно не определены;

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

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

Примечание — В настоящем стандарте только частично установлены ошибки, случающиеся во время выполнения программы, приведенной в МЭК 61131;

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

5.2    Таблицы свойств

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

5.3    Декларация соответствия разработчика

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

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

Формат декларации соответствия разработчика будет предоставлять следующую информацию (пример декларации соответствия приведен на рисунке 4):

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

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

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

Нереализованные таблицы и свойства могут быть опущены.

ю

МЭК 61131-3 «Языки программирования PLC»

Разработчик: Наименование компании, адрес и пр.

Продукт: Наименование продукта, версия и т. д. Тип контроллера и т. д.

Дата: 2012-05-01

Настоящий продукт удовлетворяет требованиям для следующих свойств: языка:

Номер

свой

ства

Номер и заголовок таблицы/ Описание свойства

Соответствующим образом реализовано в языке (V)

Примечание

разработчика

LD

FBD

ST

IL

Таблица 1 — Набор символов

1

ИСО/МЭК 10646:2012, Информационная технология — Универсальный набор символов (UCS)

V

V

V

V

Символы нижнего регистра: а, Ь, с, ...

V

V

V

Отсутствуют симво-лы «В, Q, а, б»

Знак числа: # См. таблицу 5

V

Знак доллара $ См.таблицу 6

V

Таблица 2 — Идентификаторы

1

Буквы верхнего регистра и цифры IW215

2

Буквы верхнего и нижнего регистров, цифры и внутренние символы подчеркивания

3

Буквы верхнего и нижнего регистров, цифры и ведущие или внутренние символы подчеркивания

Таблица 3 — Комментарии

1

Однострочный комментарий//...

Многострочный комментарий (*... *)

Многострочный комментарий 1* ... *1

За

Вложенный комментарий (* ..(*.. *) ..*)

ЗЬ

Вложенный комментарий /*.. /*.. */.. */

Рисунок 4 — Декларация соответствия разработчика (пример)

Таблица 4 — Прагма

1

Прагма в фигурных скобках {... }

Таблица 5 — Числовые литералы

1

Целый литерал: -12

2

Действительный литерал: -12.0

3

Действительные литералы с экспонентой: -1.34Е-12

4

Двоичный литерал: 2#1111_1111

5

Восьмеричный литерал: 8#377

6

Шестнадцатеричный литерал: 16#FF

11

7

Логический ноль и единица

8

Логические FALSE и TRUE

9

Типизированный литерал: INT#-123

И т. д.

Рисунок 4

6 Общие элементы

6.1    Использование печатных символов
6.1.1    Набор символов

Набор символов текстовых языков и текстовых элементов графических языков приведен в таблице 1. Символы представлены по ИСО/МЭК 10646.

Таблица 1—Набор символов

Номер

Описание

1

ИСО/МЭК 10646

Символы нижнего регистра3): а, Ь, с

Знак числа: # См. таблицу 5

Знак доллара: $ См. таблицу 6

а) Когда поддерживаются буквы нижнего регистра, регистр букв в элементах языка не учитывается за исключением комментариев, как определено 6.1.5, строковых литералах 6.3.3, и переменных типов STRING и WSTRING, как определено в 6.3.3.

6.1.2 Идентификаторы

Идентификатор — это строки букв, цифр и символов подчеркивания, начинающаяся с буквы или символа подчеркивания.

Регистр букв не имеет значения в идентификаторах, например идентификаторы abed, ABCD и aBCd будут интерпретироваться одинаково.

Символ подчеркивания является существенным в идентификаторах, например, A_BCD и AB_CD будут интерпретироваться, как различные идентификаторы. Множественные ведущие или множественные внутренние символы подчеркивания недопустимы, например последовательности символов _LIM_SW5 и LIM_SW5 не являются допустимыми идентификаторами. Завершающие символы подчеркивания не допустимы, например, последовательность символов LIM_SW5_ не является допустимым идентификатором.

Во всех системах, которые поддерживают использование идентификаторов, по меньшей мере, 6 символов будет учитываться при определении уникальности идентификатора, например, во всех таких системах, ABCDE1 будет интерпретироваться отличным от ABCDE2. Максимально допустимое число символов, разрешенное в идентификаторе, определяется разработчиком.

Свойства и примеры идентификаторов приведены в таблице 2.

Таблица 2 — Идентификаторы

Номер

Описание

Пример

1

Буквы верхнего регистра и цифры IW215

IW215 IW215Z QX75 IDENT

2

Буквы верхнего и нижнего регистров, цифры и внутренние символы подчеркивания

Все приведенные выше плюс: LIM_SW_5 LimSw5 abed ab_Cd

3

Буквы верхнего и нижнего регистров, цифры и ведущие или внутренние символы подчеркивания

Все приведенные выше плюс: _MAIN_12V7

ГОСТ Р МЭК 61131 -3—2016
6.1.3    Ключевые слова

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

Например, ключевые слова FOR и for синтаксически эквивалентны. Они не должны использоваться в любых других целях, например, как имена переменных или расширения.

6.1.4    Использование символов-разделителей

Пользователю разрешено вставлять один или более «символов-разделителей» в любом месте текста программ программируемого контроллера, только не внутри ключевых слов, литералов, перечисленных значений, идентификаторов, прямо представленных переменных или разделительных сочетаний, например, для комментариев. «Символ-разделитель» определяется как символ SPACE с кодированным числовым значением 32, а также как непечатаемые символы, такие как символ табуляции, символ перевода строки и т. п., которым в МЭК/ИСО 10646 не придано закодированного значения.

6.1.5    Комментарии

Имеются различные виды комментариев, приведенные в таблице 3.

1    Однострочные комментарии начинаются с комбинации символов // и заканчиваются на следующем символе перевода строки, новой строки, подачи (прогона) страницы или возврата каретки.

В однострочном комментарии специальные комбинации символов (* и *) или /* и 7 не имеют специального значения.

2    Многострочном комментарии разделяются вначале и в конце специальными комбинациями символов (* и *), соответственно.

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

В многострочном комментарии специальная комбинация символов // не имеет специального значения.

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

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

Вложенные комментарии используют соответствующие

-    пары (*, *), например, (* ... (* ВЛОЖЕННЫЙ КОММЕНТАРИЙ *)... *) или

-    пары /*, 7,например, /* ... /* ВЛОЖЕННЫЙ КОММЕНТАРИЙ 7... 7.

Таблица 3 — Комментарии

Номер

Описание

Пример

1

Однострочный комментарий //...

Х:= 13; // комментарий для одной строки // однострочный комментарий может начинаться // с позиции первого символа

Многострочный комментарий с

(* текст комментария *)

^ ***************************

Комментарий в рамке на трех строках

**************************** ^

Многострочный комментарий с

j* *f

Г комментарий на одной или более строк 7

За

Вложенный комментарий с

^* ^* *J *J

(* (* ВЛОЖЕННЫЙ КОММЕНТАРИЙ *) *)

ЗЬ

Вложенный комментарий с

j* j* *j *j

/* /* ВЛОЖЕННЫЙ КОММЕНТАРИЙ 7 7

6.2 Прагма

Как показано в таблице 4, прагмы ограничиваются в начале и в конце фигурными скобками { и }, соответственно. Синтаксис и семантика конструкций конкретной прагмы определяются разработчиком.

13

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

Описание

Пример

Прагма с фигурными скобками {... }

{ВЕРСИЯ 2.0} {АВТОР JHC}

{х:= 256, у:= 384}

6.3 Литералы — внешнее представление данных

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

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

Признана необходимость в обеспечении внешних представлений для двух различных типов данных, связанных со временем:

-    данные о продолжительности времени при измерении и контроле событий;

-    данные о времени суток, которые могут также включать в себя информацию о дате — для синхронизации начала и окончания событий в абсолютной временной шкале.

6.3.2    Числовые литералы и строковые литералы

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

Единичные символы подчеркивания «_», вставленные между цифрами числового литерала не являются существенными. Никакое иное использование символов подчеркивания в числовых литералах не разрешается.

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

Литералы могут также представляться с основаниями 2, 8 и 16. Основание указывается в десятичной нотации. Для основания 16 используется расширенный набор цифр, состоящий из букв от А до F, с оговоренным десятичным значением от 10 до 15, соответственно. Числа с основанием не содержат ведущего знака «+» или «-». Они интерпретируются как битово-строковые литералы.

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

Логические данные представляются числовыми литералами со значением (0) или один (1), или ключевыми словами FALSE или TRUE, соответственно.

Свойства и примеры числовых литералов приведены в таблице 5.

Тип данных логических или числовых литералов может указываться добавлением префикса типа к литералу, состоящего из имени элементарного типа данных и символа «#». Примеры приведены в свойстве 9 таблицы 5.

14


Номер

Описание

Пример

Объяснение

1

Целый литерал

-12, 0, 123_4, +986

2

Действительный литерал

0.0, 0.4560, 3.14159_26

3

Действительные литералы с экспонентой

-1.34Е-12, -1.34е-12 1.0Е+6, 1.0е+6 1.234Е6, 1.234е6

4

Двоичный литерал

2#1111_1111

2#1110_0000

Литерал с основанием 2 для представления:

десятичного числа 255 десятичного числа 224

5

Восьмеричные литералы

8#377

8#340

Литерал с основанием 8 для представления:

десятичного числа 255 десятичного числа 224

6

Шестнадцатеричный

литерал

16#FF или 16#ff 16#Е0 или 16#е0

Литерал с основанием 16 для представления:

десятичного числа 255 десятичного числа 224

7

Логический ноль и единица

0 или 1

8

Логические FALSE и TRUE

FALSE TRUE

9

Типизированный литерал

INT#-123

Представление INT десятичного значения -123

INT#16#7FFF

Представление INT десятичного значения 32767

WORD#16#AFF

Представление WORD шестнадцатиричного значения 0AFF

WORD#1234

Представление WORD десятичного значения 1234=16#4D2

UINT#16#89AF

Представление UINT шестнадцатиричного значения 89AF

CHAR#16#41

Представление CFIAR символа ‘А

BOOL#0

BOOL#1

BOOL#FALSE

BOOL#TRUE


Примечание 1 — Ключевые слова FALSE и TRUE соответствуют логическим значениям 0 и 1, соответственно.


Примечание 2 — Свойство 5 «Восьмеричные литералы» не рекомендуется и может не быть включено в следующую редакцию настоящего стандарта.


15


6.3.3 Символьно-строковые литералы

Символьно-строковые литералы содержат однобайтовые или двухбайтовые кодированные символы:

-    символьно-строковый литерал однобайтовых символов является последовательностью нуля или более символов, с предшествующим и завершающим символом одиночной кавычки (‘). В строках однобайтовых символов, трехсимвольная комбинация символа доллара ($) с двумя следующими шестнадцатиричными символами интерпретируется как шестнадцатиричное представление восьмибитового кода символа, как показано в свойстве 1 таблицы 6;

-    символьно-строковый литерал двухбайтовых символов является последовательностью 0 или более символов из набора символов ИСО/МЭК 10646, с предшествующим и завершающим символом двойной кавычки («). В строках однобайтовых символов, трехсимвольная комбинация символа доллара ($) с двумя следующими шестнадцатиричными символами интерпретируется как шестнадцатиричное представление восьмибитового кода символа, как показано в свойстве 2 таблицы 6.

Примечание — Отношение стандартов ИСО/МЭК 10646 и Юникод:

Несмотря на то, что коды символов и формы кодирования стандартов Юникод и ИСО/МЭК 10646 синхронизированы, стандарт Юникод налагает дополнительные ограничения на реализации, чтобы гарантировать, что они трактуют символы одинаково во всех платформах и приложениях. В связи с этим, данный стандарт предоставляет широкий набор спецификаций функциональных символов, данных символов, алгоритмов и обширный справочный материал, который отсутствует в ИСО/МЭК 10646.

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

Таблица 6 — Символьно-строковые литералы

Номер

Описание

Пример

Односимвольные символы и строки символов с ‘ ‘

Пустая строка (длины ноль)

1 b

Строка длины 1 или символ CHAR, содержащий единственный символ

‘А’

Строка длины один или символ CHAR, содержащий символ пробела

■ ’

Id

Строка длины один или символ CHAR, содержащий символ одиночной кавычки

$

Строка длины один или символ CHAR, содержащий символ двойной кавычки

V

If

Поддержка двухсимвольных комбинаций таблицы 7

‘$R$L’

ig

Поддержка представления символа с знаком доллара '$’ и двумя шестнадцатиричными цифрами

‘$0А’

Двухбайтовые символы или символьные строки с «»(Примечание)

Пустая строка (длины ноль)

«»

Строка длины один или символ WCHAR, содержащий единственный символ

«А»

Строка длины один или символ WCHAR, содержащий символ пробела

« »

2d

Строка длины один или символ WCHAR, содержащий символ одиночной кавычки

«’»

Строка длины один или символ WCHAR, содержащий символ двойной кавычки

«$»»

2f

Поддержка двухсимвольных комбинаций таблицы 7

«$R$L»

2h

Поддержка представления символа с знаком доллара '$’ и четырьмя шестнадцатиричными цифрами

«$00С4»

Типизированные однобайтовые символы или строковый литерал с #

За

Типизированная строка

STRING#'О К’

ЗЬ

Типизированный символ

CHAR#‘X’

Окончание таблицы 6

Номер

Описание

Пример

Двухбайтовые типизированные строковые литералы с # (NOTE)

Типизированные двухбайтовые строки (с использованием символа двойной кавычки)

WSTRING#«OK»

Типизированный двухбайтовый символ (с использование символа двойной кавычки)

WCHAR#«X»

4d

Типизированный двухбайтовый символ (с использованием символа одиночной кавычки)

WCHAR#‘X’

Примечание — Если конкретная реализация поддерживает свойство 4, но не поддерживает свойство 2, Реализатор может определить синтаксис и семантику для использования символа двойной кавычки.

Таблица 7 — Двухсимвольные комбинации в символьных строках

Номер

Описание

Комбинации

1

Знак доллара

$$

2

Единичная кавычка

$’

3

Перевод строки

$1_ или $1

4

Новая строка

$N или $п

5

Прогон (перевод) страницы

$Р или $р

6

Возврат каретки

$R или $г

7

Табуляция

$Т или $t

8

Двойная кавычка

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

Примечание 2 — Комбинация $' действительна только внутри строковых литералов с одиночными кавычками.

Примечание 3 — Комбинация $» действительна только внутри строковых литералов с двойными кавычками.

6.3.4 Литерал продолжительности времени

Данные продолжительности времени ограничиваются слева ключевым словом Т#, TIME# или LTIME#. Представление данных о продолжительности времени в терминах дней, часов, минут, секунд и долей секунды, или любой их комбинации поддерживается как показано в таблице 8. Наименьшая единица времени может быть записана в нотации действительных чисел без экспоненты.

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

Разрешается «переполнение» самой большой единицы продолжительности времени, например нотация T#25h_15m является допустимой.

Единицы времени (например, секунды, миллисекунды и т. д.) могут быть представлены буквами верхнего или нижнего регистра.

Как показано в таблице 8, для продолжительности времени разрешены как положительные, так и отрицательные значения.

17

ГОСТ Р МЭК 61131-3-2016

Содержание

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

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

3    Термины и определения...............................................................2

4    Структурные модели.................................................................6

4.1    Модель программного обеспечения..................................................6

4.2    Модель взаимодействия...........................................................7

4.3    Модель программирования........................................................8

5    Совместимость.....................................................................10

5.1    Общие положения ..............................................................10

5.2    Таблицы свойств................................................................10

5.3    Декларация соответствия разработчика.............................................10

6    Общие элементы...................................................................12

6.1    Использование печатных символов.................................................12

6.2    Прагма........................................................................13

6.3    Литералы — внешнее представление данных........................................14

6.4    Типы данных...................................................................19

6.5    Переменные....................................................................34

6.6    Программные компоненты (POU)..................................................44

6.7    Элементы последовательной функциональной схемы (SFC)...........................144

6.8    Элементы конфигурации........................................................169

6.9    Пространства имен.............................................................181

7    Текстовые языки ..................................................................189

7.1    Общие элементы...............................................................189

7.2    Перечень инструкций (IL)........................................................190

7.3    Структурированный текст (ST) ...................................................195

8    Графические языки ................................................................202

8.1    Общие элементы ..............................................................202

8.2    Релейно-контактные схемы (язык LD)..............................................208

8.3    Функциональные блоковые диаграммы (FBD).......................................213

Приложение А (обязательное) Формальная    спецификация элементов языка..................214

Приложение В (справочное) Перечень основных изменений и расширений третьего издания.....225

Приложение ДА (справочное) Сведения о соответствии ссылочных международных

стандартов национальным стандартам Российской Федерации................226

Библиография......................................................................227

Номер

Описание

Пример

Сокращения продолжительности времени

d

День

1 b

h

Час

m

Минута

Id

s

Секунда

ms

Миллисекунда

If

us (если символ p недоступен)

Микросекунда

ig

ns

Наносекунда

Литералы продолжительности времени без символов подчеркивания

короткий префикс

T#14ms T#-14msLT#14.7s T#14.7m T#14.7h t#14.7d t#25h15m It#5d14h12m18s3.5mst#12h4m34ms230us400ns

длинный префикс

TIME#14ms TIME#-14ms time#14.7s

Литералы продолжительности времени с символами подчеркивания

За

короткий префикс

t#25h_15mt#5d_14h_12m_18s_3.5ms LTIME#5m_30s_500ms_100.1 us

ЗЬ

длинный префикс

TIME#25h_15m

ltime#5d_14h_12m_18s_3.5ms

LTIME#34s_345ns

6.3.5 Литерал даты и времени суток

Ключевые слова префикса литералов для времени суток и даты приведены в таблице 9.

Таблица 9 — Литералы даты и времени суток

Номер

Описание

Пример

la

Литерал даты (длинный префикс)

DATE#1984-06-25, date#2010-09-22

1b

Литерал даты (короткий префикс)

D#1984-06-25

2a

Длинный литерал даты (длинный префикс)

LDATE#2012-02-29

2b

Длинный литерал даты (короткий префикс)

LD#1984-06-25

3a

Литерал времени суток (длинный префикс)

TIME_OF_DAY#15:36:55.36

3b

Литерал времени суток (короткий префикс)

TOD#15:36:55.36

4a

Длинный литерал времени суток (короткий префикс)

LTOD#15:36:55.36

4b

Длинный литерал времени суток (длинный префикс)

LTIME_OF_DAY#15:36:55.36

5a

Литерал даты и времени (длинный префикс)

DATE_AND_TIME#1984-06-25-15:36:55.360227400

5b

Литерал даты и времени (короткий префикс)

DT#1984-06-25-15:36:55.360_227_400

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

КОНТРОЛЛЕРЫ ПРОГРАММИРУЕМЫЕ

Часть 3 Языки программирования

Programmable controllers. Part 3. Programming languages

Дата введения — 2017—04—01

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

Настоящий стандарт устанавливает синтаксис и семантику языков программирования программируемых контроллеров, определенных в МЭК 61131 (часть 1).

Функции ввода программы, тестирования, мониторинга, операционной системы и т. п. определены в МЭК 61131 (часть 1).

Настоящий стандарт устанавливает синтаксис и семантику унифицированного набора языков программирования для программируемых контроллеров (PC). Данный набор состоит из двух текстовых языков программирования, списка инструкций (IL) и структурированного текста (ST), и двух графических языков, релейно-контактных схем (LD) и функциональных блоковых диаграмм (FBD).

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

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

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

МЭК 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)

ИСО/МЭК/1ЕЕЕ 60559 Информационная технология. Микропроцессорные системы. Арифметика с плавающей точкой (ISO/IEC/IEEE 60559, Information technology — Microprocessor Systems — Floating-Point arithmetic)

Издание официальное

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

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

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]

_37_

присваивание (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): Элемент языка, указывающий на элемент данных с фиксированным значением.

ГОСТ Р МЭК 61131-3-2016

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    двойное слово (doubleword): Элемент данных, содержащий 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): Тип данных, представляющий более одного типа данных.

3.41    глобальная переменная (global variable): Переменная с глобальной областью действия.

3.42    иерархическая адресация (hierarchical addressing): Прямое представление элемента данных как члена физической или логической иерархии.

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

3.43    идентификатор (identifier): Комбинация букв, цифр и символов подчеркивания, которая начинается с буквы или символа подчеркивания и которая именует элемент языка.

3.44    реализация (implementation): Версия программируемого логического контроллера (PLC) или программного или отладочного инструмента, предоставленная разработчиком.

3.45    разработчик (Implementer): Изготовитель PLC или программного или отладочного инструмента, предоставленного пользователю для разработки приложений PLC.

з

3.46    наследование (inheritance): Создание нового класса, типа функционального блока или интерфейса на основе существующего класса, типа функционального блока или интерфейса, соответственно.

3.47    начальное значение (initial value): Значение, присвоенное переменной при запуске системе.

3.48    входная и выходная переменная (in-out variable): Переменная, используемая для передачи значения программному компоненту и, дополнительно, для возврата значения из программного компонента.

3.49    входная переменная (input variable): Переменная, используемая для передачи значения программному компоненту, отличному от класса.

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

3.51    имя экземпляра (instance name): Идентификатор, связанный с конкретным экземпляром.

3.52    создание экземпляра (instantiation): Создание экземпляра.

3.53    целое число (nteger): Целое число, которое может содержать положительные, нулевые или отрицательные значения.

3.54    целый литерал (integer literal): Литерал, прямо представляющий целое значение.

3.55    интерфейс (interface): Элемент языка в контексте объектно-ориентированного программирования, содержащий набор прототипов метода.

3.56    ключевое слово (keyword): Лексическая единица, которая характеризует элемент языка.

3.57    метка (label): Конструкция языка, именующая инструкцию, сеть или группу сетей, включая идентификатор.

3.58    элемент языка (language element): Любая единица, идентифицированная символом в левой части порождающего правила в формальной спецификации.

3.59 _

литерал (literal): Лексическая единица, которая прямо представляет значение.

[ИСТОЧНИК: ISO/AFNOR:1989]

3.60    логическое расположение (logical location): Расположение иерархически адресуемой переменной в схеме, которая может быть связана или может быть не связана с физической структурой входных и выходных переменных и памятью программируемого контроллера.

3.61    длинное действительное число (long real): Действительное число, представленное в двойном слове.

3.62    двойное слово (long word): 64-битовый элемент данных.

3.63    метод (method): Элемент языка, подобный функции, который может быть определен типом функционального блока и имеет неявный доступ к статическим переменным экземпляра функционального блока или экземпляра класса.

3.64    прототип метода (method prototype): Элемент языка, содержащий только сигнатуру метода.

3.65    именованный элемент (named element): Элемент структуры, именуемый своим связанным идентификатором.

3.66    сеть (network): Совокупность узлов и соединяющих ветвей.

3.67    числовой литерал (numeric literal): Литерал, прямо представляющий численное значение, то есть целый литерал или действительный литерал.

3.68    операция (operation): Элемент языка, который представляет элементарную функциональность, присущую программному компоненту или методу.

3.69    операнд (operand): Элемент языка, на котором выполняется операция.

3.70    оператор (operator): Символ, представляющий действие, выполняемое в операции.

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

3.72    выходная переменная (output variable): Переменная, используемая для возврата значения из программного компонента, отличного от класса.

3.73    параметр (parameter): Переменная, которая используется для предоставления значения программному компоненту (как входной или входной-выходной параметр), или переменная, которая используется для возврата значения из программного компонента (как выходной или входной-выходной параметр).

4

ГОСТ Р МЭК 61131-3-2016

3.74    ссылка (reference): Определяемые пользователем данные, содержащие адрес размещения переменной или экземпляра функционального блока заданного типа.

3.75    поток энергии (power flow): Символический поток электроэнергии в релейно-контактной схеме, используемый для указания продвижения логического решающего алгоритма.

3.76    прагма (pragma): Конструкция языка для включения в программный компонент текста, который может влиять на подготовку программы к выполнению.

3.77    программа (program): Разработка, написание и тестирование программ пользователя.

3.78    программный компонент (program organization unit): Функция, функциональный блок, класс или программа.

3.79    действительный литерал (real literal): Литерал, прямо представляющий значения типа REAL или LREAL.

3.80    ресурс (resource): Элемент языка, соответствующий «функции обработки сигналов» и ее «человеко-машинному интерфейсу» и «функциям интерфейса с датчиками и исполнительными механизмами», при наличии таковых.

3.81    результат (result): Значение, возвращаемое как результат выполнения программного компонента.

3.82    возврат (return): Конструкция языка в программном компоненте, обозначающая конец последовательности выполнения в компоненте.

3.83    передний фронт (rising edge): Часть временной диаграммы сигнала, где происходит переход логической переменной из 0 в 1.

3.84    область видимости (scope): Набор программных компонент, в которых применяется объявление или метка.

3.85    семантика (semantics): Отношения между символическими элементами языка программирования и их значениями, интерпретацией и использованием.

3.86    полуграфическое представление (semigraphic representation): Представление графической информации с использованием ограниченного набора символов.

3.87    сигнатура (signature): Набор информации, однозначно определяющий идентичность интерфейса параметров МЕТОДА, состоящий из его имени и имен, типов и порядка всех его параметров (то есть входных, выходных и входных-выходных переменных и типа результата).

3.88    одноэлементная переменная (single-element variable): Переменная, представляющая единственный элемент данных.

3.89    статическая переменная (static variable): Переменная, значение которой сохраняется от одного вызова до другого.

3.90    шаг (step): Ситуация, в которой поведение программного компонента в отношении его входных и выходных переменных следует набору правил, определенных связанными действиями шага.

3.91    структурированный тип данных (structured data type): Агрегированный тип данных, который был определен, используя определение STRUCT или FUNCTION_BLOCK.

3.92    индексирование (subscripting): Механизм для ссылки к элементу массива посредством ссылки на массив и одного или более выражений, которые, после их вычисления, определяют положение элемента.

3.93    задача (task): Элемент контроля выполнения, обеспечивающий периодическое или управляемое выполнение группы связанных программных компонентов.

3.94    литерал дат и времени (time literal): Литерал, представляющий данные типов TIME, DATE, TIME_OF_DAY или DATE_AND_TIME.

3.95    переход (transition): Условие, посредством которого управление переходит от одного или более предшествующих шагов к одному или более последующих шагов по направленной связи.

3.96    целое число без знака (unsigned integer): Целое число, которое может содержать положительные и нулевые значения.

3.97    литерал целого числа без знака (unsigned integer literal): Целый литерал, не содержащий спереди знака (+) или минус (-).

3.98    пользовательский тип данных (user-defined data type): Тип данных, определенный пользователем.

Пример — Перечисление, массив или структура.

3.99    переменная (variable): Объект программного обеспечения, который может принимать различные значения, в каждый момент времени только одно значение.

5

4 Структурные модели

4.1 Модель программного обеспечения

Основные элементы языка программирования высокого уровня и их взаимосвязи приведены на рисунке 1.

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

Примечание 1 — Рисунок 1 предназначен только для иллюстрации. Графическое представление не является нормативным.

Примечание 2 — В конфигурации с единственным ресурсом необязательно явно представлять ресурс.

Рисунок 1 — Модель программного обеспечения

Конфигурация является элементом языка, который соответствует системе программируемого контроллера, как определено в МЭК 61131-1. Ресурс соответствует «функции обработки сигналов» и ее «человеко-машинному интерфейсу» и «функциям интерфейса с датчиками и исполнительными механизмами» (при наличии таковых), как определено в МЭК 61131-1.

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

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

6


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

Конфигурации и ресурсы могут запускаться и останавливаться через функции «интерфейс оператора», «программирование, тестирование и мониторинг» или «операционная система», определенные в МЭК 61131-1. Запуск конфигурации будет вызывать инициализацию ее глобальных переменных с последующим запуском всех ресурсов конфигурации. Запуск ресурса будет вызывать инициализацию всех переменных в ресурсе с последующей активацией всех задач в ресурсе. Останов ресурса будет вызывать прекращение всех его задач, в то время как останов конфигурации будет вызывать останов всех ее ресурсов.

Механизмы управления задачами определены в 6.8.2, а механизмы запуска и останова конфигураций и ресурсов через функции взаимодействия определены в МЭК 61131-5.

Программы, ресурсы, глобальные переменные, пути доступа (и соответствующие привилегии доступа) и конфигурации могут быть загружены или удалены «функцией взаимодействия», определенной в МЭК 61131-1. Загрузка или удаление конфигурации или ресурса будет эквивалентно загрузке или удалению всех элементов, которые там содержатся.

Пути доступа и их соответствующие привилегии доступа определяются в настоящем стандарте.

Отображение элементов языка на объекты взаимодействия определено в МЭК 61131-5.

4.2 Модель взаимодействия

Способы связи значений переменных с элементами программного обеспечения иллюстрируются на рисунке 2.


ПРОГРАММА А

ФБ1

ФБ2

FB_X

FB_Y

а

ь

а) Соединение потока данных с программой


Ь) Взаимодействие через глобальные переменные


с) Функциональные блоки взаимодействия


КОНФИГУРАЦИЯ с Р1


КОНФИГУРАЦИЯ D


ПРОГРАММА А FB 1


ПРС ГРАММА В


Т< I FB2 FB2


READ RD1

■CSX' W R 1


FB_Y

b


VARACCESS CSX: P1.Z : REAL RSLD_ONLY;


d) Взаимодействие через пути доступа


Примечание 1 — Рисунок 2 предназначен только для иллюстрации. Графическое представление не является нормативным.

Примечание 2 — В данном примере предполагается, что конфигурации С и D имеют один ресурс.

Примечание 3 — На рисунке 2 не показаны детали функционального блока взаимодействия.

Примечание 4 — Пути доступа могут быть объявлены в прямо представленных переменных, входных, выходных или внутренних переменных программ или экземпляров функционального блока.

Примечание 5 — В МЭК 61131-5 определены средства, с помощью которых системы с PC и без PC могут использовать пути доступа для чтения и записи переменных.


Рисунок 2 — Модель взаимодействия


7