Как стать автором
Обновить

Обратный осмос: от ремонта до модернизации, или контроллер ZJ-LCD-F7 от китайских умельцев, и его доработка

Время на прочтение 28 мин
Количество просмотров 31K

Сломался фильтр обратного осмоса …

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

Так вот когда вывозить яму я стал на неделю раньше обычного срока, первое подозрение пало на фильтр — он подключен к водопроводу и канализации, а что он там и когда сливает — никто не знает. Положив трубку слива отработанной воды в тазик, получил и доказательства вины: после открытия крана чистой воды и срабатывания датчика высокого давления, включается клапан промывки на 20 сек, потом он, как и положено выключается, но на 10-15 сек, а потом опять срабатывает и так по кругу пока не наберется накопительный бак. Хотя, его задача — один раз включиться на 18 сек в начале разбора отфильтрованной воды, промыв таким образом мембрану перед ее использованием. Естественно, расход воды при этом увеличился в несколько раз.

Техническое отступление, для не знакомых с обратным осмосом

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

Вода через мембрану проходит довольно медленно - течет тонкой струйкой. Поэтому после мембраны всегда ставят накопительную емкость на 5-10 л, с резиновой диафрагмой, под которую закачан воздух. Под давлением помпы (водопровода) при наборе воды диафрагма сжимается, при разборе - воздух выталкивает воду. Кроме мембраны фильтр содержит входной клапан, входной датчик низкого давления (водопроводного), датчик высокого давления на выходе мембраны, показывающий, что начался разбор отфильтрованной воды, и клапан промывки. Когда срабатывает датчик высокого давления (давление в накопительной емкости упало при разборе воды), открывается входной клапан и включается помпа (если таковая есть). Чистая вода начинает проходить сквозь мембрану в накопительную емкость, а вода с остатками примесей, сливается через ограничитель потока с калиброванным отверстием (300-500 лм/мин в зависимости от производительности мембраны) в канализацию. Кроме того, сразу после срабатывания входного клапана, на 15-20 сек открывается также и клапан промывки, включенный параллельно ограничителю потока, для быстрого смыва застоявшейся перед мембраной воды. Естественно, когда накопительная емкость будет полной - сработает датчик высокого давления, входной клапан закроется и система перейдет в режим ожидания. Если фильтром несколько дней не пользоваться, перед мембраной может заводиться всякая "живность". Поэтому нужно периодически брать пару стаканов чистой воды даже если в этом нет необходимости, чтобы включался клапан промывки. По этой же причине через 3-4 года эксплуатации желательно менять накопительную емкость.

Через какое-то время мембрана вырабатывает свой ресурс (обычно 2-3 года), ячейки увеличиваются и сквозь мембрану начинают проходить растворенные соли более крупных размеров - увеличивается минерализация воды. Чтобы знать когда пора менять мембрану, желательно периодически измерять общую минерализацию. Я, например, для этого приобрел недорогой измеритель "TDS-3". TDS (Total Dissolved Solids) - это общее количество растворенных частиц, то есть общая минерализация. Измеряют ее в миллиграммах на литр (мг/л) или в миллионных долях — parts per million (ppm). Эти единицы близкие по значению и для простоты считаются равными. Для точного определения TDS используется метод испарения - отношение веса оставшегося осадка к весу воды до испарения. Для приближенных измерений используется метод измерения электропроводности воды (именно соли добавляют воде эффект электропроводности). Такие приборы называют еще кондуктометрами (conductivity - электропроводность).

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

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

Ремонт

Ну что же, раз идет перерасход воды - неисправна автоматика. Достаю обтянутую термоусадкой автоматику, разрезаю ее … и сильно удивляюсь (пока первый раз) — автоматика представляет собой жгут соединенных определенным образом проводов. А где же микроконтроллер — 21-й век на дворе! С другой стороны, эта «автоматика» исправно проработала больше пяти лет: может производитель и прав - зачем удорожать изделие.

Собственно схема получилась такая - клапаны открываются через контакты датчиков высокого и низкого давления, соединенные последовательно: датчик низкого давления НР (замыкается при давлении воды на входе); датчик высокого давления НЗ (наоборот, замыкается при отсутствии давления во время разбора отфильтрованной воды). Клапан промывки стоит параллельно ограничителю потока 300 мл/мин и, как потом выяснилось, содержит электронную схему, включающую клапан на 18 сек после подачи питания. Блок питания - обычный выпрямитель, без стабилизатора (без нагрузки 31V, при включенном клапане промывки 27V). Вот собственно схема фильтра: и принципиальная, и гидравлическая (рис. 1).

Рис. 1. Схема фильтра с простой автоматикой

Таким образом, получается, что неисправна электроника, встроенная в клапан промывки. Клапан был извлечен, разобран, срисована схема электроники управления клапаном — схема задержки построена на таймере HA17555 (рис. 2).

Рис. 2. Схема автоматического клапана промывки

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

Но оказалось, что при включении на столе, от лабораторного источника питания — клапан работает как положено: включается при подаче питания на 18-20 сек и выключается до следующей подачи питания. Никакие механические влияния на клапан не заставили его опять перестать работать. Проверка блока питания также результата не дала.

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

Выбор

Поэтому я «психанул» и решил поставить на обратный осмос умную автоматику на микроконтроллере. Сформировал свои требования к умной автоматике:

  1. Контроль входного датчика и датчика высокого давления. Блокировка при отсутствии воды.

  2. В начале разбора чистой воды - включение входного клапана и промывка мембраны 20 сек.

  3. После наполнения накопительного бака - выключение входного клапана.

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

  5. Желательно контролировать количество солей в отфильтрованной воде TDS-метром. При выходе за установленный предел - сообщить о необходимости замены мембраны.

  6. Каким-то образом контролировать время работы разных фильтров и мембраны. Сообщать когда время наработки фильтров будет исчерпано.

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

Первый вариант: электронный контроллер СВ-5

Его (рис. 3) можно приобрести в местных интернет-магазинах. Стоимость эквивалентна 50$. Под фильтры с питанием 24V. Производятся вроде бы в Турции.

Рис. 3. Контроллер СВ-5

Первые 5 пунктов моих требований выполняются. При простое более 7,5 часов должен включить промывку. В комплекте идет только крепежное приспособление и электроды датчика солемера. Тройник, куда вставлять электроды нужно подбирать и покупать самому. Перечень комплектации какой-то неконкретный.

По поводу шестого пункта моих требований - тут есть вопросы. В интернет-магазинах дают только фото выключенного блока. Но нашел видео о работе фильтра с установленным СВ-5 и там видны практически все режимы его работы. Ни в одном из режимов на дисплее часов не выявлено - значит внешний модуль RTC (Real-time clock), при его копеечной стоимости, в СВ-5 не установлен. Возможно, из-за неудобства периодической смены элемента питания RTC. То есть используется только вычислительная мощность микроконтроллера. В то же время, например, в микроконтроллерах AVR, функция millis() возвращает 4-байтовое число без знака. В число такого типа максимально можно поместить 4 294 967 295 миллисекунд, что соответствует примерно 49 дней и 17 часов. Кроме того, существуют библиотеки, позволяющие подсчитывать время более 49 дней - "хоть до второго потопа". То есть считать месяцы для микроконтроллера не проблема. Но тогда для защиты от пропадания электропитания нужно хотя бы раз в сутки увеличивать счетчик отработанных дней в EEPROM микроконтроллера (или внешнем). Тогда можно вести учет дней работы фильтров или мембраны и выводить в каком-то виде на дисплей (в СВ-5 предусмотрено пять шкал для разного количества месяцев наработки от 3 до 36). Правда выдержит ли EEPROM микроконтроллера такое количество циклов перезаписи - это вопрос?

Второй вариант: контроллер обратного осмоса ZJ-LCD-F7

Продается на Aliexpress (рис. 4). Стоимость самого контроллера порядка 30$, с полным комплектом всех датчиков и клапанов - около 50$. Также под фильтры с питанием 24V. Производители LOUCHEN ZM и HaiHuiLai (Китай). Пункты 1, 2, 3 и 5 моих требований также вроде выполняются. По поводу включения при простое (п.4 требований) пару раз в сутки промывки мембраны — непонятка. Только в одном из магазинов написано, что «каждые 6 часов будет открывать электромагнитный клапан промывки, чтобы промыть мембрану RO в течение 20 секунд» (RO - Reverse Osmosis).

А вот к п.6 моих требований здесь кардинально другой подход - считаются не только отработанные дни, но и количество воды, потребленное от водопровода (контроллер комплектуется датчиком потока). В настройках уже указывается не только максимальное количество отработанных дней, но и максимальный объем воды, который должен пройти через входные фильтры, после которого будет выдано предупреждение о необходимости замены. В настройках можно ввести максимальное значение объема воды для 4 групп фильтров.

Рис. 4. Контроллер ZJ-LCD-F7

Дни подсчитываются микроконтроллером скорее всего по тому же принципу, что и в первом варианте. Остается и проблема долговечности EEPROM.

Нужно быть внимательным - точно в таких же корпусах продаются контроллеры расхода воды, но называются ZJ-LCD-М. Основное отличие внешне - дополнительные кнопки "Старт" и "Стоп" и отсутствие проводов подключения электродов солемера.

Для выяснения вопроса об промывке при простое, спросил одного из продавцов: идет ли с автоматикой мануал на английском. Продавец спросил адрес электронной почты и выслал документацию. Но там оказались: текстовый файл (формат .txt) с короткой инструкцией, пару фото товара и мануал какой-то «левой» автоматики с названием LCD-M. Тщательные попытки поискать мануал в pdf-формате в Интернете увенчались успехом. В инструкции действительно указывалось об автоматической промывке через каждые 6 часов. Также там указывалось, что при превышении количества солей свыше 50 ppm, контролер поднимет тревогу зуммером и морганием на дисплее.

Дополнительные сенсоры (датчик потока и TDS сенсор) подключаются по следующей схеме (рис. 5):

Рис. 5. Схема подключения дополнительных датчиков

После раздумий выбираю вариант 2 - полная комплектация при той же цене что и «чистый» контроллер 1-го варианта, плюс учет расхода воды - что особенно для меня важно. Решение принято, товар оплачен.

Как измеряют TDS другие

Но еще до покупки я уже видел один недостаток ZJ-LCD-F7, с которым не хотелось мириться - короткие провода (не более 50 см). Тут все очевидно: раз я покупаю контроллер с дисплеем, значит я хочу контролировать работу фильтра при каждом подходе к нему. И меня явно не вдохновляло при каждом разборе воды залазить на коленях до половины в тумбочку, чтобы посмотреть на текущие параметры контроллера. Выход один — удлинить провода где-то до 1,2 м, чтобы вынести контроллер наружу.

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

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

Наверное, сейчас, в ожидании пока доставят товар, самое время "прошвырнуться" по Интернету и посмотреть - а как там измеряют TDS любители? Поиск показал, что датчики для измерения электропроводности воды можно приобрести даже для плат Arduino. Кроме самого датчика и проводов, в набор входит плата (рис. 6). TDS сенсор может быть просто с электродами из нержавеющего металла (цена такого набора 15-20$), а может быть и более профессиональным, один из электродов которого покрыт платиной и такой комплектуется калибровочными растворами (тогда цена будет 50-75$, судя по цене - это явно не мой вариант).

Рис. 6. Наборы для измерения TDS

В некоторых магазинах дают эту ссылку на описание принципа измерения и принципиальную схему платы. Схема (рис. 7), на предлагающейся плате, содержит DC/DC преобразователь напряжения LM2660M (для преобразования +5V в -5V) для питания остальных элементов, 14-ти разрядный счетчик с генератором CD4060BM, выполненный по CMOS-технологии (для формирования прямоугольных импульсов) и 4 прецизионных усилителя в одном корпусе TL034CD.

Рис. 7. Схема платы, идущей в комплекте с сенсором для измерения TDS

Описания работы схемы нет, но внимательно на нее посмотрев, можно понять основные моменты. На операционные усилители и делитель частоты подается питание +/-5V. Сформированные таким образом прямоугольные импульсы размахом от -5V до +5V подаются на один из электродов TDS сенсора. Сигнал, снятый со второго электрода, и зависящий от проводимости воды, подается на масштабирующий усилитель U3B, затем на однополупериодный выпрямитель U3C, превращающий отрицательный сигнал в положительный, и одновременно на сумматор U3D. Последний складывает сигналы, пришедшие в положительной полярности, с сигналами пришедшими в отрицательной полярности, но преобразованные выпрямителем в положительную. Полученное на выходе сумматора положительное напряжение будет пропорциональным проводимости воды. Все эти преобразования происходят на плате на небольшом расстоянии от TDS сенсора. Полученное таким образом напряжение уже по более длинным проводам подается на аналоговый вход микроконтроллера платы Arduino для измерения. При пересчете измеренного напряжения в ppm, учитываются геометрические размеры электродов сенсора.

Почему на первый электрод подают не постоянное напряжение, а прямоугольные импульсы, да еще и частотой около 1 кГц? Дело в том, что во время измерения, фактически через воду проходит электрический ток, из-за чего происходит поляризация молекул - положительно и отрицательно заряженные ионы стремятся к соответствующим электродам сенсора. При этом вода немножко становится электролитом, что вносит сильную погрешность в измерения. Для устранения эффекта поляризации электролита, измерения выполняют на значительной частоте (около 1 кГц). За короткий период измерения ионы просто не успевают поляризоваться.

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

В самом простом случае (ссылка) радиолюбители обходятся без операционников (рис. 8): два цифровых выхода выдают противофазные прямоугольные импульсы частотой более 3 кГц.

Рис. 8. Простой принцип измерения TDS

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

Особо изобретательные радиолюбители (ссылка) смогли подключить TDS-метр, похожий на мой TDS-3, к плате Arduino, получив таким образом неплохую точность измерения. В этом TDS-метре, по утверждению автора статьи, используется принцип преобразования напряжения в частоту, которую Arduino измеряет и пересчитывает в ppm.

Контроллер обратного осмоса ZJ-LCD-F7

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

Ну что же, для определения принципа измерения TDS, открываем контроллер и смотрим что там внутри (рис. 9).

Рис. 9. Плата контроллера ZJ-LCD-F7

ZJ-LCD-F7 выполнен на микроконтроллере MB95F636K. Логотип производителя в виде прописной буквы F с черточками сверху и снизу. Казалось бы, что может быть проще - по логотипу вычислить производителя. Но на одном сайте указывали, что это Fairchild Semiconductor, на другом - что это Fujitsu Semiconductor, на третьем - Freescale Semiconductor (главное, чтобы на букву F). Ладно, попробуем поискать как для покупки, и посмотрим производителя. На eBay и Alibaba предлагают эти микроконтроллеры (на фото - логотип как у меня) как Fujitsu Original. Действительно - datasheet на MB95F636K у Fujitsu Semiconductor есть. Ну что ж - будем думать, что это Fujitsu.

Рядом с микроконтроллером - кварцевый резонатор на 16 МГц. Память EEPROM используется внешняя FT24C02A. Микросхема HT1622 используется в качестве драйвера дисплея. Дисплей, судя по картинкам на нем, заказной, не универсальный. Для управления клапанами стоит реле JQC-3FF с током контактов 15А и полевой транзистор UT2955. Источник питания +5V собран на понижающем импульсном стабилизаторе MC34063. Под дисплеем находится лист белого пластика, в торце которого в отверстия вставлены светодиоды подсветки (рис. 10).

Рис. 10. Подсветка дисплея

При осмотре монтажа никаких операционных усилителей я не заметил. Чтобы понять принцип измерения, прозвоню куда идут провода от разъема TDS сенсора. Да… Такого я не ожидал - один провод напрямую, другой через резистор, но оба идут на цифровые входы/выходы. Моих знаний и опыта явно не хватает, чтобы понять - как при помощи двух цифровых входов/выходов, подсоединенных к штырям сенсора, измерить проводимость воды! Или микроконтроллер все же не Fujitsu и имеет другую распиновку? Ну что же, придется немного применить метод обратного инжиниринга - по монтажу нарисовать схему контроллера. Или хотя бы обвязку микроконтроллера и входных разъемов. Сказано - сделано. Вот результат (рис. 11).

Рис. 11. Основная часть схемы контроллера обратного осмоса ZJ-LCD-F7

Теперь все стало на свои места - один из электродов TDS сенсора кроме цифрового выхода, все-таки параллельно идет еще и на аналоговый вход (вывод 15). Получается принцип измерения TDS как в простом случае, рассмотренном выше, только здесь измерение проводится только в одну из фаз. Я ошибся, утверждая, что проще не придумаешь - все-таки еще упростили!

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

На дисплее слева вверху должно выводиться значение температуры. В инструкции из Интернета пишут, что это температура воды. Но такого датчика в комплектации нет, как и разъема на плате для него. Может датчик на плате и измеряют температуру окружающей среды? При внимательном осмотре, датчика на плате не обнаружил. Остается последний, но самый действенный способ - под перевернутую плату поднести паяльник и смещая его позицию смотреть на изменение температуры на дисплее. Так и есть - температура резко возрастает при поднесении паяльника под микроконтроллер. Внимательно просмотрев Datasheet, нашел регистр, запросив который можно получить температуру делителя микроконтроллера (как самого горячего участка кристалла). Конечно, приятно контролировать температуру кристалла микроконтроллера, но термокомпенсацией TDS тут "и не пахнет"!

Доработки

Удлиняем провода

Начнем с TDS сенсора - насколько повлияет удлинение проводов на принцип его измерения? Готовим удлинитель из двух отдельных экранированных и изолированных снаружи проводов. Я не стал отрезать разъем от сенсора, а на удлинитель поставил разъемы с обеих сторон. Экраны обеих проводов, со стороны контроллера, через дополнительный разъем, подключил к ближайшему контакту общего провода (рис. 12). Теперь могу оперативно переключать TDS сенсор и через удлинитель, и без него.

Рис. 12. Разъем, заземляющий экраны проводов удлинителя TDS сенсора

Теперь собираем "приспособу" - вместо клапанов подсоединяем лампочки, вместо датчиков - тумблеры, датчик потока через трубочки подключаем к емкости с водой, TDS сенсор опускаем в стакан с водой, ppm которой перед этим померил своим TDS-3. Производим первое включение на столе.

Все вроде клацает как положено. Частота прямоугольных импульсов, подаваемых на TDS сенсор - 0,5 кГц. Но, самое главное - это результаты измерения воды с разным содержанием солей. Я в стакан с TDS сенсором заливал и воду из-под фильтра, проверив содержание солей в ней моим TDS-3, и воду смешанную с водопроводной, в определенной пропорции, чтобы получить разные значения ppm. Причем измерял как с удлинителем, так и без него. Вот результаты:

TDS-3

с удлинителем

без удлинителя

7

1

1

9

3

4

50

50

50

70

96

98

Как видим, какая схема, такая и точность - на уровне индикатора. Но подкупает точность в той точке, где разработчики обещают поднять тревогу после превышения ppm - ровно 50! В принципе, меня это устраивает. И как видим, мой удлинитель тоже вносит довольно незначительную погрешность. Значит можно монтировать, удлинив провода до 1,2 м. Вот так выглядит контроллер с удлиненными проводами (рис. 13).

Рис. 13. Провода удлинены до 1,2 м

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

Колхозим - добавляем режим промывки при разборе воды

Но что это? Как? … Оказывается промывка не включается при разборе чистой воды и срабатывании датчика высокого давления (это мое второе сильное удивление). Она включается только при включении контроллера и потом через каждые 6 часов. Разработчики решили, что мне лучше фильтровать застоявшуюся воду (подумаешь, простояла она больше 5 часов!). У меня шок!

Я это так не оставлю! Я … нет, жаловаться не буду :-), я доработаю схему (на жаргоне это называется колхозить), чтобы п.2 моих требований все же выполнялся. К контроллеру добавляем схему одновибратора с таймером, выполненную на маленькой платке, на микросхемах в smd корпусах, для уменьшения габаритов (см. рис. 14-16). Получилось разводку дорожек выполнить с одной стороны платы.

Рис. 14. Контроллер с установленной платой одновибратора с таймером

Рис. 15. Плата одновибратора с таймером

Рис. 16. Рисунок печатной платы

На рис. 18 показана схема контроллера с добавлением нового узла. Теперь при срабатывании датчика высокого давления по срезу импульса (пропадание уровня в момент замыкания датчика) запускается одновибратор на HEF4049BT, который в свою очередь запускает таймер (ICM7555IBAZ-T) на 18-20 сек. Последний принудительно включит на это время клапан промывки, независимо от сигналов с микроконтроллера. Одновибратор срабатывает только по срезу импульса, то есть при размыкании датчика высокого давления после набора воды - ничего не произойдет.

… А ведь этого можно было достигнуть просто добавив пару строк кода в прошивке!

Бесперебойник

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

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

Первым делом смотрим в каких пределах будет нормально себя "чувствовать" микроконтроллер. Согласно datasheet, для MB95F636K рекомендуемое значение напряжения питания 2,4 - 5,5В. Прекрасно - литий-ионный аккумулятор типоразмера 18650 имеет номинальное напряжение 3,7В. Полностью заряженным он выдаст 4,2В, а минимальное напряжение хоть и указывают 2,5В, но лучше ниже 3,0В его не разряжать - ниже 3,0В он выдаст буквально несколько процентов емкости, но в этом режиме очень велик риск существенной потери емкости. Так что аккумулятор 18650 отлично справится с задачей - нам главное, чтобы при отсутствии электричества микроконтроллер продолжил считать время, даже если при этом потухнет дисплей. Для заряда такого аккумулятора - контроллеров заряда предостаточно. Я выбрал HW-107. Собственно сам контроллер заряда собран на микросхеме TC4056A, а на микросхеме DW01V и коммутаторе FS8205A собрана защита аккумуляторной батареи от перезаряда и переразряда.

Штатный резистор R3 (см. рис 18), определяющий ток заряда, я заменил с 1,2 кОм на 2,4 кОм, перенастроив таким образом устройство на максимальный зарядный ток 500 мА. Резистор R5 я заменил из 100 Ом на 270 кОм, что сместило минимальное напряжения срабатывания защиты с 2,5 В до 3,0 В. Алгоритм работы устройства получился следующий:

  • при отсутствии питания на входе и падении напряжения на аккумуляторе меньше 3,0 В - защита его отключит от нагрузки;

  • при напряжении на аккумуляторе больше 4,3 В - защита его отключит;

  • если подключить аккумулятор с напряжением на нем меньше 3,0 В - зарядный ток будет равен 1/10 от запрограммированного резистором R3 - то есть 50 мА, до достижения напряжения 3,0 В;

  • после достижения 3,0 В - зарядный ток увеличится до 500 мА и зарядное будет работать в режиме стабилизации этого тока до достижения напряжения 4,2 В;

  • дальше устройство переходит в режим стабилизации напряжения на уровне 4,2 В; ток при этом будет постепенно уменьшаться;

  • когда ток станет меньше 50 мА - заряд прекратится; устройство будет следить за напряжением - при его уменьшении опять включится подзаряд до уровня 4,2 В.

Питается зарядка от отдельного сетевого адаптера. К штатному источнику питания контроллера зарядное устройство подключил через диод Шоттки D9 типа 1N5819. Благодаря этому при наличии электроэнергии в сети, диод D9 будет закрыт и не будет влиять на работу контроллера. При пропадании электроэнергии микроконтроллер будет продолжать питаться уже от аккумулятора до момента, когда напряжение на нем упадет до 3,0 В. Если до этого момента электроэнергия появится - счет времени не будет прерван. Дисплей при отсутствии электроэнергии светится не будет и при разборе воды клапаны включиться не смогут. То есть бесперебойник служит только для поддержания хода времени контроллером!

Поместив схему в корпус от неисправного свича, получилась, в прямом смысле слова, вот такая "конструкция выходного дня" - рис. 17. И стоит копейки.

Рис. 17. Бесперебойник

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

Рис. 18. Схема контроллера ZJ-LCD-F7 с доработками

Кронштейн крепления

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

Рис. 19. Самодельный кронштейн

Блок питания я рискнул оставить без изменений: максимальное значение входного напряжения микросхемы MC34063 - 40V, а когда клапаны отключены, блок питания выдает 32V. Время покажет - был ли я прав.

Эксперименты с конфигурацией фильтра

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

Ну что же - раз фильтр уже свое отработал, да и неизвестно живет ли кто в накопительном баке, я решил - гулять так гулять. И пошел оплачивать покупку нового фильтра.

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

Автоматика была переставлена на новый фильтр. Штатный клапан с таймером автопромывки заменил на обычный, купленный с автоматикой и у которого есть даже регулировка величины протока.

Первые эксперименты были проделаны на старом фильтре - без помпы, а остальные - на новом, но с разными мембранами.

И вот результат:

Конфигурация фильтра

Набрано чистой воды, л

Вылилось в канализацию, л

Всего расход воды, л

Скорость потока, л/мин

Время набора накопитель-ного бака

Отношение: чистая/в канализацию

Мембрана 50G, без помпы

6

36

42

0,22-0,25

2 ч 22 мин

1 : 6

Мембрана 50G, с помпой

6

21,5

27,5

0,35-0,4

1 ч 03 мин

1 : 3,6

Мембрана 75G, с помпой

6

12

18

0,73-0,75

0 ч 28 мин

1 : 2

Как говорится, результат - на лицо! Теперь я не только могу контролировать что делает фильтр и сколько воды убегает в канализацию, я еще и добился минимального соотношения между количеством взятой чистой воды и убегающей в канализацию! Да, эксперименты того стоят! Я остался доволен - и строительные дела подтянул, и с автоматикой фильтра разобрался, потратив минимальное время - теперь не только выполняются все мои требования, но и в несколько раз уменьшился слив воды в дренаж!

Инструкция на ZJ-LCD-F7

Теперь я немного сомневаюсь - с этого ли контроллера я в Интернете нашел инструкцию (хотя название совпадает). Или с меня плохой переводчик (мануал был на английском). Или это такой английский у китайских разработчиков. В любом случае не все так работает как я читал в этом мануале.

Поэтому вот короткая инструкция от меня:

Кнопки на передней панели: "Menu", "Set", "Up" и "Down"­­

Кнопкой "Menu" выполняется переключение между режимами:

  • Основной (TOTAL) - накопительное значение израсходованной воды (из водопровода).

  • Настройка коэффициента К (им корректируется правильность работы датчика потока).

  • Значение ресурса 1-й группы фильтров.

  • Значение ресурса 2-й группы фильтров.

  • Значение ресурса 3-й группы фильтров.

  • Значение ресурса 4-й группы фильтров.

Кнопка "Set": удерживанием в течение 3 сек, получаем возможность изменять настройки (поочередно менять значения каждой цифры). Если не продолжать настройку в течение 15 секунд, произойдет автоматический выход на начальный интерфейс с сохранением изменений.

Кнопки "Up" и "Down" кроме увеличения и уменьшения показаний имеют вспомогательную функцию:

  • "Up" - изменение состояния отображения температуры (градусы Цельсия/Фаренгейта);

  • "Down" - переход между состояниями: качество воды и отображение дней, отработанных фильтром.

Основной режим (внизу экрана надпись TOTAL) показан на рис. 20 и рис. 21:

Рис. 20. Основной режим - всего фильтр набрал 253 л

Рис. 21. Основной режим - набираем воду - уже 2 л при скорости 0,76 л/мин

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

Цифры в центре:

в режиме ожидания - количество водопроводной воды в литрах, прошедшей через фильтр за время его работы (накопительное значение; сохраняется при отключении питания);

при промывке или при наполнении накопительной емкости - скорость воды в л/мин.

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

Цифры внизу (переключается кнопкой "Down"):

- значение TDS х10 ppm;

- количество дней, прошедших от начала работы фильтра или после сброса и введения новых настроек. Учет ведется для каждой группы фильтров отдельно - можно посмотреть зайдя в настройки группы. В основном режиме (TOTAL) тоже ведется подсчет дней, отработанных фильтром, но после просмотра оставшегося ресурса для фильтров (даже без изменения настроек), это значение обнуляется. Логики разработчиков по выводу такого хитрого значения я так и не понял!

Температура слева вверху в градусах Цельсия или Фаренгейта (переключается кнопкой "Up": как оказалось - температура кристалла микроконтроллера.

Настройка коэффициента К :

После 3-х секундного нажатия на "Set", можно посимвольно менять множитель К, используемый при расчете скорости. Изначально он был 7,5, я поставил 62. Настраивать довольно просто: закрываем кран на накопительной емкости и, включив разбор воды, в течение минуты сливаем отдельно чистую воду, и ту, что стекает в канализацию. Измерив мензуркой и сложив показания получаем количество воды, прошедшей через датчик потока. Изменяя коэффициент К, добиваемся таких же показаний скорости потока на дисплее. Естественно операцию повторяем многократно, пока не добьемся правильных показаний. Если давление создается помпой, скорость потока будет стабильной. А вот когда используется давление водопровода, нужно быть внимательным - смотреть, чтоб скорость потока была стабильной. Датчик потока довольно чувствительный - сосед откроет кран - вы не заметите, а датчик почувствует!

Ресурс групп фильтров - установка конечного значения :

Устанавливаем значение в литрах, при достижении которого контроллер поднимет тревогу - мол меняйте фильтр. Можно вводить для 4-х групп фильтров. Например, отдельно для фильтров предварительной очистки, отдельно для постфильтра, отдельно для мембраны. Я прикинул сколько в среднем в день использую чистой воды. Например, при потребности 5 л чистой воды в сутки, при отношении чистой воды к слитой в канализацию 1:2 (для моего фильтра), получилось, что в сутки в среднем через фильтр будет проходить 5 + 5 х 2 = 15 л. Плюс расход воды на периодическую промывку: 0,6 л (в моем случае) х 4 промывки в сутки = 2,4 л/сутки.

Умножив предполагаемый суточный расход на 90 дней, получил количество воды для первой группы фильтров - предварительной очистки (менять через квартал). Надеюсь, это поможет мне вовремя менять фильтры, а то частенько просрочка получается. Точно также вводится предельное значение количества воды для постфильтра с минерализатором и для мембраны. Зайдя через время, в режим значения ресурса нужной группы фильтров, увидим, что идет обратный отсчет - выставленное максимальное значение уменьшается на величину накопительного общего значения. Когда останется 50 л - будет поднята тревога.

Для каждой группы фильтров ведется также подсчет дней, отработанных данной группой. Оно будет отображено на нижнем индикаторе в случае переключения его с вывода ppm на дни. Будьте внимательны: после введения новых настроек какой-то группы фильтров, количество дней этой группы обнуляется! Тут все работает правильно - заменил фильтр, ввел новое значение ресурса и автоматом обнулился счетчик дней.

Работа контроллера :

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

Через 4 мин после включения начнется измерение TDS, и будет продолжаться все время. Значение ppm, показанное на дисплее нужно умножать на 10. При превышении значения 5 × 10 ppm, контроллер поднимет тревогу - звуковую (писк зуммером) и морганием подсветки. Пищать через 5-10 секунд перестанет, а вот моргать будет до момента уменьшения значения ниже порога.

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

Особенности фильтра

В принципе, статья посвящена автоматике, и тему качества воды трогать не собирался. Но оказалось, что полный контроль над работой фильтра - это не всегда хорошо. Здесь как раз кстати будет пословица: "Меньше знаешь - лучше спишь". И вот почему.

Еще когда автоматика была подключена к старому фильтру, была выявлена хитрая особенность измерителя TDS: при разборе чистой воды и наполнении накопительной емкости, значение TDS начинает стремительно расти - за несколько минут значение TDS сначала поднимается где-то до 300-500 ppm (естественно, при превышении 50 ppm срабатывает тревога), а потом минут за 15-20 постепенно снижается до реального значения. Но эту особенность я списал на старость и выработку ресурса картриджей фильтра.

Подключив автоматику к новому фильтру, пока проводил эксперименты, набрал приличный запас воды и пару дней фильтр не включал. И вот через два дня увидел, что сработала автоматика по содержанию солей в воде - солемер контроллера показывал около 300 ppm. Взяв немного воды, перемерял с помощью TDS-3 - не триста, конечно, но 75 ppm измеритель показал. Сначала подозрение пало на минерализатор - раньше я ставил минерализатор в непрозрачном корпусе. И когда воду брать через кран с солями, минерализатор добавлял всего несколько единиц ppm. А с новым фильтром поставили минерализатор в прозрачном корпусе, через который видно несколько групп солей разного цвета, величины гранул и их формы. Когда я измерил воду с минерализатора, там было 50-70 ppm. Но после слива с пол литра воды, дальше минерализатор добавлял те же несколько ppm.

Решил продолжить эксперимент, и для чистоты оного, перекрыл накопительный бак и полностью отсоединил минерализатор. То есть проверять будем воду с мембраны, прошедшую через солемер контроллера и постфильтр. После множества замеров, после начала разбора воды, получалось похожее на указанное на рис. 22 (на входе фильтра было 247 ppm, мембрана Filmtek TW30-1812-75).

Рис. 22. Замеры TDS при перекрытом баке и отключенном минерализаторе

Результаты разных замеров немного отличаются, но тенденция остается - в начале разбора воды, с мембраны сначала идет всплеск солей (со сработкой сигнализации), дальше этот всплеск повторяется на выходе (с другими значениями - тут уже меряю не индикатором, а TDS-3), а потом сколько воды не бери - будет от 15 до 20 ppm, в зависимости от количества минералов в водопроводной воде, которое у меня может гулять в широких пределах. Дело в том, что в моем районе к воде из реки, прошедшей все степени очистки (250-350 ppm), подмешивают воду из артезианской скважины (600-750 ppm). Утром может быть 250 ppm, а к обеду - 750 ppm. При этом после фильтра утром будет 14 ppm, а в обед уже 20-25 ppm.

Но как бы там ни было, а всплеск солей сразу после начала разбора воды есть всегда. Хотя где-то через 500-1000 мл уже идет чистая вода. На новом, более производительном, фильтре всплеск солей продолжается меньше минуты. Так что не было бы солемера - спал бы спокойно. Но, с другой стороны, я теперь знаю - солемер не игрушка, а очень полезная вещь, даже не смотря на то, что по точности измерений его можно отнести к индикаторам!

Почему вначале разбора идет всплеск количества солей - для меня загадка: на дефект конкретного экземпляра на спишешь - то же самое наблюдается у двух мембран двух разных фильтров. …Особенность мембраны?…

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

В любом случае, с появлением умных автоматик начинается эра предъявления повышенных требований к самим фильтрам и расходникам к ним

Итоги

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

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

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

Что касается автоматики фильтра, то к достоинствам могу отнести:

  1. После всех доработок - контроллер, все-таки, отвечает всем моим требованиям.

  2. Учет не только дней, но и количества израсходованной воды.

  3. Схема позволяет удлинить провода и вынести дисплей в удобное для наблюдения место.

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

Уважаемые разработчики контроллера ZJ-LCD-F7:

  1. Если я купил фильтр обратного осмоса, значит я готов платить за то, что пью чистую воду. Если я купил контроллер ZJ-LCD-F7 к фильтру, значит я готов за чистую воду платить еще больше. Так почему Вы решили, что я хочу экономить на промывке, при срабатывании клапана высокого давления. Добавьте в алгоритм работы контроллера функцию промывки при разборе чистой воды. В крайнем случае можете сделать ее отключаемой в Меню.

  2. Провода сделайте длиной не менее 1,2 м. Можете не обжимать разъемы - фильтр устанавливают не домохозяйки - мастер откусит провода до нужной длины и обожмет разъемы сам.

  3. Усложните принцип измерения TDS. Хотя бы добавьте плату, описанную выше и устанавливаемую рядом с датчиком, для уменьшения погрешности и увеличения точности (все таки тогда на электроды TDS сенсора подаются уровни размахом не 0/5V, а -5V/+5V). Добавьте также датчик температуры воды, для термокомпенсации TDS. Хочется, чтобы точный замер был не только в точке 50 ppm. На данный момент - измеритель TDS на уровне индикатора.

  4. Комплектуйте контроллер кронштейном для удобного крепления на саморезы.

  5. Не вижу смысла в переключении на нижнем индикаторе, вывода или ppm или количества дней. Ведь значений количества дней несколько: для каждой группы фильтров - свое. Поэтому предлагаю в нижнем индикаторе в основном режиме всегда выводить значение ppm, а в режиме просмотра ресурса определенной группы фильтров - всегда выводить дни этой группы. А переключение этих режимов кнопкой "Down" отключить.

Послушайте меня - и будет вам счастье!

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

Теги:
Хабы:
+14
Комментарии 19
Комментарии Комментарии 19

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн
PG Bootcamp 2024
Дата 16 апреля
Время 09:30 – 21:00
Место
Минск Онлайн
EvaConf 2024
Дата 16 апреля
Время 11:00 – 16:00
Место
Москва Онлайн