Программируемый логический контроллер
Программи́руемый логи́ческий контро́ллер (сокр. ПЛК; англ. programmable logic controller, сокр. PLC; более точный перевод на русский — контроллер с программируемой логикой) — цифровая электронная система, предназначенная для применения в производственной среде[1] в качестве системы управления промышленным оборудованием в режиме реального времени. ПЛК относится к классу промышленных контроллеров[2].
ПЛК имеют следующие особенности:
- Являются самостоятельными, отдельными от управляемого оборудования системами;
- Ориентированы как на автономную работу с оборудованием, так и на управление технологическим процессом с использованием человеко-машинного интерфейса[3];
- В системах управления промышленными технологическими объектами широко используются команды двоичной (битовой) логики, поэтому все языки программирования ПЛК наряду с возможностью реализации математических операций дополнительно дают возможность построения управляющих логических цепей с использованием битовых переменных, принимающих только два значения: «логический 0» или «логическая 1» (см.алгебра логики).
История
До появления ПЛК управление промышленным оборудованием осуществлялось посредством систем управления, построенных на базе релейно-контактных схем (ladder diagram or relay ladder diagram)[1], а также посредством систем, построенных на диодно-транзисторной либо транзисторно-транзисторной логике. Такие системы имеют узконаправленный характер применения, поскольку алгоритм их работы не может быть изменен после этапа проектирования и монтажа, поэтому они получили название систем с жёсткой (монтажной) логикой.
С развитием микропроцессорной техники стало возможным создание компактных свободно программируемых систем управления, что дало возможность решения инженерных задач по управлению оборудованием практически во всех сферах промышленного производства с использованием универсальных цифровых блоков и модулей.
Первым в мире программируемым контроллером в 1968 году стал Modicon 084 (от англ. modular digital controller), в разработке которого принимал участие Ричард Э.Морли, а в 1971 году инженеры американской компании Allen-Bradley разработали устройство Bulletin 1774 PLC, впервые использовав термин programmable logic controller — PLC. Аббревиатура PLC является зарегистрированным товарным знаком компании Allen-Bradley.
Первые ПЛК имели небольшое количество дискретных (битовых) входов и выходов и несколько килобайт памяти, а логика их работы программировалась в специальном редакторе в виде схемы соединений, похожей на те, которые использовались в обычной релейно-контактной логике, только реле и контакты были виртуальными, то есть существовали в виде программы ПЛК. Поскольку релейные схемы были знакомы инженерам и техникам, обслуживающим прежние системы управления, они могли без углублённой подготовки интерпретировать программы и вносить в них изменения.
В настоящее время ПЛК — это высокопроизводительные мощные цифровые системы, позволяющие создавать системы управления практически любой сложности. Крупнейшими мировыми производителями ПЛК на сегодняшний день являются компании:
- Siemens AG;
- Allen-Bradley;
- Rockwell Automation;
- Schneider Electric;
- Omron.
Кроме этих компаний, ПЛК выпускают и многие другие производители, включая российские компании:
- ООО КОНТАР;
- ООО Овен;
- Сегнетикс;
- Fastwel Групп, группа компаний Текон и другие[4].
Устройство ПЛК
По конструктивному исполнению ПЛК делят на моноблочные и модульные. В корпусе моноблочного ПЛК наряду с центральным процессором, памятью и блоком питания размещается фиксированный набор дискретных или аналоговых входов/выходов. Моноблочные ПЛК предназначены для создания небольших систем управления простыми процессами.
Для более сложных систем управления используются модульные ПЛК. В системах средней и высокой степени сложности это распределённые системы с разнесёнными стойками, шкафами[5] и пультами местного управления. В этом случае модульный ПЛК включает в себя центральную станцию с модулем ЦП и удалённые станции распределённой периферии (станции расширения) с интерфейсными модулями связи, соединённые между собой в общую систему.
В станциях распределённой периферии кроме интерфейсных модулей размещаются модули ввода/вывода дискретных сигналов, модули ввода/вывода аналоговых сигналов, а также специализированные функциональные модули для решения задач счета импульсов, измерения сигналов тензодатчиков и т. д.
Для осуществления коммуникаций между центральной станцией с модулем ЦП и периферийными станциями используются специализированные сети:
При построении систем высокой степени сложности в сеть могут быть объединены несколько ЦП, каждый из которых имеет свой набор станций расширения. Как правило, в таких системах отдельные модули ЦП имеют возможность обмена данными между собой.
В настоящее время практически все системы управления на базе ПЛК имеют выход на системы диспетчерского управления и контроля, использующие либо специализированные панели управления, либо персональные компьютеры, оснащённые соответствующим программным обеспечением.
Модули ПЛК
Тип и количество применяемых модулей зависит от специфики решаемой задачи.
В модулях ввода/вывода используют стандартизированные величины уровней электрических сигналов стандарта МЭК 61131-2-92[6], применяемых в промышленных устройствах.
В модулях ввода/вывода дискретных (битовых) сигналов это напряжения 12 В или 24 В постоянного тока, 110 В или 230 В переменного тока.
В модулях аналогового ввода/вывода это токи в диапазоне (0-20) мА, (4-20) мА, напряжения в диапазоне (0-5) В, (0-10) В постоянного тока.
При разработке проекта системы управления в модулях ввода/вывода схемным входам и выходам присваиваются уникальные логические адреса, используемые в дальнейшем в качестве переменных при создании управляющих программ.
Языки программирования ПЛК
Для программирования ПЛК используются стандартизированные языки МЭК (IEC) стандарта IEC61131-3[1]. Структурно языки программирования подразделяются на следующие категории:
графические языки программирования[7]
- LD (Ladder Diagram) — язык релейных схем, самый распространённый язык для PLC;
- FBD (Function Block Diagram) — язык функциональных блоков;
- SFC (Sequential Function Chart) — язык диаграмм состояний, используется для программирования пошаговых автоматов,
текстовые языки программирования[8]
- IL (Instruction List) — Ассемблеро-подобный язык;
- ST (Structured Text) — Паскале-подобный язык;
- C-YART — Си-подобный язык (YART Studio).
Среда программирования может быть специализированной, для отдельного семейства ПЛК, или универсальной, работающей с разными моделями контроллеров.
Так, специализированная среда программирования Simatic Step 7[7][8] (SIMATIC — торговая марка концерна Siemens AG, объединяющая различные средства промышленной автоматизации) предназначена для написания, отладки и контроля исполнения программ для ПЛК производства концерна Siemens[9]. В последних версиях является опцией, встроенной в интегрированную среду TIA Portal (Totally Integrated Automation Portal)[10].
Среда программирования CoDeSys[11] (продукт компании 3S-Smart Software Solutions GmbH) является универсальным инструментом для программирования ПЛК ведущих европейских изготовителей:
- ABB;
- Beckhoff;
- Lenze;
- Moeller;
- WAGO,
а также отечественных ПЛК, выпускаемых фирмами ООО ОВЕН, ООО Fastwel Групп и другими.
Среда программирования ISaGRAF так же является универсальной и работает с ПЛК отечественного производства:
- MKLogic-500;
- ПЛК3000;
- Bailkal-M;
- Трансформер-SL;
- МФК1500
Программирование ПЛК
Программирование ПЛК отличается от традиционного программирования. Это связано с тем, что ПЛК исполняют бесконечно повторяющуюся последовательность программных циклов, в каждом из которых осуществляется:
- считывание входных сигналов;
- обработка поступившей информации в соответствии с заданным алгоритмом;
- выдача управляющих воздействий на исполнительные механизмы (контакторы электродвигателей, катушки электромагнитов соленоидных клапанов и т. д.).
Программа может загружаться в ПЛК как с обычного ПК, на который предустановлена соответствующая среда программирования, так и с использованием специального ПК — программатора. Среда программирования, как правило, имеет опции контроля исполнения программы и её отладки в режиме онлайн (англ.online). Кроме того, режим онлайн позволяет следить за состоянием поступающих с датчиков сигналов и производить визуальную диагностику оборудования.
Управление посредством человеко-машинного интерфейса
SCADA (аббр. от англ. Supervisory Control And Data Acquisition — диспетчерское управление и сбор данных)
Примечания
- ↑ 1,0 1,1 1,2 ГОСТ Р МЭК 61131-1—2016 Контроллеры программируемые. Часть 1. Общая информация. . Дата обращения: 24 апреля 2023.
- ↑ Промышленные контроллеры .
- ↑ ГОСТ МЭК 60447-2000. ИНТЕРФЕЙС ЧЕЛОВЕКО-МАШИННЫЙ .
- ↑ Введение в ПЛК: что такое программируемый логический контроллер .
- ↑ ГОСТ 28601.2-90 Шкафы и стоечные конструкции .
- ↑ ГОСТ Р 51841-2001 (МЭК 61131-2-92) Программируемые контроллеры. Общие технические требования и методы испытаний .
- ↑ 7,0 7,1 Бергер Ганс. Автоматизация посредством STEP 7 с использованием LAD и FBD и програмируемых контроллеров SIMATIC S7-300/400 .
- ↑ 8,0 8,1 Бергер Ганс Автоматизация посредством STEP 7 с использованием STL и SCL .
- ↑ Данные CPU SIEMENS-SIMATIC S7-300. Справочное руководство. .
- ↑ SIEMENS TIA Portal — программный продукт для проектирования компонентов автоматизации SIMATIC! .
- ↑ МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ. ПРОГРАММИРОВАНИЕ ПЛК В CoDeSys .
Ссылки
Данная статья имеет статус «готовой». Это не говорит о качестве статьи, однако в ней уже в достаточной степени раскрыта основная тема. Если вы хотите улучшить статью — правьте смело! |
Данная статья имеет статус «проверенной». Это говорит о том, что статья была проверена экспертом |