Cultivo Autónomo.

ENLACES DE INTERÉS:
Plano de conexiones

Hola amigos de Arduino aquí tienen a otro apasionado, siempre me gusto la electrónica y arreglar aparatos, pero tampoco es que tenga bases, así que gracias a una necesidad me decidí darle al Arduino.

Espero que sean buenos conmigo ya que soy novato, no voy a ser el típico que se compra el equipo y quiere que los que saben le den el código, quiero aprender no que me lo den hecho y espero que este sea el lugar adecuado.

Mi proyecto trata de un invernadero autónomo, no es el típico riego automático, es un indoor lo que quiere decir que todo sera controlado, luz, aire, agua, fertilizantes, etc y sera todo un reto para mi porque hay mucho que tengo que aprender aun, se lo mas básico de C gracias a m0skit0 una maquina del foro daxhordes.org pero aun me queda mucho por aprender.

Bueno vamos al proyecto este es el equipo a utilizar.

  • Arduino Mega

  • ESP8266-01 Modulo wifi

  • Display QVGA 2.2 TFT SPI 240x320

  • DHT22 digital temperature and humidity sensor

  • Soil Hygrometer Humidity Detection Module

  • 5V two 2 Channel Relay Module With optocoupler

  • Dispenser Flowmeter Flow Sensor. Inner diameter 3mm DC 5-24v

  • DS3231 AT24C32 Reloj en tiempo real de precisión.

  • Bomba de riego a 12v 60w 5L/min

  • Una bomba peristáltica, para mezclar fertilizantes.

Y por supuesto el foco LED casero con sus drivers, termostato, ventiladores, cableado y demás. (Quiero que el foco suba solo con el crecimiento de las plantas pero de momento me centro en terminar el foco, solo me faltan los ventiladores)

Todo lo demás incluido Arduino, sensores y módulos ira alimentado por una fuente de alimentación de ordenador ATX, son baratas o gratis y son muy eficientes, ademas de tener una serie de cables que nos permiten encender la fuente y apagar la fuente por código hablo de los cables de colores raros el morado por ejemplo que siempre tiene corriente aunque la fuente este invernando nos permite tener Arduino encendido y la fuente y el ventilador apagados hasta que se necesite mas energía como para regar por ejemplo. El cable verde que nos permite apagar y encender la fuente según la necesidad, el cable gris por ejemplo solo entrega 5V perfectamente regulados. ya veremos las utilidades de esto mas adelante ademas la fuente proporciona 12V, 5V y 3.3V suficiente para casi cualquier proyecto. Dejo una foto de como va la cosa a fecha 24-Enero-2017: Lo único en lo que he podido mejorar es en la pantalla.

Yo he tuneado la fuente a mi gusto para poder usarla en cualquier proyecto tiene un breadboard con todos los cables que he podido salvar y unas bananas para cosas varias, ah y una lampara led para ver bien con 4 led blancos de 3w a 12v.

La pantalla TFT me gusta porque cabe mucha información de momento esto es lo que he conseguido hacer con mis conocimientos aunque estaría muy bien aprender a meterle gráficos menús y demás poco a poco jajaja.

Y Con un poco de krita para Linux o Photoshop podemos hacer un marco para mostrar los datos:

Código oficial del proyecto en el siguiente mensaje aquí no cabe.

Seguiré actualizando este mensaje hasta completar el proyecto, si hay cambios se avisaran aquí.

1 Like

Hola Hidden, que nick!!! jaja
Bienvenido al foro.
Buena presentación de tu proyecto. Tenemos algo interesante por lo visto.

Te voy a regañar poco porque tu primer post requiere un par de ajustes:

  1. título. Retira todo menos CULTIVO AUTONOMO que resume tu proyecto, Eso de Soy nuevo por aqui no va.

  2. los enlaces van usando tags (Nro 11) del editor que usas para escribir.
    Vuelve al post#1 y puedes editar usando la opcion modificar que esta abajo a la derecha del editor. (mas a la derecha de Quick edit).

Buen proyecto.
Lo has presentado de modo interesante será un buen trabajo para seguir.
Estaremos atentos para brindarte ayuda si la requieres.

Hola mi nick viene de la scene PSP jajaja

Será un placer que me ayuden a depurar el código y a resolver mis dudas por eso estamos aquí para aprender.

En cuanto salga del trabajo subiré las fotos de lo que llevo hecho. También tengo preparado un video.

Un abrazo!

Bien, tenía confianza en que editarías tu primero post y así ha sido. Gracias.
A la espera de tu siguiente paso.

surbyte:
Bien, tenía confianza en que editarías tu primero post y así ha sido. Gracias.
A la espera de tu siguiente paso.

Gracias estoy muy acostumbrado a los foros y se que hay reglas que respetar por eso no hay problema, Bienvenido y gracias por comentar.

Oye he notado que eres un usuario con mucha experiencia ¿se puede simular en caliente con arduino?

Ayer edite el post y añadí como hacer el panel LED pero el router se quemó y no pude publicarlo que cabreo... pero bueno la compañía me manda otro hoy mismo y vuelvo a añadir la info para que todos puedan hacer el suyo.

Un abrazo!

Bueno gracias a un compañero, el me hizo ver que tal vez no hayas perdido tu respuesta.
Si vas a tu perfil verás que hay algo que se llama Draft y ahi está tu respuesta.

¿se puede simular en caliente con arduino?

Simular se puede, uno de los mejores programas es Proteus de Labcenter, al menos para mí. Hay quien usan otros programas pero no es mi caso.

Excelente tu respuesta esta un poco escondido pero lo he localizado:

Vamos a perfil y vemos esta imagen abajo a la izquierda:

Hacemos clic en el lápiz y en la siguiente pagina vemos:

Ahí encontramos Show Drafts (Mostrar los borradores), Muchas gracias surbyte me has ayudado un montón.

Vamos con el panel LED intentare ser especifico para que todo el mundo pueda hacer uno si se ve motivado. Mi idea es cultivar en un piso vivo en el ático pero no tengo terraza orientada al sol :frowning: quiero aprovechar que soy el ultimo y hacer alguna placa solar para alimentar el cultivo pero eso sera al final de mi proyecto de momento vamos con el panel led.

Voy a crear un panel LED de 3W y vamos a utilizar un total de 35 LEDs de varios colores y varios espectros:

Dos Blanco: -----------> 6000-6500k
Cuatro Azul: ----------> 460-465nm
Cuatro Rojo: ----------> 650-660nm
Veinticinco Rojo: ------> 610-630nm

Con estos colores tenemos suficiente para cultivar plantas y hacerlas florecer o fructificar. Los rojos suelen ir a 2,5V y los azules y blancos a 3,6 varia según el LED y a los mA que camina. Los Watios son los Voltios por los mA. V x mA = W

Si no hice mal las cuentas tiene unos 61W

El driver es de 36v a 75V corriendo a 650mA hay de sumar Los Voltios de todos los Rojos y azules que tengas. puedes llegar hasta 75V. Azules y blancos podrías poner unos 20 a cada driver, divide los V que soporta el driver entre los que tienen los Leds. 75/3.6=20,88. En cambio rojos podrías poner unos 29 ó 30 Lo mejor es que el Driver vaya al limite al 90 o 95% de lo que puede, sera mas eficiente. O eso tengo entendido. En teoría en cada driver se pueden poner 6 Blancos y/o azules, mas 20 Rojos.

De momento voy a usar una bandeja del horno para hacer el foco, es algo temporal porque ya tengo pedido unas chapas de aluminio para tal fin que vienen con sus pistas y todo y no hay que poner cable.

Pero de momento voy a usar una bandeja de chapa para el horno ahí pegare los led con pasta térmica y soldare con cables.

Terminando las conexiones del panel que todas se conectan en serie el cable es reciclado porque destripo todo lo que pasa por mis manos jajaja

Yo he puesto dos Drivers porque con uno se quedaba pequeño el panel yo quería más LED para iluminar bien el trozo elegido, y en mi primer test se ve que funciona perfecto:

El otro día me llego el sensor de humedad del suelo es cutre y por lo visto es malo y se corroe con facilidad así que para mi proyecto no me servirá ya que voy a usar fertilizantes y se estropeara mas rápido aun : (

De momento comparto como probar el modulo:

Para probarlo hacemos un simple sketch:

void setup() {
  Serial.begin(9600);
}

void loop() {
  int sensorValue = analogRead(A0);
  Serial.println(sensorValue);
  delay(500);
}

El sensor parece dar buena lectura cuando no hay humedad esta a 0 y cuando hay humedad el tope es 1023 al principio use este código sensorHumedad = (5.0sensorHumedad20)/1023.0; pero lo que hacia es que cuando no había humedad daba 100% y cuando lo metía en agua daba cero, pero lo arregle:

/*
  AnalogReadSerial 23/02/2015
  
  Este sketch lee una entrada analógica en el pin 0 (A0)
  imprime el resultado en el monitor serial. Usaremos
  el medidor de humedad en suelo FC-28 
  Conexiones:
  VCC a 5V
  GND a GND
  A0 a A0
  Do lo reservamos para mas adelante activar la bomba de agua.
 
 Este sketch es para usuarios de www.arduino.cc ;D
 */
 
  float sensorHumedad; // Variable sensor humedad

void setup() {
    // iniciamos el pin 13 como salida
  pinMode(13, OUTPUT);
  // iniciamos la comunicación serial a 9600 bits por segundo:
  Serial.begin(9600);
}

void loop() { // Esta función se mantiene...

  sensorHumedad = analogRead(A0); // leemos la entrada analógica en pin 0:
  sensorHumedad = 5-5*sensorHumedad/1023; // convertimos el valor 
  Serial.print(sensorHumedad); // visualizamos el valor leído y sin salto de linea...
  Serial.print("V, "); // Imprimo los V para ver la relación en pantalla 
  sensorHumedad=sensorHumedad*20; // Multiplico los 5V * 20 para que 1023 me de 100%
  Serial.print(sensorHumedad); // y lo mostramos 
  Serial.println ("%"); // ...Ponemos el símbolo de la Humedad
  delay(500); // retardo de medio segundo entre lecturas por estabilidad
  
  if (sensorHumedad<=50) // si el sensor da lectura de menos de 50% 
  {
      digitalWrite(13, HIGH);   // encendemos el led
  }
  else // no añadimos nada porque si no es menor es mayor
  {
      digitalWrite(13, LOW);    // apagamos el led
  }
}

El material que comento en mi primer post esta pedido algunas cosas ya las tengo en casa y otras están por llegar, pero hoy me llego mi ethernet shield so I´m going to play right now people!!

Seguiré comentando mi experiencia con esta aventura les dejo un vídeo de mi primera prueba de riego:

Solo te falta poner en la descripción CANNABIS :wink:

Haz hermético esa lampara, porque humedad y electricidad no van bien de la mano.

Hechale un ojo a esto que quizas te ayude

motoreto:
Solo te falta poner en la descripción CANNABIS :wink:

Haz hermético esa lampara, porque humedad y electricidad no van bien de la mano.

Hechale un ojo a esto que quizas te ayude

Jajaja si también pondré cannabis como no yo soy muy sibarita y hago mis propias medicinas no me gustan las drogas de las farmacéuticas, también planto muchos tipos de medicina natural, pero quise usar LED para poner también otras cosas ya que usar un 400w de sodio para tomates pues no es muy rentable la verdad.

El panel es temporal ya que he comprado unas chapas para hacer otro foco.

Gracias por el Link en la hora de la comida lo reviso.

EDITO: Gracias por el vídeo ya lo vi es una pena que este chico dejó de subir vídeos porque lo hizo realmente bien.

EDITO:

Hola estoy en casa y han llegado los relés así que toca probarlos sketch simple:

/*
  Relé activado por sensor de humedad en tierra 26/02/2015
  
  Este sketch lee una entrada analógica en el pin 0 (A0)
  imprime el resultado en el monitor serial. Usaremos
  el medidor de humedad en suelo FC-28 
  Conexiones:
  VCC a 5V
  GND a GND
  A0 a A0
  Do lo reservamos para mas adelante activar la bomba de agua.
 
 Este sketch es para usuarios de www.arduino.cc :D
 */
 
  #define RELAY_ON 0 
  #define RELAY_OFF 1 
  #define RELAY_1 2
  float sensorHumedad;

void setup() {
  pinMode(RELAY_1, OUTPUT);
  digitalWrite(RELAY_1, RELAY_OFF);
  Serial.begin(9600);
}

void loop() {

  sensorHumedad = analogRead(A0);
  sensorHumedad = 5-5*sensorHumedad/1023;
  Serial.print(sensorHumedad);
  Serial.print("V, ");
  sensorHumedad=sensorHumedad*20;
  Serial.print(sensorHumedad);
  Serial.println ("%");
  delay(500);
  
  if (sensorHumedad<=50)
  {
      digitalWrite(RELAY_1, RELAY_ON);
  }
  else
  {
      digitalWrite(RELAY_1, RELAY_OFF);
  }
}

Foto:

Conexiones del relé: (Solo use uno en este ejemplo)

Relé 1

VCC a 5V
IN1 a pin 2
GND a GND

Les dejo señores que me llego el RTC (real time clock) y la verdad no se usarlo tengo que estudiar y luego subiré mis avances que voy sobre la marcha porque llevo como 15 días con esto tengo muuuucho que aprender, mi próximo proyecto es un robot siempre quise tener uno.

Bien. Recuerdo que hay un tipo de luz que es especialmente indicada para las plantas. Cuestion de buscarla.
Todas las granjas ecológicas que usa la NASA tiene luces LED justamente como lo que tu usas. Asi que cuestión de dar con la longitud de onda correcta y tendrás máximo rinde para tus plantas. O tal vez para cada tipo de planta habrá que buscar esa longitud de onda. Tema para investigar.
Rápidamente algunos consejos:

Luz roja y azul

Ya que la clorofila absorbe mejor la luz azul y roja, estas longitudes de onda son más efectivas para motivar el crecimiento de la planta. Las plantas tienen dos tipos de clorofila, la a (alfa) y la b (beta), que son casi iguales en su estructura molecular, aunque la clorofila “a” tiende a absorber la luz de longitudes de onda rojas y violetas y la clorofila “b” tiende a absorber la luz de longitudes de onda naranjas y azules. Ésto podría ser parte de las razones por las cuales la luz azul parece fomentar más la producción de follaje y la roja el florecimiento.

Mas técnico enlace La Teoría de los colores y los Espectros en las plantas

[Iluminación led para plantas NASA](http://iluminación led para plantas ahora en la NASA)

Después de la teorica explicación de surbyte, que razón no le quito, yo te aconsejo que mires este Foro.Pero mas detalladamente te aconsejo que mires el apartado cultivo conLED.

Ahí hay muuuuuuucha gente expertos en cultivo con leds, con lámparas home made donde te van a explicar o aconsejar que espectros usar y el porque de ellos.Aunque ya supongo que algo abras leido porque ya as empledo mas de un spectro en tu lampara.

La iluminación siempre va aparejo de las dimensiones de tu cultivo a si qeu esto es un gran dato que deverias deberias de tenerlo claro. Estoy seguro que ahi vas a encontrar toda la info que necesitas, yo soy miembro desde hace bastantes años y es un gran pozo de sabiduría.

Edito: acabo de ver que surbyte a saco la info de esta web, desconozco si es usuario o no, pero a saco la info de un buen lugar.

Sigo atento este post que me interesa mucho!!

Un saludo. :stuck_out_tongue:

surbyte:
Bien. Recuerdo que hay un tipo de luz que es especialmente indicada para las plantas. Cuestion de buscarla.
Todas las granjas ecológicas que usa la NASA tiene luces LED justamente como lo que tu usas. Asi que cuestión de dar con la longitud de onda correcta y tendrás máximo rinde para tus plantas. O tal vez para cada tipo de planta habrá que buscar esa longitud de onda. Tema para investigar.
Rápidamente algunos consejos:

Luz roja y azul

Ya que la clorofila absorbe mejor la luz azul y roja, estas longitudes de onda son más efectivas para motivar el crecimiento de la planta. Las plantas tienen dos tipos de clorofila, la a (alfa) y la b (beta), que son casi iguales en su estructura molecular, aunque la clorofila “a” tiende a absorber la luz de longitudes de onda rojas y violetas y la clorofila “b” tiende a absorber la luz de longitudes de onda naranjas y azules. Ésto podría ser parte de las razones por las cuales la luz azul parece fomentar más la producción de follaje y la roja el florecimiento.

Mas técnico enlace La Teoría de los colores y los Espectros en las plantas

[Iluminación led para plantas NASA](http://iluminación led para plantas ahora en la NASA)

Muchas gracias surbyte el primer enlace me ha dado mucho que leer pero muy interesante la verdad había cosas muy interesantes, lo que mas me gusto fue la explicación de los colores.

También es muy importante los lúmenes que tenemos.

Requerimientos máximos de luz para las plantas:

Fase ----------- Lúmenes por M2 -------- Fotoperiodo

Plántula -------- 4.000 ------------------ 16/8
Esqueje -------- 4.000 ------------------ 18/6
Vegetativo ----- 27.000 ----------------- 18/6
Floración ------- 107.500 ---------------- 12/12

FUENTE

Si todo esto es cierto yo tengo 35leds según esto un led de 3w como los míos tiene de 110 a 120 lúmenes tirando por lo alto 35*120= 4.200 no me llega ni a vegetativo, pero claro según esto porque ahí dice requerimientos máximos. A mi la experiencia me dice que puedes cultivar bien con menos. yo cultivando con un 400W HPS he sacado mejores cosechas que otros con un 600W por ejemplo, que no es todo luz también hay que darle a la planta lo que necesita y muy importante cuando lo necesita.

Pero veo que el panel esta mal hecho tiene los led muy separados en las placas que he comprado:

Vienen mas juntos y caben mas menos mal que este panel es temporal hasta que lleguen los nuevos.

motoreto:
Después de la teorica explicación de surbyte, que razón no le quito, yo te aconsejo que mires este Foro.Pero mas detalladamente te aconsejo que mires el apartado cultivo conLED.

Ahí hay muuuuuuucha gente expertos en cultivo con leds, con lámparas home made donde te van a explicar o aconsejar que espectros usar y el porque de ellos.Aunque ya supongo que algo abras leido porque ya as empledo mas de un spectro en tu lampara.

La iluminación siempre va aparejo de las dimensiones de tu cultivo a si qeu esto es un gran dato que deverias deberias de tenerlo claro. Estoy seguro que ahi vas a encontrar toda la info que necesitas, yo soy miembro desde hace bastantes años y es un gran pozo de sabiduría.

Edito: acabo de ver que surbyte a saco la info de esta web, desconozco si es usuario o no, pero a saco la info de un buen lugar.

Sigo atento este post que me interesa mucho!!

Un saludo. :stuck_out_tongue:

Muchas gracias por los consejos revisare la info me encanta leer así que daré un buen repaso y aprovecho para cuando lleguen las chapas hacer algún cambio porque quiero poner chapas juntas para un foco.

Gracias por participar y por los consejos que te aseguro tomare.

hiddenotebook:
Muchas gracias por los consejos revisare la info me encanta leer así que daré un buen repaso y aprovecho para cuando lleguen las chapas hacer algún cambio porque quiero poner chapas juntas para un foco.

Gracias por participar y por los consejos que te aseguro tomare.

jeje de nada eso si en tema programación no voy a poder ayudarte pero en el tema bricolaje todo el que desees, por curiosidad que dimensiones va a tener el lugar de cultivo ?

motoreto:
jeje de nada eso si en tema programación no voy a poder ayudarte pero en el tema bricolaje todo el que desees, por curiosidad que dimensiones va a tener el lugar de cultivo ?

Es un armario empotrado 2m X 60cm pero de momento solo usare el espacio que ilumina el foco.

Me lleve una gran decepción con el ethernet shield resulta que hay que tenerlo conectado al router y claro eso no es viable porque cada cual tiene el cultivo donde le viene en gana y seguro que nunca esta cerca de un router así que un modulo que no voy a usar... con este proyecto claro.

Comprare un wifi shield y listo a funcionar les dejo un pequeño ejemplo de código para poder encender y apagar un led desde internet que no es mio pero me sirve para hacer mas cosillas.

Video demostrativo

#include <SPI.h>
#include <Ethernet.h> 

  byte mac[]={0xDE,0xAD,0xBE,0xEF,0xFE,0xED}; //MAC
  IPAddress ip(169, 254, 48, 41); //IP
  EthernetServer servidor(80); // Puerto HTTP estándar

  int PIN_LED=8;
  String readString=String(30); //lee los caracteres de una secuencia en una cadena.
  String state=String(3);//Los strings se representan como arrays de caracteres (tipo char)


void setup() {
 
  Ethernet.begin(mac, ip); //Inicializamos con las direcciones asignadas
  servidor.begin();
 
  pinMode(PIN_LED,OUTPUT);
  digitalWrite(PIN_LED,LOW);
  state="OFF";
}

void loop() {
 
  //EthernetClient Crea un cliente que se puede conectar a
  //una dirección específica de Internet IP
  EthernetClient cliente= servidor.available();
 
  if(cliente) {
   
    boolean lineaenblanco=true;
    while(cliente.connected()) {
     
  if(cliente.available()) {
   
    char c=cliente.read();
 
  if(readString.length()<30) {
   
    readString.concat(c);
  //Cliente conectado
  //Leemos petición HTTP caracter a caracter
  //Almacenar los caracteres en la variable readString
}
  if(c=='\n' && lineaenblanco) //Si la petición HTTP ha finalizado
{
    int LED = readString.indexOf("LED=");
 
  if(readString.substring(LED,LED+5)=="LED=T") {
   
    digitalWrite(PIN_LED,HIGH);
    state="ON"; }
   
  else if (readString.substring(LED,LED+5)=="LED=F") {
   
    digitalWrite(PIN_LED,LOW);
    state="OFF";
}
  //Cabecera HTTP estándar
  cliente.println("HTTP/1.1 200 OK");
  cliente.println("Content-Type: text/html");
  cliente.println(); //Página Web en HTML
  cliente.println("<html>");
  cliente.println("<head>");
  cliente.println("<title>LAMPARA ON/OFF</title>");
  cliente.println("</head>");
  cliente.println("<body width=100% height=100%>");
  cliente.println("<center>");
  cliente.println("<h1>LAMPARA ON/OFF</h1>");
  cliente.print("

");
  cliente.print("Estado de la lampara: ");
  cliente.print(state);
  cliente.print("



");
  cliente.println("<input type=submit value=ON style=width:200px;height:75px onClick=location.href='./?LED=T\'>");
  cliente.println("<input type=submit value=OFF style=width:200px;height:75px onClick=location.href='./?LED=F\'>");
  cliente.println("</center>");
  cliente.println("</body>");
  cliente.println("</html>");
  cliente.stop();
  //Cierro conexión con el cliente.
  readString="";
        }
      }
    }
  }
}

me quedo por aqui que estoy con un proyecto parecido, solo un apunte. El arduino UNO a poco que compliques la web se te queda colgado, lo digo por experiencia propia. Tuve que adquirir un mega clon porque se me quedaba colgado a poner algunas funciones extras.

rgomqui, Eso depende mucho de tu codigo y no tanto del arduino.

muy cierto amigo, y soy autodidacta asique posiblemente mi codigo sea totalmente mejorable. Conforme vaya aprendiendo recursos intentare mejorarlo, ahora ando atascado en un temporizador para conectar y desconectar automaticamente la extraccion cada 15 minutos. Muchas gracias por el apunte :grin:

Crea otro Hilo y lo charlamos a ver si podemos darte una mano.