Очистка воды с Arduino

ardusolar
Offline
Зарегистрирован: 02.08.2016

Здравствуйте!

Ищу исполнителя на следующий интересный проэкт (иллюстрация внизу)

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

Автоматический режим - чередует фильтрацию и очистку:

Фильтрация: как только заряд батарей достигает установленного уровня, насосы прокачивают воду через фильтр, наполняя бак, до тех пор пока 1) уровень заряда упадет ниже определенного уровня или 2) бак будет наполнен.

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

Ручной режим:

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

Детальное описание процедуры:

Автономный режим (фильтрация + очистка):

  1. Устройство проверяет заряд батарей, если он выше чем 90%, включает фильтрацию;

  2. Главный насос под давлением прокачивает воду через фильтр и заполняет 250 л. бак;

  3. Потребители берут очищеную воду из бака (23 л) через кран;

  4. Если 250 л бак заполняется полностью, излишняя вода перекачивается в 900 л бак;

  5. Система выключается либо когда 900 л бак заполнен и / или батареи приближается к 20% глубины разряда; переходит в ждущий режим до наступления заката и заряжает батареи

  6. После заката (напряжение от солнечных батарей падает до 0) начинается цикл очистки - главный насос прокачивает воду в обратном направлении (из чистого 250 л бака через фильтр) в течение 10 минут;

  7. После того, как цикл очистки выполняется, устройство переходит в режим ожидания до следующего дня;

  8. Система создает едневный отчет создается с данными, собранными каждую минуту работы.

Ручной режим (фильтрация):

  1. Устройство проверяет заряд батарей, если он выше чем 80%, включает фильтрацию;

  2. Главный насос под давлением прокачивает воду через фильтр и заполняет 250 л. Бак;

  3. Если 250 л бак заполняется полностью, излишняя вода перекачивается в 900 л бак;

  4. Система выключается либо когда 900 л бак заполнен и / или батареи приближается к 30% глубины разряда; система переходит в автоматический режим.

Ручной режим (очистка)

  1. главный насос прокачивает воду в обратном направлении (из чистого 250 л бака через фильтр) в течение 10 минут;

  2. После того, как цикл очистки выполняется, устройство переключается в автоматический режим;

  3. Система создает едневный отчет создается с данными, собранными каждую минуту работы.

Входы:

1. Цифровой вход - Подающий насос, состояние On / Off

2. Цифровой вход - Главный насос, состояние On / Off  (защита от перегрева)

3. Аналоговый вход - Состояние заряда батареи.

4. Аналоговый вход - Давления потока очищеной воды

5. Аналоговый вход - Проводимость грязной воды 

6. Аналоговый вход - Проводимость  очищеной воды

7. Термопара А - температура окружающей среды

8. Термопара Б - температура фильтра

9. Термопара В - температура чистой воды в баке (250 л)





Выходы:



1. Цифровой выход - Вкл/ Выкл главный насос и контроллер.

2. Цифровой выход - Вкл/ Выкл подающий насос.

3. Цифровой выход - Открыть/ Закрыть электромагнитный клапан очистки

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

Добрый день!
Вам нужно готовое устройство, или достаточно описания и программной части?

StudioGippopotam@gmail.com

ardusolar
Offline
Зарегистрирован: 02.08.2016

Здравствуйте, спасибо за комментарий,

"Железо" есть, нужен скетч

Алексей

 

vvadim
Offline
Зарегистрирован: 23.05.2012
Onkel
Offline
Зарегистрирован: 22.02.2016

Мой адрес ydom@mail.ru

пара текущих вопросов

 

не увидел индикатора режима работы / аварий. Они не нужны? Отображаются на экране пк?

куда сбрасываются отчеты? Если каждую минуту, то 1440 отчетов  - оперативки (да и eeprom) не хватит.

Все параметры задаются жестко при программировании? Не нужно сделать возможность переназначить их, например, через терминал?

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

 

ardusolar
Offline
Зарегистрирован: 02.08.2016

Onkel,

вы правы, должен быть индикатор работы и аварий. Замысел управлять системой через контроллер Arduino, подключенный к пк. Все отчеты сохраняются на пк. Было бы полезно менять параметры (напряжение батарей и т.д.) - как это лучше реализовать? Мы думали если нужно изменить параметры, просто обновим скетч через пк.

Что вы имеете в виду "..код и на честном С, без ардуиновских костылей"?

Спасибо,

Алексей

 

 

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

ardusolar пишет:

Было бы полезно менять параметры (напряжение батарей и т.д.) - как это лучше реализовать? Мы думали если нужно изменить параметры, просто обновим скетч через пк.

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

Управлять подобным устройством через терминал - глупо и неудобно.

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

ardusolar, сейчас важнее знать, какое оборудование у вас есть.

Onkel
Offline
Зарегистрирован: 22.02.2016

ardusolar пишет:

Onkel,

вы правы, должен быть индикатор работы и аварий. Замысел управлять системой через контроллер Arduino, подключенный к пк. Все отчеты сохраняются на пк. Было бы полезно менять параметры (напряжение батарей и т.д.) - как это лучше реализовать? Мы думали если нужно изменить параметры, просто обновим скетч через пк.

Что вы имеете в виду "..код и на честном С, без ардуиновских костылей"?

Спасибо,

Алексей

Через "Обновить скетч" можно, но лучше сделать прием команд по usb c определенной дуракоустойчивостью, управлять можно через терминал (например, это дешево (бесплатно) и сердито) или написать программу - конфигуратор, опять же на каком- либо С для пк или даже на ардуиновском wiring/proceccing.

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

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

ardusolar
Offline
Зарегистрирован: 02.08.2016

Система стоит где-нибуть в поле, Arduino подключен к пк, пк подключен к сотовому модему.

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

Оборудование:

1. Arduino UNO  *2

2. Arduino Data логгер  - Adafruit

3. Velleman VMA05 General purpose INPUT and OUTPUT shield for Arduino

4. Ethernet Shield W5500

5. Твердотельное реле * 4

6. Датчики тока 5A * 3

7, HONG111 MAX6675 Module + K Type 3. 0- 5. 5V Термопара * 3

Если нужно дополнительное оборудование, докупим.

Спасибо,

Алексей

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

ardusolar пишет:

Система стоит где-нибуть в поле, Arduino подключен к пк, пк подключен к сотовому модему.

Для каких целей, кроме отправки данных используется ПК?

Не рассматривали вариант изготовления самодостаточного устройства?

ardusolar
Offline
Зарегистрирован: 02.08.2016

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

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

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

ardusolar пишет:

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

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

Хм...

Тоже наверное варинт, но тогда лучшим выходом будет написание GUI-приложения под операционку, установленную на ноутбуке, для управления системой.

p.masyukov
p.masyukov аватар
Offline
Зарегистрирован: 14.11.2015

p.masyukov - skype

можно обсудить если со стоимостью определились.

Onkel
Offline
Зарегистрирован: 22.02.2016

ardusolar пишет:

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

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

если можете связать ноуты в vpn или можно через teamView- pocketView, то можно управлять через простое приложение под винду, вот пример того что я делаю для управления под винду, ну назовем это конфигуратором и индикатором состояний