Замкнутая экосистема по-русски

в 16:19, , рубрики: arduino, diy или сделай сам, метки: ,

Здравствуй!

Недавно наткнулся в интернете на интересную статью, с точки зрения садоводства, об англичанине, который 53 года назад посадил в банку традесканцию.Он закупорил бутылку и, после полива 40 лет назад, больше не открывал её. Идеи пришла ему из любопытства. И по сей день растение живет, растет и поглощает кислород. Традесканция образовала экосистему: при фотосинтезе образуется кислород, происходит увлажнение воздуха внутри сосуда и выпадает влага, опавшие листья перегнивают, выделяя CO2. Но для фотосинтеза нужен еще и свет, поэтому бутылку нужно постоянно пододвигать к окну и разворачивать, чтобы листья росли равномерно. Я добавил немного электроники для комнатного растения, и вот, что из этого получилось.

Этап Первый

Как уже говорилось, в процессе фотосинтеза самое важное это свет. Но не любой!

image

Для растений наиболее важным является сине-зеленый и желто-красный. Длины волн соответственно от 400 до 450 мкм и от 600 до 650 мкм. Я пошел в магазин и купил 4 красных, 2 синих и 2 зеленых светодиода (прочитав статью на радиокоте). Далее, расположил их под крышкой банки, закрепив на картонке, и соединил параллельно (на 2 красных 1 синий и 1 зеленый).
Т. к. светодиоды разных цветов свечения имеют разное напряжение питания, поставил резисторы. imageВ крышке сделал отверстие для проводов и укрепил картонку со светодиодами под крышкой, предварительно просунув провода в дырку. Для большей изоляции от внешнего мира дырку можно заклеить.

Этап Второй

Основное, т. е. подсветку, я уже сделал, поэтому перехожу к полезным дополнениям.
1. Чтобы свет горел только тогда, когда растение находится в тени, нужно добавить фотоэлемент.
Схема подключения: Замкнутая экосистема по русски

Чтобы сделать горшок совсем умным, подключим к нему Arduino. Analog InPut на схеме — любой аналоговый вход у Arduino. На ШИМ (или PWM) выход повесим светодиоды, яркость свечения которых будет изменяться в зависимости от освещенности фоторезистора. Но для начала выясним, какие значения будет выдавать делитель напряжения.

Код

 int sensor =0; // подключаем делитель к аналоговому входу Arduino A0 
 void setup() {
   
   Serial.begin(9600);
   
 }

 void loop() { 
   Serial.println(analogRead(sensor));
   delay(1000); // Отправляет значения с делителя раз в секунду
 }

В своей схеме я использовал фоторезистор из электронного конструктора ЗНАТОКа. У него теневое сопротивление 120 кОм. Расчет резистора R1 производится по формуле: R1=Vin*R2:Vout-R2 (Я надеюсь, все хорошо помнят порядок действий: сначала действия первой степени — умножение и деление, а потом второй — сложение и вычитание). Также, следует помнить, что сопротивление у фоторезистора может изменяться нелинейно.
Минимальное значение с моего делителя — около 100 (назовём их условными единицами), максимальное — около 755 у.е.
Зная эти значения можно написать программу для Arduino — контроллера.

Код

 int sensor = 0; // Потенциометр к А0
 int ledPin = 9; //Светодиоды к выходу 9
 void setup ()
 {
   analogReference(DEFAULT);
   pinMode(ledPin, OUTPUT);
   //Serial.begin(9600); Раскомментируйте эту строку для отображения текущей 
   //освещенности в у.е. в Мониторе Порта.
 }

 void loop()
 { 
   int val = analogRead(sensor);
  
   val = constrain(val, 130, 755); //Выставляем значения освещенности.
                                   //Если < 130, то превращаем в 130, если > 755, то выставляем в 755.
   int ledLevel = map(val, 130, 755, 0, 255);  //Превращаем значения освещенности и у.е. 
   //в 8-битные значения для ШИМ.
  
   analogWrite(ledPin, ledLevel);
  
   // Serial.println(analogRead(ledLevel));  Раскомментируйте эту строку для отображения текущей 
   //освещенности в у.е. в Мониторе Порта.
 }
  

Также, обратите внимание на то, что максимальный ток через цифровые Входы/Выходы Ардуины не должен превышать 40мА.

2. Каким бы Arduino не было умным, его вычислительные возможности здесь излишни. Добавив к делителю стабилитрон и транзистор получим все тоже, что и с процессором, только в меньшем объеме. Схема:
Замкнутая экосистема по русски
Стабилитрон D1 — любой мошности на 3.6 В. Транзистор T1 — любой NPN.

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

Замкнутая экосистема по русски

Замкнутая экосистема по русски

Список источников

  1. Видео уроки по Arduino от Джереми Блума (Jeremy Blum) в переводе Амперки (amperka.ru).
  2. Фитолампа

Автор: mikkal

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js