Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
«Дурак подкидной и переводной» — классика карточных игр! Яркий геймплей, простые правила. Развивайте стратегию, бросайте вызов соперникам и станьте королем карт! Играйте прямо сейчас!

Дурак подкидной и переводной

Карточные, Настольные, Логическая

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Arduino + Растения

С этим тегом используют

Электроника Ardublock Самоделки YouTube Своими руками Вертикальное видео Видео ВК Цветы Фотография Комнатные растения Цветение Садоводство Сад Природа Все
6 постов сначала свежее
20
feeld
feeld
1 месяц назад
Arduino & Pi
Серия Гидропоника

Действительно умная ферма. Часть 4⁠⁠

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

А пока, можете посмотреть видео, в котором я добавил некоторые поясняющие субтитры. Автор не блогер, а только учится и весьма стеснителен в вопросе съемок, так что пока только субтитры, за что прошу простить)

Внешний вид, дизайн, интерфейсы взаимодействия c пользователем.

Внешний вид, я описывал в прошлых статьях, но никак не затронул сенсорный экран который в моем случае резистивный мультитач от Nextion, линейки Intelligence. Оверкилл конечно для фермы, но пока больше мне он никуда не нужен.

Интерфейс собственно там максимально простой, это показания с датчиков и управление реле. Страница системы с кнопкой перезагрузки и статусами подключений к интернету\роутеру и IP адрес веб морды. Мне нужен был базовый интерфейс, поэтому в нём пока нет ключевых функций таких как регуляция PH/EC, температуры, таймеров и так далее. Это совсем не основная задача была и я сейчас в процессе рисования нового интерфейса, который бы удволетворял всем требованиям.

1/3

Я использую Lunacy для проектирования интерфейсов. Скриншоты чисто рабочие, тк я в процессе рисования и изучения данной сферы деятельности.

Ничего замысловатого тоже нет. Мне предстоит продумать систему добавления и редактирования конкретных таймеров на дисплее, посадок и регуляции PH/EC. Последнее кстати весьма не сложно как я думаю с точки зрения UX.

Про второй интерфейс взаимодействия, я уже так же рассказывал в прошлых статьях, это WEB интерфейс и MQTT / Apple Home. Там тоже много ньюансов и проблем, но все в процессе, как только я закончу полноценный новый интерфейс, обязательно поделюсь.

Планы на будущее

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

Действительно умная ферма. Часть 4 Инженер, Arduino, Гаджеты, Электроника, Гидропоника, Растения, Салат, Изготовление, Промышленный дизайн, Самоделки, Своими руками, Мастерская, Пайка, Сборка, Видео, YouTube, Короткие видео, Длиннопост

Лапшичная с дорогими раменами на проводе

И выглядит это пока вот так:

Действительно умная ферма. Часть 4 Инженер, Arduino, Гаджеты, Электроника, Гидропоника, Растения, Салат, Изготовление, Промышленный дизайн, Самоделки, Своими руками, Мастерская, Пайка, Сборка, Видео, YouTube, Короткие видео, Длиннопост

Новая плата управления фермой

На ней я разместил 3 независимых блока питания, 3.3\5 и 12 вольт для питания датчиков, насосов и тд. Но это скорее всего не очень оптимизировано, тк мне думается можно сделать 2 блока, 3.3 вольта и 24 вольта, и через DC-DC на плате уже сформировать нужные мне напряжения для питания всего что необходимо, я в первый раз познаю исскуство проектирования плат, поэтому все может быть тяп ляп, но я в процессе)
На самой плате, уже размещен RTC модуль, коннекторы для экрана, ph/ec сенсоров с необходимыми делителями напряжения, разведена сеть 220V с реле. Возможно стоит предусмотреть возможность перекоммутации напряжений на реле, с 220V на любые другие напряжения которые мне необходимы. Пока не определился. Поэтому заказать плату мне довольно сложно, потому что проект в процессе и пока мне будут ехать платы версии 5.0, я обязательно что то модернизирую и сделаю и 5.1 и 5.2 а то и 6.0...

Новый дизайн, доп функции, расширение.

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

Действительно умная ферма. Часть 4 Инженер, Arduino, Гаджеты, Электроника, Гидропоника, Растения, Салат, Изготовление, Промышленный дизайн, Самоделки, Своими руками, Мастерская, Пайка, Сборка, Видео, YouTube, Короткие видео, Длиннопост

Блокинг концепт

Я понял, что в виде конечного устройства, бак, контейнер, блок с электроникой, все это с кучей кабелей и трубочек - это жуткий геморой для финального пользователя. Поэтому, новый дизайн имеет в себе одновременно и бак и баки для корректоров PH и для удобрений EC, никаких видимых трубочек и кабелей, самое главное, возможность использования различных систем гидропоники. Хотите DWC? пожалуйста. Хотите проточную? Тоже пожалуйста.Частичное затопление? Вас понял, сделано. Капельный полив?Это пока то, что лежит на поверхности и я точно смог бы это реализовать, но конечно впереди много времени проектирования не в блендере. Ну и конечно, аэропоника тут это основной метод, который я предпочитаю.

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

Всё это, я хочу сделать уже в версиях 5.0 - 6.0 и там же где то, попробовать сунуться в OpenSource сообщество (но с простыми решенями, что бы каждый мог повторить)

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

Показать полностью 6
[моё] Инженер Arduino Гаджеты Электроника Гидропоника Растения Салат Изготовление Промышленный дизайн Самоделки Своими руками Мастерская Пайка Сборка Видео YouTube Короткие видео Длиннопост
10
46
feeld
feeld
1 месяц назад
Arduino & Pi
Серия Гидропоника

Действительно умная ферма. Часть 3.2. TDS/EC сенсор. Питание растений⁠⁠

Очередной пост, про мою ферму, да про сенсоры важные. Начну издалека и постараюсь простыми словами.


Зачем вообще мерить EC\TDS и температуру в питательном растворе?

Эти параметры показывают, насколько концентрирован наш раствор. А значит — хватает ли питания растениям или им через чур много и это не усвоится. Почему вообще на гидропонике все быстро растет? Потому что растениям не надо тратить силы и энергию на то, что бы искать все больше и больше ресурсов своей корневой системой и впитывать их из земли, а ещё кислород, его часто не хватает, именно поэтому часто советуют делать всякие подмесы в грунт для его "рыхлости", а в гидропонике мы выдаем все эти ресурсы сразу на блюдечке с голубой каемочкой и вот тут то главное правильно сервировать блюдо!

Действительно умная ферма. Часть 3.2. TDS/EC сенсор. Питание растений Arduino, Электроника, Гидропоника, Растения, Питание, Цветы, Инженер, Гаджеты, Растениеводство, Ботаника, Садоводство, Длиннопост

Нейроарт как вообще в гидропонике то все устроено.


Параметр EC.

EC = Electrical Conductivity (Электрическая проводимость)

→ Показывает, насколько хорошо раствор проводит ток. Измеряется в миллисименсах на сантиметр (мСм/см).
Чем больше солей — тем выше проводимость.

Например:

  • Чистая вода: 0.0–0.05 мСм/см

  • Рассада салатов: 0.8–1.2 мСм/см

  • Клубника: 1.6–2.2 мСм/см

  • Помидоры: 2.0–3.5 мСм/см

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


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


Параметр TDS.

TDS = Total Dissolved Solids
→ Количество растворённых солей в ppm (мг/л). Это лишь приблизительный расчёт из EC:

TDS ≈ EC × коэффициент

В гидропонике чаще всего:

  • 500 шкала — используется чаще всего (NaCl - шкала) в основном в США, Европе, Австралии, самая популярная.

  • 700 шкала — другая, менее распространённая (KCl - шкала) в основном в Азиатских регионах, реже в Европе.

В основном используется NaCl шкала, но это нас и приводит к выводу, что в гидропонике эти шкалы нам в принципе не нужны, что то куда то переводить ещё, неудобно. Поэтому все используют одну стандартизированную единицу - EC.

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


Калибровка

Чем калибруются EC или TDS метры? Да все теми же буферными растворами. Для TDS это как правило 800 ppm, для EC метров - 1413 мк/см и другие (смотри на пределы измерений EC метра). Продаются так же как и для PH метров в порошках или готовом виде.


Как влияет температура?

Температура в этом аспекте, крайне важна. Хотя про неё много кто и забывает. Нет, конечно она не губительна в разумных пределах, но весьма сильно влияет на процесс выращивания растений. Мы не говорим про отрицательные температуры или около нулевые, а так же не берем в расчет температуры в пустыне. Среднестатистические 15-30 градусов для примера нам хватит.

Температура раствора — важнейший фактор в гидропонике. Если раствор слишком холодный или слишком тёплый — корни начинают "забастовку": они просто перестают нормально усваивать питательные вещества. Это как если бы человек ел лёд вместо тёплого супа — вроде есть, но толку мало.

Оптимальная температура для корней большинства растений — 18–22 °C. В этом диапазоне:

  • Кислород хорошо растворён в воде

  • Клетки корней активны

  • Удобрения усваиваются эффективно

Если температура падает ниже 16 °C — корни замедляются, питание поступает плохо. А при 25–28 °C — начинаются проблемы: раствор теряет кислород, возможен корневой гниль, а соли могут вызывать ожоги. И вот тут есть главное преимущество как по мне аэропоники. Раствор разбиваясь на воздушно питательную смесь, вполне себе охлаждает и корни и при этом растения прекрасно усваивают кислород, поэтому фактор насыщения кислородом самого раствора мы можем упустить в моём случае.

Что делать при перегреве раствора? два способа. Снижать концентрацию или понижать его температуру чиллерами или другими способами. Или просто разбавить. Самый простой способ конечно разбавить водой.


Моя система

Конечно, все вышеописанное идеально соблюдается только в лабораторных условиях, весьма сложно поддерживать температуру, особенно охлаждение, или стабильный EC до сотых долей на протяжении всего цикла. Но я хотя бы попробовал к этому приблизится и забегая вперед, у меня что то получилось. За это время не было потеряно ни одного растения из за ошибок или не правильных выводов или действий системы.

Что стоит в моей системе?

В моей системе в данный момент 2 сенсора TDS. Пока не отключал старый, поэтому расскажу и про него.

Действительно умная ферма. Часть 3.2. TDS/EC сенсор. Питание растений Arduino, Электроника, Гидропоника, Растения, Питание, Цветы, Инженер, Гаджеты, Растениеводство, Ботаника, Садоводство, Длиннопост

Вот такой TDS метр у меня стоит, но более не используется для измерений EC(на это значение опирается вся система) а просто выводит дублирующее показание в PPM, новому сенсору.

С ним всё ок и его даже реально откалибровать. Только один ньюанс. Для гидропоники он не подходит чисто технически. У него потолок измерений 1000 PPM (около 1.0 EC) и даже его он показывает с трудом. За то идеален в обратную сторону, там где надо мерить чистоту. Вот тут у него реально нет аналогов за его стоимость. Он конечно может и 5 EC вам показать, только это будут ненадежные данные, тк его невозможно откалибровать, свыше 1 EC у него уже нелинейная интерполяция, проще говоря он становится генератором рандомных чисел. В дальнейшем я его вытащу и сделаю из него прибор для умного проточного фильтра для питьевой воды. Что бы понимать когда менять кассеты и тд.
А поскольку он не подходил то я приобрел вот такой вот EC метр.

Действительно умная ферма. Часть 3.2. TDS/EC сенсор. Питание растений Arduino, Электроника, Гидропоника, Растения, Питание, Цветы, Инженер, Гаджеты, Растениеводство, Ботаника, Садоводство, Длиннопост

Оверкилл для этой системы. Но работает отлично.

у него уже и питание "взрослое" (от 12 до 24 вольт) и калибровки все на борту имеются и измеряет он по правильному, EC а не PPM. PPM это в свою очередь производная от EC и считается программно. и даже крепление на DIN рейку на корпусе есть, подключать же надо строго через делитель напряжения к пину ESP, что впрочем тоже не сложно, подбирается он индивидуально под ваш контроллер.

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

Суть кода 1в1 с PH, только не нужна всякая калибровка, совсем сердитые усреднения и тд. Все сильно проще и ограничивается всего двумя функциями:

float readECVoltage_new() {

int newVal = analogRead(EC_PIN);

// Обновление кольцевого буфера

ecSum -= ecBuffer[ecIndex];

ecBuffer[ecIndex] = newVal;

ecSum += newVal;

ecIndex = (ecIndex + 1) % NUM_READ_EC; 

if (ecIndex == 0) ecFilled = true;

// Вычисление среднего значения как float

int validCount = ecFilled ? NUM_READ_EC : ecIndex;

if (validCount == 0) validCount = 1; // защита от деления на 0

float average = static_cast<float>(ecSum) / validCount;


// Перевод в напряжение

float voltage = (average / ADC_RESOLUTION) * ADC_VREF;

return voltage;

}


float readEC_new() {

float voltage = readECVoltage_new();

float realVoltage = voltage * DIVIDER_RATIO;

float ecValue = (realVoltage / MAX_SENSOR_VOLTAGE) * EC_RANGE;


// EMA фильтрация

if (filteredEC == 0.0f) filteredEC = ecValue;

filteredEC = EC_SMOOTHING * ecValue + (1.0f - EC_SMOOTHING) * filteredEC;


// Перевод в mS/cm и округление до 0.1

float ecMilli = filteredEC / 1000.0f;

ecMilli = roundf(ecMilli * 10.0f) / 10.0f;


logf(LOG_DEBUG, "[EC_SENSOR] EC Voltage: %.3f V (real %.3f V) | EC: %.1f mS/cm",

voltage, realVoltage, ecMilli);


return ecMilli;

}

eadECVoltage_new() — измерение напряжения:

  1. Считывает аналоговое значение с EC-датчика (analogRead) → от 0 до 4095

  2. Обновляет кольцевой буфер последних измерений для сглаживания

  3. Вычисляет среднее значение по буферу

  4. Переводит среднее значение в напряжение (вольты) по формуле:
    voltage = (среднее / ADC_RESOLUTION) × VREF

  5. Возвращает полученное напряжение — это ещё не EC, а просто "что пришло с датчика"

readEC_new() — шаги:

  1. Вызывает readECVoltage_new() → получает среднее напряжение

  2. Компенсирует делитель напряжения, чтобы получить реальное напряжение на датчике

  3. Переводит напряжение в значение EC по диапазону датчика

  4. Сглаживает значение EC с помощью EMA-фильтра (плавное обновление)

  5. Округляет EC до десятых (0.1) и переводит из μS в mS/cm

  6. Логирует результат (напряжение и EC) для отладки

  7. Возвращает EC (в мСм/см) — дальше это значение:

    • передаётся в WebSocket (SENSOR_UPDATE)

    • записывается в лог (tds_log.csv)

    • отображается в интерфейсе

Компенсация температуры для TDS метра.

В моем модуле, уже присутствует температурная компенсация,а в OEM китайском, такой функции нет, поэтому финальное значение надо компенсировать ещё и температурой.

TDS Компенсированный = TDS сырой/ (1 + α × (T - T₀))

формула выглядит вот так. И является довольно простой:

Где:

  • TDS сырой — необработанное (сырое) значение TDS

  • T — текущая температура раствора (в °C)

  • T₀ — опорная температура (обычно 25°C)

  • α — температурный коэффициент для солевого раствора (0.02 — то есть +2% на каждый градус)

Например:

  • Температура: 30°C

  • Сырой PPM = 1000 ppm

TDS Компенсированный = 1000 / (1 + 0.02 × (30 - 25))

= 1000 / (1 + 0.10)

= 1000 / 1.10

≈ 909 ppm

То есть фактически в растворе меньше солей, чем показывает прибор — из-за нагрева. Эта же формула подходит и к EC метрам без встроенной температурной компенсации.

Ну и соответственно, как вы понимаете уже, вместо текущей температуры, в ESP/Arduino и любых других системах, можно просто брать температуру с датчика DS18B20 например и подставлять напрямую в формулу и получать корректное значение EC/TDS.


В завершение. Естественно, вы можете вообще не парится, и заваривать раствор единожды с помощью ручного измерителя TDS\EC и будете правы. Это блажь и излишек. Но мне нравится такого рода автоматизации и упрощение своей жизни.

Спасибо за внимание!

Показать полностью 3
[моё] Arduino Электроника Гидропоника Растения Питание Цветы Инженер Гаджеты Растениеводство Ботаника Садоводство Длиннопост
2
38
feeld
feeld
1 месяц назад
Arduino & Pi
Серия Гидропоника

Действительно умная гидропоника. Часть 3.1 Датчики и сенсоры. PH сенсор⁠⁠

По просьбам трудящихся, я постараюсь сделать это в виде некоего обучающего рассказа что ли. Но конечно не step by step инструкции. Краткие выдержки кода и описание алгоритмов и чего куда вообще совать что бы эти ваши показания получать. Сегодня поговорим о PH сенсорах и моем опыте. Я подразобью на более короткие посты для удобства чтения.

PH Sensor

Я пробовал 2 сенсора PH. от DF-Robot и дешевый из синего маркетплейса.

1/2

Вот такие сенсоры

Ссылки на все я приведу в конце поста.

Сейчас я использую pH-датчик от DFRobot — он отлично подходит для непрерывного мониторинга 24/7. Показания стабильны, со временем не «плывут» (дрейф отсутствует — проверено на практике), а калибровка реализована удобно и просто. Чуть позже покажу, как она устроена на примерах кода.

А вот с дешёвым noname-датчиком всё гораздо веселее. На плате два подстроечных резистора: один, судя по всему, отвечает за калибровку нулевой точки (pH 7.0), второй — за чувствительность. Документации — минимум. Настроить этот модуль так, чтобы он давал стабильные показания, — почти как пройти Super Meat Boy на 100%… и не сломать ничего от сгоревшей пятой точки..

Действительно умная гидропоника. Часть 3.1 Датчики и сенсоры. PH сенсор Инженер, Arduino, Электроника, Гаджеты, Тестирование, pH-фактор, Гидропоника, Аэропоника, Растения, Длиннопост

Небольшая сравнительная таблица, информации мало для сравнения.

Стоит ли покупать дешёвый pH-сенсор? Нет и ещё раз нет. Даже если ваш код написан идеально, это не спасёт от нестабильной работы самого датчика. Через день-два показания могут начать «плавать» — pH то завышается, то занижается на 3–4 единицы без видимых причин. Сенсор просто начинает вести себя непредсказуемо.

И если у вас на такие данные завязана автоматика (например, дозаторы pH- или pH+), последствия будут неприятными: система начнёт вносить корректоры на основе ложных показаний. В итоге — испорченный раствор и потеря времени, так ещё и потраченные впустую корректоры PH.

Сенсоры от DFRobot мне показались гораздо стабильнее и надёжнее. Да, они стоят дороже, но по опыту — это оправданно. Поэтому далее всё что написано, относится к конкретно H-101 сенсору.

Подключение РH.

Подключение pH-сенсора — дело довольно простое. Информация по распиновке обычно указана прямо на сайте производителя или в описании товара (в том числе на AliExpress). Всё, что нужно — подключить выход сенсора к аналоговому входу вашей платы: будь то ESP32, Arduino или любая другая платформа.

Этот конкретный сенсор, судя по данным и практике, выдаёт сигнал до 3.3 В, так что его можно безопасно подключать напрямую к пинам ESP32 — без делителя напряжения. Я так и делаю, и всё работает стабильно. Делитель нужен, только если сенсор выдаёт до 5 В (что бывает у некоторых моделей), а ваша плата работает от 3.3 В. В случае с классической Arduino делитель не нужен, так как она спокойно воспринимает до 5 В на аналоговых входах.

Действительно умная гидропоника. Часть 3.1 Датчики и сенсоры. PH сенсор Инженер, Arduino, Электроника, Гаджеты, Тестирование, pH-фактор, Гидропоника, Аэропоника, Растения, Длиннопост

Подключение.

Калибровка PH.

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

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

В моём случае я использую двухточечную калибровку — по значениям pH 4.0 и pH 7.0, чего вполне достаточно для контроля большинства питательных растворов.

Действительно умная гидропоника. Часть 3.1 Датчики и сенсоры. PH сенсор Инженер, Arduino, Электроника, Гаджеты, Тестирование, pH-фактор, Гидропоника, Аэропоника, Растения, Длиннопост

Буферные растворы для калибровки PH.

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

Далее — всё то же самое, но уже с раствором pH 7.0. После второго нажатия кнопки калибровки сенсор готов к работе.

А вот и фрагмент кода, который у меня отвечает за калибровку pH-сенсора. Он используется при нажатии кнопки калибровки (по pH 4.0 или 7.0):

void setCalPH(float& calValue, int eepromAddr, bool& flag, const char* label) {

bool stable = false;

float stddev = 0.0;

float voltage = readStablePHVoltage(stable, stddev);


String logMsg = String("[Калибровка] ") + label + ": " + String(voltage, 2) + " мВ, отклонение: " + String(stddev, 2);

logMsg += stable ? " — стабильно" : " — нестабильно";

logToWeb(logMsg);

logMessage(stable ? LOG_INFO : LOG_WARN, logMsg);


if (!stable) {

//logToWeb(String("[Калибровка] Напряжение нестабильно при ") + label + ". Попробуйте снова.");

logMessage(LOG_WARN, "[Калибровка] Калибровка прервана: нестабильное напряжение");

return;

}


calValue = voltage;

flag = true;

EEPROM.put(eepromAddr, calValue);

EEPROM.commit();


String confirm = String("[Калибровка] ") + label + " установлена: " + String(voltage, 2) + " мВ";

logToWeb(confirm);

logf(LOG_INFO, "[Калибровка] %s успешно установлена: %.2f мВ", label, voltage);

}

Что делает эта функция:

  1. Считывает напряжение с pH-сенсора и проверяет, стабилизировалось ли оно (внутри readStablePHVoltage).

  2. Если сигнал нестабилен, калибровка прерывается и выводится предупреждение в лог.

  3. Если всё в порядке, сохраняет измеренное значение в EEPROM, устанавливает флаг flag = true, и выводит подтверждение об успешной калибровке.

  4. Используется отдельно для pH 4.0 и pH 7.0, передавая соответствующую метку (label), адрес в EEPROM и переменную для сохранения значения.

  5. Функции logToWeb/logF/logMessage - это обертки для логирования, вместо них вы можете использовать простые Serial.println и тд.


    Функция считывания напряжения для калибровки, выглядит вот так:

float readStablePHVoltage(bool& stable, float& stddevOut) {

const int numSamples = 20;

float values[numSamples];

float sum = 0.0f;

float minV = VREF, maxV = 0.0f;

String rawValues = "[PH] Измерения мВ: ";

for (int i = 0; i < numSamples; i++) {

int raw = analogRead(PH_PIN);

float v = (raw / (float)ADC_MAX) * VREF;

values[i] = v;

sum += v;

minV = min(minV, v);

maxV = max(maxV, v);

rawValues += String(v, 2) + " ";

delay(10);

}

float avg = sum / numSamples;

float variance = 0.0f;

for (int i = 0; i < numSamples; i++) {

// выбрасываем выбросы >500 мВ

if (abs(values[i] - avg) > 500.0f) values[i] = avg;

variance += pow(values[i] - avg, 2);

}

float stddev = sqrt(variance / numSamples);

stddevOut = stddev;

stable = (stddev < 30.0f);

if (!stable) {

logf(LOG_WARN, "⚠️ pH-сенсор нестабилен: σ=%.2f mВ", stddev);

}

// Логи

logMessage(LOG_DEBUG, rawValues);

logf(LOG_DEBUG, "[PH] Среднее: %.2f мВ, Мин: %.2f, Макс: %.2f", avg, minV, maxV);

logf(LOG_DEBUG, "[PH] σ=%.2f мВ → %s", stddev, stable ? "Стабильно" : "Нестабильно");

return avg;

}

Функция readStablePHVoltage используется для получения надёжного и стабильного значения напряжения с pH-сенсора перед калибровкой.

Сначала она делает 20 аналоговых замеров с небольшими паузами между ними. Значения переводятся в милливольты и сохраняются в массив.

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

Далее считается стандартное отклонение (σ) — если оно меньше 30 мВ, сигнал считается стабильным и пригодным для калибровки. В противном случае функция сообщает в лог о нестабильности и отменяет процесс.

Кроме самого результата, в лог отправляется подробная информация: все замеры, среднее, минимум, максимум и разброс значений. Это помогает при отладке и повышает надёжность всей системы.

Измерения PH

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

float readPH() {

static unsigned long lastLog = 0;

float voltage = readPHVoltage();

float phValue = calculatePH(voltage);

phValue = roundf(phValue * 10.0f) / 10.0f;

// Логируем не чаще, чем раз в 10 секунд

unsigned long now = millis();

if (now - lastLog > 10000) {

logf(LOG_DEBUG, "[PH] Напряжение: %.2f mВ, pH: %.2f",

voltage, phValue);

lastLog = now;

}


return phValue;

}

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

float readPHVoltage() {

// 1) Усреднение по N замерам

const int numMeasurements = 30;

float sum = 0.0f;

for (int i = 0; i < numMeasurements; i++) {

int raw = analogRead(PH_PIN);

float v = (raw / (float)ADC_MAX) * VREF;

sum += v;

delay(5);

}

float avg = sum / numMeasurements;

lastRawVoltage = avg;

// 2) Медианный фильтр

medianBuf[medianIdx++] = avg;

if (medianIdx >= MEDIAN_SAMPLES) { medianIdx = 0; medianFull = true; }

int cntMed = medianFull ? MEDIAN_SAMPLES : medianIdx;

// копируем в tmp для сортировки

static float tmpMed[MEDIAN_SAMPLES];

memcpy(tmpMed, medianBuf, cntMed * sizeof(float));

// простой пузырьковый сорт для маленького массива

for (int i = 0; i < cntMed - 1; i++)

for (int j = i + 1; j < cntMed; j++)

if (tmpMed[j] < tmpMed[i]) {

float t = tmpMed[i];

tmpMed[i] = tmpMed[j];

tmpMed[j] = t;

}

float med = tmpMed[cntMed/2];

// 3) Скользящее среднее

movavgBuf[movavgIdx++] = med;

if (movavgIdx >= MOVAVG_SAMPLES) { movavgIdx = 0; movavgFull = true; }

int cntMov = movavgFull ? MOVAVG_SAMPLES : movavgIdx;

float sumMov = 0.0f;

for (int i = 0; i < cntMov; i++) sumMov += movavgBuf[i];

float mavg = sumMov / cntMov;

// 4) IIR‑фильтр

if (isnan(iirVoltage)) {

iirVoltage = mavg;

} else {

iirVoltage = iirVoltage * (1 - IIR_ALPHA) + mavg * IIR_ALPHA;

}

float filt = iirVoltage;

// Логи для отладки

logf(LOG_DEBUG,

"[PH] raw:%.2f mV → med:%.2f → movavg:%.2f → filt:%.2f",

avg, med, mavg, filt);

return filt;

}

Для получения чистого и стабильного сигнала с pH-сенсора я использую многоступенчатую фильтрацию.

Всё начинается с простого усреднения — берутся 30 замеров подряд, и по ним считается среднее напряжение.

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

И в конце — финальный этап: IIR-фильтр (экспоненциальное сглаживание), который делает сигнал максимально плавным, но при этом достаточно быстрым в реакции на изменения. Такой подход позволяет получать надёжные и устойчивые данные, на которые уже можно опираться при расчёте текущего уровня pH или при управлении системой.

Заключение.

Таким образом я измеряю PH своего раствора.
Вот обещанные ссылки на компоненты из этого поста:

https://aliexpress.ru/item/1005001317266554.html?spm=a2g2w.o...

https://aliexpress.ru/item/1005006366896348.html?sku_id=1200...

https://www.ozon.ru/product/komplekt-kalibrovochnyh-rastvoro...

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

Спасибо за внимание! Надеюсь скоро выпущу про TDS/EC сенсор, температурный датчик.

Показать полностью 5
[моё] Инженер Arduino Электроника Гаджеты Тестирование pH-фактор Гидропоника Аэропоника Растения Длиннопост
0
Партнёрский материал Реклама
specials
specials

Сколько нужно времени, чтобы уложить теплый пол?⁠⁠

Точно не скажем, но в нашем проекте с этим можно справиться буквально за минуту одной левой!

Попробовать

Ремонт Теплый пол Текст
12
SYFaren
SYFaren
9 месяцев назад

## Гидропоника на Arduino: выращиваем растения как профи, но без грязи!⁠⁠

Привет! Хотите свежую зелень, клубнику или даже помидоры прямо у себя дома, но дача далеко, а подоконник мал? Тогда гидропоника – ваш выбор! Сегодня мы разберемся, как собрать простую, но эффективную гидропонную систему своими руками, да еще и с автоматикой на Arduino.

**Что за зверь такой – гидропоника?**

Это способ выращивания растений без почвы, когда все питательные вещества поступают прямиком к корням через специальный раствор. Круто, правда?

**Наша цель:** создать умную гидропонную систему с Arduino, которая будет сама поливать растения и включать/выключать свет.

**1. Что нам понадобится:**

* **Ёмкость для раствора (резервуар):** обычный пластиковый контейнер с крышкой – самое то.

* **Горшочки для растений:** подойдут пластиковые стаканчики, только не забудьте проделать дырочки в дне для корней.

* **Насос для раствора (водяной насос):** например, **ULKA Model E Type EP5** (маломощный насос для аквариума).

* **Трубки (шланги):** чтобы раствор добирался от насоса до горшочков (например, силиконовые трубки диаметром 6 мм).

* **Таймер (электронный таймер):** будет командовать поливом (например, **ORBIS T15 Mini**).

* **Датчик уровня воды (поплавковый датчик):** следит, чтобы система не пересохла (например, **DFRobot Gravity: Analog Liquid Level Sensor**).

* **Arduino Uno (или похожая плата):** мозг всей операции (например, **Arduino Uno R3**).

* **Реле (электромагнитное реле):** включает/выключает насос и свет по команде Arduino (например, **Songle SRD-05VDC-SL-C**).

* **Датчик освещенности (фоторезистор):** определяет, когда нужно включить свет, а когда – выключить (например, **GL5528**).

* **Лампа для растений (фитолампа или светодиодная лента):** чтобы растения не грустили без солнышка (например, **фитолампа Mars Hydro TS 600** или светодиодная лента с полным спектром).

* **Провода, соединительные штучки, крепеж:** все, чтобы собрать систему воедино.

* **Питательный раствор для гидропоники:** можно купить готовый или сделать самому (рецептов в интернете полно).

**2. Собираем систему:**

* **Шаг 1:** В крышке резервуара делаем отверстия для горшочков и трубок.

* **Шаг 2:** Устанавливаем горшочки в крышку.

* **Шаг 3:** Подключаем насос к трубкам и опускаем в резервуар.

* **Шаг 4:** Подключаем датчик уровня воды к Arduino.

* **Шаг 5:** Подключаем датчик освещенности к Arduino.

* **Шаг 6:** Подключаем реле к Arduino и к насосу/лампе.

* **Шаг 7:** Заливаем питательный раствор в резервуар.

**3. Код для Arduino:**

// Определение пинов

const int pumpPin = 7; // Пин для насоса

const int lightPin = 8; // Пин для лампы

const int waterLevelPin = 9; // Пин для датчика уровня воды

const int lightSensorPin = A0; // Пин для датчика освещенности

// Порог для датчика освещенности

const int lightThreshold = 500;

void setup() {

pinMode(pumpPin, OUTPUT);

pinMode(lightPin, OUTPUT);

pinMode(waterLevelPin, INPUT);

Serial.begin(9600);

}

void loop() {

// Проверка уровня воды

if (digitalRead(waterLevelPin) == LOW) {

Serial.println("Воды маловато!");

}

// Проверка освещенности

int lightLevel = analogRead(lightSensorPin);

if (lightLevel < lightThreshold) {

digitalWrite(lightPin, HIGH); // Включаем свет

} else {

digitalWrite(lightPin, LOW); // Выключаем свет

}

// Включение насоса на 15 секунд каждые 30 минут

if (millis() % 1800000 < 15000) {

digitalWrite(pumpPin, HIGH);

} else {

digitalWrite(pumpPin, LOW);

}

}

```

**4. Другие варианты гидропонных систем:**

* **Капельный полив:** проще сделать, но не так эффективно.

* **Глубоководные культуры (DWC):** корни прямо в растворе купаются, который еще и кислородом насыщается.

* **Система питательного слоя (NFT):** раствор как ручеек течет по тонкому слою, омывая корни.

**5. Полезные советы:**

* Выбирайте растения, которые любят гидропонику (например, салат, зелень, клубника).

* Следите за pH и концентрацией питательного раствора.

* Регулярно проверяйте систему на протечки и поломки.

* Экспериментируйте с разным светом и питательными растворами.

Показать полностью
[моё] Садоводство Сад Гидропоника Arduino Огород Растения Текст Длиннопост
8
147
feeld
feeld
11 месяцев назад

Куда сливать конденсат из под кондиционера или как я умную ферму собрал⁠⁠

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

Был у меня мобильный кондиционер, но он шумел аки скутер, что являлось фактором нифига себе отвлекающим от удаленной работы. Расположение у него к сожалению, прямо у меня за спиной, что не добавляло тишины. Кто то скажет, почему бы не поставить сплитку, так то оно и так, да только в СПб как будто бы, сплитка пока не особо горит, хотя уже задумываюсь.

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

И вот спустя пару дней наслаждения, кондиционер громко буркнул и сказал мне смотри в инструкцию и читай коды ошибок. Посмотрел, почитал. Слил литров 7 воды, понял что всё это оказывается придется проделывать раз в какое то время, а учитывая влажность пусть и на застекленном, но всё же балконе, видимо придется это делать часто. Благо есть специальное отверстие под шланг, что бы удалять конденсат куда то. Что я и сделал подсоединив и убрав в свободную 5 литровую баклаху из под воды. Каково же было моё удивление, когда я обнаружил, с какой скоростью этот самый конденсат производится. В среднем за 12 часов попеременной работы, по 5 литров. Ладно, думаю. Выливать раз в день канистру, не так уж и сложно, за то переворачивать и отсоединять кондей от патрубков не нужно. Так и забыл, раза 3, прихожу домой, на балконе потоп.

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


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

И вот натыкаюсь я на маркетплейсе, на систему капельного автополива для растений, да ещё и с вайфаем, в экосистеме TUYA, красота вообщем. Была она приобретена для тестирования и последующего использования. Первые тесты прошли успешно, помидорки в количестве 4 штук поливались, и я решил вынести на балкон и подсоединить к этой системе остальные свои растения. Ну и как и ожидалось, такая система питающаяся от 5 вольт USB, явно не сильно мощная и вывезет не безграничное количество растений. Ну и на 15 капельнице, я понял что эффективность уже сходит на нет и просто не додавливает. Но сам эксперимент мне очень понравился, эту систему я буду использовать для других цветов, которые обитают в комнатах.

Куда сливать конденсат из под кондиционера или как я умную ферму собрал Садоводство, Эксперимент, Автополив, Arduino, Сад, Растения, Комнатные растения, Цветение, Огород, Видео, Длиннопост

Вот такая коробочка, протягивала около 10 метров и брала 15 растений.

Подумав, понял что хочу нечто большего и вот чего:
1) Не упираться в мощность устройства, диаметра труб и тд. Максимальную расширяемость. (в разумных пределах естественно)
2) Автоматическое\ручное опустошение емкости для конденсата кондиционера, путём микродисперсного распыления или увлажнения выдуваемого на улицу горячего воздуха
3) Автоматический полив из этой же емкости только нуждающихся в поливе растений.
4) Полная интеграция в умный дом на базе Home Assistance. Так же прокидывание в Apple Home и в Алису.
5) Определение параметров для наилучшего роста растений (сколько нужно света, влажности воздуха, температуры, влажности почвы,
6) Датчик уровня емкости с конденсатом, остановка кондиционера при переполнении емкости или её опустошение.
7) Статистика, всевозможные данные для изучения.
8) Возможность использования различных типов полива (микроджет, капельница, микроразбрызгиватель и тд)
9) Управление светом для досветки растений.
10) Мониторинг расхода электроэнергии, воды.
11) Возможность автоматического добавления удобрения.
12) Управление умными шторами для затенения.
13) Управление кондиционированием\проветриванием.

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

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

Итого, с помощью достанной из закромов ардуино(бедная уна, ждала своего часа 6 лет), модуля wifi на esp, и макетной плате, за пару вечеров, была реализована логика работы датчиков влажности почвы, соленоидных клапанов, уровня воды в 10 литровой канистре ПЭТ и на первых этапах сборки, выглядело это примерно такой лапшей. Собственно как обычно. Логика следующая, ардуино собирает всю информацию с датчиков (влажность и уровень воды в емкости), а так же управляет двуканальным реле и передает всю эту информацию по MQTT уже непосредственно на Home Assistance и наоборот, принимает различные команды(в моём случае управление реле)

Куда сливать конденсат из под кондиционера или как я умную ферму собрал Садоводство, Эксперимент, Автополив, Arduino, Сад, Растения, Комнатные растения, Цветение, Огород, Видео, Длиннопост

радиоэлектронная лапша

Из необходимых для реализации вещей, были дозакуплены ещё лампы Quantum Board на светодиодах от самсунга по 50 ватт каждая.
Остальное было реализовано в моем случае из уже имеющихся компонентов. В наличии были два датчика освещенности от Xiaomi, датчик влажности и температуры от этого же бренда, пару умных розеток, умное реле от Aqara тоже было в наличии и даже установлено на свое место, и всё это уже было прокинуто в умный дом довольно давно.
Из самого дорогого, был приобретен самовсасывающий 3х мембранный насос, на 12 вольт и 8.5 ампер. С возможностью выдачи до 3.5 бар на выходе. (это излишне для меня сейчас, однако всякие аквариумные помпы или насосы не самовсасывающие на 12 вольт я не рассматривал)
Так же была важна тишина работы. Отсюда подобные насосы с голубого маркетплейса за тыщу тоже мимо кассы. Был приобретен вот такой насос. Насколько я понял, это хороший китайский аналог немецкого бренда. Но работает просто замечательно. Вдовесок к нему был установлен редуктор и манометр снижающий давление до 1 бара(но я тестировал и на 2.7, в целом всё хорошо, но есть риск срыва трубок на микрокапельном поливе, поэтому уменьшил до 1)

Куда сливать конденсат из под кондиционера или как я умную ферму собрал Садоводство, Эксперимент, Автополив, Arduino, Сад, Растения, Комнатные растения, Цветение, Огород, Видео, Длиннопост

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


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


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

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

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

И о чудо. наконец то, состояние наполненности канистры с водой. Если она полная, то прийдет уведомление на телефон и кондиционер перейдет в режим вентилятора, до момента пока статус не изменится на "Воды для полива нет, или вода для полива есть" главное не в статусе канистра полная)
В дальнейшем, я буду очень много добавлять функций и модернизировать эту ферму, но на данном этапе выглядит вот так.

Куда сливать конденсат из под кондиционера или как я умную ферму собрал Садоводство, Эксперимент, Автополив, Arduino, Сад, Растения, Комнатные растения, Цветение, Огород, Видео, Длиннопост

Умная ферма на HomeAssistance

Куда сливать конденсат из под кондиционера или как я умную ферму собрал Садоводство, Эксперимент, Автополив, Arduino, Сад, Растения, Комнатные растения, Цветение, Огород, Видео, Длиннопост

Каждое растение кликабельно и содержит в себе popup с краткой информацией о нём.



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

Куда сливать конденсат из под кондиционера или как я умную ферму собрал Садоводство, Эксперимент, Автополив, Arduino, Сад, Растения, Комнатные растения, Цветение, Огород, Видео, Длиннопост

Моя мини ферма.

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

Показать полностью 6 3
[моё] Садоводство Эксперимент Автополив Arduino Сад Растения Комнатные растения Цветение Огород Видео Длиннопост
52
309
saf.f
saf.f
3 года назад
TECHNO BROTHER

Контроллер для теплицы⁠⁠

В прошлом году подвязался изготовить контроллер для мини теплицы (гроубокса). Наконец закончил. Фактически это умное реле с 10 каналами и датчиками. В теории можно использовать где угодно предварительно настроив прошивку.  Осторожно, будет много фото.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Раньше пилил несколько постов с промежуточными этапами. Теперь почти финал.

На борту 10 каналов, из которых 8 для управления постоянным током (4 с шим) и 2 для управления переменным током с детектором нуля. Управление светом(досвет красным), температурой, вентиляторами, ультразвуковым испарителем, автополивом или аэропоникой и т.д. Датчики температуры/влажности AHT10, температуры DS18B20, воды или влажности почвы. Также на борту пищалка, модуль часов реального времени, блютус для управления, резистивный делитель для измерения напряжения на входе.

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

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

С драйверами для управления мосфет было бы идеально, но пока подключение через резистор 100 ом. Так же пытался использовать микросхему ACS712 для измерения силы толка, но что то пошло не так. С помощью ЛУТ перенес на стеклотекстолит.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Почти без косяков. Совсем немного подкрасил и закинул в раствор персульфата аммония.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Очистил ацетоном.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Залудил.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Не знаю зачем сделал эту фото, но пусть будет. Очистил флюс бензином.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Просверлил отверстия.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

И начал готовить детали.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Запаял все.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Показалось логичным использовать разъем для питания процессора с материнской платы. При 10 амперах с ним должно быть все в порядке и удобно подключать дешевый блок питания от ПК. Другой ракурс.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Нужно больше фотографий. Покрыл акриловым лаком на всякий случай.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

Установил плату в подходящий корпус, провел испытания с нагрузкой более 120 ватт, подготовил датчики и нужные мелочи.

Контроллер для теплицы Электроника, Arduino, Своими руками, Хобби, Растения, Комнатные растения, Электрика, Длиннопост, Самоделки, Автоматизация

И наконец фото готового устройства. В таком виде контроллер уехал Сергею. Ни одной кнопки, ни одной лампочки, ничего. Управление командами по блютус. Следующий шаг, это добавление ESP8266 или ESP32 для интеграции в умный дом. Заказ заводских плат в Китае. Добавление экрана и крутилку/кнопки для управления. Использование драйвера для управления мосфет и прочие мелочи.

Мой контакт есть в профиле. В комментариях  можно задать вопросы, высказать критику или внести годные предложения по самоделке.

Показать полностью 12
[моё] Электроника Arduino Своими руками Хобби Растения Комнатные растения Электрика Длиннопост Самоделки Автоматизация
111
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии