- •Предисловие
- •Введение
- •1. Основные особенности языков программирования
- •2. Язык функциональных блок-схем - fbd
- •2.1. Основные понятия
- •1.2. Функции и функциональные блоки
- •Группа «Arithmetic»
- •2.3. Пример программы на языке fbd
- •3. Язык лестничных схем – ld
- •3.1. Контакты
- •3.2. Катушки
- •3.4. Функции и функциональные блоки
- •3.5. Пример программы на языке ld
- •4. Язык последовательных функциональных схем – sfc
- •4.1. Описание элементов sfc
- •4.2 Задание свойств шага
- •4.3 Задание действий
- •4.4. Переход
- •4.5. Пример программы на языке sfc
- •5. Язык структурированного текста – st
- •5.1. Операторы
- •Описание операторов
- •5.2. Примеры использования операторов в простых инструкциях
- •5.3. Сложные инструкции
- •5.4. Использование функций и функциональных блоков
- •5.5. Примеры программ на языке st
- •5.6. Пример программы на языках sfc и st
- •6. Язык списка инструкций – il
- •6.1. Операторы и модификаторы
- •Описание операторов
- •Описание модификаторов
- •6.2. Примеры выполнения инструкций
- •6.3. Использование функций и функциональных блоков
- •6.4. Пример программы на языке il
- •Заключение
- •Библиографический список
- •Оглавление
- •Языки программирования в среде Concept
- •443100, Г. Самара, ул. Молодогвардейская, 244. Главный корпус
- •443100, Г. Самара, ул. Молодогвардейская, 244. Корпус 8
2. Язык функциональных блок-схем - fbd
Объектами языка FBD (Function block diagram) являются функции и функциональные блоки, которые могут быть связаны между собой связями и фактическими параметрами.
2.1. Основные понятия
Ф
ункции
и функциональные блоки (FFB)
предназначены
для выполнения
операций над данными. FFB
– это обобщающий термин для элементарных
функций (EF),
элементарных функциональных блоков
(EFB)
и пользовательских функциональных
блоков (DFB).
Графически FFB
обозначаются прямоугольниками (рис.
2.1) слева от которых размещаются входы,
справа – выходы, а внутри сверху – имя
FFB.
В элементарной функции значение выхода однозначно определяется значениями ее входов (например, в функции «лог. И»). Сверху от условного обозначения элементарной функции приводится ее номер в формате n.m, где n – номер секции, а m – номер функции в секции.
В элементарном функциональном блоке значение выхода определяется значениями ее входов и его внутренним состоянием (например, в триггере). Сверху от условного обозначения элементарного функционального блока автоматически создается его номер в формате FBI_n_m, где n – номер секции, а m – номер блока в секции.
Элементарные функции и элементарные функциональные блоки являются готовыми элементами языка FBD. В отличие от них пользовательские функциональные блоки (DFB) создаются пользователем на языках FBD, LD, IL и ST. Внешне пользовательский функциональный блок отличается от элементарного функционального блока только двойными линиями в его условном обозначении.
Формальные параметры – это входы и выходы FFB, которые служат для передачи значений в FFB и из FFB (например, на рис. 2.1б входы CU, СD,…, PV и выходы QU, QD, CV элементарного функционального блока CTUD).
Фактические параметры – это объекты, с помощью которых FFB связываются между собой. Для каждого входа FFB разрешен только один фактический параметр: переменная, адрес, константа, литерал и связь. Для каждого выхода FFB разрешены следующие фактические параметры:
– одна переменная или (и) одна или несколько связей;
– один адрес или (и) одна или несколько связей.
Связи – это горизонтальные и вертикальные линии, с помощью которых значения данных передаются к блокам и от них.
При программировании необходимо знать следующее:
– связи могут использоваться для любого типа данных, но одна связь может использоваться только для одного типа данных;
– с одним выходом FFB может соединяться несколько связей, но с одним входом только одна связь;
– входы могут соединяться с помощью связей, но связывание выходов не разрешено;
– связи не могут использоваться для конфигурации контуров, потому что невозможно точно определить порядок обработки в секции – контуры должны создаваться с помощью фактических параметров.
Вход EN и выход ENO. FFB могут быть сконфигурированы с входом EN (разрешения выполнения операции) и выходом ENO (подтверждения правильности выполнения операции). Если EN=0, то FFB не будет выполнять никаких операций, все его выходы сохранят предыдущие значения, а выход ENO будет равен 0. Если EN=1, то FFB выполнит все определенные для него операции и если они выполнены без ошибок, то на выходе ENO появится лог. 1. В противном случае ENO=0.
