- •Системы реального времени
- •Введение
- •Лабораторная работа №1 Программирование плк. Установка tia Portal
- •Принцип работы плк
- •Языки программирования промышленных контроллеров
- •Установка среды программирования плк Siemens tia Portal
- •Лабораторная работа №2 Конфигурирование аппаратной части системы управления на базе плк
- •Конфигурирование аппаратной части системы управления
- •Лабораторная работа №3 Разработка программы на языке lad
- •1. Основы разработки программы на языке lad
- •2. Программа для нереверсивного включения асинхронного двигателя.
- •3. Примеры программ c использованем команд счетчиков.
- •4. Тестирование работы программы
- •Лабораторная работа №4. Разработка программы на плк с использованием программных блоков и блоков данных
- •1. Организационные блоки в tia Portal
- •2. Функциональный блок для имитационной модели задвижки.
- •Лабораторная работа №5. Разработка программы управления технологическим процессом
- •Список рекомендованной литературы
Принцип работы плк
ПЛК (программируемый логический контроллер) представляет собой микропроцессорное устройство, предназначенное для сбора, преобразования, обработки, хранения информации и выработки команд управления. На входы ПЛК подключаются датчики, контакты кнопок и реле, а на выходы подключаются исполнительные механизмы (рис. 1.1).
Рисунок 1.1 Упрощенная схема работы ПЛК
Программное обеспечение универсальных контроллеров состоит из двух частей: системное программное обеспечении и пользовательская программа. Системное программное обеспечение – проводя аналогию с компьютером можно сказать, что это операционная система, т.е. управляет работой узлов контроллера, отвечает за организацию связи по сети с использованием специальных протоколов коммуникации
Цикл работы контроллера
Системное программное обеспечение ПЛК расположено в постоянной памяти центрального процессора. По включению питания ПЛК выполняет самотестирование и настройку аппаратных ресурсов.
Далее, если прикладная программа обнаружена в памяти, то ПЛК переходит к основной работе, которая состоит из постоянного повторения последовательности действий, входящих в цикл контроллера (рис. 1.2).
Рисунок 1.2 Цикл работы контроллера
Рабочий цикл ПЛК включает 3 фазы:
ПЛК производит физическое чтение входов. Прочитанные значения размещаются в оперативной памяти контроллера в области памяти входов. Таким образом, создается полная одномоментная копия значений входов.
Выполняется код пользовательской программы. Пользовательская программа работает с копиями значений входов и выходов, размещенными в оперативной памяти.
Устанавливаются физические выходы ПЛК в соответствие с расчетными значениями. Именно в этот момент происходят переключения/изменения положения исполнительных механизмов.
Таким образом, значения входов в процессе выполнения пользовательской программы не изменяются в пределах одного рабочего цикла. Это фундаментальный принцип построения ПЛК сканирующего типа. Такой подход исключает неоднозначность алгоритма обработки данных в различных его ветвях. Кроме того, чтение копии значения входа из ОЗУ выполняется значительно быстрее, чем прямое чтение физического входа.
За счет этого обеспечивается максимальная простота построения прикладной программы – ее создатель не должен знать, как производится управление аппаратными ресурсами. Необходимо знать с какого входа приходит сигнал и как на него реагировать на выходах.
Время реакции на событие
Очевидно, что время реакции на событие будет зависеть от времени выполнения одного цикла прикладной программы. Определение времени реакции (сканирования) – времени от момента события до момента выдачи соответствующего управляющего сигнала – поясняется на рисунке 1.3.
Рисунок 1.3 Время реакции на событие
Для уменьшения времени реакции, в контроллерах используется циклические и аппаратные прерываний. Кроме этого, также применяются обработчики прерываний для инициализации системы при первом запуске, для диагностирования и т.п. Время цикла сканирования является базовым показателем быстродействия ПЛК.
В современных контроллерах цикл контроллера не превышает более 10 мс.
Контроль времени рабочего цикла. Правильно составленная пользовательская программа не должна содержать бесконечных циклов. В противном случае управление системе исполнения не будет передано, и, соответственно, нормальное функционирование контроллера будет нарушено. Для решения этой проблемы служит контроль времени цикла.
Контроль осуществляется при поддержке аппаратно-реализованного «сторожевого таймера». Если фаза пользовательского кода выполняется дольше установленного порога, то ее работа будет прервана и цикл работы контроллера принудительно начнется заново. Таким образом, достигается предсказуемое поведение ПЛК при ошибках в программе и при «зависании» по причине аппаратных сбоев.
Введение в программирование ПЛК Siemens
Контроллеры Siemens содержат операционную систему и программу пользователя.
Операционная система управляет всеми функциями и процессами в контроллере, которые не связаны с определенной задачей управления (например, обработка рестарта, обновление образа процесса, вызов пользовательской программы, обработка ошибок, управление памятью, и т.д.). Операционная система - встроенная часть контроллера.
Пользовательская программа состоит из блоков, которые необходимы для реализации задачи автоматизации. Пользовательская программа состоит из блоков и в дальнейшем загружается в контроллер.
Схема взаимодействия аппаратной конфигурации, операционной системы и программы пользователя представлена на рисунке 1.4
Рисунок 1.4 Время реакции на событие
Для контроллеров Siemens пользовательская программа всегда выполняется циклически. Циклический организационный блок OB (“Main”) автоматически создаётся в папке “Program blocks” (Программные блоки) после добавления контроллера в TIA Portal. Блок обрабатывается и вызывается контроллером в бесконечном цикле.
В TIA Portal существуют следующие виды программных блоков:
Организационные блоки
Функциональные блоки
Функции
Блоки данных
