Найти в Дзене

Умная автоматика для дома

Оглавление

Автор: Вальпа Олег

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

Введение

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

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

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

Проект автоматики

Идея проекта состоит в том, чтобы ПЛК автоматически считал импульсы подключённых к нему датчиков расхода ресурсов и выдавал накопленные данные по запросу от компьютера. В качестве датчиков расхода воды можно применить промышленный покупной счётчик воды с импульсным электрическим выводом, показанный на рис. 1.

Рис. 1. Счётчик воды с импульсным выводом
Рис. 1. Счётчик воды с импульсным выводом

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

В проекте задействовано подключение одного счётчика горячей и одного счётчика холодной воды. При необходимости в проект легко добавить подключение дополнительных счётчиков воды методом копирования части кода программы.

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

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

Рис. 2. Внешний вид датчика проводимости
Рис. 2. Внешний вид датчика проводимости

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

Рис. 3. Электропривод с водопроводным шаровым краном
Рис. 3. Электропривод с водопроводным шаровым краном

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

Количество датчиков проводимости и электроприводов с водопровод­ным шаровым краном определяется количеством помещений (ванная комната, туалет, кухня и т.п.), в которых возможна аварийная протечка воды. При этом все датчики подключаются к одному входу контроллера, а все электроприводы – к одному релейному выходу контроллера параллельно.

В основе проекта применён недорогой ПЛК Pixel отечественной компании Segnetics [1]. Обзор данного ПЛК и среды разработки программ для него был приведён в моей статье [2] и свободно доступен на сайте редакции журнала.

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

Пример схемы размещения оборудования автоматики приведён на рис. 4.

Рис. 4. Пример схемы размещения оборудования автоматики
Рис. 4. Пример схемы размещения оборудования автоматики

Программа ПЛК

Программа для ПЛК создана в бесплатной среде разработки SMLogix на языке программирования FBD.

Интерфейс оператора разработан с помощью встроенного в среду разработки программного инструмента SMArt и представлен на рис. 5.

Рис. 5. Окно программного инструмента SMArt
Рис. 5. Окно программного инструмента SMArt

Интерфейс состоит из одного главного экрана, на котором отображаются текущие значения счётчиков горячего водоснабжения (ГВС) и холодного водоснабжения (ХВС). Показания счётчиков имеют привычное для обычных механических счётчиков отображение в кубометрах с отделением дробных значений десятичной точкой.

При обнаружении протечки воды на экране ПЛК активируется сообщение «Утечка!» и включается красный индикатор ALARM на ПЛК.

При разработке программы были использованы только библиотечные элементы среды разработки: логика, преобразователи сигналов, счётчики, сумматоры, компараторы, триггеры и порты ввода-вывода.

Окончательный вариант программы в отладочном режиме среды разработки SMLogix представлен на рис. 6.

Рис. 6. Окно программы ПЛК
Рис. 6. Окно программы ПЛК

Особенностью применения счётчиков в проекте является подключение перед их счётным входом «+» формирователя короткого импульса фронта Raise. Это позволяет увеличивать значение счётчика на единицу для каждого входного импульса независимо от его длительности. Без использования такого формирователя счётчик увеличивает своё значение в течение всей длительности импульса с тактовой частотой ПЛК.

В среде разработки SMLogix десятичные числа отображаются на экране со знаком, в дополнительном коде в диапазоне от 0 до 32 767 и далее до минус 32 768. Но счётчик не использует старший разряд как знаковый, поэтому он считает от 0 до 65 535, как для чисел без знака.

Сумматоры после элементов счётчиков позволяют выполнить корректировку показаний и привести показания счётчиков на экране ПЛК к текущим, начальным показаниям счётчиков воды до начала измерений.

В блоке контроля утечки воды вход ain5 позволяет измерять напряжение от 0 до 10 В. Сопротивление подключённого датчика проводимости в сухом состоянии составляет сотни МОм, а вода снижает сопротивление между пластинами датчика до нескольких кОм. Один вывод датчика подключается к выводу 10V ПЛК, а второй – к входу ain5 ПЛК. Таким образом, при появлении воды её проводимость обеспечит коммутацию напряжения 10 В на вход ain5. Код аналого-цифрового преобразователя ПЛК для 10 В составит 30 690 единиц. Этот код сравнивается с кодом порога компаратора с заданным в программе значением 25 000 единиц. При превышении этого порога компаратор формирует выходной сигнал, который установит RS-триггер в единичное состояние. Триггер необходим для фиксации аварийного состояния и исключения самопроизвольного возврата в исходное состояние. В результате переключения триггера зелёный светодиод led0 отключится, включится красный светодиод led1 и замкнётся выходная цепь релейного порта dou0.

Сбросить аварийное состояние можно после проверки и устранения утечки водопроводов в ручном режиме с помощью кнопки ESC на ПЛК.

Дистанционный сбор показаний счётчиков из ПЛК можно производить через встроенный интерфейс RS-485 или через установленный в ПЛК сетевой модуль интерфейса Ethernet.

Карта памяти регистров для описанной программы ПЛК приведена на рис. 7.

Рис. 7. Карта памяти регистров
Рис. 7. Карта памяти регистров

Интерфейс RS-485 настраивается с помощью встроенного системного меню контроллера, вход в которое производится одновременным нажатием кнопок «Вверх» и «Вниз» ПЛК Pixel. Для повышения устойчивости связи рекомендуется задать скорость передачи данных по интерфейсу RS-485 равной 9600. В этом же меню настроек задаётся адрес ПЛК и формат данных.

Со стороны персонального компьютера можно использовать готовую программу Modbus Pull или аналогичную ей. Окно программы Modbus Pull с параметрами настройки приведено на рис. 8.

Рис. 8. Окно программы ModbusPull
Рис. 8. Окно программы ModbusPull

С помощью этой программы можно в любое время считать показания всех счётчиков и значение датчика проводимости непосредственно с персонального компьютера, подключённого к ПЛК по сети Ethernet или через преобразователь USB/RS-485.

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

Заключение

Готовый файл проекта размещён на сайте журнала [3] и может быть использован для дальнейшего развития.

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

Таким образом, приведённый здесь проект можно развивать и использовать в автоматике «Умный дом».

Литература

  1. Вальпа О. Программирование логических контроллеров // СТА. 2025. № 1. С. 18.

© СТА-ПРЕСС, 2025