Каждая машина, талантливая машинально делать кое-какие операции, имеет в собственном составе управляющий контроллер – модуль, снабжающий логику работы устройства. Контроллер – мозг автомобили. Исходя из этого чем сложнее логика автомобили, тем умнее должен быть контроллер.
ПЛК являются микропроцессорные устройства, предназначенные для исполнения методов управления. Принцип работы ПЛК содержится в обработке и сборе данных по прикладной программе пользователя с выдачей управляющих сигналов на аккуратные устройства.
ПЛК рекомендован для работы в реальном времени в условиях промышленной среды и должен быть доступен для программирования неспециалистом в области информатики.
Рисунок 1
ПЛК используется для автоматизации технологического процесса. Контроллер собирает от полевых устройств данные, обрабатывает ее посредством имеющейся в нем программы и на основании вычисленных данных руководит аккуратными механизмами.
Режим настоящего времени на базе работы реле
Отыщем в памяти работу простого релейного коммутатора, на принципе действия которого продемонстрируем работу в реальном времени, поскольку целью применения контроллера есть физическое замещение реле.
В принципе реле – это выключатель, применяющий электромагнитное поле. Подайте напряжение на катушку и получите магнитное поле, которое притягивает контакты реле, следствием чего есть соединение двух контактов. В сущности, главное назначение реле – дать шанс току протекать между двумя контактами.
Рисунок 2
Разглядим цепь RL (рисунок 2). В зависимости от чёрта тока на катушке будет изменяться магнитное поле на сердечнике, которое руководит тумблером S2.
Установившийся ток в данной цепи будет определяться лишь ЭДС Е и резистивным сопротивлением R (внутреннее сопротивление), т.к. по окончании окончания переходного процесса i = const и uL = Ldi/dt = 0, т.е. iy = E/R.
Полный ток в переходном ходе:
Для определения постоянной I отыщем начальное значение тока. До замыкания ключа S1 ток, разумеется, был нулевым, а т.к. подключаемая цепь содержит индуктивность, ток в которой не имеет возможности измениться скачкообразно, то в первоначальный момент по окончании коммутации ток останется нулевым. Из этого
Подставляя определённое значение постоянной I в выражение для тока, возьмём
Из этого выражения возможно выяснить падения напряжения на резисторе uR и индуктивности uL
Из выражений (1) – (3) направляться, что ток в цепи увеличивается по экспоненте с постоянной времени = L/R от нулевого значения до значения Е/R (рисунок 3). Падение напряжения на сопротивлении повторяет кривую тока в поменянном масштабе. Напряжение на индуктивности в момент коммутации скачкообразно возрастает от нуля до Е, а после этого понижается по экспоненте.
Рисунок 3
Подставляя выражения (3) в уравнение Кирхгофа для цепи по окончании коммутации, возможно убедиться в его справедливости в любую секунду времени
Исходя из сказанного выше, изменение параметров схемы при подачи/отключении питания в реле происходит через определенный временной отрезок, что в большинстве случаев образовывает около 10 – 50 мс.
Данный принцип действия употребляется и в определении режима настоящего времени, что определятся как отклик совокупности на определенное действие за строго определенное время ?t.
В большинстве случаев ?t возможно установлено в ПЛК от 3 мс.
Совершенный ПЛК
Контроллер обязан производить на собственных выходах сигналы, каковые определяются по заданному методу на основании мгновенных значений входных их предыстории и сигналов. В совершенном мире время от трансформации входов до соответствующей ответной реакции должно быть равняется нулю. Другими словами совершенный контроллер обязан владеть совершенным быстродействием, он обязан успевать реагировать на импульсы вечно малой длительности. В современной математике создан аппарат, разрешающий моделировать и изучить такие устройства, но физически изготовить таковой контроллер нереально. Кроме того в случае, если создать контроллер аппаратно, к примеру, реализуя его метод работы на интегральных микросхемах, то все равно полного быстродействия достигнуто не будет. Мы сможем реагировать весьма скоро и фиксировать весьма маленькие импульсы, но, непременно, не бесконечно малые. Причем, разумеется, что с ростом сложности метода и числа элементов схемы время реакции будет возрастать.
Примерный ПЛК
К счастью, на практике от контроллера и не нужно сверхбыстрых реакций. К примеру, силовое реле ненужно переключать чаще, чем один раз в 100 мс, его контакты легко физически не успеют переключиться. Другими словами логично сходу отказаться от игр с вечно малыми временами и выделить контроллеру разумное время на принятие ответа. Получается следующая модель:
1) снимаем мгновенное значение входов;
2) тихо думаем, считая, что значение входов еще не изменилось;
3) выбираем значения для выходов.
Это имеется не что иное, как отлично привычный нам рабочий цикл контроллера. Разумеется, что в случае, если контроллер будет трудиться стремительнее, чем управляемые им процессы, то он сможет абсолютно делать собственные функции. Остается совершенно верно определиться, как стремительнее.
Теоретически доказано, что в случае, если произвольный сигнал не содержит частот выше f, то он бывает абсолютно восстановлен, в случае, если известны его мгновенные значения, забранные через равные промежутки времени f/2 (теорема Котельникова). Для логических сигналов это указывает, что нам достаточно выбрать самый маленький импульс, на что мы должны реагировать, и сделать отечественный рабочий цикл в два раза меньше. Другими словами, в случае, если мы имеем дело с силовым реле, то нужно и достаточно иметь рабочий цикл, равный 50 мс. Делать его меньше ненужно.
Потому, что мы часто имеем дело с многомерными (взаимосвязанными) сигналами (к примеру, положениями узлов либо фазами сети), то появляется требование снимать значения входов одновременно времени и устанавливать значения на выхода столь же согласованно. На практике это снова же делается не мгновенно, но достаточно скоро, причем обеспечение нужной скорости есть проблемой изготовителя контроллера, что обязан применить соответствующие программно-аппаратные ответа.
Тот факт, что значения входов не изменяются на протяжении исполнения прикладной программы, есть крайне важным. Это принципиально снимает проблему синхронизации разных частей программы. Один раз оценив значение некой входной переменной, мы можем гарантированно применять ее во множестве вычислений без запасных переменных, без повторных испытаний, без риска привести к ошибке выполнения либо нескончаемый цикл. Фактически программа трудится не напрямую с выходами и входами контроллера, а с их образом в памяти, собственного рода защитным слоем. Таковой подход разрешает создавать программы кроме того начинающим.
Понятие «Входы-выходы» ПЛК
Входы ПЛК употребляются для связи с внешним миром, существуют физически и приобретают сигналы от датчиков, выключателей и аналогичных полевых устройств.
Выходы кроме этого существуют для связи с внешним миром. Отличие от входов – управление аккуратными устройствами. Другими словами выходы не только приобретают данные, но и передают ее в физические устройства.
Выходы применяют три вида сигналов: дискретные, аналоговые и специальные.
Первые ПЛК имели лишь двоичные входы, входы, значения которых принимали два значения – логической единицы и логического нуля. Наличие сигнала (напряжения, тока) соответствует в большинстве случаев логической единице, отсутствие – логическому нулю. выходы и Бинарные входы в области применения ПЛК именуют дискретными. Устройства дискретных сигналов – это разные датчики ручного вода, концевые датчики и др.
Аналоговые сигналы употребляются для постоянных сигналов, к примеру для измерения величины тока (напряжения), температуры, давления, веса, положения, скорости, частоты, другими словами любой физической величины. Для работы с аналоговыми сигналами нужно дополнительное преобразование. Потому, что ПЛК есть цифровой счётной машиной, аналоговые входные сигналы подвергаются аналого-цифровому преобразованию (АЦП). В следствии образуется дискретная переменная определенной разрядности.
Для работы со своеобразными датчиками, требующих определенных уровней сигналов, питания и специальной обработки, употребляются специальные сигналы.
Входы-выходы ПЛК физически находятся или в общем корпусе с процессорным ядром, или в отдельных модулях ввода/вывода, каковые подключаются к контроллеру напрямую, или по сети цифровым кабелем. Комфортно располагать такие модули вблизи исполнительных механизмов и датчиков.
Структура ПЛК |
Магнитный клапан |
Коммутатор |
Тумблер |
Тумблер |
Рисунок 4
Принцип работы ПЛК
Рабочий цикл ПЛК
Образ входного процесса (состояние входов) записывается в адресную память. Адресная память подразделяется на битовую и словарную области. В стандартном применении памяти в битовую область записываются дискретные значения, а в словарную – аналоговые.
На рисунке 5 представлен обычный цикл работы ПЛК:
Рисунок 5
При старте ПЛК и в случаях сбоя по питанию происходит инициализация совокупности. Наряду с этим устанавливаются начальные значения переменных программы, включая время таймеров, запуская сторожевой таймер и т.п.
Сторожевой таймер (WATCHDOG) рекомендован для защиты микроконтроллера от сбоев в ходе работы (при зависания его управляющей программы). Принцип его работы несложен: по окончании запуска текущее значение регистра сторожевого таймера инкремируется с приходом каждого следующего тактового сигнала. И в случае, если данное значение не будет иногда сбрасываться в программе, то при переполнении данного регистра случится рестарт микроконтроллера.
После этого начинается главной цикл работы контроллера – во-первых, происходит физическое считывание входов. Полученные значения размещаются во входной области памяти в виде образа входного процесса.
Потом выполняется код программы (при условии, что в ПЛК записана программа), которая берет эти из входного и выходного образов процесса. По окончании исполнения программы происходит создание нового образа выходного процесса на основании вычисленных данных, по которому физически устанавливаются состояния выходов.
В другие фазы входят инициализация счётчиков и таймеров, своевременное самотестирование и другие аппаратно-зависимые задачи.
Время реакции
Время реакции для ПЛК – это время на получение отклика при трансформации совокупности, подобно времени, нужного человеку для осмысления ответа на поставленный вопрос. В некоторых примерах это время возможно критическим.
взглянуть на примерах, как происходит обработка сигналов логическим контроллером.
Рисунок 6
tВх = время опроса входов;
tВых = время переключения выходов;
tВып. прог. = время исполнения программы;
tЦикла обработки = время цикла обработки (tВх+ tВып. прог.+ tВых).
На рисунке 6 продемонстрированы три полных включения и цикла входных сигналов в режиме работы ПЛК. Вход(Х1) включился по окончании считывания входов и будет обработан только в следующем цикле.
ПЛК кроме этого не зафиксировал вовремя переключение Входа(Х2). Следовательно, в случае, если контроллер должен был включить Выход(Y1) к примеру при одновременном включении Входа(Х1) и Входа(Х2), то это событие не было обработано контроллером и операция не была выполнена.
ПЛК кроме этого не зафиксировал переключение Входа(Х3) и, быть может, не сможет обработать это событие ни при каких обстоятельствах.
Имеется три варианта ответа данной неприятности:
O Применение контроллера с более высоким быстродействием;
O Воспользоваться функцией задержки времени. Эта функция увеличит продолжительность входного сигнала, как продемонстрировано на рисунке 7;
O Применение функции обработки прерываний (рисунок 8). Другими словами, когда Вход отключён, то независимо от того этапа, на котором на данный момент находится программа, ПЛК срочно останавливает исполнение главной программы и делает подпрограмму прерывания.
Рисунок 7 Рисунок 8
Так, можно считать, что оптимальным временем длительности импульса будет являться время прохода одного цикла программы (рисунок 9).
Исполнение программы |
Вход(Х1) |
Исполнение программы |
Рисунок 9
Адресное пространство
Адресное пространство ПЛК подразделяется на сегменты:
- Область образа входного процесса
- Область образа выходного процесса
- Область памяти для программы
- Область прямо адресуемой памяти
- Оперативная память пользователя (ОЗУ)
Для привязки переменной к адресу употребляется следующее объявление:
«Имя переменной» АТ % «Прямой адрес» «Тип»;
Прямой адрес начинается с буквы, соответствующей области памяти. Область образа входного процесса обозначается буквой I (Input)и именуется входной областью памяти. Эта область памяти доступна лишь для чтения.
Область образа выходного процесса обозначается буквой Q (Quit)и именуется выходной областью памяти. Эта область памяти доступна лишь для записи.
Прямо адресуемая память имеет префикс M. Эта область памяти доступна для записи и чтения.
Потом направляться знак типа данных:
- Х (нет) – Бит;
- В – Байт;
- W – Слово;
- D – Двойное слово;
- L – Долгое слово.
Пример адресации Var AT %IX2.0 BOOL; обозначает битовый адрес переменной Var, во втором слове (отсчет с нуля) нулевой бит. Битовый адрес возможно лишь типа BOOL.
Объявление переменной без префикса AT физически свидетельствует выделение ей определенной памяти в ОЗУ. Причем транслятор автоматическизаписывает данную переменную в свободной области памяти ОЗУ.
В области прямо адресуемой памяти (знак М) в большинстве случаев размещают диагностические переменные, параметры системы исполнения и др., другими словами не относящиеся ни к входным, ни выходным данным.
На рисунке 10 продемонстрировано одно слово (W) во входной и выходной областях памяти. Отметим, что слово складывается из байтов либо 16 битов. Отсчет начинается с нуля.
Quits |
QW0
IB0
Промышленные сети
Промышленная сеть – это среда передачи данных, которая обязана отвечать множеству разнообразных, обычно противоречивых требований. Она является набором стандартных протоколов обмена данными, разрешающих связать воедино оборудование разных производителей, и обеспечить сотрудничество нижнего и верхнего уровней АСУ. Наконец, промышленная сеть – это образ мысли инженера, определяющий принципы и конфигурацию построения совокупности. От того, какая сетевая архитектура выбирается сейчас, будут зависеть не только затраты на создание совокупности, но и срок ее жизни, ее свойство к формированию, другими словами, как принято на данный момент сказать, интегральная цена владения.
Сформулируем только кое-какие главные требования, каковые возможно предъявить к «совершенной» промышленной сети:
- Производительность;
- Предсказуемость времени доставки информации;
- Помехоустойчивость;
- простота и Доступность организации физического канала передачи данных;
- Максимально широкий сервис для приложений верхнего уровня;
- Минимальная цена устройств аппаратной реализации, в особенности на уровне контроллеров;
- Возможность получения «распределенного интеллекта» методом локализации выполнения и иерархического распределения задач;
- самовосстановление и Управляемость при происхождения нештатных обстановок.
Требования достаточно противоречивы, исходя из этого возможно считать, что промышленная сеть – это один громадный компромисс. И от того, как расставлены выговоры в этом компромиссе, зависит успешность ответа задач, стоящих перед сетевой архитектурой.
Выделим три важнейших параметра, по которым возможно сравнивать сети, и каковые послужат базой для предстоящей классификации, то есть: топология сети, количество информационного сервиса, предоставляемого сетью, и метод доступа к физическому каналу передачи данных.
Топология сети
Самый распространенный тип сетевой топологии – это неспециализированная шина. Главное ее преимущество содержится в простоте, лёгкости и дешевизне переконфигурирования. Такая сеть не опасается отключения либо подключения устройств на протяжении работы. Отлично подходит для очень сильно распределенных объектов. Но имеет и последовательность «генетических» недочётов: присутствие в каждой точке сети неспециализированного трафика, опасность утраты связи при одиночном обрыве канала связи либо фатальном выходе из строя одного узла.
Топология типа «кольцо» весьма популярна со времен выхода на рынок сети Token Ring компании IBM. Применение протокола с циклической передачей маркера (IEEE-802.5) разрешает сетям с таковой топологией обеспечить полную предсказуемость и хорошую пропускную свойство. Главными недочётами топологии являются большая цена организации канала связи, нерациональное (как правило) применение сетевого трафика и утрата всей синхронизации при сбоя либо отключения хотя бы одного из узлов.
Топология «звезда», являясь логическим продолжением моноканала, снабжает защиту всей сети от выхода из строя либо отключения узлов, разрешает значительно оптимизировать трафик, передавая пакеты лишь в те «лучи», где находятся их получатели. Последнее особенно значительно для сетей, где допускаются коллизии.
Уровни промышленной сети
Уровни выяснены Интернациональной организацией по стандартизации (ISO/OSI) и отображены в таблице.
Application | Прикладной уровень | |
Presentation | Уровень представления | |
Session | Уровень сессий | |
Transport | Транспортный уровень | |
Network | Сетевой уровень | |
Data link | Канальный уровень | |
Physical | Физический уровень |
На физическом уровне определяются параметры сигналов канала и физические характеристики связи.
Канальный уровень формирует главную единицу передаваемых данных – пакет – и несёт ответственность за дисциплину доступа устройства к каналу связи (Medium Access Control) и установление логического соединения (Logical Link Control).
Сетевой уровень несёт ответственность за доставку и адресацию пакета по оптимальному маршруту.
Транспортный уровень разбирается с содержимым пакетов, формирует ответы на запросы, нужные для уровня сессий.
Уровень сессий оперирует сообщениями и координирует сотрудничество между участниками сети.
Уровень представления занимается преобразованием форматов данных, в случае, если это нужно.
Прикладной уровень – это комплект интерфейсов, дешёвых программе пользователя.
На практике большая часть промышленных сетей ограничивается лишь тремя из них, то есть физическим, канальным и прикладным. Самый «продвинутые» сети решают главную часть задач аппаратно, оставляя программную прослойку лишь на седьмом уровне. Недорогие сети (к примеру, ModBus) обычно применяют на физическом уровне RS-232 либо RS-485, а все остальные задачи, начиная с канального уровня, решают программным методом.
CanOpen
Применяемый интерфейс. Базируется на созданной в автомобильной отрасли разработки CAN и электрических спецификациях RS-485.
Предельное количество узлов. 64.
Скорость передачи данных и протяженность кабеля. 125, 250, 500 и 1000 Кбит/с, от 100 до 500 метров.
Описание. Обычные области применения: по большей части в совокупностях управления перемещением, в сборочных, сварочных и транспортировочных агрегатах. Употребляется для однокабельного соединения многовходовых блоков датчиков, интеллектуальных датчиков, пневматических вентилей, считывателей штрих-кодов, приводов и операторских пультов.
Преимущества. По сравнению с другими сетями на базе шины CAN сеть CanOpen в основном пригодна для быстродействующих совокупностей управления перемещением и контуров регулирования с обратной связью. Высокая надежность, рациональное применение пропускной свойстве, подача питающего напряжения по сетевому кабелю.
Недочёты. Малая распространенность за пределами Европы, запутанность протокола и чрезмерная сложность с позиций разработчиков, и неспециализированные для всех CAN-сетей недочёты (ограниченная пропускная свойство, ограниченный размер сообщений, ограниченная протяженность соединения).
Тип доступа. С коллизиями.
Modbus
Применяемый интерфейс. RS-485, RS-422, RS-232, TCP/IP.
Описание. Ведомые устройства прослушивают линию связи. Мастер подает запрос (посылка) в линию и переходит в состояние прослушивания линии связи. Ведомое устройство отвечает на запрос, пришедший в его адрес. Окончание ответной посылки мастер определяет по временному промежутку между окончанием приема прошлого байта и началом приема следующего. В случае, если данный промежуток превысил время, нужное для приема двух байтов на заданной скорости передачи, прием кадра ответа считается завершенным. Синтаксис команд протокола разрешает направить 247 устройств на одной линии связи стандарта RS-485.
Режим работы. Master/slave.
Программирование какое количество