Андрей Смирнов
Время чтения: ~21 мин.
Просмотров: 480

Таймеры и триггеры codesys. еще один шаг arduino к классическому плк

Устройство ПЛК

Часто ПЛК состоит из следующих частей:

  • центральная микросхема (микроконтроллер, или микросхема FPGA), с необходимой обвязкой;
  • подсистема часов реального времени;
  • энергонезависимую память;
  • интерфейсы последовательного ввода-вывода (RS-485, RS-232, Ethernet)
  • схемы защиты и преобразования напряжений на входах и выходах ПЛК.

Обычно вход или выход ПЛК нельзя сразу же подключить к соответствующему выходу центральной микросхемы. Эти выходы характеризуются низкими уровнями напряжений, обычно от 3,3 до 5 вольт. Входы и выходы ПЛК обычно должны работать с напряжениями 24 В постоянного либо 220 В переменного тока. Поэтому между выходом ПЛК и выходом микросхемы необходимо предусматривать усилительные и защитные элементы.

Структура и устройство ПЛК

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

Сейчас выпускаются контроллеры в различных форм-факторах. Это:

  1. Устройство типа «всё в одном». В одном корпусе объединен процессор, память, выходы/входы;
  2. Распределенные решения – процессорный модуль с обвязкой сделан в виде отдельного блока, а по шине или через интерфейсы подключатся модули для вывода и ввода.

Первые модели встречаются очень часто, однако, они рассчитаны на эксплуатацию в малых объектах и системах, где нужно обрабатывать малое количество сигналов.

Второй вид контроллеров используют в промышленности гораздо шире – производства с полнофункциональными АСУ требуют значительно большего числа сигналов, которые требуется обрабатывать. Если производство масштабное, то удобнее разнести модули вводы вывода по территории с объединением в единую сеть, которая подчиняется отдельному логическому контроллеру. Такие сети называют полевыми сетями или fieldbus. К этой седи подключаются датчики, исполнительные системы, которые являются интеллектуальными, так как имеют эту возможность.

Существует масса видов полевых сетей. Стандарт IEC61158 (МЭК61158) включает в себя 8 видов сетей. А до введения этого стандарта каждый производитель придумывал и использовал свою полевую сеть.

В структуре ПЛК имеется базовые компоненты:

  • Модуль процессора;
  • Блок питания;
  • Модули для ввода/вывода.

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

В зависимости от того, сколько каналов для ввода и вывода и какой тип процессора, модули ввод/вывод могут быть установлены на одном шасси с ЦП или на нескольких. До конца 80-х годов модули для ввода и вывода данных располагались отдельно от процессора. В стандартном контроллере современного типа модуль входов и выходов находится на одном шасси с микропроцессором. Некоторые ПЛК позволяют устанавливать более одного микропроцессора.

Модели меньших размеров очень часто предназначены под DIN-рейку. Самые компактные микро или даже нано устройства имеют всю систему, включая адаптер питания и систему ввода/вывода в одном корпусе. Микро-контроллеры иногда оборудуются встроенными панелями для настройки и мониторинга. Большинство микро-решений имеют определенное количество каналов входов/выходов и увеличить их не возможно. Как пример — плата ардуино

Среда программирования

Основой комплекса CODESYS является среда разработки прикладных программ для программируемых логических контроллеров (ПЛК). Она распространяется бесплатно и может быть без ограничений установлена на нескольких рабочих местах.

В CODESYS для программирования доступны все пять определяемых стандартом IEC 61131-3 (МЭК 61131-3) языков:

  • IL (Instruction List) — ассемблер-подобный язык
  • ST (Structured Text) — Pascal-подобный язык
  • LD (Ladder Diagram) — язык релейных схем
  • FBD (Function Block Diagram) — язык функциональных блоков
  • SFC (Sequential Function Chart) — язык диаграмм состояний

В дополнение к FBD поддержан язык программирования CFC (Continuous Function Chart) с произвольным размещением блоков и расстановкой порядка их выполнения.

В CODESYS реализован ряд других расширений спецификации стандарта IEC 61131-3. Самым существенным из них является поддержка Объектно-ориентированного программирования (ООП).

Встроенные компиляторы CODESYS генерируют машинный код (двоичный код), который загружается в контроллер. Поддерживаются основные 16- и 32-разрядные процессоры: Infineon C166, TriCore, 80×86, ARM (архитектура), PowerPC, SH, MIPS (архитектура), Analog Devices Blackfin, TI C2000/28x и другие.

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

CODESYS версии V3 построен на базе так называемой платформы автоматизации: CODESYS Automation Platform. Она позволяет изготовителям оборудования развивать комплекс путём подключения собственных плагинов.

Расширенная профессиональная версия среды разработки носит название CODESYS Professional Developer Edition. Она включает поддержу UML-диаграмм классов и состояний, подключение системы контроля версий Subversion, статический анализатор и профилировщик кода. Распространяется по лицензии.

Инструмент CODESYS Application Composer позволяет перейти от программирования практических приложений к их быстрому составлению. Пользователь составляет собственную базу объектов, соответствующих определенным приборам, механическим узлам машины и т. п. Каждый объект включает программную реализацию и визуальное представление. Законченное приложение составляется из необходимых объектов, конфигурируется и автоматически генерируется программа на языках МЭК 61131-3.

CODESYS Automation Server  — это облачная платформа автоматизации для контроллеров с CODESYS. Обеспечивает: удаленный мониторинг данных ПЛК, контроль исправности ПЛК, обновление ПО ПЛК по расписанию, резервное копирование проектов и параметров, контроль версий, удаленное формирование нарядов для обслуживания на местах.

С 20 марта до конца 2020 года платформа удаленной работы CODESYS Automation Server доступна бесплатно для всех пользователей.

Рабочее окно программы

Дистрибутив мы с вами установили, таргеты тоже. Давайте мы с вами рассмотрим рабочее окно среды разработки, элементы меню и основные вкладки.

Основное поле на рисунке выше делится на три области:

  1. Редактор переменных и их типов;
  2. Дерево объектов;
  3. Редактор основного алгоритма программы;

Редактор переменных — здесь мы с вами вводим переменные и присваиваем им типы данных. Для тех, кто не знает, переменная — это имя, к которому будет обращаться программа и возвращать результат. А тип данных определяет род информации, диапазон представления чисел и множество других операций.

Дерево объектов — в этом окне располагаются такие объекты, как функции, функциональные блоки, подпрограммы, конфигурация ПЛК, библиотеки. Об этом я расскажу позже.

Удаленное управление и мониторинг

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

Операторская панель или HIM – это устройство для визуализации. Она может быть встроенной или подключаться кабелем. Существует масса различных типов таких решений – от простых цифровых с кнопками до серьезных сенсорных с функцией оперативного мониторинга и коррекции параметров.

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

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

Более продвинутое решение реализовано в семействе ПЛК Siemens – встроенный веб-сервер. Он позволяет выполнять мониторинг, а также управлять системой. Сегодня в ПЛК реализованы функции подключения к облакам для осуществления удаленного контроля.

Языки программирования ПЛК

Управляющие программы для контроллеров разрабатывают при языков, которые созданы не для программистов в современном понимании, а для инженеров по АСУ ТП.

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

Стандарт IEC 1131.3 определяет пять языков:

  • Язык лестничных диаграмм LD – это традиционный язык на базе релейных блокировок, где алгоритмы изображаются в виде схем;
  • FBD – представляет собой конфигуратор и типовые подпрограммы;
  • SFC — язык последовательных схем. Инструмент, близкий к традиционному программированию и на нем реализуют алгоритмы с последовательным управлением;
  • ST – язык структурированного типа. Это язык, напоминающий Pascal с поддержкой структурного программирования;
  • IL – язык инструкций. Это низкоуровневый инструмент вроде Ассемблера, но он не ориентирован на микропроцессорную архитектуру. Он преимущественно применяется для создания быстрых программ.

Конфигуратор входов/выходов

Теперь вернёмся к конфигуратору входов-выходов. О чем идёт речь? Предположим, у вас есть контроллер. У него много входов и выходов, аналоговых и дискретных. И, нам же к каждому входу и выходу нужно каким-то образом привязаться. Чтобы мы могли управлять, либо считывать данные.

Компания 3S Software реализовала в своём пакете CoDeSyS структуру дерева, в которой уже подготовлены некие ячейки памяти, отвечающие за каждый вход и выход контроллера. И мы просто присваиваем имя каждой ячейке, чтобы в дальнейшем управлять ими.

Очень большой плюс комплекса CoDeSyS в том, что среда разработки внедрена во многих логических контроллерах, как и в отечественных, так и в заморских.

Список контроллеров внушителен, поэтому я приведу те, которые знаю:

  • ОВЕН ПЛК;
  • WAGO;
  • Beckhoff;
  • Berghof;
  • EMKO;

В целом CoDeSyS это мощный инструмент для реализаций технических задач. Для изготовления пультов управления технологическим процессом, от простых до сложных. Удобен для автоматизации умных домов. Минусом является стоимость подобных систем. Ну как говорится, в автоматике, чем надёжнее система, тем она дороже.

На этом у меня всё, успешных вам внедрений.

P.S. Если вы вдруг задавались вопросом, как можно сделать баннер для сайта, заходите сюда.

С наилучшими пожеланиями, Гридин Семён.

Советы по программированию ПЛК в среде CoDeSyS

Одно из значительных отличий написание алгоритмов для АСУТП от классического программирования — это меньший уровень абстракции. Для описания тех. процесса не требуется глубокое и огромное описание. Достаточно опираться на логику процесса и здравый смысл.

Не стремитесь использовать чужие библиотеки и чужой код в своих проектах.

Обращаю ваше внимание, чужие библиотеки, скачанные с форума на реальных объектах использовать категорически НЕ РЕКОМЕНДУЮ. Для этого есть куча готовых библиотек, такие как Standart, Utill, OSCAT

Фирма ОВЕН для своего оборудования пишет свои ПРОТЕСТИРОВАННЫЕ библиотеки.

У меня был такой горький опыт. Когда мы занимались автоматизацией ЦТП, а точнее контуром отопления и ГВС, я скачал с форума библиотеки для ПИД-регулирования задвижек. И что же в итоге получилось? Код тупо не сработал, вообще! Пришлось работать сутками, и днём и ночью допиливать программу в режиме цейтнота.

Пишите программы компактно, и оставляйте комментарии.

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

Пользуйтесь интерактивной справкой в среде разработки.

В данном каталоге вы можете найти ответы на многие ваши вопросы, особенно это актуально для новичков. Открывается справка по нажатию кнопки F1.

Плюсы языка ST-массивы и циклы.

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

В общих чертах о CoDeSyS 3.5

Среда разработки является продуктом 3S-Smart Software. CoDeSyS-это аппаратно-независимая система для программирования ПЛК. Она поддерживает все языки стандарта МЭК. Сочетает в себе объектно-ориентированное программирование(то есть с помощью визуальных функциональных блоков). Возможна работа с несколькими устройствами и приложениями.

  1. Добавилось очень много полезных функций (в основном, касающиеся визуализации);
  2. Рабочее окно среды разработки стало гораздо удобнее;
  3. Существуют готовые библиотеки модулей ввода-вывода;
  4. Возможность Веб-визуализации;
  5. Ну и конечно самый главный козырь, это сама визуализация;

Мне, честно говоря, нравится работать в двух версиях, и в CoDeSyS 2.3, и в 3.5. Каждая по-своему удобна. Единственный недостаток новой среды заключается в том, что она в постоянной разработке, то есть всё время обновляется. И периодически при компиляции возникает куча ошибок, с которыми иногда невозможно разобраться.

Какое оборудование поддерживает CoDeSyS 3.5? Из отечественных контроллеров я знаю СПК сотой и двухсотой серии, ПЛК 323 и ПЛК304. Из «Буржуйских» мне известно о WAGO и Berghof.

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

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

Owen Cloud

Сначала нужно зарегистрироваться на облачном сервисе. Если вы хотите посмотреть возможности программы, то нажмите кнопочку Демо-вход.

После того, как вы зарегистрировались и вошли в сервис, у вас появится вот такое окошечко:

А как нам связаться с устройствами?? Для этого есть специальные модемы, которые позволяют подключиться к SCADA без предварительных настроек. Прям «с коробки». Название ему ПМ210. Овен проводит акцию и присылает девайс на бета-тестирование.

Принцип работы такой — туда вставляется симка с действующим интернетом GPRS. Подключаем питание и опрашиваемый прибор по интерфейсу RS-485. Если выдаёт ошибку, не пугайтесь, это может вы просто не подключили облачный сервис или устройство, которое надо опрашивать.

Когда вы выполните все вышеизложенные операции переходим к сервису. На рисунке в списке терморегулятор, это я настраивал ТРМ202, чтобы продемонстрировать возможности программы. Мы нажимаем на кнопку Добавить прибор.

В следующем окне у вас появятся настройки. Нужно ввести IMEI-идентификатор ПМ210. Его можно найти на приборе сбоку. Затем пишем название, скорость, адрес вашего прибора.

И в принципе всё. Укажите ещё самостоятельно, где у вас географически будет находиться девайс.

В итоге вы получите полный доступ к прибору на дистанции. Вы можете видеть несколько приборов на карте Яндекса.

Можете посмотреть текущие значения, таблицы и графики.

Хочу сказать, классный софт, с минимальными настройками и дружелюбным интерфейсом.

Виды ПЛК

  • Основные ПЛК,
  • Программируемое (интеллектуальные) реле,
  • Программные ПЛК на базе IBM PC-совместимых компьютеров (англ. SoftPLC),
  • ПЛК на базе простейших микропроцессоров (i// и т. п.),
  • Контроллер ЭСУД (Электронная система управления двигателем).

Контроллер на базе персонального компьютера

Именно это направление существенно развивается в последнее время, и это обусловлено определенными причинами. Таковыми причинами являются:

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

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

Локальный программируемый контроллер

ЛПК подлежит следующей классификации:

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

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

Литература

  • Э. Парр. Программируемые контроллеры: руководство для инженера. — М.: БИНОМ. Лаборатория знаний, 2007. — 516 с. ISBN 978-5-94774-340-1
  • Петров И. В. Программируемые контроллеры. Стандартные языки и приемы прикладного проектирования / Под ред. проф. В. П. Дьяконова. — М.: СОЛОН-Пресс, 2004. — 256 c. ISBN 5-98003-079-4
  • Денисенко В. В. Компьютерное управление технологическим процессом, экспериментом, оборудованием. — М: Горячая Линия-Телеком, 2009. — 608 с. ISBN 978-5-9912-0060-8
  • Минаев И. Г. Программируемые логические контроллеры. Практическое руководство для начинающего инженера. /И. Г. Минаев, В. В. Самойленко — Ставрополь: АГРУС, 2009. — 100 с. ISBN 978-5-9596-0609-1
  • Минаев И. Г. Программируемые логические контроллеры в автоматизированных системах управления / И. Г. Минаев, В. М. Шарапов, В. В. Самойленко, Д. Г. Ушкур. 2-е изд., перераб. и доп. — Ставрополь: АГРУС, 2010. — 128 с. ISBN 978-5-9596-0670-1
  • О. А. Андрюшенко, В. А. Водичев. Электронные программируемые реле серий EASY и MFD-Titan. — 2-е изд., испр. — Одесса: Одесский национальный политехнический университет, 2006. — С. 223.
  • Минаев И.Г. Свободно программируемые устройства в автоматизированных системах управления / И.Г. Минаев, В.В. Самойленко, Д.Г. Ушкур, И.В. Федоренко — Ставрополь: АГРУС. 2016. — 168 с. ISBN 978-5-9596-1222-1

ОВЕН ПЛК63/73

А что там с Modbus?

SlaveтутРежим Мастер

  • среда программирования;
  • легко создать меню с уставками и настройками (Segnetics отдыхает)
  • часы и память всегда «с собой»;
  • возможность работать с нестандартными протоколами по COM порту;
  • больше входов и выходов у ПЛК (в сравнении с Pixel);
  • «из коробки» в меню ПЛК можно изменить типы датчиков, посмотреть их показания
  • питание от 220В (наверно плюс, хотя придется предусматривать защиту по питанию в виде предохранителей и автоматов — уже был опыт с срабатыванием внутренней защиты по питанию).
  • все модификации с питанием только от 220В;
  • кнопки ПЛК73;
  • модуль расширения только один;
  • текстовый дисплей у ПЛК63 большой, но бестолковый — 2 x 16 символов;
  • вход в меню с уставками одной кнопкой «Ввод». Мне лично не нравится, т.к. усложняет создание дополнительных меню;
  • неудобно переносить меню из одной модели ПЛК в другую (тиражировать однотипные настройки). Приходится создавать заново. Раздражает.

Цены

  • ПЛК63-РРРУУУ-L (8DI; 8AI; 3 реле; 3 AO 0-10В) — цена 14 514 р
  • ПЛК73-ККККУУУУ-L (8DI; 8AI; 4 транзистора, 4 AO 0-10В) — цена 14 986 р
  • МР1-Р (8 реле) — цена 3 953 р.

Segnetics SMH2g и Pixel

А что там с Modbus?

  • мало времени для создания типовых программ для вентиляции;
  • приятный дизайн оборудования;
  • до 8 модулей расширения;
  • можно всегда получить Ethernet.
  • слабый «язык» программирования;
  • отсутствие гальванической изоляции аналоговых входов и выходов (у Pixel);
  • «из коробки» нет возможности менять тип аналоговых датчиков;
  • нет возможности работать с нестандартными протоколами по COM порту (что-то может получится через linux у SMH2gi, но сама среда программирования такой возможности не даст);
  • «плюющиеся» клеммы у Pixel. Наконечник типа НШВИ 1,5-8 частенько будет выталкиваться из клемм при закручивании. Рекомендую длиннее — НШВИ 1,5-12. Иначе рискуете много материться при монтаже.

Цены

  • Pixel-2511-02-0 — цена 11 054 р
  • Pixel-MR602-00-0 Модуль расширения 6вых. (реле 5А), 2 аналог. вых. (0…10В) — цена 7 206 р
  • Pixel-MR120-00-0 Модуль расширения 12вх. (NPN/PNP) — цена 5 190 р
  • SMH 2G-4222-01-2 — цена 12 614 р
  • SMH 2Gi-0020-31-2 — цена 17 064 р
  • MC-0401-01-0 Модуль расширения для SMH 2G/SMH 2Gi; 9вх. (NPN/PNP)/10вых. (5 реле 5А, 5 оптореле 400 мА), 8 аналог. вх. (6 универс., 2 напряжение/ток 0…10В/4…20мА, 24 бит)/4 аналог. вых. (0…10В) — цена 10 582 р

Schneider Electric M171/172

А что там с Modbus?

ModbusВот вам еще 1,5 ложки дегтя:

  • 1 ложка – Master режим ВООБЩЕ не работает.
    Сколько наш программист не бился, так и не смог запустить. Вместо этого на выходе RS485 мы получали только первый байт посылки. Т.е. адрес опрашиваемого устройства. Так на одном объекте нам пришлось дополнять щит – вставлять Овна ПЛК100, чтоб 100тый выполнял роль Master’a (картинка ниже);
  • 0.5 ложки – Slave режим на объекте у нас падал в течении 12ти часов работы. Это касалось Modbus TCP. Лечится только сбросом питания. А вот тут уже не знаем чего делать – попробуем перенести опрос на COM порт.

UPDПлюсы

  • большая линейка оборудования, модулей расширения;
  • много интерфейсов;
  • есть модификации ПЛК с большим количеством I/O;
  • графический дисплей (старшие модели);
  • есть выносная и настенная панель;
  • неплохой внешний вид;
  • несколько языков программирования.

Минусы

  • сырой продукт (во всяком случае, М172). Касается как ПО, так и самих ПЛК;
  • недружелюбная среда разработки;
  • нет нормальной документации по работе в среде программирования;
  • никакой тех поддержки. Дистрибьютор еще чего-то пытался помочь – но и он не особо выручил;
  • долгая поставка оборудования. В случае, когда надо все «вчера» – эти ПЛК не ваш выбор.

Цены

  • TM172PDG42R ПЛК М172, дисплей, 42 I/O, Eth — цена 26 991 р
  • TM172ASCTB42 Терминальный блок с винтами на 42 вх/вых — цена 1 159 р
  • TM172PDG28R ПЛК М172, дисплей, 28 I/O, Eth — цена 19 283 р
  • TM172ASCTB28 Терминальный блок с винтами на 28 вх/вых — цена 989 р

Литература

  • Э. Парр. Программируемые контроллеры: руководство для инженера. — М.: БИНОМ. Лаборатория знаний, 2007. — 516 с. ISBN 978-5-94774-340-1
  • Петров И. В. Программируемые контроллеры. Стандартные языки и приемы прикладного проектирования / Под ред. проф. В. П. Дьяконова. — М.: СОЛОН-Пресс, 2004. — 256 c. ISBN 5-98003-079-4
  • Денисенко В. В. Компьютерное управление технологическим процессом, экспериментом, оборудованием. — М: Горячая Линия-Телеком, 2009. — 608 с. ISBN 978-5-9912-0060-8
  • Минаев И. Г. Программируемые логические контроллеры. Практическое руководство для начинающего инженера. /И. Г. Минаев, В. В. Самойленко — Ставрополь: АГРУС, 2009. — 100 с. ISBN 978-5-9596-0609-1
  • Минаев И. Г. Программируемые логические контроллеры в автоматизированных системах управления / И. Г. Минаев, В. М. Шарапов, В. В. Самойленко, Д. Г. Ушкур. 2-е изд., перераб. и доп. — Ставрополь: АГРУС, 2010. — 128 с. ISBN 978-5-9596-0670-1
  • О. А. Андрюшенко, В. А. Водичев. Электронные программируемые реле серий EASY и MFD-Titan. — 2-е изд., испр. — Одесса: Одесский национальный политехнический университет, 2006. — С. 223.
  • Минаев И.Г. Свободно программируемые устройства в автоматизированных системах управления / И.Г. Минаев, В.В. Самойленко, Д.Г. Ушкур, И.В. Федоренко — Ставрополь: АГРУС. 2016. — 168 с. ISBN 978-5-9596-1222-1

Основы программирования ПЛК. Реле и контроллер

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

Есть кнопка, контроллер и индикатор. Когда кнопка не задействована, сигнал на вход контроллера отправлен не будет. ПО, показывающее открытый вход, не отправит сигнал на выход. Так, на выходе ток отсутствует и лампа не будет гореть.

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

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

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

Управляющие команды на языке релейной логики просты и понятны для инженеров-электриков. На графическом интерфейсе видны все логические операции. Это электрическая ц3епь с замкнутыми либо разомкнутыми контактами. Если по цепи протекает ток, что это истина. Если ток не протекает, тогда состояние – ложь.

Основой управляющей программы служат логические выражения, состоящие из операндов и переменных. Также программа состоит из операторов. Операторы – это команды языка программирования.

Инженер-программист ПЛК – это сегодня больше инженер, чем программист. Сейчас не нужны сложные языки, писать ассемблерные вставки. Достаточно использовать стандартные функциональные блоки.

ПЛК – что это такое?

Контроллер — это мозг для машины. Чем сложнее машина, тем функциональнее контроллер. Технически реализация мозга может быть разной – механика, пневматика либо гидравлика, релейные или электронные системы.

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

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

Как работает ПЛК?

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

Вычисления в устройстве выполняются циклически. То есть одни и те же действия выполнения программы выполняются в короткий промежуток времени.

В один цикл осуществляемый прибором выполняются следующие операции:

  1. Начало цикла;
  2. Чтение состояния входа;
  3. Выполнение кода пользователя;
  4. Запись состояния выходов;
  5. Обслуживание аппаратных ресурсов;
  6. Монитор системы исполнения;
  7. Контроль времени цикла;
  8. Переход на начало цикла;

Не буду больше разглагольствовать по теории. Давайте сразу перейдём к практике.

Заключение

Сегмент встраиваемых систем в суммарном годовом объеме применений CODESYS ежегодно увеличивается. CODESYS применяется во встраиваемых контроллерах компаний Bosh, Rolls-Royce Marine, Praxis, CC Systems, Moba и др. Это далеко не опытные прототипы, речь идет о десятках тысяч изделий. Примеры нескольких применений показаны на фотографиях.

Среди МЭК-систем программированиия CODESYS выделяется тем, что, подобно компиляторам С/С++, непосредственно генерирует надежный и компактный машинный код, пригодный для встраиваемых систем. Простые в освоении языки МЭК позволяют привлечь к разработке и сопровождению специалистов прикладной области. Интерес для разработчика встраиваемых систем может представлять богатый функционал комплекса CODESYS. Многозадачность реального времени, обработка событий, встроенная визуализация, развитый набор коммуникаций, «горячее» обновление кода, полевые сети, поддержка управления через Интернет, средства национальной локализации проектов и другие функции CODESYS могут быть не востребованы во встраиваемой системе изначально. Но необходимо учитывать, что все они создавались эволюционно, исходя из практических требований, возникавших у пользователей контроллеров в разных странах, разных условиях и на разных этапах работ. В процессе жизни встраиваемой системы неизбежно возникают аналогичные или близкие задачи. Например, задача настройки и тестирования оборудования заказчиком, интеграция с другим оборудованием, веб-интерфейс и т. п. Во многих случаях CODESYS даст готовое решение.

Рейтинг автора
5
Материал подготовил
Максим Иванов
Наш эксперт
Написано статей
129
Ссылка на основную публикацию
Похожие публикации