Программируемые логические контроллеры
Программи́руемый логи́ческий контро́ллер (ПЛК) (англ. Programmable Logic Controller, PLC) или программируемый контроллер — электронная составляющая промышленного контроллера, специализированного (компьютеризированного) устройства, используемого для автоматизации технологических процессов. В качестве основного режима длительной работы ПЛК, зачастую в неблагоприятных условиях окружающей среды, выступает его автономное использование, без серьёзного обслуживания и практически без вмешательства человека.
Иногда на ПЛК строятся системы числового программного управления станком (ЧПУ,англ. Computer numerical control, CNC).
ПЛК являются устройствами реального времени.
В отличие от:
- микроконтроллера (однокристального компьютера), микросхемы предназначенной для управления электронными устройствами, областью применения ПЛК обычно являются автоматизированные процессы промышленного производства, в контексте производственного предприятия;
- компьютеров, ПЛК ориентированы на работу с машинами и имеют развитый ‘машинный’ ввод-вывод сигналов датчиков и исполнительных механизмов в противовес возможностям компьютера, ориентированного на человека (клавиатура, мышь, монитори т. п.);
- встраиваемых систем — ПЛК изготавливается как самостоятельное изделие, отдельно от управляемого при его помощи оборудования.
Первые логические контроллеры появились в виде шкафов с набором соединённых между собой реле и контактов. Эта схема задавалась жёстко на этапе проектирования и не могла быть изменена далее.
Первый в мире ПЛК — MOdular DIgital CONtroller (Modicon) 084, имеющий память 4 кБ, произведен в 1968 году.
В первых ПЛК, пришедших на замену обычным логическим контроллерам, логика соединений программировалась схемой соединений LD(Ladder logic Diagram). Устройство имело тот же принцип работы, но реле и контакты (кроме входных и выходных) были виртуальными, то есть существовали в виде программы, выполняемой микроконтроллером ПЛК. Современные ПЛК являются «свободно программируемыми».
В системах управления технологическими объектами логические команды преобладают над числовыми операциями, что позволяет при сравнительной простоте микроконтроллера (шины шириной 8 или 16 бит), получить мощные системы действующие в режиме реального времени. В современных ПЛК числовые операции реализуются наравне с логическими. В то же время, в отличие от большинства процессоров компьютеров, в ПЛК обеспечивается доступ к отдельным битам памяти.
Виды ПЛК
Основные ПЛК
-
- Siemens — SIMATIC S5 и S7;
- Segnetics — Pixel 2511 и SMH 2Gi;
- Omron;
- Mitsubishi — серия Melsec (FX, Q);
- Schneider Electric — Modicon серий Twido, M340, TSX Premium, TSX Quantum;
- Beckhoff
- Allen-Bradley
Программируемое (интеллектуальные) реле
-
- Siemens LOGO!,
- Mitsubishi — серия Alpha XL,
- Schneider Electric — Zelio Logic,
- Omron — ZEN,
- Moeller — EASY, MFD-Titan,
- Comat BoxX.
- ОВЕН ПР110
Программные ПЛК на базе IBM PC-совместимых компьютеров (англ. SoftPLC)
Распределённые системы управления SCADA, DCS
Интерфейсы ПЛК
ПЛК в своём составе не имеют интерфейса для человека, типа клавиатуры и дисплея. Их программирование, диагностика и обслуживание производится подключаемыми для этой цели программаторами — специальными устройствами или устройствами на базе более современных технологий — персонального компьютера или ноутбука, со специальными интерфейсами и со специальным программным обеспечением (например, SIMATIC STEP 7 в случае ПЛК SIMATIC S7-300 или SIMATIC S7-400). В системах управления технологическими процессами ПЛК взаимодействуют с различными компонентами систем человеко-машинного интерфейса (например операторскими панелями) или рабочими местами операторов на базе ПК, часто промышленных, обычно через промышленную сеть.
Датчики и исполнительные устройства подключаются к ПЛК:
- централизованно: в корзину ПЛК устанавливаются модули ввода-вывода и датчики и исполнительные устройства подключаются отдельными проводами непосредственно, либо при помощи согласовательных модулей, к входам/выходам сигнальных модулей;
- или по методу распределённой периферии, когда удалённые от ПЛК датчики и исполнительные устройства связаны с ПЛК посредством каналов связи и, возможно, корзин-расширителей с использованием связей типа «ведущий-ведомый» (англ. Master-Slave).
Коммуникации
- RS-232
- RS-485
- ProfiBus
- DeviceNet
- ControlNet
- CAN
- AS-Interface
- Промышленный Ethernet
Специальное использование
Для увеличения надёжности системы управления, построенной на ПЛК, применяется резервирование разных компонентов: шасси, источников питания, самих контроллеров.
Также, выпускаются специальные линейки продуктов: например Siemens, или Allen-Bradley выпускает всю линейку (ввод-вывод, интерфейсные модули и т.д. дополнительно к самим CPU).
Языки программирования ПЛК
Для программирования ПЛК используются стандартизированные языки МЭК (IEC) стандарта IEC61131-3
- Языки программирования для инженеров по автоматизации (графические)
Структурно в IEC61131-3 среда исполнения представляет собой набор ресурсов (в большинстве случаев это и есть ПЛК, хотя некоторые мощные компьютеры под управлением многозадачных ОС представляют возможность запустить несколько программ типа softPLC и имитировать на одном ЦП несколько ресурсов). Ресурс предоставляет возможность исполнять задачи. Задачи представляют собой набор программ. Задачи могут вызываться циклически, по событию, с максимальной частотой.
Программа — это один из типов программных модулей POU. Модули (Pou) могут быть типа программа, функциональный блок и функция.
- В некоторых случаях для программирования ПЛК используются нестандартные языки, например:
- Блок-схемы алгоритмов
- Си-ориентированная среда разработки программ для ПЛК.
- HiGraph 7 — язык управления на основе графа состояний системы.
Инструменты программирования ПЛК на языках МЭК 61131-3 могут быть специализированными для отдельного семейства ПЛК (например, STEP 7 для контроллеров SIMATIC S7-300/400) или универсальными, работающими с несколькими (но далеко не всеми) типами контроллеров:
устройства связи с объектами и ввода/вывода