Перейти к содержимому

Программирование ПЛК: языки стандарта IEC 61131-3

Программирование ПЛК: языки стандарта IEC 61131-3

Языки программирования ПЛК по стандарту IEC 61131-3

IEC 61131-3 — международный стандарт, определяющий пять языков программирования для ПЛК. Три графических: Ladder Diagram (LD), Function Block Diagram (FBD), Sequential Function Chart (SFC). Два текстовых: Structured Text (ST) и Instruction List (IL). Каждый имеет свою область применения, и выбор зависит от задачи, опыта инженера и конкретного контроллера.

На практике 70% программ пишут на LD — это релейная логика, понятная электрикам. Ещё 20% — на ST, когда нужны математические вычисления или обработка данных. Остальное — FBD и SFC для специфических задач. IL практически вымер — его заменил ST.

Ladder Diagram (LD): релейная логика

LD выглядит как электрическая схема: контакты слева, катушки справа, логика посередине. Инженер, который читает электросхемы, прочтёт и Ladder без объяснений — вот почему этот язык доминирует.

  • Сильные стороны: интуитивен для электриков, легко читать и диагностировать на объекте
  • Слабые стороны: громоздкий для сложных вычислений, трудно работать с массивами и структурами
  • Где использовать: дискретное управление, простые блокировки, пусковые последовательности

Пример: управление насосом с блокировками (сухой ход, перегрузка, ручной/автоматический режим) — 20-30 строк LD. То же самое на ST — 10-15 строк, но понять их сможет не каждый обслуживающий инженер на объекте.

LD поддерживают все ПЛК: Delta DVP, Mitsubishi FX5U, Siemens S7-1200 — без исключений.

Structured Text (ST / SCL): текстовый язык

ST напоминает Pascal или C. Переменные, циклы FOR/WHILE, условия IF/THEN/ELSE, массивы, структуры. Для инженеров с опытом программирования — самый удобный язык.

  • Сильные стороны: компактный код, удобная работа с математикой, массивами, строками
  • Слабые стороны: сложнее диагностировать онлайн (нет визуальных «горящих» контактов)
  • Где использовать: ПИД-регулирование, рецептурное управление, обработка аналоговых сигналов, протоколы связи

В Siemens TIA Portal ST называется SCL (Structured Control Language). Функционально — то же самое, просто другое название. Mitsubishi GX Works3 поддерживает стандартный ST.

Function Block Diagram (FBD): блочная логика

FBD — графический язык, где логика строится из блоков: AND, OR, таймеры, счётчики, ПИД-регуляторы. Входы слева, выходы справа, блоки соединяются линиями.

  • Сильные стороны: наглядна для сложных функциональных зависимостей, удобна для аналоговой обработки
  • Слабые стороны: занимает много места на экране, неудобна для последовательной логики
  • Где использовать: регулирование, обработка сигналов, сложные математические функции

FBD часто используют в сочетании с LD: основная логика — на Ladder, а сложные вычислительные блоки — на FBD. Большинство сред позволяют миксовать языки в одном проекте.

Sequential Function Chart (SFC): последовательности

SFC описывает процесс как последовательность шагов и переходов. Шаг — набор действий, переход — условие перехода к следующему шагу. Идеально подходит для batch-процессов, рецептурного управления, пусковых последовательностей.

  1. Шаг 1: заполнить резервуар (открыть клапан, контролировать уровень)
  2. Переход: уровень достиг 80%
  3. Шаг 2: нагреть (включить нагреватель, контролировать температуру)
  4. Переход: температура достигла 60°C
  5. Шаг 3: перемешать (включить мешалку на 15 мин)

SFC поддерживают Mitsubishi GX Works3 (как Graph) и Siemens TIA Portal (как S7-Graph). Delta ISPSoft имеет ограниченную поддержку SFC.

Instruction List (IL): архаизм

IL — ассемблер для ПЛК. Мнемонические коды (LD, AND, OUT, MOV) выполняются последовательно. Был популярен в 1990-х, когда память контроллеров измерялась в килобайтах. Сейчас практически не используется, так как ST делает то же самое, но понятнее.

Какой язык выбрать: сравнительная таблица

ЯзыкТипСложностьЛучше всего дляПоддержка
LDГрафическийНизкаяДискретная логикаВсе ПЛК
FBDГрафическийНизкаяАналоговая обработкаВсе ПЛК
ST/SCLТекстовыйСредняяМатематика, массивы, рецептыБольшинство ПЛК
SFCГрафическийСредняяПоследовательности, batchSiemens, Mitsubishi
ILТекстовыйВысокаяУстарелОграничена

Рекомендация: начните с LD для простых задач, переходите на ST для сложных вычислений.

Часто задаваемые вопросы

Какой язык учить первым?

Ladder Diagram. Он самый распространённый, поддерживается всеми контроллерами и понятен людям с электротехническим образованием.

Можно ли миксовать языки в одном проекте?

Да. Большинство современных сред (TIA Portal, GX Works3, ISPSoft) позволяют создавать разные блоки программы на разных языках.

Чем SCL отличается от ST?

По сути — ничем. SCL — это название Siemens для языка Structured Text. Синтаксис немного отличается, но логика идентична.

Нужно ли знать все пять языков?

Нет. Для 90% задач достаточно LD + ST. FBD полезен для аналоговых сигналов. SFC — только для batch-процессов. IL не нужен для новых проектов.

Где научиться программировать ПЛК?

Бесплатно: TIA Portal Basic с встроенным симулятором PLCSIM. Курсы: Siemens SCE — есть партнёрские центры в Украине.

Итог

IEC 61131-3 даёт пять языков, но на практике хватает двух: LD для дискретной логики и ST для вычислений. Выбирайте язык под задачу, а не под моду.

Контроллеры с поддержкой всех языков IEC: Siemens S7-1200, Mitsubishi FX5U. Бюджетный вариант с LD/FBD/ST: Delta DVP.

Нужен частотный преобразователь для вашего двигателя?

Подберём оптимальное решение по мощности, напряжению и типу нагрузки

Смотреть каталог Консультация

Поширені запитання

Ladder Diagram. Он самый распространённый, поддерживается всеми контроллерами и понятен людям с электротехническим образованием.