1 2 3 4 5 6 7 8 9 10 10/10 9,94оценок: 33

Arduino Mega. Контроллер теплицы. Хроники

Тема в разделе "Теплицы и парники", создана пользователем DIYMan, 05.01.16.

Статус темы:
Закрыта.
  1. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Для меня это как раз неактуально - у меня весь полив капельный, от автоматики, прямо из скважины. Поставить вентури в магистраль - делов всего ничего.

    Впрочем, мы уже выяснили, что незачем делать какую-то отдельную вкладку для настройки подкормок - в этой роли может служить один из каналов полива ;)
     
  2. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Спасибо, глянул - есть почти всё, что надо - кроме ESP-01. Так что один фронт железного тестирования, помимо моего - уже есть ;)

    Я сейчас потихоньку продумываю, как быть с веб-мордой, поделюсь с общественностью мыслями, раз всё равно не спится:

    1. Хочется, чтобы контроллер мог работать как точка доступа (Access Point), чтобы подключаться напрямую к нему;

    2. Хочется, чтобы контроллер мог работать в смешанном режиме (AP + Client), т. е. чтобы можно было как подключаться к нему напрямую, так и через роутер в локальной сети. В этом случае на роутере локальной сети возможна настройка проброса портов в интернет, плюс жёсткое выделение IP-адреса для контроллера теплицы. Соответственно, получаем доступ отовсюду;

    3. Раз речь про веб-морду - значит, помимо приложения под Андроид, контроллер должен уметь отвечать на HTTP-запросы браузера, как взрослого, так и мобильного (т.е. различать User-Agent, выдавая различные странички);

    4. Хочется - AJAX, чтобы выдать один раз страничку с кодом, а потом уже без перезагрузки выдавать ответы в формате JSON запрашивающему.

    Не знаю, есть ли из коробки у Андроида поддержка AJAX в браузере - во взрослых браузерах это есть. В остальном вроде не вижу трудностей кроме того, что объём работы предстоит порядочный. Как итог - хочется получить красиво выглядящую удобную _одностраничную_ веб-морду, которая меняет свой интерфейс в зависимости от действий пользователя (скажем, показывает какие-то вкладки, строит навигацию между разделами и т. п.). Этот подход сильно упростит требования со стороны Меги в части полноценной поддержки HTTP - достаточно будет отзываться на запрос корневой страницы, плюс отдавать ответы в JSON на запрос к ещё одной странице, всё. На всё остальное можно просто плеваться "404 Not Found".

    Пока такие мысли. Завтра, даст бог, закажу ещё раз wi-fi модули, ибо уже давно пора заняться веб-мордой, блютуз можно отложить и на потом (тем более, что ни его, ни wi-fi у меня нет пока).
     
  3. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Хорошие новости - есть ;) Это оченно даже отлично для нас.
     
  4. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Короче, так и не поспал перед работой. Ничего, за рулём высплюсь :)]:aga:

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

    Парсер читает из потока до того момента, пока ему не встретится пустая строка. Т. е. достаточно, по приходу +IPD от модуля ESP8266 вычитать данные до начала собственно запроса, а потом натравить на этот Serial парсер, и он сожрёт остальное. Ну как сожрёт - теоретически должен, в реале - ещё не тестировал на железке, так - побаловался только из монитора порта (там - работает как часы).

    Понятное дело - ещё надо тестировать на реальных запросах от взрослых браузеров: чего они там накидают нам - неизвестно.

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

    В общем, такое вот жрёт:
    Всё, всем до связи, уже будильник прозвонил, зовёт на работу :)
     
  5. Данил117
    Регистрация:
    11.05.13
    Сообщения:
    4.427
    Благодарности:
    3.701

    Данил117

    Живу здесь

    Данил117

    Заблокирован

    Живу здесь

    Регистрация:
    11.05.13
    Сообщения:
    4.427
    Благодарности:
    3.701
    Адрес:
    Россия
    Тема конечно неоднозначная..интересная но не фига не понятная..соовсем. хоть начинай учить програмирование...
     
  6. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Погодите чуть - будет ещё интереснее ;)
     
  7. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
  8. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
  9. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Ребята, пришёл ESP-01, плюс две UNO, плюс датчик давления, плюс DC-DC step down конвертер с 5В на 3,3В, плюс экран ЖК 128х64 - короче, барахла сегодня свалилось много. Вот только нет среди этого барахла датчиком температуры до сих пор :( Меня, по ходу, испытывают на безграничность терпения.

    Но с Wi-FI работать уже можно, тем более - конвертеры питания есть. А логические уровни опущу до 3,3В делителем, как делал это с GSM-модемом. Но, по ходу - придётся мне чего-то разбирать - на макетке места не осталось, провода пока так и не пришли, а вторую макетку заказал только сегодня.

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

    Короче, Добби счастлив. Вот побыстрей бы недельку отработать и - браться за вай-фай, а то как-то действительно без веб-морды скучновато становится
     
    Последнее редактирование: 02.02.16
  10. Данил117
    Регистрация:
    11.05.13
    Сообщения:
    4.427
    Благодарности:
    3.701

    Данил117

    Живу здесь

    Данил117

    Заблокирован

    Живу здесь

    Регистрация:
    11.05.13
    Сообщения:
    4.427
    Благодарности:
    3.701
    Адрес:
    Россия
    Если честно, прочитав пару страниц а еще 7 пробежав чисто по диогонали потянуло в сон. и только больше тумана в голове. меня очень живо интересует эта тема, только тема автоматики а не програмирования..потому как в этом я вообще не понимаю.
    чисто свои мысли, вернее прогнозируемые потребности. теплица будет зимняя, то есть с подогревом. итак что лично мне надо.
    1) контроль и управление температурой. автоматика должна уметь управлять газовым котлом. в идеале.
    2) контроль за влажностью и СО2. умение управлять вентиляцией и в идеале включать распылители для влажности.
    3) летом открывать форточки или закрывать их и включать охлаждение, в зависимости от температуры за бортом.
    4) отслеживать солнце и включать досветку.

    по поливу продаются простейшие релюшки как механические, так и электронные. цены от 300 до 1000 рублей. особо этим не думаю что стоит заморачиваться, хотя хз...пока сильно не вникал в проблему. капельный полив легко работает самотеком, без всякой электроники. важнее я думаю поставить уровень воды в баке полива и автоматическое наполнение.
    и самое главное, вся система должна быть простая, на базовых доступных деталях.
    кстати вентсистема нужна в теплице, хотя бы для перемешивания воздуха для равномерности температуры. не у всех есть возможность правильно расположить ее по сторонам света.
     
  11. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Эта тема требует вхождения в неё, не всё так просто. Это если бы вас вместо того, чтобы подать кусок хлеба - заставили сначала молоть зерно, потом просеивать муку, потом - заводить опару - ну вы поняли ;)

    Как я вам могу объяснить, что это из себя представляет? Вот - два коротеньких видео: https://www.youtube.com/playlist?list=PLky0v6EmdStCQi3XgBMVkbZeycrIpZnW_

    Как вы можете посмотреть/пощупать, что это такое? Ну как минимум - вам нужен микроконтроллер Arduino Mega, вы должны уметь закачивать в него прошивки с помощью Arduino IDE. То есть определённый порог вхождения всё-таки есть.

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

    Я вам уже писал в смежной теме, на что я делаю упор: прежде всего - на удобство использования. Чтобы вам не надо было разбираться в программировании, чтобы вы не блуждали в многостраничных меню на маленьком LCD-экране, чтобы просто включили - и пользовались, в конце концов. Чтобы зашли из браузера - и увидели то, что сейчас происходит в контроллере: статистику там, настройки и т. п. Чтобы зашли со смартфона - и тоже смогли включить/выключить тот же полив, если вам так захотелось. Чтобы отправили СМС с командой - и контроллер послушно её выполнил.

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

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

    Надеюсь, в сон вас не вогнал ;) Так что если захотите немного войти в тему - то советую всё же прочитать первые страницы, чтобы понять, о чём идёт речь. А если втянетесь, то можете даже скачать отсюда прошивку вместе с конфигуратором: https://github.com/Porokhnya/GreenhouseProject

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

    Вот разработкой такой коробочки я сейчас и занимаюсь ;)
     
  12. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Ок, вы обрисовали некое требование. Давайте его формализуем - мне, как программисту, так будет понятней. Контроль за влажностью - что это? Попытайтесь мне рассказать, что вы под этим понимаете. Я могу понимать совершенно по-другому, и от этого разнопонимания результат может быть диаметрально противоположным.

    Я - "за" написать модуль управления влажностью. Мне лишь нужен формальный набор требований, правил, зависимостей и действий, которые надо предпринимать. Например - вас интересуют граничные значения (если влажность меньше чем - то сделать то-то; если влажность больше чем - другое.) или вхождение в диапазон (если влажность между тем и тем)? Вас интересуют простые действия, или сложные зависимости? По-другому - что будет на том конце провода? Достаточно ли включать реле, например, или - надо каким-то хитрым образом отправить какой-то железке набор команд?

    Я с удовольствием займусь модулем контроля влажности, если уважаемая общественность обрисует мне суть проблемы лицом к лицу, так сказать. Я просто не владею всей полнотой требований к этому самому контролю влажности - я его никогда не контролировал, строго говоря. Так что давайте формализуем наши требования ;)
     
  13. Данил117
    Регистрация:
    11.05.13
    Сообщения:
    4.427
    Благодарности:
    3.701

    Данил117

    Живу здесь

    Данил117

    Заблокирован

    Живу здесь

    Регистрация:
    11.05.13
    Сообщения:
    4.427
    Благодарности:
    3.701
    Адрес:
    Россия
    Про влажность воздуха я имел ввиду. 65-70% не выше и желательно не ниже. иначе грибок. зимой этот вопрос можно решить просто подмешивая воздух с улицы, влажность зимой максимум 25% а вот летом проблема, у меня пока у самого нет простого решения вопроса.
    и насчет удаленного доступа. честно говоря пока не догоняю для чего эта фишка? по мне так проще и логичнее научить контролер все делать в автоматическом режиме. для чего мне знать температуру в теплице находясь в другом городе к примеру? намного лучше если контролер сам ее будет поддерживать в заданном вами режиме. любое растение растет при определенной влажности и температуре и она практически постоянна..допускается только 12 часовое колебание и очень редко понижение при цветение и плодоношении. но это опять же вы должны определить, что пора мол. вряд ли вы планируете оснащать камерами теплицу..хотя в принципе это неплохая мысль. даже чисто посмотреть, кто ворует ваши помидоры:)] .
     
  14. Данил117
    Регистрация:
    11.05.13
    Сообщения:
    4.427
    Благодарности:
    3.701

    Данил117

    Живу здесь

    Данил117

    Заблокирован

    Живу здесь

    Регистрация:
    11.05.13
    Сообщения:
    4.427
    Благодарности:
    3.701
    Адрес:
    Россия
    пока на том конце черная дыра:aga: но ничего, я быстро учусь, тем более желание есть. :|:
     
  15. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Вы со смартфона такси заказывали? Удобно? Так почему со смартфона контроллером не порулить - настраивать, как вам нужно? Этот момент, пожалуй, ключевой. Я не хочу в двадцать первом веке обходиться одними LCD-экранами прямо на коробочке, если есть нормальный вариант визуального контроля через экран смартфона, например.

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

    Впрочем, требования у всех разные. Я уже высказывался выше, что я прежде всего делаю так, как считаю разумным. Что получится на выходе - посмотрим.

    Про влажность: ко мне сегодня пришёл датчик DHT22, можно получать параметры влажности. Ну а получить - это уже полдела, вторая половина - это по показаниям эту влажность контролировать. К сожалению, вы никак не сможете этот процесс увидеть на текущий момент, не имея на руках микроконтроллера Arduino Mega.

    Я ведь тоже делаю вещь для своих нужд, как вы могли заметить ;) Если хотите свои специфические нужды - вас всё равно придётся как-то участвовать в обсуждении: словом ли, делом - что ближе. Влиться и вникнуть в вопрос - всё равно рано или поздно придётся, хотя бы потому, что захочется пощупать - как оно в железном виде-то работает?

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

    Так что, вполне возможно, что если дело не терпит отлагательств - посмотреть готовые решения на рынке. Выбор - за вами.
     
Статус темы:
Закрыта.