01 июня 2021

Имидж ничто - жажда всё!

 Cat waterfall или не дай коту засохнуть.

Версия 31.05.2021г.

(Интернет-фото)                                             

Коты любят свежую водичку. В идеале - проточную.
Отсюда на всяких котофорумах и группах регулярно возникают вопросы - "Я котику наливаю водичку в блюдечко, а этот шерстяной гад пьет из унитаза!!!!!".
Или - "Научился открывать воду в в ванной, что бы попить. Закрывать не научился, слил 60 кубов воды!!!ААААА!!! Убить всех человеков!!!"

Нормальные люди иногда покупают всякие мини-фонтанчики-водопадики.

А такие дурные, как я, начинают творить всякую пургу, которую буржуи называют красивой аббревиатурой DIY.
Почему то у нас это не называют "сделай сам", а пытаются эту аббревиатуру прочитать. "ДиАйВай". Звучит отвратительно. "ДИЙ" - ненамного лучше.

Итак - поилка для кота "сделай сам".

Для поилки нам понадобится водяной насос, немножко рук, немножко радиодеталей и подходящая емкость.


Под это дело на али был куплен мелкий насос. Заявленный диапазон питания - от 3 до 5 вольт. Как раз аккумулятор 18650.
В качестве датчика движения было запланировано применение вот такого модуля


Мои критерии к устройству были следующие:

  • Работа от аккумулятора
  • Индикация уровня заряда аккумулятора
  • Включение по датчику движения
  • Включение по кнопке
  • Ограничение времени работы насоса
  • Блокировка работы по минимальному уровню воды
  • Регулировка мощности насоса

Исходя из этих критериев, было решено применить старый добрый народный микроконтроллер ATMEGA8A. У этого МК как раз два внешних прерывания, позволяющих пробудиться от кнопки и от датчика движения. Так же, для отсчета различных временны́х задержек задействован один из таймеров микроконтроллера, работающий в асинхронном режиме с внешним часовым кварцем. Это позволяет микроконтроллеру просыпаться на очень короткое время каждую секунду, делать свои грязные дела и идти спать дальше.

Схема устройства.

Эта же схема в PDF

Поскольку насос потребляет достаточно большой ток (в районе 0.5А) и при этом может создавать помехи по питанию, для питания МК применен LC-фильтр. 

Аккумулятор подключен через готовый модуль зарядки и защиты на TP4056

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

Насос управляется ШИМ-сигналом через полевой транзистор Q2. C6 - фильтр помех, D1 - защита от выбросов самоиндукции двигателя.

Датчик движения подключен через согласующий каскад на транзисторе Q1.  Питание датчика - от одного из портов МК.

Три светодиода - для индикации различных состояний.

Конструкция.

Электронная часть и аккумулятор размещены в корпусе Z-23B размерами 84 х 59 х 37мм.
Можно так же взять корпус Z-23 без "В" - у него меньше высота - всего 30мм.


Печатная плата 

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

Герберы и готовый файл для печати на лазернике для ЛУТа.

Плата устанавливается в корпусе на три 10-12 мм нейлоновых стойки, вкрученные в корпус по нарезанной резьбе.

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

Детали и сборка.

Сборка практически без особенностей. 

Кварцевый резонатор необходимо прихватить к плате проволочным хомутиком. 

Светодиоды можно выбрать как прозрачные, так и индикаторные, с цветными корпусами.

Кнопка - обычная тактовая. 

БФК - Большой Фильтрующий Конденсатор. Тут можно применить все, что подойдет по габаритам с ёмкостью от 470 мкФ. Для него предусмотрено несколько отверстий для монтажа.

Дроссель. Предназначен для фильтрации помех от двигателя. В принципе, тоже, чем больше, тем лучше. Но ток насыщения должен быть ну хотя бы 70-100 мА.

Датчик движения - подключается тремя проводами, можно впаять, можно на разъеме.

Геркон - тут зависит от конструктива датчика уровня. При недостаточном уровне воды геркон должен быть замкнут.

Собранная плата.






Программное обеспечение (прошивка).

Прошивка. Версия от 31.05.2021г.

Фьюзы.


Кому ближе циферки: High: 0xC1, Low: 0xA4

Конструктив.

Основой для водопоя послужил пищевой пластиковый контейнер.

Крышка и часть стенок контейнера обрезается. Корпус с электроникой крепится сверху на крышку. 

На момент изготовления насосной части как раз подъехали миниатюрные датчики движения AM312.

Они гораздо аккуратнее стали на торцевую часть корпуса в монтажное отверстие 11 мм.

Сам водопад сделан из пластиковых коробов для электропроводки. Фиксация и герметизация - термопистолетные сопли. Насос вклеен в отдельную камеру, на входе в которую стоит поролоновый фильтр. Далее, по ПВХ-трубке вода уходит в выходную камеру. Там поток успокаивается пластиковым отбойником и вытекает в виде спокойного потока без брызг.

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



Область действия датчика движения сужена Синей Изолентой ™

Краткая инструкция.

Первое включение. Калибровка измерителя напряжения батарейки.

Поскольку в мире нет ничего совершенного, точное значение источника опорного напряжения внутри МК неизвестно никому. Даже самому МК. И что бы узнать это напряжение, требуется процедура калибровки.
Перед калибровкой необходимо отключить аккумулятор и разрядить Большой Фильтрующий Конденсатор. Приготовить источник питания напряжением ровно 3.3 вольта, подключить выключенный источник к плате.
Далее, нажать кнопку управления и держать ее. Включить источник питания, не отпуская кнопку. Загорится красный светодиод. Дождаться, пока не загорится желтый, отпустить кнопку. Микроконтроллер, зная напряжение питания, рассчитает и сохранит в энергонезависимой памяти напряжение опорника. 
После измерения и сохранения загорится зеленый светодиод, далее устройство перейдет в режим ожидания.
Теперь источник 3.3 вольта можно отключить и подключить аккумулятор.

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

Режим ожидания.

В режиме ожидания МК находится в режиме пониженного энергопотребления (сна) каждые 8 секунд проверяет напряжение на аккумуляторе, зажигает на 5мс соответствующий светодиод и далее, после выключения светодиодов, уходит в сон опять.
Если напряжение аккумулятора  ≥ 3.5 вольт - будет гореть зеленый светодиод, если ≥ 3.3 вольта - желтый, а если ниже 3.3 - красный светодиод.
Если же при измерении напряжение будет ниже 3.0 вольт - устройство перейдет в режим отключения.

При срабатывании датчика движения устройство переходит в рабочий режим

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

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

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

Рабочий режим.

В рабочем режиме зажигается светодиод, соответствующий напряжению батареи. При этом, если геркон замкнут (недостаточный уровень воды), светодиод медленно мигает.
Если же геркон не подключен или разомкнут - светодиод горит непрерывно и включается насос.
Длительность рабочего режима - 4 секунды после пропадания сигнала с датчика движения или 10 секунд после отпускания кнопки. Последовательные срабатывания датчика движения или нажатия на кнопку продлевают время нахождения устройства в рабочем режиме.
По истечении времени нахождения устройства в рабочем режиме устройство возвращается в режим ожидания.

Счетчик времени работы насоса увеличивается каждую секунду, пока насос включен. Если устройство переходит в режим ожидания и находится в нем не менее 45 секунд - счетчик времени работы насоса сбрасывается. Если же счетчик работы насоса досчитал до 120 секунд, датчик движения отключается и запускается таймер неактивности датчика движения. Выдержка таймера - 1800 секунд (30 минут). Устройство доработает текущий цикл и штатно перейдет в режим ожидания. По истечении времени неактивности датчик движения будет включен заново и устройство снова сможет включаться по датчику движения.

Короткое нажатие на кнопку устанавливает длительность работы режима в 10 сек, при этом сбрасываются счетчик времени работы насоса и таймер неактивности датчика движения. 

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

Если во время работы насоса напряжение батареи упадет ниже 3.1 вольта, насос отключится, а красный светодиод будет часто мигать.

Режим отключения.

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

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

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

Режим настройки мощности насоса.

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

Всего предусмотрено 16 градаций мощности насоса, перебираемых циклически кнопкой.
Каждое короткое нажатие на кнопку включает следующую градацию мощности. После максимальной мощности будет включена минимальная - 1/16 мощности. 
Каждое нажатие на кнопку продлевает время нахождения в режиме настройки мощности до 15 секунд.

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

Если в течении 15 секунд не нажимать на кнопку, устройство вернется из режима настройки мощности в режим ожидания. При этом выбранный уровень мощности сохранен не будет.




3 комментария:

  1. Жаль, что все коты разные. Мой любит пить из больших емкостей. Любимый-это водоем( объем более 2м3),к чашке меньше 5 литров и не подходит. А так устройство интересное , обязательно сделал бы братанчику- британчику.

    ОтветитьУдалить
    Ответы
    1. Эмммм... а что, устройство как то зависит от размера водоема?
      Указанная помпа погружного типа, достаточно мощная...

      Удалить
    2. Мой кот любит стоячую воду, в больших емкостях.Когда жена моет пол, почти наверняка, если зазевается, кот попьет воды и обязательно это ведро опрокинет.За городом у него " блюдечко" 4-х ведерной емкости.
      Куда ему, эту интересную помпу прикрутить.

      Удалить