Задать вопрос

или свяжитесь с нами по телефону +7 (495) 792-57-57

* - обязательные поля

Приводная техника и средства автоматизации
+7 (495) 644-43-32

Программирование ПЛК

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

15.12.2023

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

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

программирование плк

Как устроен плк

Устройство состоит из программной и аппаратной части. Последняя включает:

  • Центральный процессор. Элемент осуществляет логику работы ПЛК. Устройство выполняет функции обработки сигналов от внешних устройств, управления другими элементами контроллера, формирования и выдачи команд на выходы.
  • Внутренние реле (меркеры). Элементы предназначены обеспечения работы программы с минимальным количеством внешних устройств при реализации сложных схем управления.
  • Счетчики. Служат для счета импульсов с датчиков или других внешних устройств. Пример применения счетчиков в ПЛК – управление электроприводом с точным позиционированием положения вала.
  • Память. Элемент обычно состоит из постоянного и оперативного запоминающего устройства. Первое предназначено для загрузки программ, которые непосредственно используются в работе, вторая – для хранения ПО и других данных.
  • Входы и выходы. Элементы служат для связи с внешними устройствами. К входам подключают переключатели, датчики, другие устройства, к выходам – исполнительные механизмы, другое оборудование. Входы и выходы различают по типу сигнала: аналоговые, цифровые, релейные, транзисторные (симмисторные).
  • Источники питания. Устройства предназначены для электропитания контроллера и энергозависимых датчиков. Ряд моделей ПЛК использует внешние источники питания.
  • Интерфейс. Элемент служит для обеспечения обмена данными, в том числе для программирования ПЛК.

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

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

Принцип работы

Логический контроллер работает циклически. Алгоритм работы устройства включает следующие процессы:

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

Цикл повторяется многократно в течение всего времени протекания управляемого технологического процесса. Современные контроллеры также могут работать с другими ПЛК по принципу «ведущий – ведомый» а также независимо друг от друга (в схемах с резервированием).

Программирование плк

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

Для программирования plc используют встроенные или модульные панели управления, мобильные программаторы и персональные компьютеры. Установка простых программ осуществляется с дисплея контроллера или программатора, для установки больших сложных пакетов ПО применяют ПК, подключенные непосредственно к контроллеру или через сеть.

Простейший язык программирования ПЛК – язык релейно-контактных схем. Рассмотрим последовательность действия установки программы контроллера на примере.

На рисунке представлена простейшая релейная схема управления электродвигателем.

как программировать контроллеры

При замыкании контакта Х1 на катушку реле подается напряжение. Нормально разомкнутые контакты электромеханического устройства при этом замыкаются, напряжение подается на двигатель.

Заменяем электромеханическое реле контроллером. Для этого нужно присвоить назначение входам и выходам.

В представленном примере цепь управления питается от источника постоянного тока. Шины питания обозначаются параллельными прямыми, с левой стороны находится «+», справа «-». Присваиваем соответствующему клеммам контроллера такое назначение.





Катушка обозначается как:

  

назначаем выходы контроллера, аналогично присваиваем выходам Х2 и Х1 назначение нормально замкнутого 

и нормально разомкнутого контакта

 

В результате получаем схему управления электродвигателем, где электромагнитное реле заменено контроллером.

Рассмотрим еще один пример. Схема автоматического поддержания уровня в резервуаре обеспечивает включение насоса при достижении нижнего допустимого значения и отключение при достижении нижнего.








Схеме питания насоса задают выход Y1, датчикам верхнего и нижнего уровня Х1 и Х2 соответственно, внутреннему реле ПЛК присваивают наименование М1. Программа автоматического поддержания уровня будет выглядеть следящим образом:











При изменении уровня меньше допустимого порога на оба входа Х1 и Х2 подается сигнал, при этом на выходе М1 формируется и подается команда на запуск насоса. Когда жидкость достигает нижнего допустимого значения, сигнал на входе Х1 изменится на нулевой, при этом выход Х2 по-прежнему будет подаваться сигнал от датчика верхнего допустимого уровня. При его достижении сигналы с обоих датчиков изменяются на «0», виртуальные контакты внутреннего реле М1 размыкают цепь питания насосного агрегаты. Насос прекращает работу.

Данные схемы демонстрируют возможности контроллеров и приведены для лучшего понимания. Реальные возможности современных логических устройств намного шире. Кроме релейных выходов и входов для прямого управления силовыми агрегатами, существуют следующие входы-выходы:

  • • Транзисторные для коммутации цепей управления оборудования.
  • • Аналоговые для плавного высокоточного регулирования параметров.
  • • Дискретные (цифровые) для многопозиционного ступенчатого регулирования.

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

Язык программирования плк

Для того, чтобы назначить входы и выходы, задать алгоритм управления необходимо написать и ввести соответствующую программу. ПО контроллеров пишутся на нескольких языках программирования. Разобранные выше примеры написаны на одном из визуальных языков релейной логики LD (Ladder Diagram или лестничная диаграмма).

Для стандартизации языков программирования ПЛК был разработана система нормативов МЭК 61131-3. Согласно стандарту, для написание ПО промышленных контроллеров применяют 5 языков: три графических и два текстовых.

Язык релейно-контактных схем (LD)

Один из самых простых и понятных визуальных языков плк. Программировать на Ladder Diagram может практически каждый инженер, знакомый с релейной логикой.

Программные команды имеют вид графических символов и имеют следующую структуру:

языки плк











Примеры графических обозначений:

  •  нормально разомкнутый контакт

  •  

  • управление по переднему фронту входного сигнала

  •  

  • управление по заднему фронту выходного сигнала

  • «SET/RST» – состояние сигнала операнда,

  • «END» – окончание программы и так далее.

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

SFC или Sequential Function Charts представляет собой прикладной пакет, который позволяет проектировать и составлять программы в максимально понятной для неспециалистов форме. Программирование ПЛК напоминает составление блок-схем алгоритмов. Логика формируется при помощи шагов и обусловленных переходов.

Код ПО имеет вид:

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







Язык функциональных блоков (FBD)

FBD или Function Block Diagrams использует символы функциональных блоков: элементов логики, арифметических, тригонометрических, ПИ и ПИД-регуляторов и т.д.

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

Язык списка инструкций (IL)

IL или Instruction List – текстовой язык программирования контроллеров для профессиональных программистов. На его основе можно создавать быстродействующие программные единицы.

Код, составленный на этом языке, имеет следующий вид:

язык программирования контроллеров










Главное достоинство IL – унификация. Язык подходит для любого типа микропроцессоров.


Язык структурированного текста ST

Structured Text – текстовой язык программирования контроллеров для различных категорий пользователей. В основе ST – базовые языки Ada, Pascal и C.

Код выглядит следующим образом:

ST – базовый язык для написание последовательных алгоритмов с переходами к выполнению определенных инструкций при соответствии или несоответствии с заданными условиями.