Платформа Адруино подходит не только для небольших проектов в радиолюбительстве как многие считают. С ее помощью в домашних условиях можно создать устройства для выполнения других задач более интересных задач. Например, создать ирригатор, обеспечивающий автоматический полив растений. В этом случае датчик влажности будет сам сообщать о необходимости запуска полива. В то же время ирригатор позволит поддерживать требуемую влажность нескольких растений, а владельцы дома избавятся от рутинной необходимости делать это самим или просить кого-то во время разъездов.
Очевидно, что платы Адруино для сборки будет недостаточно. Для работы потребуется подготовить следующие компоненты:
Для тестирования прибора и последующей эксплуатации также потребуется одно или несколько растений либо в горшках, либо вам придется перед этим их посадить. Единственное, о чем стоит помнить — земля в них должна быть сухой. Также не лишним будет приготовить четырёхразрядный индикатор со шлейфом, который облегчит индикацию.
В комплекте с датчиком поставляются дополнительные элементы, такие как микросхема, щуп (втыкается в почву для измерений) и соединительные провода.
Если сенсор будет работать в отличных от рекомендуемых условиях, необходимо позаботиться о дополнительной защите микросхемы и контактов — исключить попадания на них воды или грязи. Решить эту проблему можно с помощью простого лака для ногтей или жидкой изоленты.
Советум прочитать: дополнительный материал о том, как сделать автополив для комнатных растений своими руками.
Чтобы получить в распоряжение готовый для настройки ирригатор, потребуется выполнить следующие действия:
Теперь ирригатор собран и потребуется провести его дополнительную настройку.
Рекомендуем также узнать как делается умная теплица на Ардуино, чтобы автоматизировать процесс полива не только дома на и в саду.
На датчике будут отображаться значения, которые напрямую связаны с кислотностью земли. Соответственно, перед запуском автополивщика необходимо выполнить простую калибровку. Она проводится таким образом:
Выше была предложена система для одного горшка. На практике, автополив на Адруино эффективнее применять для нескольких растений. Для этого к Адруино можно подключить дополнительные насосы и сенсоры влажности. Однако можно поступить намного проще. В поставляемом с насосом шланге можно сделать дырочки с учетом расстояния, на котором расположены растения. В полученные отверстия можно воткнуть стержни простых ручек. Результат получится примерно такого вида:
Часто в помещениях растения в горшках располагают на подоконнике одним рядом. Это облегчает задачу, поскольку трубка крепится к горшкам таким образом, чтобы распределить выводы с водой по одному на растение. Единственное — с таким решением, настройка автоматического полива выполняется с учетом одного растения. Если горшки более-менее одинаковые по габаритам, скорость высыхания в них почвы должна быть равной. Как вариант, можно совместить оба способа масштабирования, что позволит поделить всю растительность на примерно одинаковые по габаритам горшки.
Советуем прочитать: переходите по ссылке, если хотите узнать о бюджетном способе как подключить датчик влажности почвы к Ардуино.
Чтобы заставить скетч заработать, потребуется предварительно загрузить и установить библиотеку QuadDisplay2, позволяющую работать с экраном. Она доступна на ресурсе Github по адресу: https://github.com/amperka/QuadDisplay2.
Исходный код программы ирригатора выглядит следующим образом:
// Добавление библиотеки дисплея
#include "QuadDisplay2.h"
// переопределяем пина насоса
#define PIN_NASOS 4
// пин с подключенным датчиком
#define PIN_HUM A1
// мин влажность, измеренная на этапе калибровки (указываются в аналоговом значении до 1023)
#define MIN_HUM 211
// оптимальная влажность
#define MAX _HUM 715
// периодичность полива 180 секунд
#define TIME_PERIOD 60000 * 3
// переменная для хранения показаний влажности почвы
unsigned int hum = 0;
// предыдущее время полива
unsigned long previousTime = 0;
// передаем CS пин
QuadDisplay disp(9);
void setup(void)
{
// запуск дисплея
disp.begin();
// пин насоса в режим выхода
pinMode(PIN _POMP , OUTPUT);
// отображаем на дисплее 0
disp.displayInt(0);
}
void loop(void)
{
// снимаем текущее показание датчика влажности
int humCurrent= analogRead(PIN _HUM);
// сверяем показания влажности с предыдущим значением
if(humCurrent != hum) {
// сохраняем текущие показания влажности
hum= humCurrent;
// отображаем измеренное значение на дисплее
disp.displayInt(humCurrent);
}
// если пришло вермя полива и влажность ниже оптимальной, то запускаем насос
if ((previousTime == 0 || millis() - previousTime > TIME_INTERVAL) && humidity < MIN_HUMIDITY ) {
// включение насоса на 2 секунды
digitalWrite(PIN_NASOS, HIGH);
delay(2000);
// выключаем помпу
digitalWrite(PIN_NASOS, LOW);
// запоминаем предыдущее время проверки полива
previousTime = millis();
}
}
На предложенном видеоролике можно увидеть, как работает автополивщик Адруино:
Когда автополив для комнатных растений будет настроен и готов к работе, следует воспользоваться следующими рекомендациями:
На самом деле, существует множество модификаций автополивщика на Адруино. Отличаются они между собой дополнительными возможностями и особенностями конструкции. Тем не менее, принцип их работы практически одинаков — программа считывает данные с датчика влажности и запускает водяную помпу, если обнаруживает их минимальное значение. Затем насос работает до того момента, пока датчик не покажет данные, соответствующие максимальным показателям.
В процессе сборки не должно возникнуть трудностей, однако предварительно следует постараться обезопасить датчик влажности. Предложенное программное обеспечение протестировано и после калибровки не нуждается в дополнительных настройках.