Банк проектов 8-11 Банк проектов 8-11 кл | Page 64
Принцип работы одного из вариантов алгоритма автоматического полива
Данная система замеряет уровень влажности почвы. В программе задаётся условие, при
котором будет запущена помпа.
Аналоговый датчик влажности почвы будет сигнализировать, когда нужно будет включить
помпу для полива.
Датчик погружается в почву на расстояние 30–45 мм. Производится измерение
электропроводности почвы, между контактами датчика. Чем выше влажность почвы, тем выше
электропроводность почвы. Напряжение на выходе датчика прямо пропорционально уровню
измеренной электропроводности. Соответственно, чем выше влажность почвы, тем больше
значение на выходе датчика.
Для того чтобы алгоритм функционировал исправно и поливал цветы согласно задуманному
графику, необходимо провести эксперимент и выяснить, какие показания с датчика будут
выводится при сухой почве, увлажнённой почве и влажной почве (например, влажная: 500–900,
увлажнённая: 300–500, сухая 0–300).
Следует учитывать тот факт, что почва полностью равномерно влажной станет не сразу
после включения полива. Необходимо подобрать значение времени работы помпы, а затем,
например, через пол дня проверить показания датчика. В случае, если почва недостаточно влажная,
снова включить полив на некоторое время. При этом в зависимости от степени влажности почвы
следует скорректировать время полива.
Для того чтобы задавать пороговое значения влажности, при котором нужно включить
помпу, нужно использовать условный оператор if.
Программная реализация алгоритма
Рассмотрим основные программные функции, которые потребуются для реализации
программы.
Время полива, а также интервал задаётся в программе функцией delay(), иначе говоря это
задержка. Управление реле (включение/отключение) осуществляется с помощью функции
digitalWrite(), где в скобках указывается порт, которым управляем, и его состояние (HIGH/LOW)
через запятую.
Для того чтобы подробно ознакомиться с принципом работы delay() и принципами
управления реле, рекомендуется разобрать стандартный пример управления светодиодом в
Arduino IDE, как показано на Рисунке 2.
64