FBD
Функціона́льні бло́кові діагра́ми або FBD (англ. Function Block Diagram) — графічна мова програмування, яка призначена для програмування ПЛК (програмованих логічних контролерів). Мова стандартизована міжнародним стандартом IEC 61131-3[1].
Програма утворюється із так званих ланцюгів, які виконуються послідовно зверху вниз. Ланцюги можуть мати мітки. Інструкція переходу на мітку дозволяє змінювати послідовність виконання ланцюгів для програмування умов і циклів.
Елемент порівняння (програмний компаратор) мовою FBD в середовищі Simatic Step 7:
┌───────┐ │ │ A───────┤ CMP< │ │ ├────── │ │ B ──────┤ │ │ │ └───────┘
У цьому випадку, якщо елемент A буде меншим за елемент B, на виході буде логічна одиниця.
При необхідності управління викликом блоків в них додаються спеціальні цифрові входи EN (enable) і виходи ENO (enable out). Логічний нуль на вході EN забороняє виклик блоку. Вихід ENO використовується для індикації помилки в блоці і дозволяє припинити обчислення залишку ланцюга.
Мова FBD проста у вивченні і зручна для прикладних фахівців, які не мають спеціальної підготовки в галузі інформатики. Жорстка послідовність виконання призводить до простої внутрішньої структури команд, яка транслюється у швидкий і надійний код. Існує також модифікація FBD, яка допускає використання тільки чистих функцій з одним виходом, без проміжних станів.
Подальшим розвитком мови FBD є мова CFC (англ. Continuous Function Chart — безперервні функціональні схеми). Мова не сертифікована стандартом IEC 61131-3[1].
- Simatic Step 7 — середовище для програмування
- LAD
- STL
- Петров И. В. Программируемые контроллеры. Стандартные языки и приемы прикладного проектирования / Під ред. проф. В. П. Дьяконова . — М.: СОЛОН-Пресс, 2004. — 256 c. — ISBN 5-98003-079-4
- Минаев И. Г. Программируемые логические контроллеры в автоматизированных системах управления / И. Г. Минаев, В. М. Шарапов, В. В. Самойленко, Д. Г. Ушкур. 2-е вид., перер. і доп. — Ставрополь: АГРУС, 2010. — 128 с. — ISBN 978-5-9596-0670-1