Основы проектирования структуры программы
Программирование с помощью STEP 7 версии 5.0
C79000-G7076-C562-02
5-4-19
Назначение фактических параметров формальным параметрам
Формальный параметр – это макет для "фактического" параметра.
Фактические параметры заменяют формальные параметры при вызове
функции. Вы всегда должны ставить в соответствие фактические параметры
формальным параметрам FC (например, фактический параметр "E3.6"
формальному параметру "Start"). Входные, выходные параметры и
параметры типа вход/выход, используемые FC, хранятся как указатели на
фактические параметры логического блока, который вызвал FC.
4.2.4.3 Функциональные блоки (FB)
Функциональные блоки (FB) относятся к блокам, которые вы программирует
сами. Функциональный блок – это логический блок "с памятью". В качестве
памяти ему назначается блок данных (экземплярный блок данных). В
экземплярном DB сохраняются параметры, передаваемые FB, и статические
переменные. Временные переменные хранятся в стеке локальных данных.
Данные, сохраняемые в экземплярном DB, не теряются, когда исполнение FB
завершено. Однако, данные, сохраняемые в стеке локальных данных,
теряются, теряются, когда исполнение FB завершено.
Замечание
Во избежание ошибок при работе с FB прочтите раздел Допустимые типы
данных при передаче параметров в Приложении.
Применение
FB содержит программу, которая исполняется всегда, когда FB вызывается
другим логическим блоком. Функциональные блоки значительно облегчают
программирование часто встречающихся сложных функций.
Функциональные блоки и экземплярные блоки данных
Экземплярный блок данных назначается каждому вызову функционального
блока, который передает параметры.
Вызывая более одного экземпляра FB, можно с помощью одного FB
управлять более чем одним устройством. Например, FB для некоторого
класса двигателей может управлять различными двигателями, используя
различные наборы экземпляров данных для разных двигателей. Данные для
каждого двигателя (например, скорость, накопленное время работы и т. д.)
могут быть сохранены в одном или нескольких экземплярных DB.