Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Программирование промышленных контроллеров. Учебное пособие

.pdf
Скачиваний:
1
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
Министерство науки и высшего образования Российской Федерации
Федеральное государственное бюджетное
образовательное учреждение высшего образования
«Казанский национальный исследовательский
технологический университет»
А. Н. Ахмерова, А. Ю. Шарифуллина
ПРОГРАММИРОВАНИЕ
ПРОМЫШЛЕННЫХ
КОНТРОЛЛЕРОВ
Учебное пособие
Казань
Издательство КНИТУ
2019
1
УДК 004.384(075) ББК 32.97я7
А95
А95
Ахмерова А. Н.
Программирование промышленных контроллеров : учебное пособие / А. Н. Ахмерова, А. Ю. Шарифуллина; Минобрнауки России, Казан. нац. исслед. технол. ун-т. – Казань : Изд-во КНИТУ, 2019. – 84 с.
ISBN 978-5-7882-2689-7
ISBN 978-5-7882-2689-7
©
Ахмерова А. Н., Шарифуллина А. Ю., 2019
©
Казанский национальный исследовательский технологический университет, 2019
УДК 004.384(075) ББК 32.97я7
Печатается по решению редакционно-издательского совета
Казанского национального исследовательского технологического университета
Рецензенты:
канд. техн. наук, доц. Р. С. Зарипова
канд. техн. наук, доц. С. Ю. Ситников
Рассмотрены особенности организации структуры контроллеров, принципы их функционирования, средства разработки программного обеспе­чения промышленных контроллеров, а также пять основных языков про­граммирования, регламентированных стандартом МЭК-61131.
Предназначено для бакалавров, обучающихся по направлению 27.03.04 «Управление в технических системах», а также для магистров направления подготовки 09.04.01 «Информатика и вычислительная техника».
Подготовлено на кафедре систем автоматизации и управления техно­логическими процессами.
2
ВВЕДЕНИЕ
Программируемый логический контроллер (ПЛК) – это микро­процессорное устройство, предназначенное для управления техноло­гическими процессами в промышленности и другими сложными тех­нологическими объектами в режиме мягкого или жесткого реального времени. ПЛК (PLC – Programmable Logic Controller) также использу­ют в таких областях человеческой деятельности, как системы связи, станки с числовым программным управлением, сбор и архивирование данных, управление дорожным движением, системы охраны, меди­цинское оборудование, управление роботами, постановка физического эксперимента и т. д. Первое и главное преимущество ПЛК, которое обусловило их широкое распространение, заключается в том, что одно такое устройство может заменить десятки и сотни электромеханиче­ских реле. Второе преимущество в том, что функции логических кон­троллеров реализуются не аппаратно, а программно, что позволяет постоянно адаптировать их к работе в новых условиях с минимальны­ми усилиями и затратами.
Программируемые логические контроллеры отличаются от не­перепрограммируемых устройств управления следующими преиму­ществами: гибкостью, надежностью, меньшими габаритами; они мо­гут быть объединены в сети с другими устройствами и перенастраи­ваться по интернету; позволяют быстрее обнаружить ошибки, расхо­дуют меньше электроэнергии, требуют меньше затрат на изменение своих функций и структуры. Применение ПЛК обеспечивает простое тиражирование и обслуживание систем управления, ускоряет монтаж и наладку оборудования, обеспечивает возможность быстрого об­новления алгоритмов управления, в том числе и на работающем обо­рудовании.
Принцип работы ПЛК представлен на рис. 1 и заключается в сборе сигналов от датчиков, их обработке согласно заданной при­кладной программе пользователя с выдачей информационных и управляющих сигналов. Опрос входов и выходов контроллер осу­ществляет автоматически. Реализация данной функции заложена в системном программном обеспечении.
При создании прикладной программы чаще всего не имеет зна­чения, как подсоединены и где именно расположены датчики и испол­нительные механизмы, а также то, для какого контроллера пишется пользовательский код.
3
Рис. 1. Принцип работы ПЛК
Множество внутренних реле, счетчиков, таймеров, которые необ­ходимы для составления и работы программы, физически не существу­ют, они моделируются центральным процессором (ЦП) контролле­ра [1]. Именно благодаря этому в ограниченном объеме можно «разме­стить» огромное количество блоков, каждый из которых предназначен для имитации выполнения некоторой вполне конкретной задачи. Более подробно состав и взаимодействие отдельных компонентов внутренней структуры ПЛК представлены на рис. 2
Рис. 2. Общая схема внутренней структуры ПЛК
4
Успешность применения ПЛК для задач управления зависит от того, насколько подробно и правильно в контроллер вводится инфор­мация о состоянии и поведении объекта. Чтобы грамотно встроить ПЛК в разрабатываемую систему управления, достаточно выполнить несколько очевидных, но важных правил. К основным правилам отно­сятся следующие:
1) в контроллер должна быть введена информация о наиболее важных параметрах и характеристиках объекта, определяющих осо­бенности управления в данной задаче;
2) форма представления сигналов должна быть такой, которую контроллер в состоянии правильно воспринять.
Благодаря международному стандарту МЭК 61131 современные контроллеры отвечают требованиям унификации и стандартизации, что существенно упрощает процесс создания программного обеспече­ния для ПЛК. А сама прикладная программа является переносимой, т. е. ее можно использовать в любом ПЛК, поддерживающим данный стандарт. Таким образом, абсолютно одинаковые ПЛК могут выпол­нять совершенно разные функции. Причем для изменения алгоритма работы не требуется каких-либо переделок аппаратной части.
Модель аппаратного обеспечения программируемого контрол­лера [3] представлена на рис. 3.
Рис. 3. Модель аппаратного обеспечения
программируемого контроллера [3]
5
Общая структура с указанием основных функциональных ком­понентов системы с программируемым контроллером представлена на рис. 4 [2].
Рис. 4. Базовая функциональная структура ПЛК [2]
Основные компоненты системы выполняют следующие функции:
1) обработки сигналов;
2) интерфейса с датчиками и исполнительными приводами;
3) передачи данных;
4) человеко-машинного интерфейса (ЧМИ);
6
5) программирования, отладки, тестирования и документиро-
7
вания;
6) обеспечения электропитанием.
Перечисленные функции осуществляют обмен данными между собой и обрабатывают сигналы машины/процесса, подлежащего кон­тролю.
Функция обработки сигналов заключается в обработке сигналов, полученных от датчиков, а также из области хранения внутренних данных, формировании сигналов для исполнительных механизмов и для записи в область хранения внутренних данных в соответствии с прикладной программой.
Функция реализации интерфейса с датчиками и исполнитель­ными приводами преобразует входные сигналы и/или данные, полу­ченные от установки/процесса, в соответствующие уровни для после­дующей обработки, а также преобразует выходные сигналы и/или данные, полученные в результате выполнения функции обработки сигналов, в соответствующие стандартные уровни, обеспечивающие управление исполнительными механизмами и/или дисплеями.
Функция передачи данных заключается в обмене данными с другими системами или устройствами, такими как другие ПЛК и компьютеры.
Функция ЧМИ заключается в обеспечении взаимодействия че­ловека-оператора с данными, получаемыми в результате выполнения функции обработки сигналов, а также поступающими от установ­ки/процесса.
Функции программирования, отладки, тестирования, докумен­тирования заключаются в загрузке и генерации прикладной програм­мы, ее мониторинге, тестировании и отладке, а также в документиро­вании и архивировании.
Функции обеспечения электропитанием заключаются в преобразо­вании напряжений и изоляции цепей ПЛК от сети электроснабжения.
7
1. СТАНДАРТ МЭК 61131
МЭК 61131 – это международный стандарт, состоящий из набо­ра стандартов для программируемых контроллеров и связанных с ни­ми периферийных устройств. Так же существуют международный стандарт IEC 61131 и соответствующий европейский стандарт EN
61131. МЭК-61131 состоит из следующих частей:
1) МЭК 61131-1. Контроллеры программируемые. Часть 1.
Общая информация.
2) МЭК 61131-2. Контроллеры программируемые. Часть 2.
Требования к оборудованию и испытания.
3) МЭК 61131-3. Контроллеры программируемые. Часть 3.
Языки программирования.
4) МЭК 61131-4. Контроллеры программируемые. Часть 4. Ру-
ководство пользователя.
5) МЭК 61131-5. Контроллеры программируемые. Часть 5.
Связь.
6) МЭК 61131-6. Контроллеры программируемые. Часть 6. Без-
опасность функциональная.
7) МЭК 61131-7. Контроллеры программируемые. Часть 7. Про-
граммирование нечеткого управления.
8) МЭК 61131-8. Измерение и управление производственным процессом. Контроллеры программируемые. Часть 8. Руководящие указания по применению и реализации языков программирования.
9) МЭК 61131-9. Контроллеры программируемые. Часть 9. Одноточечный интерфейс цифровой связи для небольших датчиков и исполнительных устройств.
Стандарт МЭК 61131-3 регламентирует пять языков программи­рования для контроллеров, что является результатом анализа множе­ства языков, которые использовались на практике и предлагались производителями ПЛК. Цель стандарта – повышение скорости и каче­ства разработки программ для программируемых логических контрол­леров, создание языков программирования, ориентированных на тех­нологов и обеспечение соответствия ПЛК идеологии открытых си­стем, а также исключение этапа дополнительного обучения персонала при смене типа ПЛК.
Стандарт устанавливает следующие МЭК-языки:
1) диаграммы функциональных блоков (Function Block Dia-
gram);
2) релейно-контактные схемы или релейные диаграммы (Ladder
Diagram);
8
3) структурированный текст (Structured Text);
4) список инструкций (Instruction List);
5) последовательные функциональные схемы (Sequential
Function Chart).
Графическими языками являются: функциональные блок-схемы (Function Block Diagram или FBD), схема последовательных функций (Sequential Function Chart или SFC), лестничные диаграммы (Ladder Diagram или LD). Структурированный текст (Structured Text или ST) и список команд (Instruction List или IL) – текстовые языки.
Наиболее распространенными при решении задач управления объекта являются [4]:
1. Задачи параллельной обработки большого числа логических контуров (сотен и тысяч) с обработкой исполнительных действий при наступлении тех или иных событий. В основе логического контура ле­жит проверка истинности логической функции от нескольких перемен­ных, а событие равнозначно истинности этой функции. Задачи такого рода характерны, например, для таких технологических объектов, как электростанции, химические производства и производства по перера­ботке нефти. Задача адекватно и наглядно описывается системой буле­вых уравнений. Все языки стандарта, за исключением SFC, хорошо подходят для описания подобных задач, поскольку они или содержат в себе средство представления булевых функций (языки IL, ST), или яв­ляются графической формой их отображения (языки LD, FBD).
2. Задачи управления процессом, проходящим в своем развитии через ряд состояний (шагов, стадий). Переход от одного состояния к другому происходит по событиям, формируемым по сигналам датчи­ков процесса. Такие задачи управления возникают, например, при управлении транспортно-складскими системами, агрегатными станка­ми, робототехническими комплексами, характерны они и для объектов, перечисленных в п. 1, в частности, при пуске и останове турбины и др. Задачи данного типа наиболее наглядно представляются автоматными моделями. В стандарте такая модель строится с использованием языка SFC (разметка состояний, логика управления) и любого другого языка (описание действий, связанных с состоянием, и событий, предписыва­ющих смену состояний). Заметим, что подобные задачи могут быть полностью представлены с помощью других языков стандарта, напри­мер языка FBD с использованием элементов памяти – триггеров, но в этом случае автоматная модель будет выражена неявно.
3. Задачи автоматического регулирования (ПИД-законы, не­четкое управление и т. д.) встречаются практически везде. Здесь, как
9
правило, используются библиотеки заранее разработанных компонен­тов – графических блоков для языков LD и FBD и подпрограмм для языков ST и IL.
4. Задачи управления распределенными технологическими объ­ектами, оптимизационные, а также задачи, связанные с интел­лектуальным анализом данных. Задачи такого типа решаются в слож­ных технологических объектах типа химических производств. Здесь в качестве средств адекватного описания могут использоваться языки ST, универсальные типа С, С++, Паскаль, сценарные типа Visual Basic, объектно-ориентированные типа Java.
Общий вид модели программного обеспечения согласно [5],
представлен на рис. 1.1.
Рис. 1.1. Модель программного обеспечения
Конфигурация – элемент языка, соответствующий системе про­граммируемого контроллера, содержит один или более ресурсов, каж­дый из которых содержит одну или более программ, выполняемых под контролем нуля или более задач. Программа может содержать нуль или более экземпляров функциональных блоков или других элементов языка. Поставленная задача позволяет выполнить набор программ и экземпляров функциональных блоков.
10
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]