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

Содержание

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Подробности об языке программирования на ST в CoDeSyS

Прежде чем мы с вами будем рассматривать упрощённую графическую систему программирования для технологов, хотелось бы в двух словах рассказать о базисном языке программирования СИ. Язык ST CoDeSyS отличается от других своей гибкостью и адаптивностью под любые задачи. Он позволяет обрабатывать сложные решения и видеть всю картину в целом. Чаще всего применяется в функциональных блоках для обработки алгоритма той или иной части рабочего органа станка или линии.

Из этой статьи вы узнаете:

Здравствуйте уважаемые Дамы и Господа! Меня зовут Гридин Семён, и я являюсь автором этого блога. В данном посте я хочу обсудить с вами базовые понятия языка программирования CoDeSyS. Называется он ST CoDeSyS, очень сильно напоминает СИ.

Общие сведения о языке ST¶

ST (Structured Text) – это текстовый язык высокого уровня общего назначения, по синтаксису схожий с языком Pascal. Удобен для программ, включающих числовой анализ или сложные алгоритмы. Может использоваться в программах, в теле функции или функционального блока, а также для описания действия и перехода внутри элементов SFC. Согласно IEC 61131-3 ключевые слова должны быть введены в символах верхнего регистра. Пробелы и метки табуляции не влияют на синтаксис, они могут использоваться везде.

Выражения в ST выглядят точно также, как и в языке Pascal:

Порядок их выполнения – справа налево. Выражения состоят из операндов и операторов. Операндом является литерал, переменная, структурированная переменная, компонент структурированной переменной, обращение к функции или прямой адрес.

ОВЕН ПЛК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 р

А что там с 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 р

Из чего состоит программный комплекс для полноценной работы с ПЛК

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

Итак, скачиваем программу:

Затем следует стандартная процедура установки. Указываем путь и все время жмём “Далее”, “Далее”.

Запускаем автоматический установщик, устанавливаем инструкции. Всё, половину пути мы с вами уже сделали в этой работе! После этих всех процедур можно устанавливать библиотеки, но о них позже. Переходим к следующему пункту.

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

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

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

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

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

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

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

Основой комплекса 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 доступна бесплатно для всех пользователей.

Owen Cloud

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Библиотеки CoDeSys

Имя файла

Скачать библиотеку с описанием

Установщик библиотек

скачать (exe)

Имя файла

Скачать библиотеку с описанием

Библиотеки ОВЕН

Библиотеки CoDeSys

Имя файла

Скачать библиотеку с описанием

Библиотеки ОВЕН

Библиотеки CoDeSys

Имя файла

Скачать библиотеку с описанием

Библиотеки ОВЕН

Библиотеки CoDeSys

Утилиты EasyWorkPLC и PLC_IO

Имя файла

Скачать утилиты с описанием

EasyWorkPLC

PLC_IO

Сервисное ПО для контроллеров ОВЕН ПЛК 100/150/154

Действующая программа обновления встроенного ПО  контроллеров ОВЕН ПЛК версии 2.14.0

Контроллер

Прошивка

Таргет файл

ПЛК100

Скачать (1 МБ):

Версия 2.11

Установщик Target файлов для следующих моделей ПЛК: ПЛК100, ПЛК150, ПЛК154

Автоматический установщик  (400 КБ):

Архив (300 КБ):

ПЛК150

Скачать (1 МБ):

ПЛК154

Скачать (1 МБ):

UpdateCore

Скачать

История изменений

ПЛК100/150/154

ПЛК110/160

 

Версия 2.10

Установщик Target файлов для всех моделей ПЛК: ПЛК110, ПЛК160, ПЛК100, ПЛК150, ПЛК154

Автоматический установщик  (500 КБ):

Архив (400 КБ):

 DVD V.3 для ОВЕН ПЛК (CoDeSys v 2.3). Скачать (440 Мб).

ОВЕН ftp

 Здесь Вы можете скачать быстрее здесь.

Уважаемые господа у кого не открывается эта ссылка напишите: send2mike@owen.ru

Если у вас есть проблема со скачиванием файлов .

Сервисное ПО для контроллеров ОВЕН ПЛК 110/160

Действующая программа обновления встроенного ПО контроллеров ОВЕН ПЛК версии 2.14.0

Контроллер

Прошивка

Таргет файл

ПЛК110-30

Скачать (1 МБ)

Версия 2.10

Установщик Target файлов для следующих моделей ПЛК: ПЛК110, ПЛК160

Автоматический установщик (400 КБ)

Архив (300КБ)

ПЛК110-32

Скачать (1 МБ)

ПЛК110-60

Скачать (1 МБ)

ПЛК160

Скачать (1 МБ)

UpdateCore

Скачать

История изменений

ПЛК100/150/154

ПЛК110/160

 

Версия 2.10

Установщик Target файлов для всех моделей ПЛК: ПЛК110, ПЛК160, ПЛК100, ПЛК150, ПЛК154

Автоматический установщик  (500 КБ)

Архив (400 КБ)

 DVD V.3 для ОВЕН ПЛК (CoDeSys v 2.3). Скачать (440 Мб).

ОВЕН ftp

 Здесь Вы можете скачать быстрее здесь.

Уважаемые господа у кого не открывается эта ссылка напишите: send2mike@owen.ru

Если у вас есть проблема со скачиванием файлов .

Сервисное ПО для контроллеров ОВЕН ПЛК 63/73

Действующая программа обновления встроенного ПО контроллеров ОВЕН ПЛК версии 2.12/2.15

Контроллер

Прошивка

Таргет файл

ПЛК63

Скачать (1 МБ):

Версия 2.01

Установщик Target файлов для следующих моделей ПЛК: ПЛК 63

Автоматический установщик  (400 КБ):

Архив (800 КБ):

ПЛК73

Скачать:

v.2.16_PLC73(Лицензия M).exe (1,2 МБт)

v.2.16_PLC73(Лицензия L).exe (1,2 МБт)

Программа тиражирования

 Программа тиражирования предназначена для копирования программы из одного контроллера на другой без использования CoDeSys. Данная программа не позволяет считать исходный код проекта, она копирует образ памяти с программой(в компилированном виде) и позволяет распространить его на подобные устройства. Программа позволяет копировать данные только на аналогичные устройства, например с ПЛК73M только на ПЛК73М.

 DVD V.3 для ОВЕН ПЛК (CoDeSys v 2.3). Скачать (440 Мб).

Сервисное ПО для контроллера ОВЕН ПЛК110(М01)

Действующая программа обновления встроенного ПО контроллеров ОВЕН ПЛК110

Контроллер

Прошивка

Таргет файл

ПЛК110(М01)

UpdateCore

История изменений

 DVD V.3 для ОВЕН ПЛК (CoDeSys v 2.3). Скачать (1 Гб).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Возможно, вам также будет интересно

Мир вокруг нас меняется, вещи становятся умнее, быстрее, технологичнее. И подстраиваться под новые реалии приходится всем. Чтобы сохранить конкурентоспособность, необходимо думать об инновационной составляющей в изделиях. Компания PTC предлагает решение Creo 3.0, позволяющее разработчикам избавиться от серьезных проблем механических систем автоматизированного проектирования, включая сложность и…

В статье обсуждаются особенности RTU и некоторые технические вопросы, возникающие в эру «Интернета вещей» (IoT — Internet of Things). Это обсуждение включает позиционирование удаленных оконечных устройств во всем многообразии средств автоматизации, а также соответствующие предложения компании Advantech в части программ и аппаратных средств.

All-over-IP Expo 2013 представляет The Next Big Thing российского рынка ИТ — IaaS (инфраструктура как услуга). Аналитики компании J’son & Partners Consulting предсказывают этому рынку взрывной рост в течение ближайших четырех лет. Объем рынка достигнет 3 млрд рублей в 2016 году.
Оценки и прогнозы развития рынка IaaS в России, деловые возможности для ИТ-компаний, преимущества для конечных потребителей — обо всем этом можно будет узнать на All-over-IP Expo 2013 из выступлений авторитетных исследователей J’son & Partners Consulting, ведущей международной консалтинговой компании в …

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

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

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

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

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

Как программировать на codesys 2.3 новичку? Легко

Перед тем, как программировать ПЛК в среде разработки CoDeSyS 2.3 новички часто задаются вопросом: А какие системы требуется установить для корректной работы с аппаратом?? А как конфигурировать входы и выходы контроллера?? А каким образом связать устройство с ПК?? И снова, а как, а как?? Все мы с вами понимаем, устройства сложные и алгоритмы объёмные, и на изучение потребуется время. Я вот думаю, может написать небольшую книжку и назвать codesys для чайников? А вы согласны?

Из этой статьи вы узнаете:

Здравствуйте уважаемые коллеги и гости. Пишет вам автор блога kip-world.ru, Гридин Семён, и в этой статье я вам расскажу, как правильно программировать контроллер. Тема достаточно актуальная, я надеюсь после прочтения статьи, некоторые вопросы отпадут самим собой. =)

Установка к CODESYS

Для того чтобы устройство программировалось в CODESYS, в нем предварительно должна быть установлена так называемая система исполнения CODESYS Control. Она включает планировщик задач, загрузчик, функции отладки, обслуживает полевые сети, ввод/вывод и т. д. Именно благодаря ей МЭК-программа оказывается аппаратно-независимой. Набор ресурсов, которые должна обслуживать система исполнения, отличается у разных контроллеров. Речь идет не только о микроконтроллере, но и об устройстве в целом. По этой причине нельзя просто скопировать систему исполнения с одного устройства на другое. Она всегда требует некоторой индивидуальной адаптации. Все существующие встраиваемые системы с CODESYS созданы одним из трех способов:

  1. Бизнес-модель разработчиков CODESYS ориентирована на серийно выпускаемые изделия. Изготовитель ПЛК приобретает стартовый набор. Это комплекс из программного обеспечения и работ по обучению, помощи в адаптации и дальнейшему сопровождению. На выходе получается специальная «прошивка», «заточенная» под конкретную систему и готовая к тиражированию. Первая адаптация обычно занимает несколько месяцев. Выполнив ее, компания приобретает необходимый опыт и может самостоятельно устанавливать CODESYS на любые свои продукты достаточно быстро, даже если они построены на разных процессорах и в разных операционных системах.
  2. Существуют компании (Systec, Janz, Frenzel Berg и др.), предлагающие готовые встраиваемые устройства с CODESYS и системы под заказ. Заказчику остается только написать прикладное ПО. Обычно такие компании выпускают собственный ряд модулей-«полуфабрикатов». У них имеется надежное аппаратное ядро (встраиваемый компьютер, микропроцессорный модуль, PLC Сore), определенный набор плат или микросхем ввода/вывода, сетевые и другие модули. Из них компонуется нужная система. Они также предлагают несколько типов готовых встраиваемых компьютеров (контроллеров) с CODESYS и эволюционные наборы.
  3. Применение микросхем и модулей Beck IPC@CHIP. Это миниатюрный встраиваемый компьютер с ОС РВ на борту. Компании Beck удалось придумать технологию и создать специальный инструмент — Platform Builder (кстати, бесплатный). С его помощью в диалоговом режиме мы задаем требуемую конфигурацию системы исполнения CODESYS. Например, можно включить поддержку CANopen, веб-визуализации, описать входы/выходы, выбрать способ обслуживания энергонезависимой памяти, добавить собственные обработчики системных событий и т. п. Затем автоматически генерируются все необходимые файлы. Остается дописать по готовым шаблонам драйверы ввода/вывода под нашу периферию и собрать систему исполнения. Получается исполняемый файл, который копируется на встроенный диск IPC@CHIP. Технология выглядит простой, но пока никто из конкурентов не создал аналогов. Все они предлагают некие типовые сборки PLC Core ядер с фиксированным функционалом.

По требованию российских заказчиков Beck создала специальное исполнение чипов с расширенным температурным диапазоном (–40 °С). Существует исполнение для энергетики с поддержкой коммуникационной библиотеки МЭК 61850.

Первый путь выбирают крупные изготовители встраиваемых систем. Он оправдан при выпуске от нескольких сотен изделий в год и выше. В странах ЕС все более развивается практика заказа разработки. По числу применений в России лидирует технология Beck IPC@CHIP. В любом случае среда программирования CODESYS поставляется бесплатно. Никаких ограничений в функционале и числе установок в ней не предусмотрено. В CODESYS имеется встроенный эмулятор контроллера. Это позволяет начать работу без приобретения аппаратных средств.

Рис. «Беспилотный» транспортер E&K AUTOMATION на базе собственного встроенного контроллера и модулей ввода/вывода Wago IO

Заключение

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

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