Уроки ардуино: цветок-подсолнух, который следует за светом

Делаем с помощью Ардуино цветок, который следует за светом

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

Шаг 1. Комплектующие

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

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

Из программного обеспечения пригодится, как и в большинстве проектов, Arduino IDE. Напоминаем, что производитель Ардуино также создал онлайн версию Arduino IDE, которую назвал Arduino Web Editor и которую можно посмотреть по ссылке.

Шаг 2. Схема соединения

Чтобы собрать наше устройство – следуйте схеме соединения ниже:

Шаг 3. Собираем устройство

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

Шаг 4. Код проекта

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

Все библиотеки можно найти на нашем сайте в разделе “Библиотеки”.

Шаг 5. Итоговый результат

После всех шагов у нас должен получиться примерно такой результат:

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

Датчик света Ардуино подключение

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

Датчик освещенности Ардуино позволяет сделать автоматическое включение освещения. Основой данного модуля является полупроводниковый элемент — фоторезистор. Рассмотрим, как правильно подключить датчик освещенности к плате Arduino и разберем две простые программы для использования цифрового и аналогового входа на микроконтроллере для управления светодиодом.

Характеристики модуля датчика освещенности

Датчик света может выпускаться в двух вариантах: с подстроечным резистором (цифровой датчик) и без него (аналоговый датчик). Оба варианта имеют три контакта для подключения к Arduino Nano или Uno. Два контакта служат для питания датчика — 5V и GND, а третий контакт — выдает аналоговый (обозначен буквой S) или цифровой сигнал (обозначен D0) и подключается к соответствующим портам платы Ардуино.

Устройство фоторезистора, обозначение на электрических схемах

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

Как подключить датчик освещенности к Ардуино

Для занятия нам понадобятся следующие детали:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • модуль датчика освещенности;
  • один светодиод и резистор 220 Ом;
  • беспаечная макетная плата;
  • провода «папа-папа», «папа-мама».

Датчик освещенности ky: схема подключения к Ардуино

На картинке представлена схема подключения датчика света к Arduino Uno с использованием аналогового сигнала. На модуль подается питание 5 Вольт, а в зависимости от освещенности в помещении на выходе модуля (S) меняется напряжение от 0 до 5 Вольт. При подаче этого сигнала на аналоговый вход микроконтроллера, Arduino преобразует сигнал при помощи АЦП в диапазон значений от 0 до 1023.

Счетч для аналогового датчика освещенности

Пояснения к коду:

  1. в приведенном примере мы выводим на монитор порта данные с датчика освещенности, преобразованные с помощью АЦП Ардуино;
  2. чтобы узнать приблизительно напряжение, поступающее на вход Arduino, следует умножить получаемое значение на 0,0048 или U = light * (5 / 1023). Так как тип данных float может хранить значения только с двумя знаками после запятой, то мы используем в скетче другую формулу для своих расчетов.

Схема подключения датчика освещенности к Ардуино

Следующая программа использует цифровой сигнал, идущий от датчика освещенности ky. На модуле имеется подстроечный резистор для настройки чувствительности. То есть вы можете отрегулировать, какой уровень освещенности необходим, чтобы модуль стал отправлять сигнал истина (логическая единица) на микроконтроллер Arduino. Подключите светодиод к пин 13 и загрузите следующий скетч.

Организация полива, обдува и освещения в Умной теплице на Ардуино

Организация полива, обдува и освещения в Умной теплице на Ардуино

В предыдущих статьях по Умной теплтице (проект «Домашний цветок») «Умная теплица на Arduino- делаем первые шаги» и «Индикация показаний при проектировании Умной теплицы на Ардуино» мы реализовали функции мониторинга и вывода данных на дисплей и светодиоды. Сегодня мы добавим нашей Умной теплице функции управления. Нам необходимо организовать полив цветка, обдув, освещение. Выполнять данные операции будем по нажатии соответствующих кнопок.
Дополнительно к деталям, использовавшимся в предыдущих статьях ( нам понадобятся следующие:

  1. Relay shield на 4 реле – 1 шт;
  2. Вентилятор 12В – 1 шт;
  3. Мембранный насос 12В – 1 шт;
  4. Лампа освещения – 1 шт;
  5. Кнопка – 3 шт;
  6. Резистор 10 кОм – 3 шт.

Кнопки и резисторы имеются в каждом из наборов «Дерзай» ( «Базовый» и «Изучаем Arduino» ).
Мембранный вакуумный насос (рисунок 1) будем использовать для полива почвы. Он предназначен для всасывания воды из емкости. Рабочее напряжение 12В, потребляемый рабочий ток 0.5 – 0.7А, расход 1.5 л/мин.

Рисунок 1. Мембранный вакуумный насос
Необходимо поменять шланг требуемой длины (рисунок 2, 3).

Рисунок 2, 3. Замена шланга мембранного вакуумного насоса

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

Рисунок 4. Вентилятор

Искусственный свет для эффективного выращивания растений должен излучать спектр электромагнитного излечения аналогичный тому, который получают растения в естественной среде. Если полной аналогии достичь сложно, то освещение должно удовлетворять хотя бы минимальные потребности. Для обеспечения наиболее комфортных условий для развития подбираются специальные лампы, имеющие различное влияние. Рекомендуется использовать следующие лампы:

  • светодиодные фитолампы;
  • энергосберегающие лампы дневного спектра;
  • люминисцентные.

Насос, вентилятор, лампу подключать напрямую к Arduino нельзя! Будем управлять ими через реле. Будем использовать Relay shield (рисунок 5), который содержит 4 реле с необходимой обвязкой.

Рисунок 5. Relay shield
Теперь соберем на макетной плате схему, представленную на рисунке 6 (схема из предыдущей части с добавлением кнопок и реле).

Рисунок 6. Схема соединения для мониторинга параметров и ручного управления проекта «Домашний цветок»

Приступим к дописанию кода скетча. Создаем переменные типа Boolean (true – включено, false – выключено) для состояния трех реле:

В цикле loop() отслеживаем нажатие кнопок с проверяем на дребезг (процедура debounce()) и в случае нажатия кнопки изменяем статус соответствующей переменной и отправляем команду для изменения статуса соответствующего реле на противоположное:
включение/выключение насоса (полив почвы);
включение/выключение освещения;
включить/выключение вентилятора.

Создадим в Arduino IDE новый скетч, занесем в него код из листинга 1 и загрузим скетч на на плату Arduino. Напоминаем, что в настройках Arduino IDE необходимо выбрать тип платы (Arduino UNO) и порт подключения платы.

После загрузки скетча на плату мы можем управлять включением/выключением насоса, лампы, вентилятора с помощью кнопок. В последовательный порт выводим показания датчиков и состояние реле — полив, вентиляция, освещение, (рисунок 7), которое мы устанавливаем с помощью кнопок. На дисплее – показания датчиков.

Рисунок 7. Вывод данных в последовательный порт.

А вот и наш выращиваемый цветок (рисунок 8).

Рисунок 8, 9. Проект «Домашний цветок».

Далее модернизируем систему, в следующем уроке мы будем осуществлять функции мониторинга и управления с телефона или планшете с операционной системой Android.

Теплица на Ардуино-Мега. Часть 9.

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

Итак, как и планировалось, подсветку подключил. По времени подсветка не работает с 0-00 до 4-00. В остальное время управляется по данным с аналогового датчика освещенности. Временные рамки и пороги чувствительности для включения и выключения устанавливаются с помощью меню. Чтобы не происходило ложных срабатываний датчика, для него написал библиотеку, аналогичную той, что делал для аналогового датчика температуры. Поскольку все изменения еще не закончены, окончательный скетч выложу по итогам всего сезона.

Найдены возможные дубликаты

С такой подсветкой, внутри стопудово, сутками напролет рубит Carpenter Brut, Dance With the Dead, VHS Dreams и иже с ними. Ну и хрустальный шар, само-собой)

Фотография сделана в 23-00. В 0-00 подсветка отключается.

16-8 сделай, 4 часа мало

да, полистал гугл – все так советуют. Хотя сейчас продолжительность дня у нас 17 часов. Завтра поеду огурцы собирать – сделаю 21-00 до 5-00. Сейчас 21-47 заход, 4-42 восход. Так что пока светить не будет.)

Посмотрел, подсветка понадобится только после 28-го июля

Фактически темноты оставил 4 часа. Но я в этом не специалист, я же инженер. Надо почитать. А исправить недолго – настраивается с кнопок меню.

Ну 4-то час я оставил темноты.

Ага, для комнатных растений))

Ооо) Китайские лучше не брать. Мерялось спектрофотометром — сдвиг по спектру и пиздёжь в описании как всегда у китаёз. Сами лампы хлипкие и греются, т.к. отвод тепла там никакой – алюминия там с гулькин нос на основе. Мною проверялись и готовые лампы и делались несколько ламп на китайских диодах и выращивась на подоконнике ТРАВЕЕЕЕЕНЬ. Ну, петрушка, укроп, базилик. Честно, тащ лейтенант) И мастерились другие лампы на диодах из наших просторов. Минифермер, гуглите (нифига не реклама, мой личный опыт)

Так вот, разница коллоссальная. Китайские лампы сосут по полной. Зелень, выращенная под качестенными диодами намного толще, выше и сочнее.

Ещё раз. Лампы простые, человеческие, не надо ставить. Будь то нить накаливания, газоразрядная, диодная белого света, тёплого света — всё хуйня. КПД их будет 10-20% от силы. Растениям нужна не сила света, а его качество. Тут немного по-другому всё работает.
Для растущего растения нужно биколорное свещения 440 и 660 спектра (могу спиздеть, но вроде так). Когда появляется плод, переставляются лампы на мультиспектральные. Некоторые добавляют ещё ультрофиолетовые. Я не парюсь, у меня всегда биколорки висят.
Единственное, что можно взять у китайцев на али, так это драйверы (блоки питания) для ламп

Источники:

http://xn--18-6kcdusowgbt1a4b.xn--p1ai/%D0%B4%D0%B0%D1%82%D1%87%D0%B8%D0%BA-%D0%BE%D1%81%D0%B2%D0%B5%D1%89%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B8-%D0%B0%D1%80%D0%B4%D1%83%D0%B8%D0%BD%D0%BE/

http://playarduino.ru/uroki-arduino/organizatsiya-poliva-arduino/

http://pikabu.ru/story/teplitsa_na_arduinomega_chast_9_5160404

http://arduinoplus.ru/igrushka-bojya-korovka/

Ссылка на основную публикацию