Оглавление:

Ирригатор для растений Arduino, без кода: 11 шагов
Ирригатор для растений Arduino, без кода: 11 шагов

Видео: Ирригатор для растений Arduino, без кода: 11 шагов

Видео: Ирригатор для растений Arduino, без кода: 11 шагов
Видео: Автополив растений на Arduino. Железки Амперки #15 2024, Июль
Anonim
Image
Image
Робот Макияж
Робот Макияж

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

Шаг 1: макияж робота

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

Мы не хотим поливать растение ночью, поэтому датчик освещенности проверяет, днем ли это.

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

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

Плата Iskra Neo (Arduino Leonardo) управляет всеми модулями.

Шаг 2: Сборка электронных модулей

Сборка электронных модулей
Сборка электронных модулей

Используемые модули:

  • Плата Iskra Neo (Ардуино Леонардо)
  • Щиток щита
  • Датчик влажности почвы (x2)
  • Датчик освещенности
  • Светодиодный модуль (x2)
  • Насос
  • Настенная розетка (6-9 В постоянного тока)

Обратите внимание на схему питания:

  • Используйте перемычку, чтобы шина V2 на щите слота использовала источник питания Vin (напрямую от вилки)
  • Поместите модуль MOSFET в любой слот V2 с перемычкой V = P +.
  • Убедитесь, что другие модули используют шину питания V1 (это 5V Arduino).

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

Шаг 3: понимание рабочего процесса

Понимание рабочего процесса
Понимание рабочего процесса

Изучите диаграмму снизу вверх!

  • Насос включается при соблюдении как «климатических», так и «водных» условий.
  • Состояние воды означает, что в резервуаре достаточно воды, если это не так, загорается индикатор отсутствия воды, и результат сочетания климатических и водных условий становится ложным.
  • Климатические условия также сложны: они верны, если верны и почвенные, и световые условия.
  • Состояние почвы основано на сравнении текущего уровня влажности почвы и предварительно определенного порогового значения. Состояние освещенности аналогично состоянию почвы, но вместо этого измеряется яркость.

Шаг 4: Получение пороговых значений

Получение пороговых значений
Получение пороговых значений

Пороги датчика (примерные данные, могут отличаться в вашем случае):

  • Влажность почвы: 0,15
  • Яркость: 0,58
  • Вода: 0,2

Как проводить измерения (для версий XOD без функций Serial):

  1. Загрузите и установите Arduino IDE
  2. Откройте пример File-Examples-01. Basics-AnalogReadSerial
  3. Измените "задержку (1);" на "задержку (250);"
  4. Подключите плату. Убедитесь, что ваша модель платы и порт выбраны в сервисном меню.
  5. Повторите для каждого датчика:
  • Проверьте номер контакта в "int sensorValue = analogRead (A0);" и измените A0 на A3 и A2 для датчиков освещенности и воды соответственно (если вы собрали свое устройство по схеме)
  • Загрузите эскиз. Откройте Service-Serial Monitor, убедитесь, что в правом нижнем раскрывающемся списке выбрано 9600 бод, и наблюдайте за изменением измерений в реальном времени по мере того, как вы настраиваете среду датчика.
  • Выберите значение между зарегистрированным минимумом и максимумом (ближе к минимуму для датчика яркости), разделите его на 1023 и используйте результат в своем патче.

Шаг 5: Основы XOD

Основы XOD
Основы XOD
  • Загрузите и установите XOD IDE
  • Программа XOD называется патчем; строим его на участке с рядом прорезанных рядов справа.
  • При первом запуске вы можете столкнуться со встроенным обучающим патчем.
  • Патч состоит из узлов, соединенных связями через контакты.
  • Каждый узел представляет собой физическое устройство / сигнал или элемент данных, а ссылки управляют потоком данных.
  • Дважды щелкните любое пустое место патча или нажмите клавишу «i», чтобы открыть диалоговое окно быстрого поиска, в котором узлы можно найти по их именам или описаниям.
  • Используйте браузер проекта в левом верхнем углу, чтобы изучить исправления.
  • Выберите узел и просмотрите / отредактируйте его свойства в инспекторе в левом нижнем углу.
  • Чтобы попробовать XODing самостоятельно, нажмите File-New Project и создайте пустой патч.
  • Вы можете вернуться к руководству в любой момент, открыв меню «Справка».

Шаг 6: патч для ирригатора

Патч для ирригатора
Патч для ирригатора

Используйте патч (basic-irrgator.xodball) или соберите самостоятельно по схеме.

Обратите внимание, что предоставленный патч уже создан, поэтому некоторые узлы были обновлены в среде IDE:

  • Узлы "аналоговый ввод" теперь не рекомендуются, вместо этого используйте "аналоговое чтение"
  • "led" узел теперь имеет больше функций

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

Шаг 7: развертывание

Развертывание
Развертывание
  • Когда патч будет готов, нажмите «Развернуть», «Загрузить в Arduino».
  • Подключите плату.
  • Проверьте модель платы и последовательный порт в раскрывающихся списках, затем нажмите «Загрузить».
  • Это может занять некоторое время; Требуется подключение к Интернету.
  • Если вы используете XOD IDE браузера, используйте Arduino IDE для загрузки программы на плату.
  • Если у вас возникли проблемы с загрузкой патча, посетите форум XOD.

Шаг 8: время строительства

Время строительства
Время строительства

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

Шаг 9: Размещение датчика уровня воды

Размещение датчика уровня воды
Размещение датчика уровня воды

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

Шаг 10: тестирование

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

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

Шаг 11: наслаждайтесь и совершенствуйтесь

Наслаждайтесь и улучшайте
Наслаждайтесь и улучшайте

Теперь, когда основной ирригатор готов, рассмотрим несколько вариантов улучшения:

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

Рекомендуемые: