Easy руководство по программированию

Здравствуйте, уважаемое сообщество!
На Хабре уже много сказано слов о различных устройствах автоматизации, начиная от простых Arduino, заканчивая промышленными многопроцессорными системами. Я же хочу закрасить очередное белое пятно на карте хабро-автоматики статьей о промежуточных устройствах — программируемых реле, на примере микропроцессорных устройств Easy производства корпорации Eaton (Moeller).
Прошло уже достаточно много времени с моего первого знакомства с данным типом устройств, но по-прежнему, эти «электронные малыши» остаются незаменимыми помощниками для реализации широкого спектра инженерных и бытовых задач.

Программируемое (интеллектуальное) реле — разновидность программируемых логических контроллеров (ПЛК).
Основное применение программируемые реле нашли в качестве средств автоматизации локальных контуров, отдельных агрегатов машин и механизмов, для бытового применения.
На основе интеллектуальных реле интуитивно и понятно строятся различные системы автоматического управления, например, системы управления насосным оборудованием, сверлильными станками, системы автоматического ввода резерва (АВР). Компактные размеры и простота программирования позволяют разрабатывать на базе программируемых реле элементы системы «умный дом».
Стандартными средствами описания и построения программ для данных устройств являются языки релейной логики (LD) или функциональных блоков (FBD), разработанные специально для инженеров, занятых в области автоматизации промышленности и производства.
Простота языка программирования, легкость перехода от морально устаревших систем автоматизации на базе релейно-контакторных схем к микропроцессорным устройствам, позволили программируемым реле занять надежную позицию на рынке устройств автоматизации.

Теория

Реле, как основной оператор программирования

Исходя из названия описываемого класса устройств, основным оперируемым элементом будет являться реле.
Реле — электромеханическое устройство, предназначенное для коммутации электрических цепей при заданных изменениях электрических или неэлектрических входных величинах. Классическое реле имеет катушку управления x, и группу контактов, реализующих выходную функцию y=f(x).
При подаче управляющего напряжения на вход катушки контакты изменяют свое первоначальное состояние на инверсное.

Группа контактов может содержать два основных типа контактов: нормально открытые контакты и нормально закрытые контакты.
Нормально открытый контакт — контакт, находящийся в разомкнутом состоянии при отсутствии напряжения на катушке управления.
Нормально закрытый контакт — контакт, находящийся в замкнутом состоянии при отсутствии напряжения на катушке управления.

Таким образом можно записать два основных типа функций, реализуемых с помощью реле:
y(x) = x — для нормально-открытых контактов;
y(x) = x̅ — для нормально-закрытых контактов.

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

1 — катушка реле (управляющая цепь), 2 — нормально открытый контакт, 3 — нормально закрытый контакт, 4 — нормально открытый контакт с замедлителем при срабатывании, 5 — нормально открытый контакт с замедлителем при возврате, 6 — нормально открытый контакт импульсный, 7 — нормально открытый контакт без самовозврата, 8 — нормально закрытый контакт без самовозврата, 9 — нормально закрытый контакт с замедлителем при срабатывании, 10 — нормально закрытый контакт с замедлителем при возврате.

Элементы теории дискретных автоматизированных устройств

Под дискретным автоматизированным устройством понимают управляющее устройство, осуществляющее переработку априорной и текущей информации в управляющую, причем носителями всех перечисленных составляющих информации являются дискретные по уровню и во времени сигналы. Это означает, что состояние сигнала каждого входа (выхода) автоматизированного устройства характеризуется двумя уровнями: минимальным, условно обозначаемым «0», и максимальным, обозначаемым «1».
Составление структурной схемы управления по заданным условиям ее работы называют синтезом. Определение условий работы схемы или ее отдельных элементов по имеющейся структуре называют анализом схем управления.

Схемы на релейных и бесконтактных элементах можно составлять двумя способами.

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

Второй способ построения (синтеза) схем основан на более полном использовании теории алгебры логики и принципов формализации реальных условий работы схемы автоматики. В этом случае исходят из заданных условий работы, составляя соответствующие таблицы состояний (карты функций), где отмечают комбинации аргументов и значений функций (выходных сигналов) в виде логических «1» и «0». Основная задача синтеза заключается в определении такой формы выражения искомой логической функции, которую можно реализовать с применением минимального числа возможно более простых элементов. Синтез релейных схем управления сводится к составлению структурной формулы (аналитического выражения), описывающей логические функции, которые должны выполняться данным устройством. Затем анализируют полученную алгебраическую формулу и составляют графическое начертание схемы.

Разбор полного курса теории логики и синтеза схем выходит за рамки данной статьи, все заинтересовавшиеся данной тематикой могут подробно ознакомиться с предметом, используя ссылки на литературу (в конце статьи).

Давайте рассмотрим процесс создания схемы управления на простом примере из жизни.

Синтез релейно-контакторной схемы управления на примере

Постановка задачи

Необходимо разработать систему управления освещением офисного помещения в соответствии со следующими условиями:

Дано
Офисное помещение с одной группой основного освещения (люминесцентные лампы) и одной группой дежурного и фонового освещения.
Шторы-жалюзи с электроприводом.

Необходимо

  1. По окончанию рабочего дня (18:15) обеспечить отключение группы основного освещения и обеспечить включение дежурного освещения. Если жалюзи остались закрытыми — обеспечить их открытие.
  2. Перед началом рабочего дня (8:45) обеспечить отключение дежурного освещения.
  3. При недостаточном природном освещении, обеспечить включение основного освещения по сигналу с датчика затемнения, при условии, что жалюзи открыты.
  4. Обеспечить включение фонового освещения при закрытых жалюзи. Если было включено основное освещение — выключить его.
  5. При включении фонового освещения предусмотреть автоматическое опускание жалюзи.

Дополнительные условия

  1. Датчик освещенности имеет бинарный выход, настраиваемый на определенный порог освещенности. При недостаточной освещенности — контакт замыкается.
  2. Система привода жалюзи имеет контакты, информирующие о граничных положениях.

Решение

Давайте в первую очередь определим соответствия входных и выходных сигналов проектируемой системы переменным. Условимся обозначать все входные сигналы переменными I с соотв. индексом, а все выходные сигналы – переменными Q с соотв. индексом.

Входные переменные:
I1 — сигнал датчика освещенности.
I2 — сигнал верхнего положения жалюзи.
I3 — сигнал нижнего положения жалюзи.
I4 — сигнал включения фонового освещения.

Выходные переменные:
Q1 — включение/выключение основной группы освещения.
Q2 — включение/выключение дежурного освещения.
Q3 — включение/выключение фонового освещения.
Q4 — поднятие жалюзи.
Q5 — опускание жалюзи.

Переменные времени:
T1 — достижение времени окончания рабочего дня.
T2 — достижение времени начала рабочего дня.

Далее —разобьем нашу задачу на условные части и составим логические функции для каждой из частей.

  1. Конец рабочего дня
    1. Выключаем основной свет: Q1=not(T1)
    2. Включаем дежурный свет: Q2=T1
    3. Открываем жалюзи, если закрыты: Q4=not(I2)⋅T1

  2. Начало рабочего дня
    1. Выключаем дежурный свет: Q2=not(T2)
  3. Контроль уровня освещенности
    1. Включение основного света по датчику освещенности, с проверкой, открыты ли жалюзи: Q1=I1⋅ I2⋅not(T1)⋅T2
  4. Управляем фоновым освещением
    1. Включение фонового освещения при закрытых жалюзи: Q3=I3
    2. Отключим основное освещение при закрытых жалюзи Q1=not(I3)
  5. Управление жалюзи в зависимости от включенного фонового освещения
    1. При включении фонового освещения опустить жалюзи, если не конец рабочего дня: Q5=I4⋅not(I3) ⋅not(T1)⋅T2

Итак, мы получили логические функции, описывающие поведение элементов нашей системы в зависимости от условий и возмущающих воздействий. Далее необходимо осуществить переход к релейно-контакторной схеме, т.е., описать работу нашей системы на реальных физических устройствах.

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

Железо

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


Вверху устройства расположены:

  • клеммы для подключения питания;
  • клеммы цифровых входов устройства;
  • клеммы аналоговых входов (0..10 В).

Внизу устройства расположены:

  • клеммы релейных (или транзисторных) выходов устройства.

На фронтальной панели расположены:

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

Питание устройств

По напряжению и типу питания программируемые реле делятся на:

  • устройства с питанием 12, 24 В (DC);
  • устройства с питанием 24, 110-220 В (AC).

Цифровые входы

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

  • устройства с входами 12, 24 В (DC);
  • устройства с входами 24, 110-220 В (AC).

В зависимости от типа программируемого реле Easy, один и более цифровых входов могут быть использованы как «быстрые счетчики» — для подсчета импульсов с частотой до 3 кГц.

Аналоговые входы

Для обработки аналоговых сигналов, таких как, сигналы температурных датчиков, датчиков скорости ветра, внешних потенциометров, программируемые реле Easy имеют на борту два и более аналоговых входа 0..10 В (DC).
Нужно заметить, что аналоговые входы предусмотрены только на устройствах с питанием 12 В (DC), 24 В (AC, DC).

Релейные и транзисторные выходы

Для коммутации выходных сигналов в программируемых реле Easy предусмотрены 4 и более выходов. Выходы устройств бывают двух типов:

  • транзисторные выходы, обеспечивающие возможность коммутации небольших нагрузок до 0,5 А;
  • релейные выходы, обеспечивающие коммутацию нагрузок до 8 А (AC1).

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

Аналоговые выходы

Программируемые реле серии Easy800 имеют на борту аналоговый выход (0..10 В).

Экран

Встроенный экран предназначен для отображения текстовой (в устройствах серии Easy500, 700, 800) и графической (в устройствах серии MFD-Titan) информации.

Коммуникации и масштабируемость системы

Ethernet – возможность подключения посредством модуля расширения, реализующего функции OPC-сервера. Для всей линейки устройств.

Profibus, CANopen, DeviceNet, As-i – возможность подключения посредством модулей расширения. Для устройств серии Easy700, Easy800.

Easy-net – возможность соединения программируемых реле в сеть. Для устройств Easy800, MFD-Titan.

Для устройств серии Easy700, Easy800 доступны модули расширения, позволяющие увеличить количество входов и выходов устройств. Модули расширения могут иметь крепление встык, посредством переходника, либо, устанавливаться удаленно (до 100 м). Удаленная установка удобна в том случае, если, например, вы реализуете систему управления двумя помещениями.

К одному программируемому реле Easy может быть подключен только один модуль расширения.
Программируемые реле серии Easy800 имеют на борту интерфейс Easy-net, позволяющий объединить до 8-ми устройств в единую сеть, при этом к каждому из устройств может быть подключен модуль расширения. Таким образом возможна организация системы с количеством входов/выходов до 328.

Линейка программируемых реле Easy

Программируемые реле Easy представлены устройствами серий Easy500, Easy700, Easy800 и MFD-Titan.

Программируемые реле серии Easy500

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

Основные характеристики программируемых реле серии Easy500

  • Напряжение питания и напряжение цифровых входов: 24 В и 100 – 240 В AC, 12 В и 24 В DC.
  • 8 цифровых входов.
  • 2 аналоговых входа: 0 — 10 V (0 – 1023 bit), в версиях с питанием 12 В, 24 В DC и 24 В AC.
  • 4 релейных выхода: 8 A, или 4 транзисторных выхода: 24 В DC/0.5 A.
  • 128 «строк программы» с 3-мя контактами и 1-й катушкой.
  • Реле серии Easy500 не имеют возможности подключения модулей расширения.

Программируемые реле серии Easy700

Устройства, сочетающие в себе все преимущества устройств Easy500-й серии, с возможностью подключения дополнительных блоков расширения: аналоговых и цифровых входов/выходов, коммуникационных модулей и тп.
Данная серия программируемых реле Easy оптимальна для решения достаточно сложных задач автоматизации, с возможностью управления большим количеством сигналов (линий). Также, устройства идеальны для применения в проектах, предполагающих дальнейшее расширение возможностей системы управления с минимальными затратами.

Основные характеристики программируемых реле серии Easy700

  • Напряжение питания и напряжение цифровых входов: 24 В и 100 – 240 В AC, 12 В и 24 В DC.
  • 12 цифровых входов.
  • 4 аналоговых входа: 0 — 10 V (0 – 1023 bit), в версиях с питанием 12 В, 24 В DC и 24 В AC.
  • 6 релейных выхода: 8 A, или 8 транзисторных выходов: 24 В DC/0.5 A.
  • 128 «строк программы» с 3-мя контактами и 1-й катушкой.
  • Возможность подключения блоков расширения.

Программируемые реле серии Easy800

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

Наряду со стандартными функциями, представленными в easy500/700, такими как многофункциональные реле, импульсные реле, счетчики, аналоговые компараторы, таймеры, часы реального времени и энергонезависимая память, easy800 дополнительно содержит ПИД-регуляторы, арифметические блоки, блоки масштабирования значений и многие другие функции. Также возможность объединения в сеть до 8 устройств, делает easy800 самым мощным программируемым реле на электротехническом рынке.
При решении комплексных задач, программируемые реле Easy800 могут быть объединены в одну общую сеть устройств EasyNet.

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

  • Напряжение питания и напряжение цифровых входов: 24 В и 100 – 240 В AC, 12 В и 24 В DC.
  • 12 цифровых входов.
  • 4 аналоговых входа: 0 — 10 V (0 – 1023 bit), в версиях с питанием 12 В, 24 В DC и 24 В AC.
  • 6 релейных выхода: 8 A, или 8 транзисторных выходов: 24 В DC/0.5 A.
  • 256 «строк программы» с 4-мя контактами и 1-й катушкой.
  • Интегрированный интерфейс EasyNet для соединения устройств в сеть (до 8-ми устройств).
  • Возможность подключения блоков расширения.

Практика

Выбор устройства

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

  1. Определим количество цифровых входов. Мы имеем 4 входные переменные I1..I4, поэтому достаточно наличие в устройстве 4-х входов.
  2. Определим напряжение питания и тип цифровых входов. Так как мы планируем применять программируемое реле для бытовых нужд, с питанием внутридомовой сети 220 В, 50 Гц, то наиболее подходящее устройство будет с аналогичными требованиями к питанию и значениям напряжения цифровых входов – 220 В, 50 Гц.
  3. Определим типы и количество выходных контактов. Для управления 5-ю выходными переменными нам необходимо выбрать устройство с соответствующим количеством выходов. Так выходы программируемого реле должны обеспечивать коммутацию внутриофисных источников света и других силовых устройств, то нам необходимо наличие релейных выходов.

Воспользовавшись каталогом программируемых реле, выбираем тип устройства, наиболее подходящий для наших целей: EASY719-AC-RC10.
Выбранное реле имеет на борту:

  • 12 цифровых входов (220 В, 50 Гц);
  • 6 релейных выходов (коммутация нагрузки до 8 А);
  • часы реального времени;
  • питание устройства – 110-220 В, 50 Гц.

Среда разработки

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

  • контакты и катушки отображаются в соответствии со стандартами МЭК;
  • контакты и катушки отображаются в соответствии со стандартами ГОСТ;
  • контакты и катушки отображаются согласно стандарту ANSI.

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

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

Процесс написания программы для программируемого реле Easy сводится к «отрисовке» релейно-контакторной схемы соединения в соответствии с полученными логическими функциями и определения необходимых параметров, таких как, постоянные времени, значения таймеров и т.п.
Запустим Easy-Soft и создадим новый проект.
Выберем необходимый тип устройства из списка слева и перетащим его в окно проекта. При этом появится меню выбора версии устройства. Из выпадающего списка следует выбрать версию 10-хххххххх – это соответствует устройствам с поддержкой кириллицы.

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

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

Для определения конца и начала рабочего дня удобно использовать недельный таймер (H), имеющий гибкие настройки по дням недели. Так же, применение недельного таймера позволяет использовать только одну переменную для определения границ рабочего дня.

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

Недельный таймер предназначен для инициации каких-либо действий на протяжении недели, в зависимости от установленных временных границ. Таймер имеет 4 независимых канала A, B, C, D. Каждый из каналов может быть сконфигурирован на определенные временные промежутки. Например, в нашем случае, конфигурация недельного таймера обеспечивает его срабатывание с понедельника по воскресенье, с 18-45 до 8-45.

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

Итоговая релейно-контакторная схема нашего примера

Отладка

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

Прошивка

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

Подключение и сборка системы управления

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

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

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

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

  • 8 А активной нагрузки (AC1) для устройств с релейными выходами;
  • 0,5 А — для устройств с транзисторными выходами.

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

Заключение

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

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

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

Полезная информация

[1] Wikipedia – алгебра логики.
[2] Wikipedia – карты Карно – методы минимизации булевых функций.
[3] Wikipedia – реле.
[4] Документация на программируемые реле серии Easy500, Easy700.
[5] Документация на программируемые реле серии Easy800.
[6] Центр обучения по реле Easy – множество примеров по применению программируемых реле Easy (на русском языке).
[7] Программное обеспечение для реле Easy (в т.ч., на русском языке).
[8] Сайт производителя.
[9] Каталог программируемых реле Easy.
[10] Easy — это просто. Учебное пособие. О.А. Андрющенко, В.А. Водичев.

Некоторые ссылки на документацию приведены не с сайта производителя, а с сайта моей компании, так как после слияния корпораций Eaton и Moeller ведется реконструкторизация внутренних ресурсов, и ссылки на документацию бывают недоступными.

UPD 1. Добавлена литература [10] — учебное пособие для студентов ВУЗов. Примеры, лабораторные работы.
UPD 2. Да, эти устройства можно программировать непосредственно с встроенной клавиатуры. Большие программы, конечно, не очень удобно набирать, но для оперативного редактирования схем — вполне можно использовать эту возможность.
UPD 3. Хаброюзер ShadowHacker подсказывает, что корректнее в терминах электротехники/электроники употреблять выражение «нормально разомкнутый контакт» и «нормально замкнутый контакт». В статье оставлю первоначальную терминологию по причине того, что в русскоязычной документации и каталогах к устройству употребляются термины «нормально закрытый контакт» и «нормально открытый контакт».

Логические реле Eaton Easy и ABB CL

Логические реле Eaton Easy и ABB CL

Первыми контроллерами, про которые я расскажу и на которых я делаю свои решения, будут самые простые и лёгкие логические реле от компании Eaton/ABB. Серия этих реле называется «Easy». Они и правда лёгкие. Примечательны они тем, что очень удобно программируются прямо с экрана (в отличие от Siemens Logo) при помощи релейно-контактной схемы (LAD). Линий ввода-вывода у этих контроллеров мало, и поэтому на них можно автоматизировать что-нибудь простое: заменить кучку релейной рассыпухи в схемах управления освещением, поливом, воротами и тому подобным.

Давайте освежим в памяти, чего такое это логическое реле. Внутри логического реле «запиханы» несколько штук обычных промежуточных реле и немного таймеров / счётчиков. Составив программу, мы можем в зависимости от сигналов на входах управлять сигналами на выходах. Мы создаём как бы аналог настоящей электрической схемы, в которой работают такие же реле, которые мы используем в обычных задачах. Только в случае контроллера у нас есть самый главный плюс: мы в любой момент можем изменить программу, не перетряхивая щит.

У меня в статье будет смесь фотографий из реле Eaton и ABB. На самом деле тут ничего путанного нет, а есть хитрый прикол: Eaton делает свои же логические реле для ABB на одном и том же заводе, поэтому все эти реле совместимы между собой как по среде разработки, так и по фичам и техническим параметрам.

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

Логические реле Eaton Easy и ABB CL

Логические реле Eaton Easy и ABB CL

В серии Eaton Easy / ABB CL есть такие реле, которые доступны для покупки в инете:

  • EATON EASY512-AC-RC10 8 входов / 4 выхода (реле), дисплей, таймер, часы 100..240 VAC
    ABB CL-LSR.C12AC2 8 входов / 4 выхода (реле), дисплей, таймер 100..240 VAC
  • EATON EASY512-DA-RС10 8 входов / 4 выхода (реле), дисплей, таймер, часы 12 VDC
    ABB CL-LSR.C12DC1 8 входов / 4 выхода (реле), дисплей, таймер 12 VDC
  • EATON EASY719-AC-RC10 12 входов / 6 выходов (реле), дисплей, таймер, часы 100..240 VAC
    ABB CL-LMR.C18AC2 12 входов / 6 выходов (реле), дисплей, таймер 100..240 VAC (расширяемый)
  • EATON EASY719-DA-RC10 12 входов / 6 выходов (реле), дисплей, таймер, часы 12 VDC
    ABB CL-LMR.C18DC1 12 входов / 6 выходов (реле), дисплей, таймер 12 VDC (расширяемый)
  • EATON EASY618-AC-RE Модуль IO к Easy700 12 входов / 6 выходов (реле) 100..240 VAC
    ABB CL-LER.C18AC2 Модуль IO к CL-LMR 12 входов / 6 выходов (реле) 100..240 VAC

То-есть, есть ряд с напряжениями на 12 вольт постоянного тока, и есть ряд с напряжениями 230 вольт переменного тока. Входы этих реле соответствуют напряжению питания. То-есть для нас есть классный профит: если взять логическое реле на 230 вольт, то на его входы можно подавать то же самое сетевое напряжение.

Входы и выходы

Так как эти логические реле задуманы для простых задач, то количество выходов здесь очень маленькое. Реле Easy512 / CL-LSR имеют всего 8 входов и 4 выхода. На этой фотографии их хорошо видно:

Логическое реле ABB CL-LSR (Eaton Easy512)

Логическое реле ABB CL-LSR (Eaton Easy512)

Реле серии Easy719 / CL-LMR имеют штатно 12 входов и 6 выходов. Вот именно к ним можно прицепить модуль расширения Easy618 / CL-LER, который добавит ещё 12 входов и 6 выходов. Выглядит это вот так вот:

Логическое реле ABB CL-LMR (Eaton Easy712)

Логическое реле ABB CL-LMR (Eaton Easy712)

В комплекте с модулем расширения идёт специальный соединитель, который надо воткнуть в любую из половинок реле:

Адаптер для присоединения модулей расширения CL-LINK

Адаптер для присоединения модулей расширения CL-LINK

А потом соединить реле между собой:

Присоединение модулей расширения к реле CL-LMR (Easy712)

Присоединение модулей расширения к реле CL-LMR (Easy712)

Получится вот такая конструкция длиной в 12 модулей (реле и модуль расширения занимают по 6 модулей на DIN-рейке).

Логическое реле CL-LMR (Easy712) с модулем расширения

Логическое реле CL-LMR (Easy712) с модулем расширения

Итого мы можем получить 24 входа и 12 выходов. Это всё равно маловато, если мы захотим заменить какие-нибудь импульсные реле для управления освещением, и нам придётся выкручиваться.

К этим реле есть специальный кабель для того, чтобы подключить их по USB к компьютеру и работать с ними из среды разработки. Кабель подходит к логическим реле от ABB и от Eaton. У Eaton очень мутно написано, какой же артикул заказа должен быть для кабеля с USB-портом, поэтому я приведу ABBшный артикул: CL-LAS.TK002. Если кто-то знает, какой артикул у кабеля от Eaton — напишите в комментариях, и я подправлю пост.

Update. Народ пишет один из вариантов:

Артикул: 107926 EASY-USB-CAB Кабель для программирования , easy500/easy700 , USB, 2 м

Кабель для подключения логических реле ABB CL (Eaton Easy) к компьютеру

Кабель для подключения логических реле ABB CL (Eaton Easy) к компьютеру

Разъём кабеля хиленький и его надо вставлять аккуратно, чтобы не сломать. Кабель подключается так хитро, чтобы вставать поверх реле и не мешать проводам, которые будут идти от клемм выходных релюшек.

Кабель для подключения логических реле ABB CL (Eaton Easy) к компьютеру

Кабель для подключения логических реле ABB CL (Eaton Easy) к компьютеру

Вот так кабель выглядит на широком реле (я делал две фотки: одну Eaton, другую ABB).

Кабель для подключения логических реле ABB CL (Eaton Easy) к компьютеру

Кабель для подключения логических реле ABB CL (Eaton Easy) к компьютеру

Технически в этих реле будут три нюанса, как и в любых других контроллерах:

  • Время запуска. Напоминаю, что у всех контроллеров есть некоторое время, когда они загружаются. Оно может быть от секунды до минуты. В этот момент все выходы у них выключены. Это значит, что если вы повесили на выход управление каким-нибудь тормозом или чем-то, что относится к безопасности людей, то сначала на вашу схему будет подано питание, и только потом контроллер начнёт управлять оборудованием.
    Поэтому чтобы у вас само ничего не поехало или на закрутилось и никого не убило, старайтесь учитывать то, что какое-то время линии, которые должны быть включены, окажутся бесконтрольно отключенными. Кстати, именно поэтому и делают всякие нормально разомкнутые контакты и системы, которые при пропадании питания переходят в безопасное положение.
  • Питание входов. На все входы надо подавать ту же фазу, которая питает само реле. Если у вас трёхфазный ввод, то выделяйте одну фазу, защищайте её автоматом на 3..6А и питайте через неё реле и все его входы и управляющие цепи. Если например мы управляем освещением, и у нас есть датчик движения, который на выходе даёт нам фазу, то и эта фаза должна быть такой же, как и фаза, которая питает реле.
  • Ток контактов реле. Тут заявлено, что релюшки тянут 8 ампер. Вот прямо после этих строк мы разберём это логическое реле и посмотрим, какие они там на самом деле. В общем, до конца верить этим надписям не надо, и можно считать что релюшки тут тянут ток всего на 6А. Поэтому если мы хотим управлять освещением напрямую, то максимальный номинал автомата для защиты таких выходов — 6А и то при условии, что у вас нет мощных светодиодных светильников с драйверами.

Внутреннее устройство

Разберём его! А точнее откроем корпус и посмотрим на компоновку!

Логическое реле ABB CL (Eaton Easy) внутри

Логическое реле ABB CL (Eaton Easy) внутри

Наше реле состоит из трёх плат, которые соединены на разъёмах между собой: силовой части, платы дисплея и процессора. Сделано это, скорее всего, для удобства производства. Можно делать силовую часть на разные напряжения, а дисплей и процессор оставлять одними и теми же. На фотке ниже (плата силовой части) можно разглядеть цепочку из резисторов и диодов, при помощи которых контроллер меряет сетевое напряжение на входах.

Логическое реле ABB CL (Eaton Easy) внутри (плата IO)

Логическое реле ABB CL (Eaton Easy) внутри (плата IO)

А вот и наши релюшки. Видите их? Они совсем МЕЛКИЕ! Они будут тянуть настоящие 8А ТОЛЬКО при активной нагрузке (лампы накаливания, обогреватели).

Логическое реле ABB CL (Eaton Easy) внутри (реле выходов)

Логическое реле ABB CL (Eaton Easy) внутри (реле выходов)

Дорожки сзади релюшек очень красиво разведены, чтобы пропускать большой ток.

Логическое реле ABB CL (Eaton Easy) внутри (разводка платы около реле)

Логическое реле ABB CL (Eaton Easy) внутри (разводка платы около реле)

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

Логическое реле ABB CL (Eaton Easy) внутри (центральный процессор)

Логическое реле ABB CL (Eaton Easy) внутри (центральный процессор)

Монтаж аккуратный и ничего лишнего нет. И ещё у этих логических реле очень хорошие клеммные зажимы. Они легко принимают НШВИ(2) на 1,5 квадрата и затягиваются той же отвёрткой, какой я затягиваю клеммы в щитах. Никакой дополнительной мелкой отвёрточки не нужно, и мне это нравится!

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

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

Схема автоматизации света ванной

Схема автоматизации света ванной

Прикрутим проводок и подадим питание на реле. ABBшное реле у меня ни разу не включалось и было менее замызганным чем Eaton’овское, которое у меня года два по всяким коробкам валялось. Первое что запрашивает каждое новое реле при его включении — это выбор языка. Выбрать можно и русский язык, но мы как злые технари оставим английский.

Подаём питание на реле и начинаем программировать

Подаём питание на реле и начинаем программировать

Тут наверное стоит сказать про кнопки управления. Джойстик посередине перемещает курсор по полю программы и листает меню. Кнопка OK подтверждает выбор пункта меню или вставляет элемент программы. Кнопка Esc отменяет редактирование, выходит из меню. Кнопка Del удаляет элемент программы под курсором, а кнопка Alt позволяет выбирать альтернативные функции (инверсию входов и выходов) и рисовать соединения.

Само меню логического реле достаточно понятное. Единственное, что не всегда очевидно — это то, что обычно когда мы выбираем чего-нибудь в меню, то меню закрывается. Здесь же около выбранного пункта появляется галочка. Вот например так:

Выбор языка при первом включении реле

Выбор языка при первом включении реле

И чтобы завершить выбор языка, нам надо нажать кнопку Esc, которая вернёт нас в основной экран состояния логического реле.

Рабочий экран логического реле

Рабочий экран логического реле

На этом экране отображается состояние входов (точечки сверху) и выходов (точечки снизу), текущее время (для моделей с часами) и состояние программы: STOP — остановлена, RUN — работает.

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

Изучим меню реле. Пункт «PROGRAM» позволяет нам редактировать программу, по которой реле будет работать. Пункт STOP / RUN запускает или останавливает программу. Пункт PARAMETER позволяет изменять настройки таймеров и переменных, если это разрешено в программе. Пункт INFO покажет версию прошивки самого реле.

Параметры настройки логического реле

Параметры настройки логического реле

Если пролистать меню ниже, то там будет ещё и пункт SET CLOCK, который позволяет выставить точное время на реле. Реле поддерживает функцию перехода на зимнее-летнее время, если это требуется.

Параметры настройки логического реле (часы)

Параметры настройки логического реле (часы)

Ну а нас интересует само программирование. Программа в реле рисуется так же, как принципиальная схема при помощи курсора и кнопок. Чтобы изменять программу или её параметры, надо остановить её выполнение (STOP).

Для обозначения разных функций и типов элементов в реле приняты разные значки, в которых, если не иметь под рукой справочника, хрен разберёшься и запомнишь. У меня на компьютере лежит старый pdf, где эти значки показаны (ABB_CLProgGuide.pdf, 2,4 Мб). Из него нам понадобится табличка с обозначениями видов реле:

Обозначения функций катушек логических реле Eaton Easy / ABB CL

Обозначения функций катушек логических реле Eaton Easy / ABB CL

Даю перевод таблички:

  • Contactor function = Обычное промежуточное реле;
  • Contactor function with negated result = Промежуточное реле с нормально замкнутыми контактами (включено при нулевом сигнале на входе);
  • Cycle pulse on rising edge = Одиночный импульс при появлении сигнала. Если на катушку подать сигнал, то реле выдаст один импульс.
  • Cycle pulse on falling edge = Одиночный импульс при пропадании сигнала. Если с катушки снять сигнал (отключить), то реле выдаст один импульс. Это годится, чтобы обнулить что-либо при пропадании сигнала. Скажем, если мы хотим чтобы при отключении датчика движения формировался импульс, который выключит ещё и другие реле — то это наш выбор.
  • Impulse relay function = Импульсное реле.
  • Set (latching) = Принудительно включить. После снятия импульса реле так и остаётся включенным.
  • Reset (unlatching) = Отключить. После снятия импульса отключенное состояние сохраняется.

Такие функции можно применять почти ко всем объектам реле. Например управлять выходами, внутренними промежуточными реле (они называются маркерами и обозначаются как M) или разрешать и останавливать работу таймеров.

И ещё нам понадобится табличка с обозначениями специальных функций и особенно таймеров:

Обозначения специальных функций логических реле Eaton Easy / ABB CL

Обозначения специальных функций логических реле Eaton Easy / ABB CL

Я тоже сделаю её корявый перевод своими словами:

  • Analog value comparator, threshold value switch = Аналоговый компаратор (для тех реле, у которых есть аналоговые входы)
  • Counter relay, up/down counter, high-speed counter, frequency counter = Счётчики: Обычный, Вверх/Вниз, Высокоскоростной, Счётчик частоты.
  • Text, output user-defined texts, enter values = Вывод текстовых сообщений на дисплей. Обычно программируется только из компьютера.
  • Time switch, weekday/time = Разные часовые реле (суточные или недельные реле времени). Включает что-нибудь по часам или дням недели.
  • Operating hours counter with limit value entry = Счётчик часов работы с возможностью установить порог этих часов (чтобы предупредить о техобслуживании, например).
  • Timing relay, on-delayed Timing relay, on-delayed with random switching = Реле времени с задержкой на включение с точным или случайным временем
  • Timing relay, off-delayed Timing relay, off-delayed with random switching = Реле времени с задержкой на вЫключение с точным или случайным временем
  • Timing relay, on- and off-delayed Timing relay, on- and off-delayed with random switching = Реле времени с задержкой как на включение, так и на выключение с точным или случайным временем.
  • Timing relay, single pulse = Реле времени, которое выдаёт одиночный импульс указанной длительности.
  • Timing relay, flashing = Мигалка =)
  • Jump = переход на другую ветку программы.
  • Year time switch, date = Годовое реле времени.
  • Master reset, central reset of outputs, markers = Сброс контроллера. Это когда надо програмно перезапустить систему так, как будто выключили и включили её питание.

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

Мы заходим в меню PROGRAM и видим там два пункта: «PROGRAM» и «DELETE PROG.». Первый пункт отправит нас создавать или просматривать уже существующую программу реле. А второй позволит стереть её всю нафиг.

Выбор режима программирования логического реле ABB CL (Eaton Easy)

Выбор режима программирования логического реле ABB CL (Eaton Easy)

Вообще, программу можно ещё и защитить паролем, если заливать её через компьютер. А также паролем можно защитить настройки и даже просто доступ в меню самого реле.

Итак, мы создаём новую программу. Перед нами голое поле, на котором мигает курсор. Кнопками со стрелками курсор можно двигать горизонтально и вертикально. Программа (схема) вводится так: сначала расставляем элементы схемы (входы, выходы, специальные функции), а потом рисуем соединения между ними.

Пустая программа логического реле ABB CL (Eaton Easy)

Пустая программа логического реле ABB CL (Eaton Easy)

Чтобы ввести в пустое поле новый элемент, надо установить курсор на начало поля и нажать кнопку «OK». Система поставит туда первый попавшийся элемент, между буквами которого можно тоже перемещаться курсором. Текущая часть элемента будет мигать и кнопками «вверх»-«вниз» её можно листать. Я опять полезу в инструкцию и покажу оттуда красивый рисунок, который всё поясняет:

Редактирование схемы логического реле Eaton Easy / ABB CL

Редактирование схемы логического реле Eaton Easy / ABB CL

То-есть, когда мы нажали на пустом месте кнопку «OK», у нас вылез некий элемент схемы. Теперь мы можем редактировать не схему, а его самого, листая то его буковку, то его номер, а то его значок, который показывает специальную функцию этого элемента. Когда мы хотим выйти из редактирования элемента, то нам надо или понажимать кнопки «влево»-«вправо», или нажать OK. Кнопка Alt, если её нажимать на входе, меняет его значение на инвертированное (вход будет активен, если на нём нет сигнала).

Итак, попробуем! Переходим в самый левый угол реле и тыркаем «OK». Мы получили вход I1. Это первый вход, который будет активен, если подать фазу 230 вольт на винтик «I1» реле.

Создаём программу реле: выбираем первый вход

Создаём программу реле: выбираем первый вход

Если мы будем нажимать кнопки «вверх»-«вниз» на букве «I», то она будет листаться, выдавая нам варианты «контактов» входа, таймеров и прочих внутренних блоков. А если мы будем листать цифру, то мы просто будем перебирать входы по их номерам.

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

Главное, что важно запомнить — это то, что «ток» течёт в схеме слева направо. И самая правая часть схемы будет активна, если активны все части, которые стоят перед ней.

Ну а мы просто уводим курсор вправо до самого края…

Создаём программу реле: курсор на свободном поле

Создаём программу реле: курсор на свободном поле

…и снова нажимаем кнопку «OK». Теперь нам по умолчанию предлагают использовать выход Q1, который будет работать (тут мы смотрим в ранее приведённые таблички), как обычное реле. То-есть, если сейчас соединить вход с выходом, то при включении входа будет включаться выход.

Создаём программу реле: выбираем выход

Создаём программу реле: выбираем выход

А мы сделаем импульсное реле! Полистаем значок перед обозначением «Q1» до значка, который обозначает импульсное реле:

Создаём программу реле: выбираем режим выхода

Создаём программу реле: выбираем режим выхода

И ради прикола набьём такую же цепочку для второго входа и выхода. Теперь у нас вот совершенно на ровном месте получилось два импульсных реле с центральным управлением.

Создаём программу реле: вторая строка для второго выхода

Создаём программу реле: вторая строка для второго выхода

А почему с центральным? А потому что мы сделаем ещё одну цепочку, которая у нас будет эти реле отключать, когда нам надо. Для этого мы используем вход 8 (I8). Справа мы снова нарисуем два тех же выхода Q1 и Q2. Но в этот раз мы долистаем их до значка «R» — reset, сброс. У нас получится такая картинка:

Создаём программу реле: добавляем строку выключения выходов

Создаём программу реле: добавляем строку выключения выходов

И тут мы снова остановимся и обсудим увиденное. Я выше уже писал, что один и тот же вход можно использовать в нескольких местах программы. Как мы это будем делать — контроллеру пофигу. Мы можем написать две цепочки «I8 = RQ1» и «I8 = RQ2», а можем написать «I8 = RQ1, RQ2». И вот именно такой способ я показал выше, потому что на нём можно показать то, как здоровски тут рисуются соединения.

А почему вообще импульсные реле с центральным управлением? А потому что когда я покупал этот контроллер за 7 тыр у Игорь Валентиныча (он у него пару лет на витрине провисел), то тогда как раз одно импульсное реле с центральным управлением стоило как раз 3 тыр. А на базе такого контроллера их можно сделать аж четыре штуки. То-есть, если внутренние реле потянут небольшую нагрузку, такой контроллер даёт нам адски огромный функционал, и ещё и денег экономит.

Когда мы закончили расставлять разные компоненты, то нам надо их что? Соединить! Для этого используется кнопочка Alt. Если её нажать, то курсор превращается в значок стрелочки. Перемещая эту стрелочку, мы рисуем соединения. Выглядит это адски забавно:

Создаём программу реле: рисуем соединения

Создаём программу реле: рисуем соединения

Когда я в первый раз взял в руки этот контроллер, для меня было настоящим чудом то, что там можно РИСОВАТЬ СХЕМЫ! Причём вполне себе наглядные!

Если вы ошиблись — то вам поможет кнопка Del, которой можно удалить то соединение, которое находится под курсором.

У нас получилось вот что:

Создаём программу реле: рисуем соединение сброса

Создаём программу реле: рисуем соединение сброса

Но ведь RQ2 остался без соединения! Как его нарисовать? А вот как! Ставим курсор куда-нибудь в серединку поля, снова жмём Alt и дорисовываем соединение низ и вправо!

Создаём программу реле: рисуем ответвление соединения

Создаём программу реле: рисуем ответвление соединения

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

Готовая схема управления светом на логических реле ABB CL (Eaton Easy)

Готовая схема управления светом на логических реле ABB CL (Eaton Easy)

Чтобы сохранить программу, надо нажать кнопку Esc. Контроллер спросит, чего сделать с программой:

Запрос сохранения программы в логическом реле

Запрос сохранения программы в логическом реле

И теперь при желании программу можно запустить на выполнение:

Выбор режима запуска программы

Выбор режима запуска программы

На экране на самом деле ничего не изменится, кроме слова «RUN». Если бы я не забыл, то я бы потыкал входы и показал бы то, как на экране отображаются включенные выходы, но я таки забыл это сделать. Прошу меня простить за это.

Программа логического реле запущена

Программа логического реле запущена

На всякий случай покажу, как та же программа выглядит на реле Eaton. Всё абсолютно аналогично и точно так же. Так что инструкция от ABB прекрасно подходит к Eaton.

Та же самая программа на логическом реле Eaton Easy512

Та же самая программа на логическом реле Eaton Easy512

Напоследок упомяну об одной неочевидной фиче, которая связана с таймерами (реле времени). Если вы нарисуете схему типа «T01 = Q01», и зададите настройки таймера (они вылезут сразу при вводе этого элемента схемы), то у вас ничего работать НЕ будет! Почему? А потому что на само «реле времени» надо подать питание! То-есть, ввести в схему участок типа «… = TT01», который и будет разрешать работу этого таймера.

Вот и например мы хотим сделать тупую мигалку. Как же нам быть, чтобы разрешить работу таймера? Можно составить схему «I01 = TT01». Но тогда нам надо задействовать ценный вход (их может не хватить) и ещё и на него проводок городить. И вот тогда можно вспомнить про маркеры M! Маркер — это что-то типа промежуточного реле, которое никуда не выведено. С маркером можно делать то же, что и с любым выходом — включать, выключать, инвертировать состояние, делать импульсное реле.

Поэтому, чтобы нам включить чего-нибудь по умолчанию, нам можно взять инвертированное значение маркера (нормально замкнутый контакт). По умолчанию маркер будет равен нулю (выключен), а его инвертированное значение = единице (включено). Поэтому мы можем нарисовать что-то типа

M01 = TT01
T01 = Q01

Зачёркнутым я изобразил символ инверсии, который появится над маркером, если нажать на нём кнопку Alt.

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

Так что если вам надо автоматизировать свет и вентилятор в ванной, свет дачного участка, насос скважины или ещё какие-то мелочи — то это реле для вас! А я же могу и научить с ними работать и сделать щит с автоматикой на базе такого реле. Обращайтесь!



  • Программирование на языке FBD
  • Объединение easyE4 с easoSoft 7
  • Создание нового проекта в среде easySoft 7
  • easySoft 7: Создание программы — управление экраном, активация кнопок
  • Обнуление счетчика В ДАННЫЙ МОМЕНТ
  • Ввод разрешенного количества человек
  • Программирование реле easyE4

В предыдущей статье о контроллере easyE4, предлагаемом Eaton, мы представили предложение по созданию счетчика людей и кратко описали возможности нового реле.

Ознакомьтесь с 1 частью статьи

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

Программирование на языке FBD

Для реализации приложения счетчика мы выбрали язык FBD в качестве такого, на котором, вероятно, легче всего понять логику работы программы и взаимосвязи между отдельными модулями. Для понимания этого метода программист должен быть знаком с цифровыми элементами (логическими функциями), такими как вентили, регистры и триггеры. Язык FBD, доступный в среде easyE4, отличается от языка конкурирующих продуктов, таких как Siemens Logo! или Mitsubishi Alpha. Он требует более продуманной разработки программы, поскольку структурно состоит из взаимосвязанных отдельных сетей, которые обмениваются данными по ссылке или тегам. Поскольку сети довольно малы, вносить изменения в такую программу несложно. С другой стороны, вывод наружу (за пределы сети) какого-либо сигнала требует добавления тега и считывания его в другой сети. У конкурентов достаточно просто провести линию, а диаграмма FBD напоминает принципиальную схему.

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

  • На первом этапе мы покажем, как отображать сообщения на экране, встроенном в easyE4, и использовать кнопки, установленные на передней панели. В связи с этим мы представляем метод отображения постоянных и переменных текстов, включая состояние входов, выходов, содержимое счетчиков и т. д.
  • На втором этапе мы объясняем, как использовать кнопки курсора, установленные на контроллере, и даем пример метода ввода настроек счетчика и ограничения их значений. При этом описываем модули счетчика, компаратора, вентили, а также контакты и катушки (входы и выходы).
  • В-третьих, мы описываем логику работы счетчика и создаем детектор направления движения. Это самая сложная часть задачи, так как следует предвидеть различные ситуации, которые могут произойти во время работы устройства. К сожалению, при использовании таких простых датчиков, как световые барьеры, невозможно защититься от всего, что может сделать пользователь, и нельзя гарантировать полностью безошибочную работу счетчика.

Всю программу можно выполнить и проверить с помощью симулятора, встроенного в среду разработки easySoft 7, без необходимости в программируемом реле easyE4, предлагаемом Eaton.

Объединение easyE4 с easySoft 7

Компьютер, который использовался для создания программы, имел два используемых сетевых интерфейса: беспроводной Wi-Fi, с помощью которого он подключался к домашней сети, и Ethernet, который послужил для программирования контроллера easyE4. Во избежание проблем с подключением IP-адреса проводной сети Ethernet v4 вводились вручную:

  • Для ПК адрес был 10.10.0.5.
  • Для реле easyE4 это был 10.10.0.2.
  • Общая 8-битная маска подсети 255.0.0.0 (/8) и шлюз 10.10.0.1.

Конечно, подключение к ПК производилось через кабель Ethernet, подключенный «прямо» от розетки к розетке, и шлюза в сети не было, но последняя версия Windows не позволяет вводить только адрес и маску.

Меню настройки easyE4 доступно в режиме остановки после нажатия OK. Параметры выбираются с помощью кнопок курсора вверх/вниз, подтверждаются с помощью OK, а выход из них (отмена или выход из текущего меню) совершается с помощью ESC.

По умолчанию easyE4 работает в режиме автоматической настройки. Чтобы ввести IP-адрес вручную, следует использовать меню SYSTEM.OPT –> ETHERNET –> ADDRESS MODE и выбрать STATIC IP. Теперь можно ввести адрес с помощью меню на один уровень выше, то есть IP ADDRESS. В этом меню мы найдем для ручного ввода позицию IP ADDRESS (напомним – 10.10.0.2), SUBNET MASK (CIDR Suffix: /8, tj. 255.0.0.0), GATEWAY ADDRESS (10.10.0.1). Параметр DNS SERVER можно не указывать.

Если Windows требует DNS-адрес, введите тот же, что и для шлюза, то есть 10.10.0.1. Это не имеет большого значения, потому что в нашем приложении нам нужен только Ethernet для программирования реле, и мы вряд ли будем связываться с ним в глобальной сети с сервером, который переводит имя на IP-адрес.

Мы подключаем ПК к реле easyE4 и запускаем среду разработки easySoft 7. После подключения реле также можно настроить с помощью меню easySoft.

Создание нового проекта в среде easySoft 7

При создании примерной программы мы использовали контроллер easyE4 в версии с транзисторными выходами. После запуска среда разработки easySoft 7 открывает слева список основных устройств. Выбираем из него тип контроллера, который у нас есть, – в данном примере это EASY-E4-DC-12TC1. Нажимаем на его название и, удерживая левую кнопку мыши, перемещаем его в правую сторону, в область «Проект». Появится окно с названием «Вставить новое устройство» (рисунок 1), в котором выбираем версию прошивки. В easyE4 это была версия V1.0.

Окно выбора версии прошивки реле easyE4

Рисунок 1. Окно выбора версии прошивки реле easyE4

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

Чтобы узнать, какая версия прошивки у нашего программируемого реле, следует использовать меню easyE4 INFORMATION –> SYSTEM. Будет отображен экран с основной информацией о нашем реле, включая тип и версию прошивки (ВПО). Параметры реле также можно прочитать с помощью easySoft 7, но для этого необходимо найти контроллер в сети и перейти в режим работы онлайн.

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

easySoft 7: Создание программы — управление экраном, активация кнопок

В правом нижнем углу окна easySoft 7 размещены 4 кнопки, которые позволяют легко выбирать режим работы. Для редактирования программы выбираем Программирование, имитировать ее работу – Имитация, отправить ее на реле – Связь, совершить изменения в сети реле или ввести их параметры – Проект.

Чтобы создать программу, нажимаем на Программирование. При первом использовании появится окно с вопросом о выборе метода программирования. Выбираем Схема функциональных модулей (FBD) и нажимаем OK (рисунок 2). В следующий раз среда разработки просто позволит нам редактировать программу.

Окно выбора метода программирования

Рисунок 2. Окно выбора метода программирования

Сначала сделаем информационный экран. В списке модулей производителя в левой части экрана находим Другие модули –> DТекстовый тег. Нажимаем на его значок и, удерживая левую кнопку мыши, перемещаем его в белую область, которая должна отображаться вверху экрана и иметь номер «0001». Это наш первый этап создания программы в новой среде, поэтому для удобства результат показан на рисунке 3.

Модуль текстовых тегов размещен в области сети номер 0001.

Рисунок 3. Модуль текстового тега размещен в области сети номер 0001.

Модуль текстового тега используется для отображения сообщений пользователю. Сообщения могут быть постоянными или переменными, содержать метки, значения, символические константы, индикатор выполнения и т. д. Например, логический уровень выхода или входа может сигнализироваться только знаком квадрата или символической постоянной (например, ВКЛЮЧЕНО/ОТКЛЮЧЕНО), определенной программистом. Производитель реле позаботился о том, чтобы были доступны и польские знаки, что делает общение с пользователем более понятным и свидетельствует о внимании к деталям.

В программе нам, возможно, потребуется использование нескольких модулей текстовых тегов, поэтому они включаются/выключаются с помощью входа EN. В этом примере мы будем использовать только один экран с изменяющимися сообщениями, поэтому модуль можно активировать, подключив постоянный логический уровень «1» к входу EN. Для этого в списке находим Контакты –> Постоянная 1 и перемещаем значок, перетаскивая его на вход EN модуля D01. Мы должны получить результат, показанный на рисунке 4.

Подключение логической «1» к входу EN модуля текстового тега.

Рисунок 4. Подключение логической «1» к входу EN модуля текстового тега.

После нажатия на блок D01, уже размещенный в первой сети программы, в нижней части экрана будут отображаться параметры блока. Мы используем только один блок сообщений, поэтому на этом экране нам не нужно устанавливать никаких параметров кроме активации кнопок «P». Мы будем использовать кнопки курсора (P1…P4) и DEL (P7), поэтому, щелкая мышью, надо выбрать квадраты рядом с ними. Этого еще недостаточно для активации кнопок, но это позволит использовать их, когда активен данный, связанный с ними текстовый тег. Это очень полезная функция блока. Иногда пользователь, не зная, что нажимать, случайно вызывает какие-то пункты меню, а здесь он может, например, использовать кнопки курсора и запретить доступ к остальным.

В создаваемой программе счетчика кнопки будут иметь следующие функции: влево/вправо — уменьшение/увеличение разрешенного количества людей, вниз/вверх — уменьшение/увеличение текущего состояния счетчика, DEL — сброс количества подсчитанных людей. Сброс также будет возможен с помощью входа I08 реле, к которому мы добавим для этого кнопку. Это намного удобнее для пользователя, чем поиск небольших кнопок на панели реле, а также защищает его от случайного повреждения.

Чтобы разместить на экране сообщения, нажимаем кнопку Редактор текстовых тегов, расположенную в области свойств блока текстового тега (внизу экрана). Окно редактора с предлагаемым видом экрана счетчика показано на рисунке 5. Некоторые значения мы еще не сможем поместить, потому что только начали создавать программу, а переменные еще не существуют, но мы можем поместить на экране постоянные сообщения.

Предлагаемый вид экрана счетчика во время работы

Рисунок 5. Предлагаемый вид экрана счетчика во время работы

Чтобы разместить вверху экрана сообщение «СЧЕТЧИК ЛЮДЕЙ 1.1”», нажимаем в правой части отображаемого окна на Статистический текст и перемещаем его в необходимое место на экране – сюда в первую строку дисплея. Затем, в нижней части экрана в поле Текст вводим «СЧЕТЧИК ЛЮДЕЙ 1.1», а на дисплее нажимаем на поле сообщения и, используя маркеры в углах, растягиваем его так, чтобы текст поместился на экране. Таким же образом мы помещаем оставшиеся сообщения в следующие строки, т.е. горизонтальную строку, состоящую из знаков „-” и меток «В ДАННЫЙ МОМЕНТ:”», «РАЗРЕШЕНО:», «ВХОД:». На этом этапе мы заканчиваем, нажимая OK. Сообщения с изменяющимся содержанием мы определим на следующих этапах.

Обнуление счетчика В ДАННЫЙ МОМЕНТ

Счетчик текущего количества людей в помещении можно обнулить или откорректировать с помощью кнопок. Для обнуления будет использоваться кнопка типа NO, включенная между +24 V DC и входом I08 контроллера easyE4 или кнопкой DEL на его панели. Сеть, генерирующую сигнал обнуления, создаем следующим образом:

  • Нажимаем правой кнопкой мыши на белое поле сети 0001, содержащей определенное нами сообщение. В открывшемся окне выбираем Вставить сеть после (Ctrl+T).
  • В пустую недавно открытую сеть перемещаем значок Контакты –> Замкнутый.

Контакты — это не что иное, как входы контроллера. Замкнутый контакт — это вход NO, разомкнутый — вход NC. С постоянными мы уже ознакомились (в нашем распоряжении Постоянная 1 и Постоянная 0, соответствующие высоким/низким логическим уровням). Контакт аналоговый в этой программе позволит нам ввести значение порогов настройки.

  • Нажимаем на размещенный в сети блок. Внизу экрана отобразится окно параметров входа, в котором мы устанавливаем:
  • Тип: Входы и выходы, а также двоичные теги.­
    • Комментарий: DEL.
    • Тип логики: Замкнутый.­
    • Аргумент: P-Кнопка устройства.
    • Номер: 7-DEL.
  • На выход блока P07 перемещаем вентиль суммы OR. Мы можем найти его в Логический вентиль –> OR.
  • На вход вентиля перемещаем следующий замкнутый контакт – это будет вход реле номер I08. Нажимаем на размещенный блок и так же, как и для предыдущего контакта, устанавливаем следующие параметры:­
    • Тип: Входы и выходы, а также двоичные теги.­
    • Комментарий: Внешняя кнопка.­
    • Тип логики: Замкнутый.­
    • Аргумент: Вход.­
    • Номер: 8.
  • На выход вентиля суммы перемещаем значок Катушки –> Обычная катушка. Нажимаем на размещенный блок и устанавливаем следующие параметры:­
    • Тип: Двоичные выходы и теги.­
    • Комментарий: RESET C02.­
    • Функция катушки: Обычная катушка.
    • Аргумент: M — Тег.­
    • Номер: 3.

Катушки — это не что иное, как выходы. Это могут быть физические или логические выходы, соединенные только в пределах программы. В этой программе мы будем использовать только: Обычная катушка – двоичный выход NO, Обычная отрицательная катушка – двоичный выход NC. Используя функции программы, мы создали внутренний тег — виртуальный выход, который можно присоединить к остальным блокам.

В поле сети можно добавить описание, которое позже или на этапе создания программы вместе с комментариями, размещенными рядом с названиями катушек и тегов, поможет нам проанализировать программу и вспомнить функции отдельных сигналов. Самый простой способ добавить описание — использовать сочетание клавиш Ctrl+R. Результат проделанной работы должен выглядеть как на рисунке 6.

Начало программы счетчика – сети номер 0001 и 0002

Рисунок 6. Начало программы счетчика — сети номер 0001 и 0002

Ввод разрешенного количества человек

Счетчик будет добавлять к текущему состоянию людей, входящих в данное помещение или зону, и вычитать людей, которые выходят. Подсчитанное значение будет сравниваться с установленным, допустимым количеством людей, и результат сравнения будет контролировать выходы Q1/Q2, соединенные с сигнализаторами: Q1 – красным, Q2 – зеленым (или реле, которое включает/выключает отопление, вентиляцию, освещение и т.д.).

Установка разрешенного количества людей будет вводиться с помощью кнопок «влево»/«вправо», поэтому проще всего использовать двунаправленный счетчик, который сохраняет введенное значение. Таким образом, кнопка «влево» может уменьшать, а «вправо» — увеличивать значение счетчика на 1.

Мы можем использовать этот метод в нашей программе, потому что среди модулей найдем Модули счетчика –> CМодуль счетчика способный вести счет вверх и вниз. Для этого он оборудован импульсным входом C_ и входом направления подсчета D_. Есть также другие функции, которые нам не нужны на данном этапе. В одной из следующих сетей мы будем использовать вход RE, который сбрасывает значение счетчика.

Добавляем новую сеть с помощью Ctrl+T. Ее создание следует начать с блока счетчика, потому что именно к его входам мы будем вести отдельные сигналы. В списке находим Модули счетчика –> CМодуль счетчика. Помещаем его в область сети номер 0003. Нажимаем на блок и в поле Комментарий вводим РАЗРЕШЕНО. Это упростит нам идентификацию модуля на более позднем этапе разработки программы. К входу импульсов подсчета _C присоединяем вентиль суммы OR, потому что импульсы увеличивающие/уменьшающие значение будут поступать от двух кнопок, а у нас имеется один импульсный вход. Логический уровень на входе направления определяет, прибавляем мы или вычитаем.

К входам вентиля OR должны быть присоединены кнопки, уменьшающие/увеличивающие состояние счетчика. Емкость счетчика велика, поскольку составляет 2 байта. Это позволяет вести подсчет в диапазоне 0… 65535. Для этого счетчика предполагается, что допустимое количество людей не будет больше 1000. При необходимости его можно легко изменить, модифицируя имеющуюся в программе постоянную. Установка диапазона ниже 0 тоже не имеет смысла — это просто бесполезно. С другой стороны, значение ниже 0 вызывает переполнение счетчика и установку максимального значения. Поэтому кажется логичным ввести ограничение в программе, благодаря которому диапазон настроек будет расширяться от 0 до максимума, и программа не позволит оператору настройки превысить пороговые значения.

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

Описанная сеть использует два логических вентиля AND, один из которых имеет два входа стробирующих сигнал (CO1>0 i C01< ПОСТОЯННАЯ), а второй один (C01>0). Выход первого вентиля AND присоединяем к одному из входов вентиля OR. Как легко заметить, здесь чего-то не хватает, поскольку вентиль имеет 2 входа, а нужно 3 (два стробирующих сигнала и кнопка). Чтобы добавить вход, нажимаем „+” на его значке – каждое нажатие добавляет один вход, а „-” удаляет.

К первому входу вентиля подведем кнопку, вызывающую уменьшение состояния счетчика (влево). На входе вентиля AND помещаем контакт, нажимаем на него и устанавливаем следующие параметры:

  • Тип: Входы и выходы, а также двоичные теги.
  • Комментарий: ВЛЕВО.
  • Тип логики: Замкнутый.
  • Аргумент: P – Кнопка устройства.
  • Номер: 1 — <.

К оставшимся свободным входам вентиля AND добавляем два контакта и устанавливаем их параметры:

  • Контакт на входе 2. вентиля AND:­
    • Тип: Входы и выходы, а также двоичные теги.­
    • Комментарий: C01 < ПОСТОЯННАЯ.­
    • Тип логики: Замкнутый.­
    • Аргумент: M – Тег.­
    • Номер: 2.
  • Контакт на входе 3. вентиля AND:­
    • Тип: Входы и выходы, а также двоичные теги.­
    • Комментарий: C01 > 0.­
    • Тип логики: Замкнутый.­
    • Аргумент: M – Тег.­
    • Номер: 1.

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

Затем, для безопасности, мы помещаем вентиль AND на входе D_ счетчика C01 (РАЗРЕШЕНО). Он заблокирует вход подсчета для направления вниз, если будет достигнут 0. Теоретически такой вентиль не нужен, но он был добавлен для безопасности приложения, чтобы вход изменения направления также был заблокирован, несмотря на нажатие клавиши «влево». К входам вентиля AND необходимо присоединить два контакта и следующим образом установить их параметры:

  • Контакт на входе 1. вентиля AND:­
    • Тип: Входы и выходы, а также двоичные теги.­
    • Комментарий: ВЛЕВО.­
    • Тип логики: Замкнутый.­
    • Аргумент: P – Кнопка устройства.
    • Номер: 1.
  • Контакт на входе 2. вентиля AND:­
    • Тип: Входы и выходы, а также двоичные теги.­
    • Комментарий: C01>0.­
    • Тип логики: Замкнутый.­
    • Аргумент: M – Тег.­
    • Номер: 1.

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

Сеть номер 0003 – счетчик, который хранит установку допустимого количества людей

Рисунок 7. Сеть номер 0003 – счетчик, который хранит установку допустимого количества людей

Нажимая Ctrl+T, добавляем сеть номер 0004. Она будет выполнять функцию сравнения, больше ли 0 содержание счетчика (настройки). Первым размещаем блок компаратора, который можно найти в списке Модули производителя –> Модули арифметический и аналоговый –> CPКомпаратор. К его входам присоединяем два аналоговых контакта (Контакты –> Аналоговый контакт), а к выходу GT присоединяем катушку. Теперь нажимая на контакты и катушки, уже известным ранее способом, устанавливаем их параметры:

  • Контакт на входе 1. компаратора:­
    • Тип: Выходы функционального модуля.­
    • Комментарий: РАЗРЕШЕНО.­
    • Тип логики: Замкнутый.­
    • Аргумент: C – Модуль счетчика.­
    • Номер: 1.­
    • Выходы функционального модуля: QV – Аналоговый выход функционального модуля.
  • Контакт на входе 2. компаратора:­
    • Тип: Постоянная.
    • Постоянная: 0.

Компаратор имеет 3 выхода: LT – активный, если значение I1 < I2, EQ – активный, если значение I1 = I2, GT – активный, если значение I1 > I2. В нашем приложении мы будем использовать активный выход GT, если значение на входе I1, так что состояние счетчикаC01 (РАЗРЕШЕНО) будет больше 0. На выходе GT компаратора размещаем катушку и устанавливаем ее параметры следующим образом:

  • Тип: Двоичные выходы и теги.
  • Комментарий: C01>0.
  • Функция катушки: Обычная катушка.
  • Аргумент: M – Тег.
  • Номер: 1.

Точно так же создаем сеть, которая проверит, не меньше ли введенная настройка максимального значения. Чтобы упростить, можно использовать метод копирования-вставки.

Нажимаем Ctrl+T, создавая сеть номер 0005. Переходим в сеть 0004 и выбираем компоненты сети, удерживая левую кнопку мыши и рисуя прямоугольное окно. Затем нажимаем Ctrl+C и переходим в еще пустую сеть 0005. Здесь нажимаем Ctrl+V. К сожалению, на этот раз мы будем использовать выход LT, поэтому нам следует удалить катушку, подключенную к выходуGT, взять новую и присоединить к выходу LT. Осталось установить значение контактов, подключенных к входам, и катушки, подключенной к выходу.

Благодаря функции копирования — вставки контакты должны иметь правильные параметры. Следует только изменить значение постоянной, вводя вместо 0, например 1000, то есть, максимальное допустимое количество людей, которое может быть установлено. Теперь необходимо заняться катушкой, подключенной к выходу LT компаратора, задав ей следующие параметры:

  • Тип: Двоичные выходы и теги.
  • Комментарий: C01 < ПОСТОЯННАЯ.
  • Функция катушки: Обычная катушка.
  • Аргумент: M – Тег.
  • Номер: 2.

Результат нашей работы должен выглядеть как на рисунке 8.

Сети с компараторами, поддерживающими установку в диапазоне 0… максимум

Рисунок 8. Сети с компараторами, поддерживающими установку в диапазоне 0… максимум

Объяснения требует способ управления блоком счетчика C01 (РАЗРЕШЕНО). Повышение состояния блока счетчика очевидно – достаточно подвести импульсы на вход C_. Для уменьшения требуется дополнительно подать логическую 1 на вход D_. В решениях, касающихся оборудования, например реализованных с помощью счетчика 74193, часто было достаточно решения, чтобы на вход направления подсчета и тактовых импульсов подавался один и тот же импульс, но на вход направления подсчета прямо, а на вход тактовых сигналов с небольшой задержкой, например посредством двух последовательно включенных вентилей. Тот же выход используется при подаче импульсов с кнопок на блок счетчика: импульс с контакта P01 подается через два вентиля на вход C_ и через одни на вход D_. Оказалось, что программная реализация логических элементов тоже вносит необходимую задержку и отлично работает также на диаграмме FBD.

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

Добавляем сеть номер 0006 (Ctrl+T). Из списка блоков выбираем счетчик (Модулипроизводителя –> Модули счетчика –> CМодуль счетчика) и устанавливаем его параметры следующим образом:

  • C: 2.
  • Комментарий: В ДАННЫЙ МОМЕНТ (В ПОМЕЩЕНИИ)
  • Не требуется EN для активации модуля.

Теперь возвращаемся к сети номер 0001, нажимаем на блок текстового тега и кнопку «Редактор текстового тега». К ранее сохраненным меткам мы добавим отображение текущего значения обоих счетчиков и состояния выхода Q1, к которому подключен красный свет.

Из списка в левой части окна редактора выбираем «Указание значения» и перемещаем после двоеточия метки «В ДАННЫЙ МОМЕНТ:». Будет показано поле, содержащее число 99999. Теперь в нижней части окна выбираем вкладку Связанные переменные и устанавливаем следующие значения полей:

  • Тип: Входы и выходы функционального модуля.
  • Аргумент: C – Модуль счетчика.
  • Номер: 2 — >>В ДАННЫЙ МОМЕНТ (В ПОМЕЩЕНИИ)<<.
  • Входы и выходы функционального модуля: QV – аналоговый выход функционального модуля.

То же самое делаем для поля/метки «РАЗРЕШЕНО:». Размещаем после нее поле «Указание значения», а затем на вкладке Связанные переменные устанавливаем следующие параметры:

  • Тип: Входы и выходы функционального модуля.
  • Аргумент: C – Модуль счетчика.
  • Номер: 1 — >> РАЗРЕШЕНО<<.
  • Входы и выходы функционального модуля: QV – аналоговый выход функционального модуля.

После метки «ВХОД:» отобразим надпись ДА, если это разрешено, или НЕТ, если запрещено. Для выполнения этого из списка слева выбираем Текст сообщения и помещаем после двоеточия метки. Растягиваем поле до 3-4 знаков и устанавливаем его значения, как на рисунке 9:

Конфигурация поля Текст сообщения

Конфигурация поля Текст сообщения

Рисунок 9. Конфигурация поля Текст сообщения

  • Вкладка Текст сообщения
    • Тип: Бит.­
    • Выбор языка: Без названия. ­
    • Режим визуализации: Стандартный.­
    • Режим: точное значение.­
    • Тип переменных (таблица): значение 0, текст сообщения ДА; значение 1, текст сообщения НЕТ.
  • Вкладка Связанные переменные
    • Тип: Входы и выходы, а также двоичные теги.­
    • Аргумент: Q – Выход.
    • Номер: 1.

Программирование реле easyE4

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

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

Для этого, в нижнем левом углу экрана нажимаем на кнопку Связь. Затем, установив параметры протокола IP v4 в контроллере и на ПК, нажимаем на кнопку Найти. В появившемся окне справа выбираем интерфейс Ethernet, к которому подключено реле, а слева Новый поиск. Ждем результат операции, который отобразится в таблице. Нажимаем на найденную позицию и кнопку Сохранить как профиль IP. Должно появиться сообщение о новом профиле с адресом/именем 10.10.0.2, а также время и дата его создания. Нажимаем OK, чтобы закрыть окно сообщения и Закрыть, чтобы закрыть окно поиска (рисунок 10). Слева вверху, в поле Профиль IP, если не отображается только что созданный, выбираем его из списка и нажимаем на кнопку Режим онлайн – соединение с контроллером будет установлено.

Окно поиска реле в сети Ethernet

Рисунок 10. Окно поиска реле в сети Ethernet

Теперь нажимая на список Программа/Конфигурация, а затем на PC => Устройство можем отправить программу на реле. Наконец, если не будет отображено сообщение с вопросом о запуске программы, нажимаем на кнопку RUN и запускаем созданную нами программу. На этом этапе мы можем протестировать ее работу с помощью кнопок курсора и DEL. Также должен работать вход сброса I08.

Приглашаем ознакомиться со статьей, посвященной возможностям контроллера EasyE4.

Предложите, как улучшить StudyLib

(Для жалоб на нарушения авторских прав, используйте

другую форму
)

Ваш е-мэйл

Заполните, если хотите получить ответ

Оцените наш проект

1

2

3

4

5

Понравилась статья? Поделить с друзьями:
  • Acs 101 инструкция на русском языке
  • Epson l1300 руководство по эксплуатации
  • Умвд хабаровский край руководство
  • Гуин россии руководство
  • Руководство пфк обновление