Использование программируемого реле easyE4 в процессе конструирования счётчика посетителей в зданиях
Ранее в наших материалах уже была предоставлена информация касательно создания программы для easyE4 и передачи на реле. Также было выполнен интерфейс пользовательского типа и проверено его функционирование.
Для завершения данного процесса осталось только лишь создать ПО, которое бы смогло обслуживать датчики (световые барьеры), что распознают куда движется человек, что заложено в основу генерации импульса, который увеличивает или уменьшает имеющийся показатель счётчика (кол-во посетителей).
В такой способ и будет происходить процесс управления сигнализатора или выключателя 2-х камерного типа (и много чего иного).
Разбираясь в промышленной автоматике, не составит труда подобрать ряд примеров для реализации системы, в основу которой заложены датчики направления движения.
Часть производителей полупроводников предоставляют возможность пользователям приобрести интегральные схемы, а подключив их к инкрементальному энкодеру можно сформировать выходные сигналы, которые определяют скорость вращения и его направление.
Для данного энкодера присущи входы в двух количествах (А и В), где сигнал В касательно сигнала А сдвинут на ± 90о по фазе. Как вариант, такая система подходит для применения как и дискретное решение.
Вентиляторы и регистры являются её основой, но при этом не стоит забывать, что даже при одинаковой последовательности сигналов на входах реле что программируется, поведение человека может быть непредсказуемым.
К примеру, войдя в зону распространения действия датчика 1, человек может изменить направление движения и развернуться. Также человек, попавший в зону действия датчика 2, может не попасть при этом под датчик 1.
Предлагаемая система обязательно должна быть готова к такому возможному поведению людей и, как минимум, не останавливать функционирование данного счётчика, а перегружаться и корректно вести себя при распознавании каждого последующего посетителя.
Последовательность закрытия/открытия датчиков, приводящая к уменьшению состояния счетчика
Регистр типа D может стать неотъемлемой частью конструкции самого простого детектора направления движения. Где барьер «1» подсоединяется к информационному входу данного регистра, а барьер «2» к входу тактового типа.
Оба барьера должны располагаться по отношению друг к другу недалеко, чтобы в случае приближения объекта со стороны датчика 1, изначально провоцировал появление логической единицы на информационном входе, далее с единицей на входе D, появление нарастающего на тактовом входе фронта.
Именно он и выполняет перезапись «1» с входа информационного типа на выход регистра. Появление тактового импульса — это первое, что возникает в случае перемещения в области воздействия датчика номер 2. С его помощью выполняется процесс перезаписи логического «0» с входа регистра D на Q.
В данный способ можно выявить истинное направление движения и контролировать вход направления счёта. В данной ситуации имеется проблема, суть которой в возникновении тактового импульса, который возникает при установке состояния входа регистра D.
Для того, чтобы применять на тактовом входе регистра D импульс в обязательном порядке, нужно добавить путь задержки данного импульса, что позволит учесть время распространения регистра.
Ситуация, при которой человек попадает под зону контроля датчика 1 меняет своё решение и возвращается назад, не должна вызывать какие-либо проблемы, ведь импульс возник только на информационном входе регистра и никак не отражается на состоянии его входа.
Совершенно по-иному будет выглядит данная ситуация с другой стороны, ведь вход/выход из области воздействия будет определён как полностью завершённый цикл.
Учитывая вышесказанное, предлагаемая нашей компанией система, определяющая направление движения, не только способна корректно реагировать на полноценную последовательность сигналов, а также не производить импульс положительного или отрицательного характера для счётчика, в случае неокончательной реализации такой последовательности.
При создании и внедрении детектора направления движения посетителей подразумевалось, что данная система будет оснащена двумя тактовыми выходами, применяемые в данной программе. Вместе с кнопками «вправо-влево» и «вверх-вниз» они будут производить тактовые импульсы на 2-х разных выходах.
Первый увеличивает счётчик, второй уменьшает счётчик. Посредством логических вентиляторов, которые располагаются в одной сети с счётчиком, происходит генерация сигнала, предназначенного для блока счётчика.
Очень важным моментом является присущая датчику нечувствительность к ситуации «мигания» сигнала на входах. Важным условием выполнения генерации сигнала +/- является выполнение такой систематичности:
- увеличение счётчика (импульс на I01-> импульс на I02);
- уменьшение счётчика (импульс на I02-> импульс на I01).
Самый верный способ, который может предотвратить «мерцание» входящего сигнала, это применение RS-триггера. Среди ряда преимуществ в данной ситуации можно выделить стабильность состояния по окончанию процесса поступления тока на вход, SET, RESET и неважно меняется ли при этом уровень логического сигнала на входе SET.
RS-триггеры являются неотъемлемой частью нашего датчика указания направления. Применяются на I01 и I02 (это два выхода реле easyE4). Кроме того, они рассчитаны на значительный уровень тока на конкретном входе, где они находятся до сброса.
Идеальная та ситуация, где импульс сброса для каждого из триггеров — это входной импульс счётчика, ведь его поступление — это свидетельство того, что процесс по выявлению курса движения окончен логично, прибор произвёл импульс для счётчика и настроен на дальнейшую связь.
Нередка ситуация, при которой подсчитываемый посетитель попадает только под один датчик или может пройти между ними, тогда на входе программируемого переключателя появляется 1 сигнал, а не 2, которые нужны для корректного выявления.
Возникает вопрос касательно правильности сброса конкретного входного триггера. Сбрасывание двух сразу, по истечению некоторого ременного промежутка, предназначенного для всего цикла. Данное время в ПО или аппаратных решениях называется timeout.
Пользовательский блок на основе RS-триггера
Применение функциональной блоковой диаграммы (FBD) в процессе программирования имеет свои преимущества, среди которых можно выделить определение пользовательских блоков. С её помощью можно как выявлять личные блоки и много раз применять их в самых разноплановых программах, а также применять личные решения сотрудников, производителей (аппаратного типа) с онлайн-форумов и иных мест.
Учитывая потребности, создаваемый нами пользовательский блок будет оснащён простым RS-триггером, оснащенный 2-мя вентилями NAND. Из-за необходимости в триггере, что запускается высоким уровнем, будут добавлены на входы инверторы. Для выполнения пользовательского модуля выбираем «Программа» в меню и далее нажимаем «Создать пользовательский модуль».
Для выполнения данной цели также можно использовать ранее созданный ярлык или нажать на «Пользовательские модули» посредством нажатия правой кнопки мыши. После чего будет отображено окно, где вводится имя создаваемого нами модуля, число и вид входов-выходов.
Далее нужен всего лишь один бинарный выход и 2-а выхода. Конструкция создаваемого модуля будет оснащена такими элементами:
- два вентиля;
- контакты на входе;
- катушки на выходе.
Данное минимальное количество компонентов обуславливает использование всего одной сети. Для того, чтобы подключить вход к выходу нужен маркер. Удобней всего реализовывать подключение так, как указано на схеме, но это нереально.
Все части выстраиваются друг за другом ПО, поэтому есть необходимость в планировании их «плоского» размещения. NAND — это выходной элемент, представляет собой идеальное решение для начала укладки пользовательских блоков, где к его одному выходу подсоединяется выход второго элемента NAND вместе с контактом, который подсоединяется к 1-у входу NAND.
Последнее, что необходимо сделать, так это вывести выход посредством подключения 2-х катушек к 2-у по очереди вентилю. Что касается характеристик отдельных контактов и катушек, то они таковы: 1.Контакты на входе (первый элемент NAND слева):
- Тип: Входы и выходы, бинарные маркеры; Комментарий: SET; Тип логики: Нормально замкнутый; Аргумент: I.
- Вход; Номер: 1.
- Тип: Входы и выходы, бинарные маркеры; Тип логики: Нормально разомкнутый; Аргумент: M – Маркер; Номер: 1.
2.Контакты на выходе (второй элемент NAND):
- Тип: Выходы и бинарные маркеры; Комментарий: Q; Функция катушки: обычная отрицательная катушка; Аргумент: Q
- Выход; Номер: 1.
- Тип: Выходы и бинарные маркеры; Функция катушки: обычная катушка; Аргумент: M – Маркер; Номер 1.
Для контакта подачи сигнала RESET присущи такие свойства:
Тип: Входы и выходы, а также бинарные маркеры;
Комментарий: RESET;
Тип логики: Нормально замкнутый;
Аргумент: I – Вход;
Номер 2.
Далее нажимаем на вкладку сделанного модуля и щёлкаем на «Закрыть». Затем необходимо будет подтвердить сохранение на диск, при этом назвав его выбранным именем. Теперь к созданному определению имеется доступ в списке модулей, и оно полностью готово к работе.
На самом деле способность к определению модулей является идеальной возможностью, открывающей доступ к созданию библиотеки готовых решений, что непременно способствует упрощению всего процесса по сбору новых программ, а значит и упрощает работу разработчиков.
Ещё отличным вариантом является внутрикомандное разделение работы, где каждый отдельный элемент будет предоставлен для тестирования отдельным членом команды, а далее всё будет объединено в одно звено.
Детекторы, определяющие направление движения
Суть функционирования детектора направления движения можно узнать, воспользовавшись программой, которая прилагается к данной статье. Даже при размещении всевозможных рисунков в статье, всё равно удобнее будет вникнуть в их суть в процессе чтения на экране среды программирования easySoft7.
Существенными преимуществом при этом является то, что можно запустить стимулятор и посмотреть, как программа реагирует на ваши щелчки. Кроме того, процесс работы отдельных сетей достаточно проблематично описать при их изолировании друг от друга.
Сеть под номером 0010 — это начало схемы детектора, указывающего путь движения. На расстоянии от сети 0010 к 0016 встроены логические части, которые выполняют задачи по поддержке входа I01. За поддержку входа I02 отвечают сети с 0017 до 0023.
Детектор последовательности импульсов, неотъемлемой частью которого есть триггер типа D, являются основной для моделирования каждой из данных симметричных частей. Данные детекторы направленны на работу только со сдвинутыми по фазе на 90о сигналами, а при применении в счётчике посетителей возникает необходимость реакции на такие последовательности, как «нет-I01-нет-I02-нет» или «нет-02-нет-I01-нет».
Решением стало добавление RS-триггера. Такие триггеры способны фиксировать положение входов, выполняют защитную функцию от резких перемен показателей тока на входах и провоцируют сдвиг по фазе, нужный в квадратурном детекторе. Каждый из триггеров оснащён таймером, который измеряет временной лимит операции, провоцирующие импульс сброса вх/вых RS-триггеров.
Также добавлены вентили, которые блокируют входящие импульсы до момента сброса триггера, иными словами, до момента возможности начать новый цикл обнаружения. Схематично соединение и расположение каждого отдельного элемента на схеме отображено в соответствии с раним описанием, так что повторяться нет смысла.
Производить анализ функционирования детектора лучше при помощи стимулятора, который запускается от клика на кнопку «Стимуляция». Но из-за того, что схема easySoft7 непременно разделяется на незначительные по размерам сети, производить её анализ проблематично.
Упростить процесс поможет распечатка отдельных сетей и схематическое отображение логических вентилей. В результате это позволит отличать элементы D-триггера и отслеживать их от дополнительных функций блокировки и сброса триггеров.
Сохранность счётчиков при отключении питания
Существенным преимуществом для пользователя будет то, что если в случая перебоев с питанием, не возникала необходимость в повторном вводе настроек, а необходимо было бы всего лишь откорректировать показатели текущей индикации. В данном случае, восстановлению подлежит содержимое 2-х счётчиков (модули С01 и С02).
Данное свойство восстановления и запоминания называется реманентностью. Для более детального ознакомления с данной функцией нужно воспользоваться меню «Справка». В строке «Поиск» вводим слово «реманентность». Ещё один вариант – это обращение к руководству пользователя, которое так же доступно в данном меню.
Памяти на 400 байт вполне достаточно для возобновления после запуска питания реманентных байтов. Для запуска функции по сохранению и восстановлению содержимого счётчика, нажимаем кнопку «Проект», что находится снизу слева, далее клацаем на вкладку «Системные настройки», а реманентность находится в третьем поле слева.
В нашем случае, очень важно наполнение модулей счётчиков С01 и С02. Учитывая это, в строке с «С» вводим 01, далее 02. Иные поля таких модулей, как «СН», «СI», «DB», «Т» опускаются. Этот этап также не включает в себя работу с маркерами MW, MB, MD.
Не составляет труда увидеть, что правильный ввод уменьшил диапазон значения «Свободный» на 8 байт, чего вполне достаточно для запоминания 2-х модулей счётчиков.
Процесс функционирования счётчика с easySoft7
EasySoft7 — это среда программирования, оснащённая встроенным симулятором, при помощи которого можно проверить корректность функционирования программы, оценить состояние входов, выходов и логических уровней на разных частях диаграммы FBD.
Применение симуляторов позволяет тестировать работу программы и обнаружить там ошибки, несмотря на то, что на практике это будет выглядеть не как ожидаемые рабочие условия, с которыми приложение будет соприкасаться в реальности.
Далее используем симулятор для проверки исправной работы приложения счётчика посетителей. Для запуска симулятора нажимаем на кнопку «Симуляция», которая находится снизу окна с левой стороны среды easySoft 7. В процессе симуляции работы счётчика большая часть параметров остаётся неизменными и на них не будут устанавливаться никакие ловушки.
Но при этом возможности симулятора уникальны, которые не будут доступны пользователю в аналогичных по конструкции продуктах. Возможность установки ловушек не является единственным преимуществом, также пользователю предоставляется возможность применения виртуального осциллографа (отображает формы применяемых сигналов).
Испробуем его в процессе управления нашей программой. В программе «Счётчик посетителей v11.e70» кликаем на «Симуляцию» и разворачиваем список «Дисплей», выбираем «Окно аргументов + осциллограф». С правой стороны появится незаполненное Окно аргументов + осциллограф.
В столбце «Аргумент» нажимаем «*» и пишем М05, в расположенном рядом столбце «Комментарий» должно возникнуть сообщение ИМПУЛЬСЫ ВВЕРХ. Нажав на столбец «Осциллограф» появится checkmark и в окне «Осциллограф» типа канала анализатора логических состояний. В такой же способ необходимо дописать: M04 (ИМПУЛЬСЫ ВВЕРХ), I01 (ВХОД 1) и I02 (ВХОД 2).
Запуск стимулятора происходит после нажатия F9 или нажатии в меню «Симуляция» и далее «Начать». Выбираем в меню «Осциллограф» — «Начало регистрации». Щёлкаем на расположенный по левую сторону экрана расширенный список Дисплей + кнопки. Снизу окна появится рабочий экран приложения счётчика, далее только при помощи кнопок вправо-влево выбираем показатель РАЗРЕШЕННОЕ на >0.
Нажимаем на Дисплей – Цифровой вход и быстро два раза подряд в квадрат около 1:ВХОД 1 и 2:ВХОД 2. При подаче импульсов в ином порядке формируется импульс на выходе М04: ИМПУЛЬСЫ ВНИЗ и уменьшает показатель счётчика ТЕКУЩЕЕ.
Дополнительно экран осциллографа может быть оснащён, к примеру, выходами, что предоставит возможность понаблюдать за изменением уровней в ритме импульсов на I01 и I02. Организовать наблюдение также можно при нажатии Дисплей – Цифровые выходы.
При помощи осциллографа каждый последующий посетитель будет идентифицирован по окончанию времени операции (в данном случае это 2,5 секунды). При близком расположении таких барьеров к друг другу время может быть изменено в меньшую сторону.
При корректной работе счётчика, созданная последовательность импульсов может перекрываться при слишком близком расположении барьеров. Проверив функционирование программы, необходимо всего лишь отправить её на контроллер easyE7 сигнализировать с выходов датчиков и подсоединить сигнализатор.
Выводы касательно easyE4
Все три статьи несут полную информацию касательно приложения, направленного на подсчёт посетителей. Применять на практике его можно двумя различными способами:
- сигнализируя о превышении допустимого количества людей в помещении (в целях безопасности);
- для включения и выключения света, вентиляции в обслуживающем пространстве, только при условии, что там кто-то находится.
В процессе своей работы прибор применяет свойство реманентности, что обеспечивает работу программы, где блоки счётчиков с настройками и информацией о текущем состоянии могут сберегаться в памяти, которая никак не зависит от поступления энергии, а также восстанавливаться в случае временного отсутствия тока.
Это исключает необходимость в переустановке параметров счётчика при сбое питания. Достаточно будет всего лишь посчитать людей в помещении и изменить показания. В любом случае, если сравнивать контроллер easyE4 с иными более старыми моделями приборов, то данная вариация является существенным шагом вперёд.
Безусловно, среда программирования easySoft7 будут совершенствоваться и далее. Ранее, в самых различных приложениях, имели место быть контролеры, созданные для конкретного применения.
Учитывая пример в виде easyE4, реализовывать приложения не стоит на основе имеющихся микроконтроллеров, ведь за адекватную цену получаем контроллер с быстрым процессором, помещённый в надёжный корпус на рейку, оснащённый клавиатурой и дисплеем.
При этом не составит труда объединиться в сеть и обмениваться информацией с окружающим миром, еще более увеличив возможности агрегата. Изделие идеально подходит для применения в промышленных средах, полностью отвечает большому количеству гармонизированных стандартов.
В результате можно быть уверенным на все 100%, что пользователь получит устройство с протестированным ядром в сертифицированной лаборатории от производителя с достойной репутацией.
EASY-E4-DC-6AE1 Модуль: расширения; OUT 1: 0÷10В,0/4÷20мА; easyE4; 24ВDC
EASY-E4-UC-12RC1 ПЛК; 8А; IN: 8; Аналог.вход: 4; Аналоговые выходы: 0; OUT: 4; DIN