РадиоКот :: Расходомер для бойлера на PIC16F886.
Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Измерительная техника >

Теги статьи: Добавить тег

Расходомер для бойлера на PIC16F886.

Автор: Хатуль_мадан
Опубликовано 29.09.2020
Создано при помощи КотоРед.
Участник Конкурса "Поздравь Кота по-человечески 2020!"

Хочу поздравить Кота и посетителей всего сайта с небольшим юбилеем, 15 лет! Присоединяюсь ко всем пожеланиям и, в качестве скромного подарка, предлагаю свою конструкцию на всеобщее обсуждение.
Идея возникла давно, еще в 2015 году, во время отпуска в Крыму. Как выяснилось, в квартирах там нет централизованной подачи горячей воды, поэтому широко используются бойлеры. После пляжного отдыха всем хочется ополоснуться пресной водой. Но даже при объеме 50л нагретой воды, ее не всегда хватало на трех человек и прежде, чем залезть в душ, хотелось знать остаток горячей воды. Именно в тот год был запланирован ремонт у себя дома в ванной комнате. Поэтому реализация идеи сделать указатель уровня горячей воды была очень своевременна. Отключение подачи горячей воды на неделю-другую по нескольку раз за лето, дело привычное, но так надоедало греть бак на плите и носить все это в ванную. Было принято решение купить бойлер, а вот с его необходимым объемом возникли вопросы. 50 литров, казалось бы, достаточно, но не влезал такой в нишу с трубами, а нависание на стене уж очень давило на психику. Объем 20-30 литров, вроде, маловат, как потом выяснилось, и 40 литров тоже. Выбрал простой на 40л, из нержавейки, высокий, но с минимальным диаметром, с двумя ТЭНами по 0,7 и 1,3 кВт. Как он разместился в ванной, можно увидеть на фото в архиве, чтобы тут не нагружать картинками. Перед наклеиванием кафельной плитки, пришлось процарапать стену под металлопластиковую трубу к месту установки индикатора, чтобы соединительный провод не был виден. Но можно было и другое решение найти.
Теперь про сам измеритель. Так как бойлер 7 лет будет на гарантии, не хотелось нарушать его целостность и вмешиваться в схему. Да и с точки зрения безопасности лучше было оставить все как есть. Получить необходимые данные от внешних подключений не сложно. Так информацию о количестве протекающей через него воды проще взять со старого водяного счетчика, у которого удалена вся верхняя (наружная) механическая часть, и к центральной области счетчика (там, где магнит крыльчатки), приклеить датчик холла от старых моторов СД-привода (образец на фото). Датчик представляет собой 4 магниторезистора в мостовой схеме включения, поэтому для получения хорошего сигнала диагональ моста включена на входы компаратора МК.

     

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

Центр датчика немного смещен от центра самого корпуса:

Сигнал включения нагрева берется с самодельного токового трансформатора. Изготовлен из миниатюрного сетевого трансформатора, у которого удалена вторичная обмотка и на ее место продет один виток силового провода, идущего к розетке подключения бойлера. Подробности его изготовления в архиве. Порог устойчивого распознавания подключения нагрузки от 200Вт и выше (от ТЭН идеально).

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

Если потребуется распечатать, или подробно рассмотреть схему, то она есть в архиве в PDF формате.

Принцип работы основан на измерении количества импульсов от датчика расхода и пересчет их в объем израсходованной воды. После включения питания, термостат бойлера находится во включенном состоянии, идет нагрев, сигнал об этом поступает в МК, на экране индикатора отображается пустой бак, горит индикатор нагрева и температура с датчика. Как только температура воды достигнет заданного значения на термостате бойлера, цепь питания ТЭНов размыкается, и сигнал с датчика тока пропадает. В МК считывается из памяти EEPROM число, соответствующее полному объему бойлера и выводится на индикатор, показывающий, что он нагрет и полон. При этом раздается звуковой сигнал длительностью 1 сек. Через 30 сек подсветка индикатора гаснет, если нет импульсов расхода. Температура измеряется всегда каждые 2 сек и не зависит от состояния нагрева или расхода. В таком включении бойлер работает в своем штатном режиме, а индикатор точно следит за остатком горячей воды.

При открытии крана горячей воды, крыльчатка счетчика начинает вращение, и магнитное поле в датчике холла вызывает возникновение импульсов, количество которых пропорционально расходу воды. Экспериментально в моем экземпляре насчитал 63 импульса на литр. Импульсы вычитаются из числа, соответствующего максимальному объему, и результат отображается на индикаторе. По мере расхода:
если остаток менее 15л, то раздается звуковой сигнал длительностью 1 сек,
если остаток менее 10л, то раздается два звуковых сигнала по 1 сек,
если менее 5л, то три сигнала по 1 сек каждый.
Таким образом, можно даже не обращать внимание на индикатор, а ориентироваться на звуковые предупреждения.
При обнулении показаний объема горячей воды счетчик отключается. Следующий этап нагрева, от полностью пустого бака или от его части, заканчивается очередным отключением ТЭНов, вновь отобразится полный бак и погаснет индикатор нагрева. По мере расхода воды, ее остаток всегда запоминается в памяти МК, поэтому при пропадании сетевого питания и дальнейшем его включении, из памяти возвращается прежний объем до отключения, при условии, что температура воды выше 36 градусов. Но при этом на индикаторе остаток виден пунктирными линиями, ведь не ясно насколько длительным было отключение, и расходовалась ли вода, т.е. видим приблизительный остаток.

Так выглядит индикатор на общем плане.
Конструктивно часть схемы собрана в монтажном герметичном корпусе для электрооборудования. Блок питания на 5В использовал от зарядного устройства сотовых телефонов. Платы не травил. Эта конструкция собрана на двух кусочках монтажной платы навесным способом. На одной размещен ЖКИ от телефона нокиа 3410, светодиоды подсветки, светодиод нагрева, светодиод индикации расхода и пьезоизлучатель. Все это приклеено в рамку от клавишного выключателя при помощи герметика, с лицевой стороны бумажная наклейка, закрытая тонким стеклом от фоторамки, тоже на герметик. Распаяна плата к 14 жильному кабелю 1,5 метра, который пропущен по ранее установленной трубке и подключен к основной плате с МК разъемом IDC-14. Получившийся индикатор вот уже 4 года держится на кафельной плитке, не промокает, сбоев в работе не было.
Настраивается все при помощи изменения значений в ячейках памяти EEPROM МК.

Для первого экспериментального датчика на 63 имп./литр и для объема 40 литров:
0-байт не используется.
1-байт – количество воды на 1 импульс ( 1/63=159 -> 0x9F )
2 и 3-байт – полный обьем бака (40 литров: Vmax*10000/Vimp = 40*10000/159 = 2515 импульсов -> 0x09D3 -> 2-байт 0x09 3-байт 0x D3 )
4-байт – кол-во имп. на 1 пикс. рисунка бака ЖКИ ( 2515/42 =59 -> 0x3B )
Рисунок бака из 42 пикс., поэтому и считаем количество импульсов на строку пикселей.

Второй датчик немного другой конструкции и давал 50 импульсов на литр воды.
Для него коэффициенты будут другие (аналогично и под другой объем бака):
0-байт не используется.
1-байт – кол-во воды на 1 импульс ( 1/50=200 -> 0xС8 )
2 и 3-байт – полный обьем бака (40 литров: Vmax*10000/Vimp = 40*10000/200 = 2000 импульсов -> 0x07D0 -> 2-байт 0x07 3-байт 0x D0 )
4-байт – кол-во имп. на 1 пикс. рисунка бака ЖКИ ( 2000/42 =47 -> 0x2F )

В дальнейших планах доработать эту конструкцию. Надо установить два датчика температуры под термоизоляцию к металлу бака в верхнюю часть и в нижнюю. По верхнему, контроль температуры на выходе, а по нижнему, порог отключения нагрева при помощи симистора, включенного в ту же цепь, что и трансформатор тока. Термостат самого бойлера можно установить на максимальное возможное значение для аварийного случая (при отказе управления, или пробое симистора). Управлять нагревом уже при помощи МК. В этом случае контакты термостата всегда замкнуты и нет искрения при включении, т.е. увеличивается срок службы. Включать нагрев можно не сразу после расхода 1-2 литров воды, а например, после 5 литров расхода, или при понижении температуры на пару градусов. Иногда раздражает частое включение подогрева после мытья рук, или каждой кружки. Но это только дальнейшие планы.

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

Все вопросы в форум после окончания конкурса.


Файлы:
Фото
модели схемы
Прошивки
Схемы в pdf


Все вопросы в Форум.




Как вам эта статья?

Заработало ли это устройство у вас?

24 5 5