Шаг 4 — Создание собственных типов FB
Создание собственных типов функциональных блоков позволяет инкапсулировать логику и повторно использовать её в проектах. В этом туториале мы создадим четыре типа FB, каждый из которых реализует переключение булевого значения — поведение, аналогичное миганию.
Для создания нового типа FB: File → New → New Type
Basic FB (Базовый функциональный блок)
Basic FB — наиболее распространённый тип. Поведение определяется через ECC (Execution Control Chart) — граф состояний.
Создан ие через мастер
В мастере создания:
- Папка:
BlinkTest - Имя:
BasicTest - Тип: TemplateBasic

После создания открывается FBT Editor (Function Block Type Editor).

Настройка интерфейса
Нам нужен FB с:
- 1 входным событием (триггер изменения)
- 1 выходным событием (сигнал об изменении)
- 1 булевым выходом данных (текущее состояние)
Редактируем интерфейс шаблона:
- Удалите событие
INIT, а такжеQIиINITO. - Переименуйте выход
QOвSTATE. - Убедитесь, что тип
STATE—BOOL. - Пров ерьте связи WITH между событиями и данными —
CNFдолжен быть связан сSTATE.
Настройка ECC
Перейдите на вкладку ECC в нижней части редактора.
ECC — это граф состояний:
- Фиолетовые блоки — состояния (начальное выделено двойной рамкой)
- Жёлтые блоки — алгоритмы, выполняемые при входе в состояние
- Зелёные блоки — события, генерируемые после алгоритма
- Стрелки — переходы по входящим событиям
Создание ECC:
- Удалите всё, кроме состояния
START. - Добавьте состояние
On, затем состояниеOff. - В разделе Properties → Algorithms удалите существующие алгоритмы.
- Добавьте алгоритм
turnOn(ST):STATE := TRUE; - Добавьте алгоритм
turnOff(ST):STATE := FALSE; - Назначьте алгоритмы действиям состояний и укажите выходное событие
CNF.
