Производство по чертежам Подбор аналогов Цены производителя Оригинальная продукция в короткие сроки
INNERпроизводство и поставка промышленных комплектующих и оборудования
Отзыв ★★★★★ Будем благодарны за отзыв в Яндексе — это помогает нам развиваться Оставить отзыв →
Правовая информация Условия использования технических материалов и калькуляторов Правовая информация →
INNER
Контакты

Программируемые логические контроллеры (ПЛК)

  • 27.01.2026
  • Познавательное
Языки программирования стандарта IEC 61131-3
Язык Обозначение Тип Применение
Ladder Diagram LD Графический Булевые операции, логические схемы, релейная автоматика
Function Block Diagram FBD Графический Непрерывные процессы, регулирование, обработка данных
Sequential Function Chart SFC Графический Последовательные процессы, пошаговые алгоритмы
Structured Text ST Текстовый Сложные вычисления, математические операции, алгоритмы
Instruction List IL Текстовый Низкоуровневое программирование, оптимизация кода
Примечание: в редакции IEC 61131-3:2025 (Edition 4) язык IL исключен. ГОСТ Р МЭК 61131-3-2016 основан на редакции IEC 61131-3:2013, которая включает все пять языков
Типы модулей ввода-вывода ПЛК
Тип модуля Назначение Характеристики
Дискретный ввод (DI) Прием сигналов вкл/выкл Напряжение 24 В DC, частота опроса 1-10 мс
Дискретный вывод (DO) Управление исполнительными устройствами Релейные, транзисторные, симисторные выходы
Аналоговый ввод (AI) Измерение непрерывных величин Диапазоны 0-10 В, 4-20 мА, разрядность 12-16 бит
Аналоговый вывод (AO) Формирование управляющих сигналов Выходы 0-10 В, 4-20 мА, точность 0,1-0,5%
Коммуникационные Сетевое взаимодействие Ethernet, PROFIBUS, Modbus RTU/TCP, RS-485
Источник: IEC 61131-2, технические спецификации производителей
Основные компоненты архитектуры ПЛК
Компонент Функции Технические параметры
Центральный процессор (CPU) Выполнение программы, обработка данных, управление модулями Время выполнения инструкций 1 нс - 0,1 мкс, рабочая память 50 КБ - 32 МБ
Оперативная память (RAM) Хранение переменных, промежуточных данных Объем 64 КБ - 64 МБ, батарейное питание при отключении
Флэш-память Хранение программы пользователя, системного ПО Объем 256 КБ - 2 ГБ, энергонезависимая
Системная шина Обмен данными между модулями Скорость 10-100 Мбит/с, параллельная или последовательная
Источник питания Преобразование напряжения, питание модулей Вход 100-240 В AC, выход 24 В DC, мощность 30-500 Вт
Источник: IEC 61131-1, документация Siemens S7-1200/1500, ABB AC 800F

Программируемые логические контроллеры представляют собой специализированные вычислительные устройства, предназначенные для управления технологическими процессами в промышленности. Современные контроллеры реализуют функции автоматизации на основе программного обеспечения, разработанного согласно международным стандартам.

Архитектура программируемых логических контроллеров

Типовая архитектура контроллера включает центральный процессорный модуль, модули ввода-вывода, блок питания и коммуникационные интерфейсы. Центральный процессор выполняет функции обработки программы пользователя, управления обменом данными с модулями ввода-вывода, выполнения диагностических процедур и обеспечения связи с внешними системами.

Центральный процессорный модуль

Процессорный модуль содержит микропроцессор, оперативную память для хранения данных и программы пользователя, энергонезависимую память для системного программного обеспечения. Современные контроллеры используют различные архитектуры процессоров, включая RISC и ARM Cortex, обеспечивающие высокое быстродействие обработки логических операций. Производительность контроллеров характеризуется временем выполнения инструкций, которое составляет от 1 наносекунды в высокопроизводительных моделях до 0,1 микросекунды в компактных контроллерах.

Оперативная память контроллера подразделяется на несколько областей. Область образа процесса хранит состояния входов и выходов, область данных содержит переменные программы, системная область используется операционной системой контроллера. Объем рабочей памяти в современных контроллерах варьируется от 50 килобайт в компактных моделях до 32 мегабайт в высокопроизводительных системах. Программная память может достигать нескольких гигабайт при использовании карт памяти.

Модули ввода-вывода

Модули ввода обеспечивают прием сигналов от датчиков и устройств контроля технологического процесса. Дискретные модули ввода работают с двоичными сигналами напряжением обычно 24 В постоянного тока. Время опроса входного сигнала составляет 1-10 миллисекунд. Аналоговые модули ввода преобразуют непрерывные сигналы датчиков в цифровую форму с разрядностью 12-16 бит.

Модули вывода формируют управляющие воздействия на исполнительные механизмы. Релейные выходы применяются для коммутации нагрузок переменного тока, транзисторные выходы используются для управления устройствами постоянного тока, симисторные выходы работают с нагрузками переменного тока без механических контактов. Время реакции выходного модуля находится в диапазоне 0,5-10 миллисекунд.

Важно учитывать

Модули ввода-вывода включают цепи гальванической развязки для защиты процессора от помех и перенапряжений. Гальваническая изоляция реализуется оптопарами, обеспечивающими электрическую развязку до 1500 В между внешними цепями и внутренней логикой контроллера.

Конструктивные исполнения

Моноблочные контроллеры объединяют процессор и модули ввода-вывода в едином корпусе. Такая конструкция применяется для компактных систем с количеством точек ввода-вывода до 100. Преимуществами моноблочной конструкции являются низкая стоимость, простота монтажа, компактные габариты.

Модульные контроллеры состоят из отдельных модулей, устанавливаемых в монтажную корзину. Процессорный модуль, модули ввода-вывода, коммуникационные модули объединяются системной шиной. Модульная архитектура обеспечивает масштабируемость системы от нескольких десятков до нескольких тысяч точек ввода-вывода.

↑ К оглавлению

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

Международный стандарт IEC 61131-3 определяет унифицированный набор языков программирования для промышленных контроллеров. Стандарт был впервые опубликован в 1993 году и претерпел несколько редакций. Третья редакция IEC 61131-3:2013 определяет пять языков программирования (LD, FBD, SFC, ST, IL). Четвертая редакция IEC 61131-3:2025, опубликованная в мае 2025 года, исключает язык IL, оставляя четыре языка программирования. В Российской Федерации действует ГОСТ Р МЭК 61131-3-2016, идентичный третьей редакции международного стандарта.

Графические языки программирования

Язык релейных диаграмм LD воспроизводит графическое представление релейно-контактных схем. Программа представляется в виде горизонтальных цепей, содержащих контакты входов и катушки выходов. Этот язык интуитивно понятен специалистам, знакомым с традиционной релейной автоматикой, и применяется для программирования булевых операций и простых логических алгоритмов.

Язык функциональных блоков FBD использует графическое представление логических и арифметических функций в виде блоков. Блоки соединяются линиями передачи данных, образующими поток обработки информации. FBD применяется для программирования непрерывных процессов регулирования, обработки аналоговых сигналов, реализации сложных алгоритмов управления.

Язык последовательных функциональных схем SFC предназначен для описания последовательных процессов. Программа состоит из шагов, переходов между шагами и действий, выполняемых на каждом шаге. К каждому переходу прикрепляется логическое условие, при выполнении которого происходит переход к следующему шагу. SFC эффективен для программирования технологических процессов с четко определенной последовательностью операций.

Текстовые языки программирования

Язык структурированного текста ST представляет собой высокоуровневый язык, синтаксически близкий к языку Pascal. ST содержит конструкции присваивания, условных операторов IF-THEN-ELSE, операторов выбора CASE, циклов FOR, WHILE, REPEAT. Язык применяется для реализации сложных математических вычислений, обработки массивов данных, создания пользовательских функций и функциональных блоков.

Язык списка инструкций IL является низкоуровневым текстовым языком, близким к ассемблеру. Программа состоит из последовательности инструкций, работающих с аккумулятором. В редакции стандарта IEC 61131-3:2025 (Edition 4), опубликованной в мае 2025 года, язык IL исключен из состава стандарта. Действующий в Российской Федерации ГОСТ Р МЭК 61131-3-2016 основан на редакции IEC 61131-3:2013 (Edition 3) и сохраняет IL в составе стандартных языков программирования.

Обратите внимание

Языки стандарта IEC 61131-3 могут комбинироваться в рамках одного проекта. Различные части программы разрабатываются на наиболее подходящих языках, что повышает эффективность разработки и читаемость кода.

Программные организационные единицы

Стандарт определяет иерархическую структуру программы контроллера. Функция представляет элемент программы без внутренней памяти, выполняющий преобразование входных данных в выходные. Функциональный блок содержит внутреннее состояние и может использоваться многократно с различными экземплярами данных. Программа объединяет функции и функциональные блоки для решения конкретной задачи управления.

Конфигурация соответствует системе контроллера в целом и содержит один или несколько ресурсов. Ресурс представляет функцию обработки сигналов и содержит одну или более программ, выполняемых под управлением задач. Задача определяет периодичность или условия вызова программ и функциональных блоков.

↑ К оглавлению

Программная архитектура и цикл работы ПЛК

Контроллер функционирует в циклическом режиме, обеспечивающем периодическое выполнение программы пользователя. Цикл работы начинается со считывания состояний всех входов в область образа входов, затем выполняется программа пользователя, после чего происходит запись данных из области образа выходов в физические выходы контроллера.

Этапы цикла сканирования

На первом этапе цикла система выполняет самодиагностику, проверку конфигурации модулей, обработку системных прерываний. Затем производится чтение физических входов и запись их состояний в оперативную память. Это обеспечивает консистентность данных при выполнении программы, так как значения входов не изменяются в течение цикла.

Второй этап представляет собой выполнение программы пользователя. Процессор последовательно обрабатывает инструкции программы, используя данные из области образа входов и переменных. Результаты вычислений записываются в область образа выходов. Время выполнения программы зависит от ее сложности и производительности процессора.

Третий этап включает запись данных из области образа выходов в физические выходы контроллера, обработку коммуникационных запросов, обновление диагностической информации. После завершения цикла система переходит к началу нового цикла сканирования.

Время цикла и производительность

Время цикла контроллера является важным параметром, определяющим быстродействие системы управления. Типичное время цикла для контроллеров среднего класса составляет 1-20 миллисекунд. Высокопроизводительные контроллеры обеспечивают время цикла менее 1 миллисекунды. Превышение максимально допустимого времени цикла вызывает ошибку сторожевого таймера и переход контроллера в безопасное состояние.

Для обработки критичных по времени событий применяются аппаратные прерывания. Прерывание позволяет приостановить выполнение основной программы и обработать событие с минимальной задержкой. Примерами прерываний являются счетные импульсы от энкодеров, аварийные сигналы, события от коммуникационных модулей.

Практическое применение

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

↑ К оглавлению

Промышленные решения Siemens и ABB

Ведущие производители промышленной автоматизации предлагают контроллеры и программное обеспечение, соответствующие или частично совместимые со стандартом IEC 61131-3. Рассмотрим решения компаний Siemens и ABB, широко применяемые в различных отраслях промышленности.

Платформа Siemens SIMATIC

Контроллеры семейства SIMATIC S7-1200 предназначены для малых и средних систем автоматизации. Процессор объединяет центральный процессорный модуль, встроенные входы-выходы, интерфейсы связи в компактном корпусе. Контроллер поддерживает до 8 локальных модулей расширения и до 3 коммуникационных модулей. Объем рабочей памяти составляет от 50 до 150 килобайт, программной памяти от 100 до 250 килобайт в зависимости от модификации процессора. Время выполнения битовых операций составляет около 0,1 микросекунды.

Среда программирования TIA Portal интегрирует функции конфигурирования аппаратной части, программирования контроллера, разработки систем визуализации. Программирование контроллеров S7-1200 и S7-1500 выполняется на языках LAD (аналог LD), FBD, SCL (аналог ST), GRAPH (аналог SFC). Среда обеспечивает симуляцию контроллера для отладки программы без физического оборудования.

Контроллеры SIMATIC S7-1500 представляют высокопроизводительную линейку для сложных задач автоматизации. Процессоры этого семейства обеспечивают время выполнения битовых операций около 1 наносекунды, операций с плавающей точкой около 6 наносекунд. Объем рабочей памяти составляет от 150 килобайт до нескольких мегабайт в зависимости от модели. Контроллер поддерживает до 32 локальных модулей и обширные коммуникационные возможности через интерфейс PROFINET.

Система ABB Freelance

ABB Freelance представляет гибридную систему управления, объединяющую преимущества распределенных систем управления и программируемых контроллеров. Контроллеры AC 800F поддерживают до 1000 точек ввода-вывода на один процессорный модуль, могут работать в резервированной конфигурации для повышения надежности. Контроллеры AC 900F поддерживают до 1500 точек ввода-вывода.

Среда программирования Control Builder F поддерживает языки FBD и SFC согласно стандарту IEC 61131-3. Язык ST не поддерживается в данной среде разработки. Система характеризуется единой информационной моделью, интегрирующей конфигурацию контроллеров, разработку алгоритмов управления, создание операторского интерфейса в рамках одного проекта.

Контроллеры AC 700F предназначены для распределенных систем автоматизации. Компактный корпус содержит процессор и до 8 модулей локального ввода-вывода. Встроенный интерфейс Ethernet позволяет размещать контроллер непосредственно в распределенных шкафах управления, минимизируя длину кабельных линий до датчиков и исполнительных механизмов.

Совместимость со стандартом

Программное обеспечение различных производителей может иметь отличия от стандарта IEC 61131-3. При выборе платформы необходимо учитывать степень соответствия стандарту, если планируется переносимость программ между системами разных производителей.

↑ К оглавлению

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

Третья редакция стандарта IEC 61131-3:2013 определяет пять языков программирования: три графических (LD, FBD, SFC) и два текстовых (ST, IL). Четвертая редакция IEC 61131-3:2025, опубликованная в мае 2025 года, исключила язык IL, оставив четыре языка. Действующий в России ГОСТ Р МЭК 61131-3-2016 основан на третьей редакции и включает все пять языков.
Моноблочные контроллеры объединяют процессор и модули ввода-вывода в едином корпусе, что обеспечивает компактность и низкую стоимость. Модульные контроллеры состоят из отдельных модулей, устанавливаемых в монтажную корзину, что позволяет масштабировать систему и заменять отдельные компоненты.
Время цикла представляет собой период выполнения программы пользователя, включая чтение входов, выполнение алгоритма и запись выходов. Типичное время цикла составляет 1-20 миллисекунд. Превышение допустимого времени цикла приводит к ошибке сторожевого таймера и остановке контроллера.
Основные типы включают дискретные модули ввода-вывода для работы с двоичными сигналами, аналоговые модули для обработки непрерывных сигналов напряжения или тока, а также специализированные модули для высокоскоростного счета, измерения температуры, позиционирования приводов.
Гальваническая развязка обеспечивает электрическую изоляцию между внешними цепями и внутренней логикой контроллера. Это защищает процессор от помех, перенапряжений и коммутационных бросков, которые могут возникать в промышленных условиях. Типичный уровень изоляции составляет 1500 В.
Стандарт IEC 61131-3 предусматривает возможность комбинирования языков в рамках одного проекта. Различные программные организационные единицы могут быть написаны на разных языках, что позволяет использовать наиболее подходящий язык для каждой конкретной задачи.
Появились вопросы?

Вы можете задать любой вопрос на тему нашей продукции или работы нашего сайта.