Число просмотров этой статьи:

Высокие технологии: программирование контроллеров

Автор: | 03.09.2017

Здравствуйте, уважаемые читатели сайта!

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

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

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

Что такое контроллер?

Приведу несколько терминов.

Программируемый логический контроллер (сокр. ПЛК); ударение на второй слог: контроллер;  англ. programmable logic controller, сокр. PLC) – промышленный контроллер, используемый для автоматизации технологических процессов.

Промышленный контроллер – управляющее устройство (контроллер от англ. control — управлять), применяемое в промышленности и других отраслях по условию применения и задачам, близким к промышленным (например, на транспорте). Применяется для автоматизации технологических процессов, в быту — для управления климатом и др. Основное требование предъявляемое к промышленным контроллерам, высокая надежность и возможность работы в жестких промышленных условиях.

ПЛК производятся в разных странах:

Шнейдер Электрик (Франция)

Шнейдер Электрик (Франция)

Сименс (Германия)

Сименс (Германия)

Овен (Россия)

Овен (Россия)

 

 

 

 

 

 

Дженерал Электрик (США)

Дженерал Электрик (США)

Раут-Автоматик (Украина)

Раут-Автоматик (Украина)

ETI (Словения)

ETI (Словения)

 

 

 

 

 

 

МЗТА (Россия)

МЗТА (Россия)

Eaton (США)

Eaton (США)

Advantech (Китай)

Advantech (Китай)

 

 

 

 

 

ABB (Германия)

ABB (Германия)

B&R (Австрия)

B&R (Австрия)

Mitsubishi (Япония)

Mitsubishi (Япония)

 

 

 

 

 

Vipa (Германия)

Vipa (Германия)

Rockwell Automation (США)

Rockwell Automation (США)

Omron (Япония)

Omron (Япония)

 

 

 

 

 

 

Автору приходилось работать с ПЛК следующих фирм-производителей: Schneider Electric, ETI, Siemens, Раут-автоматик, Овен, МЗТА. Для каждого из этих контроллеров создавались программы, которые управляли реальными производствами.

 

 

Для чего нужны контроллеры?

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

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

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

 

Входы и выходы ПЛК

ПЛК может иметь в разных комбинациях следующие типы входов/выходов (или т.н. каналов):

  • аналоговые входы/выходы
  • цифровые (дискретные) входы/выходы.

Аналоговый канал – принимает или выдает значения физических величин (например, температура, давление, уровень, освещенность). Контроллер получает или выдает сигнал в виде напряжения (0…10В, 0…5В), тока (4…20мА), сопротивления. Например, датчик температуры воздуха передает токовый сигнал контролеру 4…20 мА, где 4мА сооттвествует -30 градусов, а 20мА – +50 градусов.

Дискретный канал принимает сигналы логических “о” или “1”. Например, сработал датчик открытия дверей и замкнул свой контакт – лог “1” поступила на вход ПЛК. Разомкнулся контакт – сигнал сменился на противоположный – лог. “0”.

В электрических схемах входы/выходы обычно маркируют так:

  • DI (digital input) – цифровой (дискретный) вход;
  • DO (digital output) – цифровой (дискретный) выход;
  • AI (analog input) – аналоговый вход;
  • AO (analog output) – аналоговый выход.

 

Программа

Контроллер работает благодаря программе, написанной для него. В таком случае ПЛК называется свободнопрограммируемымМеждународная Электротехническая Комиссия (МЭК) утвердила 5  языков программирования ПЛК:

  1. Instruction List (IL) – список инструкций. Тестовый низкоуровневый язык, похожий на язык ассемблера.
  2. Ladder Diagram (LD) – язык релейно-контактных схем. Графический язык. Представляет собой программную реализацию электрических схем на базе электромагнитных реле. Этот язык самый простой для изучения электриком, который хочет реализовать какую-либо задачу без применения реле.
  3. Function Block Diagramm (FBD) – функциональные блоковые диаграммы. Графический язык. Функциональный блок (ФБ) выражает некую подпрограмму. Каждый ФБ имеет входы (слева) и выходы (справа). Программа создается путем соединения множества ФБ.
  4. Sequential Function Chart – последовательные функциональные диаграммы. Графический высокоуровневый язык. Описывает последовательность состояний и условий переходов.
  5. Structured Text – тестовый язык программирования. Похожий на язык “Паскаль”.

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

Где создавать программу?

Конечно, же, для разработки программ существуют специальные системы программирования. Здесь есть 2 варианта:

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

Примеры программ

Для примера покажу, как создать самую простую программу.

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

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

Электрическая схема подключения ПЛК

 

Напишем программу для реализации работы схемы на графическом языке программирования – FBD (язык функциональных блоковых диаграмм). Функциональный блок “ИЛИ” выполняет условие задачи, а именно: формирует на своем выходе (Y) логическую 1, если появилась логическая 1 хотя-бы на одном из двух его входов (Х1 или Х2).

Логическая 1 на входе – это не что иное, как замыкание контакта датчика протечки. Логическая единица на выходе блока “ИЛИ” поступает на дискретный выход контроллера DO_0.1, который тут же замыкает свой контакт и подает питание на звуковую сирену.

Пример программы, реализующий выполнение данного алгоритма:

Пример простейшей программы для ПЛКЕсть более сложные программы. В статье об модернизации котельной еврейского культурного центра в г. Одесса программу разрабатывал также на языке FBD. Запрограммировать можно и управление фонтаном (здесь подробная статья).

 

Системы программирования

Существуют системы программирования, в которых ведется разработка программного обеспечения для контроллеров многих производителей, (а не одного производителя). Одной из наиболее популярных систем такого рода является CoDeSys.

CoDeSys (с англ. Control Development System) – инструментальный программный комплекс промышленной автоматизации. Производитеся и распространяется компанией 3S-Smart Software Solutions Gmbh (Кемптен. Германия)

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

Я разрабатывал программное обеспечение в системе CoDeSys для контроллеров производства “Schneider Electric” (Шнейдер Электрик), “Овен”. Данная система поддерживает и визуальную часть проекта. Так что можно смело применять контроллеры, совмещенные с панелью оператора – т.н. сенсорные промышленные контроллеры (СПК). Далее о них и поговорим.

Сенсорные промышленные контроллеры (СПК)

СПК совмещают в одном корпусе 2 устройства – непосредственно ПЛК и панель оператора.

Панель оператора (или ЧМИ – человеко-машинный интерфейс) – среда взаимодействия человека-оператора с управляемыми им машинами и механизмами.

Для работы СПК необходимы дополнительные модули, которые принимают сигналы от внешних датчиков и передают их исполнительным механизмам (насосы, клапаны, двигатели и т.д.). Например, у фирмы “Овен” при сборке такой системы я подключал к СПК 8 модулей ввода-вывода:

Модули ввода-вывода к контроллеру

А сама панель программируемая выглядит так (в процессе разработки программного обеспечения):

Панельный ПЛК и модули

 

На производстве:

Овен СПК в электрическом щите

 

 

Ну что ж, на этом закончу небольшой обзор программируемых логических контроллеров.

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *