Всем доброго времени суток !
И так предыстория данного устройства...
Звонит мне мой дядя и говорит что купил и поставил у себя возле магазина автомат по продаже очищенной воды, люди живущие в регионах с плохой питьевой водой знают такие автоматы. Я и сам часто покупаю воду в таких автоматах, так как наша вода "пахнет" сероводородом и пить ее то еще удовольствие.
Так вот, купил мой дядя это автомат по весне, жары особой не было, люди стали брать воду по тихоньку, вроде дополнительный доход пошел. Но вот наступило лето, дядя живет в сельской местности и полив огородов "не со своей скважины" там очень актуален в огородный сезон, что сказывается на давлении в центральном водоснабжении. Данный аппарат имеет систему фильтров каждый со своими свойствами и для того что бы вода через них шла с достаточной скоростью для заполнения основной емкости от куда апарат и разливает воду, нужно нормальное давление водоснабжения. Тут начались "костыли" с работой автомата, так как воду забирали быстро, а быстрого наполнения основной емкости не было. Выход как казалось нашелся быстро, был куплен насос для повышения давления и подключен ко входу водоснабжения автомата. Все бы не чего, но возник ряд проблем в этом решении, во первых насос греется и оставлять без присмотра его нельзя, во вторых нет контроля уровня который бы отключал насос при наполнении емкости и включал когда уровень падал до минимума, в третьих может так получится что воды и вовсе не будет на входе и насос будет работать на "сухую". Вроде как в самом автомате что то предусмотрено для автоматического наполнения, но связать его с насосом я не могу, так как живем мы далеко друг от друга и попасть в ближайшее время я туда не могу, а решить проблему нужно, человек устал сидеть возле него и качать воду, следить за насосом и т.д.
Ну что идем на всеми нами любимый али и закупаем все необходимое для девайса.
И так нам понадобятся:
- Ардуино про мини - 1 шт.
- Датчик уровня - 2 шт.
- Датчик расхода жидкости - 1шт.
- Датчик температуры DS18B20 - 1 шт.
- Дисплей 1602 - 1 шт.
- Мембранная клавиатура 4х1 - 1 шт.
- Твердотельное реле - 1 шт.
- Светодиоды зеленый и красный, оптопары, транзистор, реле, провода и прочая мелочевка.
Принципиальная схема имеет такой вид.
Для управления насосом я предусмотрел дублирования сигнала через реле и напрямую от транзистора для управления твердотельным реле. Твердотельное реле вроде брал с запасом по мощности для насоса, но это китайцы и хз че они туда засунули. По проекту само твердотельное реле поселилось в отдельной коробочке с радиатором,
а на самом контроллере есть два выхода, от встроенного малогабаритного реле "сухой контакт", на тот случай если придется все таки ставить пускатель и 5 вольт для включения "твердотелки".
Теперь не много о логике работы сего устройства. Самый главный ньюанс, это работа датчиков уровня, они устанавливаются так что бы при наполнении поплавок всплывал в верх отходя от самого основания датчика, то есть при достижении заданного уровня сигнал с датчика пропадал. Такое решения было мной принято не зря, так как при обрыве провода контроллер просто будет думать что бак полный и не включит насос, мы помним что основная задача это минимальное присутствие человека, то есть приехал утром посмотрел на автомат, все ок, поехал домой, иначе вода пойдет через край, а это не нужно.
После включения контроллера в сеть идет опрос датчика температуры и если датчик поврежден или не подключен, то на экране появится сообщение что с сенсор не найден, загорится красный светодиод и на это контроллер далее работу не выполняет. Если с ним все ок, то контроллер тоже об этом сообщит
и перейдет на основной рабочий экран.
В верхней строке отображается температура двигателя насоса, а ниже температура отключения при нагреве, кнопками - и + можно это значение изменить. Максимум установить можно 100 градусов. Далее если сработал нижний уровень, то на экране в конце верхней строки появится символ " ^ " и начнет мигать зеленый светодиод, включится насос, бак начнет наполнять пока не сработает верхний уровень и насос выключится. Если в течении 10 секунд после включения насоса на контроллер не начнут поступать импульсы с датчика расхода воды, контроллер выключит насос и стане в аварийный режим, при этом на экране появится соответствующее сообщение.
Если нажать кнопку с цифрой "1", то произойдет сброс аварии, появится рабочее меню на экране и контроллер опять включит насос, и так же если в течении 10 секунд не поступят импульсы с датчика воды то остановится насос, появится аварийное сообщение, такая логика работы будет после каждого нажатия на кнопку "1" во время аварии "сухой ход".
И так, все у нас хорошо, датчик температуры исправен, насос работает, импульсы с датчика воды идут и контроллер следит за температурой двигателя. Как только будет достигнута максимальная установленная температура нагрева насоса, контроллер остановит его, на экране загорится в первой строке значок снежинки " * ", красный светодиод начнет быстро мигать и контроллер будет ждать пока остынет насос.
Режим ожидания снижения температуры насоса.
После снижения температуры до нормы, насос будет запущен снова, пока емкость не будет наполнена до нужного уровня операции будут повторятся.
Для настройки порога включения, в меню есть такой пункт как "гистерезис" это разница между минимум и максимумом значения температуры. Что бы по ошибке не задрать температуру включения выше температуры отключения я прибегнул к такому решению.
Если температура отключения будет 60 градусов, а гистерезис будет равен 10, то насос включится когда остынет до 50-ти градусов.
Кнопкой с цифрой "1" во время работы или простоя контроллера в штатном режиме можно переключать меню между пунктом настройки температуры отключения и гистерезисом, кнопками - и + менять их значение.
В собранном виде устройство выглядит вот так (без подключенного твердотельного реле).
Лицевую панель печатал на 3D принтере о нем расскажу в позже, печатную плату делал на ЧПУ станке CNC 3018, о нем так же в следующих статьях. Программа написана в среде визуального программирования FLprog, о ней я рассказывал ранее.
Всем спасибо кто дочитал статью до конца, если будут вопросы всегда готов на них ответить.
Всем хорошего настроения))).