Промышленные контроллеры (ПЛК)

5.1. Общие принципы построения ПЛК

Любая машина, способная автоматически выполнять некото­рые операции, имеет в своем составе управляющий контроллер — модуль, обеспечивающий логику работы устройства. Контрол­лер — это мозг машины. Естественно, чем сложнее логика работы машины, тем «умнее» должен быть контроллер.

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

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

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

Контроллеры, выполненные на основе реле или микросхем с «жесткой» логикой, невозможно научить делать другую работу без существенной переделки. Очевидно, что такой возможностью обладают только программируемые логические контроллеры (ПЛК). Идея создания ПЛК родилась практически сразу с появле­нием микропроцессора, т. е. 30 лет назад.

Физически, типичный ПЛК представляет собой блок, имею­щий определенный набор выходов и входов, для подключения датчиков и исполнительных механизмов (рис. 1.1). Логика управ­ления описывается программно на основе микрокомпьютерного ядра. Абсолютно одинаковые ПЛК могут выполнять совершенно разные функции. Причем для изменения алгоритма работы не требуется каких-либо переделок аппаратной части. Аппаратная реализация входов и выходов ПЛК ориентирована на сопряжение с унифицированными приборами и мало подвержена изменениям.

 
 

Рис. 1.1. Принцип работы ПЛК

Задачей прикладного программирования ПЛК является только реализация алгоритма управления конкретной машиной. Опрос входов и выходов контроллер осуществляет автоматически, вне зависимости от способа физического соединения. Эту работу вы­полняет системное программное обеспечение. В идеальном случае прикладной программист совершенно не интересуется, как подсо­единены и где расположены датчики и исполнительные механиз­мы. Мало того, его работа не зависит от того, с каким контролле­ром и какой фирмы он работает. Благодаря стандартизации язы­ков программирования прикладная программа оказывается пере­носимой. Это означает, что ее можно использовать в любом ПЛК, поддерживающем данный стандарт.

Программируемый контроллер — это программно управляе­мый дискретный автомат, имеющий некоторое множество вхо­дов, подключенных посредством датчиков к объекту управления, и множество выходов, подключенных к исполнительным устрой­ствам. ПЛК контролирует состояния входов и вырабатывает опре­деленные последовательности программно заданных действий, от­ражающихся в изменении выходов.

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

Изначально ПЛК предназначались для управления последова­тельными логическими процессами, что и обусловило слово «ло­гический» в названии ПЛК. Современные ПЛК помимо простых логических операций способны выполнять цифровую обработку сигналов, управление приводами, регулирование, функции опе­раторского управления и т. д.

Помимо «классических» дискретных и аналоговых входов-вы­ходов многие ПЛК имеют специализированные входы/выходы.Они ориентированы на работу с конкретными специфическими датчиками, требующими определенных уровней сигналов, пита­ния и специальной обработки. Например, квадратурные шифра­торы, блоки управления шаговыми двигателями, интерфейсы дисплейных модулей и т. д.

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

На самом деле ПЛК имеет обычно один процессор и выполняет несколько задач псевдопараллельно, последовательными порция­ми. Время реакции на событие оказывается зависящим от числа одновременно обрабатываемых событий. Рассчитать минимальное и максимальное значения времени реакции, конечно, можно, но добавление новых задач или увеличение объема программы при­ведет к увеличению времени реакции. Такая модель более подхо­дит для систем мягкого реального времени. Современные ПЛК имеют типовое значение времени рабочего цикла, измеряемое, единицами миллисекунд и менее. Поскольку время реакции боль­шинства исполнительных устройств значительно выше, с реаль­ными ограничениями возможности использования ПЛК по време­ни приходится сталкиваться редко.

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

Второй часто возникающей задачей является интеграция не­скольких ПЛК с целью синхронизации их работы. Здесь появля­ются сети, обладающие рядом специфических требований. В целом это требования, аналогичные требованиям к ПЛК: режим ре­ального времени, надежность в условиях промышленной среды, ремонтопригодность, простота программирования. Такой класс сетей получил название промышленных сетей (fieldbus). Сущест­вует масса фирменных реализаций и достаточно много стандартов таких сетей (Bitbus, Modbus, Profibus, CANopen, DeviceNet), по­зволяющих интегрировать аппаратуру различных фирм, но ни один из них нельзя признать доминирующим.

Благодаря продуктивному развитию средств сетевой интегра­ции появилась возможность создания распределенных систем управления. В 80-х гг. XX в. доминировали ПЛК с числом вхо­дов-выходов несколько сотен. В настоящее время большим спро­сом пользуются микроПЛК с количеством входов-выходов до 64. В распределенных системах каждый ПЛК решает локальную за­дачу. Задача синхронизации управления выполняется компьюте­рами среднего звена АСУ. Распределенные системы выигрывают по надежности, гибкости монтажа и простоте обслуживания.

Программные приложения, имитирующие технологию ПЛК на компьютере (оснащенном платами ввода-вывода), получили название программный ПЛК (soft PLC). Программная эмуляция ПЛК удобна тем, что благодаря наличию многозадачной операци­онной системы можно совместить в одном месте контроллер, сре­ду программирования и систему диспетчерского управления.

Существенный минус такого решения — большое время выхо­да на рабочий режим после включения питания или зависания компьютера. Особенно опасно, если перезапуск произвел «сторо­жевой таймер» в автоматическом режиме, в то время как состоя­ние исполнительных механизмов не соответствует исходным пози­циям. Загрузка операционной системы может отнимать несколько минут, все это время система оказывается неуправляемой. Для ПЛК время «холодного» запуска измеряется миллисекундами.

Для достижения сравнимых с ПЛК технических показателей по надежности компьютер, конечно, должен быть промышленно­го исполнения (на базе магистралей РС/104 или VME), а не деше­вый офисный «no name».

 

5.2. Рабочий цикл ПЛК

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

По включению питания ПЛК выполняет самотестирование и настройку аппаратных ресурсов, очистку оперативной памяти данных (ОЗУ), контроль целостности прикладной программы по­льзователя. Если прикладная программа сохранена в памяти, ПЛК переходит к основной работе, которая состоит из постоян­ного повторения последовательности действий, входящих в рабо­чий цикл.

Рабочий цикл ПЛК состоит из нескольких фаз.

1. Начало цикла.

2. Чтение состояния входов.

3. Выполнение кода программы пользователя.

4. Запись состояния выходов.

5. Обслуживание аппаратных ресурсов ПЛК.

6. Монитор системы исполнения.

7. Контроль времени цикла.

8. Переход на начало цикла.

В самом начале цикла ПЛК производит физическое чтение входов. Считанные значения размещаются в области памяти вхо­дов. Таким образом, создается полная одномоментная зеркальная копия значений входов.

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

После выполнения пользовательского кода физические выхо­ды ПЛК приводятся в соответствие с расчетными значениями (фаза 4).

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

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

Пользовательская программа работает только с мгновенной ко­пией входов. Таким образом, значения входов в процессе выпол­нения пользовательской программы не изменяются в пределах одного рабочего цикла. Это фундаментальный принцип построе­ния ПЛК сканирующего типа. Такой подход исключает неодно­значность алгоритма обработки данных в различных его ветвях. Кроме того, чтение копии значения входа из ОЗУ выполняется значительно быстрее, чем прямое чтение входа. Аппаратно чтение входа может быть связано с формированием определенных вре­менных интервалов, передачей последовательности команд для конкретной микросхемы или даже запросом по сети.

 
 

Время реакции — это время с момента изменения состояния системы до момента выработки соответствующей реакции. Оче­видно, для ПЛК время реакции зависит от распределения момен­тов возникновения события и начала фазы чтения входов. Если изменение значений входов произошло, непосредственно перед фа­зой чтения входов, то время реакции будет наименьшим и рав­ным времени сканирования (рис. 1.5). Худший случай, когда из­менение значений входов происходит сразу после фазы чтения входов. Тогда время реакции будет наибольшим, равным удвоен­ному времени сканирования минус время одного чтения входов. Иными словами, время реакции ПЛК не превышает удвоенного времени сканирования.

Рис. 1.5. Время реакции ПЛК

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

Время цикла сканирования является базовым показателем бы­стродействия ПЛК. При измерении времени рабочего цикла поль­зовательская программа должна содержать 1К логических команд. Для ПЛК, поддерживающих стандарт МЭК 61131-3, ис­пользуют команды на языке IL. Иногда изготовители приводят несколько значений времени цикла, полученных при работе с пе­ременными различной разрядности.

Ориентировочно о скорости обработки различных типов дан­ных можно судить по тактовой частоте и разрядности централь­ного процессора. Хотя нет ничего удивительного в том, что вось­миразрядные ПЛК не редко оказываются быстрее 32-разрядных при выполнении битовых операций. Объясняется это тем, что в 8-разрядных микропроцессорах более распространена аппаратная поддержка работы с битами. Так, в PC-совместимых процессорах для выделения бита приходится использовать логические коман­ды и циклический сдвиг.

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

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

 
 

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

 

5.3. Базовые функции ПЛК и их аппаратная реализация

Базовые функции представлены на рисунке 3.6. Ниже дадим описание аппаратных средств реализации этих функций.

Процессорные модули ПЛК могут строиться на основе широкой гаммы микропроцессоров (преимущественно в КМОП-исполнении - i386 EX, Siemens SAB 80C166 и др.), выбор ко­торых зависит от технико-экономических требований, предъяв­ляемых к распределенной системе управления. При этом быстро­действие процессора как таковое не является самоценным каче­ством, а должно оцениваться в свете возможности реализации процессором алгоритма управления технологическим процессом в реальном времени.

Память ПЛК обеспечивает хранение ядра операционной сис­темы реального времени, необходимых утилит и прикладных программ управления объектом. В ней используются микросхе­мы постоянной, программируемой и оперативной памяти (по­следняя обеспечивает хранение промежуточных результатов и за­гружаемых прикладных управляющих программ).

Средства коммуникации ПЛК реализуют дистанционную за­грузку задач и оперативный обмен данными между ПЛК, рабочими станциями операторов и УВК верхних уровней на расстоянии от сотен метров до нескольких километров со скоростями, со­ответствующими требованиям реактивности системы управле­ния. Средства интерфейса с оператором выполняются с учетом производственных условий эксплуатации: мониторы имеют про­тивоударный корпус с прочной пылевлагозащищенной передней панелью; в клавиатурах используется ограниченный набор функ­циональных и алфавитно-цифровых клавиш, обязательно преду­сматривается пылевлагозащита. Обмен данными между ПЛК и УВК верхних уровней может осуществляться по витой паре про­водов, коаксиальному кабелю, оптоволоконному кабелю (осо­бенно при работе в производственных условиях с высоким уров­нем электромагнитных помех) или беспроводному каналу пере­дачи данных. Устройства ввода данных и вывода управляющих воздействий предполагают работу с дискретными и аналоговыми сигналами от датчиков исполнительных механизмов объекта управления. Они реализуются обычно на отдельной плате и соединяются с вычислительным модулем через разъем. Требования к УСО в со­ставе ПЛК по типам и количеству входных и выходных сигналов определяются его конкретным применением. Для расширения областей применения ПЛК, как правило, обеспечивается его рабо­та с наиболее распространенными типами датчиков и приборов измерения физических величин: температуры (термопары, термосопротивления); электрических величин (тока, напряжения, мощности); положения; механических деформаций; давления; расхода жидкостей; тепловой энергии и др.

Основными параметрами УСО в общем случае являются ско­рость и погрешность преобразования, а также диапазон вход­ных/выходных напряжений и токов.

В настоящее время в зарубежной и отечественной промыш­ленности используется в основном номенклатура датчиков с входными и выходными параметрами, нормированными в соот­ветствии с международными стандартами.

 

 
 

Наиболее целесообразным вариантом структурной организа­ции модуля УСО является разделение его на две функционально-конструктивные части. Одна часть — системная, реализующая функции сопряжения с УВК и в ряде случаев функции обработки информации, и вторая — собственно модуль УСО, осуществляю­щий непосредственный прием сигналов от датчиков технологи­ческого процесса и выдачу управляющих воздействий на испол­нительные механизмы.

На плате модуля УСО могут размещаться:

• преобразователь входного постоянного напряжения питания в постоянное напряжение питания разнотипных узлов (дискрет­ных, аналоговых и др.);

• интерфейсные преобразователи;

• функциональные узлы (например, АЦП) с гальванической раз­вязкой;

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

На плате модуля УСО могут быть также установлены специа­лизированные процессоры, выполняющие цифровую фильтра­цию и предварительную обработку информации с датчиков, эта­лонный источник напряжения для оценки и коррекции метроло­гических характеристик АЦП и др. Такие интеллектуальные УСО позволяют существенно сократить затраты времени центрально­го процессора и повысить производительность системы. С разви­тием микроэлектроники цифровая обработка сигналов и другие интеллектуальные функции будут реализованы в УСО уже на уровне первичных преобразователей.

Модули УСО должны содержать элементы гальванического разделения цепей связи с датчиками и исполнительными устрой­ствами.

Сигналы к УСО от датчиков (или сигналы от УСО к исполни­тельным устройствам) передаются по проводам, которые сопря­гаются с кроссовыми соединителями (переходными устройства­ми) - кабельными разъемами или клеммными колодками с пру­жинящими или выполненными «под винт» зажимами (зажимы предпочтительнее, так как позволяют подсоединять и отсоеди­нять провода независимо друг от друга).

Для промышленных контроллеров, как и для УВК, характер­на магистрально-модульная структура. Модуль процессора и мо­дули УСО имеют единый функциональный, электрический и конструктивный интерфейс; в ПЛК находят применение как стан­дартные интерфейсы (например, шина ISA), так и специализиро­ванные, рассчитанные на контроллерные применения (напри­мер, ИМП, см. разд.3.3.3).

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

 

5.4. Программное обеспечение ПЛК

Главными требованиями к программному обеспечению для ПЛК являются:

• автономность;

• поддержка процессов сбора, анализа информации и управления в реальном времени;

• возможность дистанционного управления со стороны цент­ральной станции (УВК);

• поддержка локальных баз данных в реальном времени;

• сетевая поддержка.

Программное обеспечение распределенной системы (УВК — ПЛК) включает следующие основные компоненты:

• тестовое программное обеспечение;

• базовое программное обеспечение;

• прикладное технологическое программное обеспечение.

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

Тестовое программное обеспечение содержит следующие компоненты:

•программы инициализации и конфигурирования, а также начальные тесты для ПЛК и сетевых адаптеров (внутреннее про­граммное обеспечение, расположенное в ПЗУ);

• программы для тестирования ПЛК через линию связи с УВК или
специализированной наладочной аппаратурой;

• программы для тестирования, наладки и сбора статистики ло­кальной сети распределенной системы;

• комплексное тестирование распределенной системы в целом;

• специализированное тестовое программное обеспечение для наладочных пультов, стендов, эмуляторов и т.д.

Базовое программное обеспечение состоит из набора инстру­ментальных и исполнительных программных средств, ориенти­рованных на построение многоуровневых систем.

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

 

Системное программное обеспечение (СПО) ПЛК непосредственно контролирует аппаратные средства ПЛК. СПО отвечает за тести­рование и индикацию работы памяти, источника питания, моду­лей ввода-вывода и интерфейсов, таймеров и часов реального вре­мени. Система исполнения кода прикладной программы является составной частью СПО. Система исполнения включает драйверы модулей ввода-вывода, загрузчик кода программ пользователя, интерпретатор команд и отладочный монитор. Код СПО располо­жен в ПЗУ и может быть изменен только изготовителем ПЛК.

Код прикладной программы размещается в энергонезависимой памяти, чаще всего это электрически перепрограммируемые мик­росхемы. Изменение кода прикладной программы выполняется пользователем ПЛК при помощи системы программирования и может быть выполнено многократно.

Для разработки технологических программ используются сле­дующие инструментальные средства: редакторы, системы про­граммирования (поддержка ассемблеров и языков высокого уровня, а также языков технологического программирования), средства отладки и тестирования, а также инструментарий для функционально-ориентированных языков программирования, позволяющих с минимальными трудозатратами осуществлять проектирование системы «под ключ».

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

Современные средства автоматизации проектирования тех­нологических программ позволяют программировать ПК с ис­пользованием библиотеки стандартных программных модулей -«алгоблоков», реализующих типовые алгоритмы управления АСУТП: компараторы, формирователи ШИМ-сигналов и др. Интегрированная среда для создания прикладных программ ПК функционирует в составе ПО УВК или ПЭВМ и включает в себя редактор текстов, компиляторы, компоновщик и отладчик; предусматривается возможность удаленной загрузки и отладки прикладных программ.

 

Контроль времени рабочего цикла

Правильно составленная пользовательская программа не дол­жна содержать бесконечных циклов. В противном случае управ­ление системе исполнения не будет передано, и, соответственно, нормальное функционирование контроллера будет нарушено. Для преодоления данной проблемы служит контроль времени цикла. Контроль осуществляется при поддержке аппаратно реализован­ного «сторожевого таймера». Если фаза пользовательского кода выполняется дольше установленного порога, то ее работа будет прервана. Таким образом, достигается предсказуемое поведение ПЛК при ошибках в программе и при «зависании» по причине аппаратных сбоев.

Обслуживание сторожевого таймера выполняется в рабочем цикле ПЛК. Выполнять эту операцию по прерыванию нельзя, по­скольку при «зависании» процессора система прерываний доста­точно часто продолжает исправно работать.

 

5.5. Промышленные контроллеры СМ1820М.ПК

Промышленные контроллеры СМ1820М.ПК входят в со­став семейства CM 1820M и совместно с УВК СМ 1820М.ВУ поз­воляют строить унифицированные многоуровневые распределенные АСУТП. Промышленные контроллеры СМ1820М.ПК предназначены для работы в АСУТП различных отраслей промы­шленности в условиях производства, характеризующихся повы­шенной загрязненностью воздуха, вибрациями, ударами, силь­ными электромагнитными полями, значительными температур­ными колебаниями. Современные программируемые ПЛК СМ1820М.ПК являются развитием ПЛК на базе микроЭВМ СМ 1800.








Дата добавления: 2015-02-10; просмотров: 5735;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.027 сек.