Meteorología Fácil

Anexo => Jardín y plantas. => Mensaje iniciado por: David Met en Agosto 16, 2011, 02:40:27 AM

Título: Invernadero de hongos.
Publicado por: David Met en Agosto 16, 2011, 02:40:27 AM
Por primera vez, voy a encarar un proyecto con un amigo que toca de oído a la electrónica y programa GAMBA; y yo que toco de oído a la electrónica y soy sordo en programación de PC. :titanic :titanic
Pero como ambos tenemos Fe, sabemos que tendremos un muy buen fin.

Lo que estamos haciendo, es un invernadero para hongos (aptos para el consumo humano) que será capaz de controlarse por internet. La manera en que decidimos encarar el proyecto fue, tomar un PIC con USB, un PC dedicada a supervisar al PIC y que esté conectado a Internet.
Del lado de la PC, como es de esperar, se programa en Gambas y del lado del PIC en Jalv2.

La forma de cultivar los hongos, es relativamente sencilla. Los hongos se cultivan en un vaso de plástico que lleva un "papel" con sustrato. Este sustrato es para alimentar al hongo. El vaso de plástico, lleva una tapa y un peso. Este peso es para mantener la tapa apoyada en el vaso para que se cree presión. Esta presión se genera, porque el hongo, a medida que va creciendo, emana un gas. Una vez que el hongo tiene la fuerza para levantar la tapa, sale por el rededor del vaso. El alimento del hongo, se hace una sola vez, por lo que no necesita supervisión.

Para garantizar una buen cultivo, hay que controlar a la temperatura, la humedad y la luz. Es aquí donde entra en juego el PIC. El PIC censa la humedad y la temperatura; y controla a los mismos con calefactor, refrigeración, ventilación, humificador y una fuente de luz. Esto quiere decir que, por cada vaso de plástico, se necesitan 7 dispositivos de los cuales 2 son censores y 5 son dispositivos generales. Esto parece muy poco pero si en vez de un solo vaso colocamos más, tendremos un invernadero grande y será tan grande como los dispositivos generales son capaces de soportar.

El proyecto, aún está en desarrollo y va lento.
Les muestro el hardware a utilizar en la versión 1.0 Si ven algo raro, por favor diganmelo:

(http://www.meteorologiafacil.com.ar/foros/index.php?action=dlattach;topic=599.0;attach=361)

También lo subo en pdf, porque me parece que se ve mejor.
Título: Re: Invernadero de hongos.
Publicado por: YO en Agosto 16, 2011, 08:04:46 AM
Hola David Met!!

Lindo proyecto encaraste!!  :\

Lo que no veo son los conectores para los sensores de luz.

En la medida en que pueda ayudarte, contá conmigo aunque más no sea para ponerle la tapita al vaso jejejeje  jajajajaja

Estoy seguro que  lograrás el objetivo muy satisfactoriamente  ok! ok!
Título: Re: Invernadero de hongos.
Publicado por: David Met en Agosto 16, 2011, 08:36:41 AM
Hola Yovani. Gracias por el aliento.

A la luz no la censamos, aunque no es mala la idea. La idea de que no la implementamos, es que se decidió hacerla crecer rápido. Solo tendrá algunas horas de noche. La encenderemos con el horario y no con falta de luz. Si durante el día tiene poca luz porque llueve, o está nublado, los hongos tendrán un poco de descanso que no les vendrá mal; pero bueno, también tendremos que experimentar con esto.
Título: Re: Invernadero de hongos.
Publicado por: HJ en Agosto 16, 2011, 10:10:26 AM
Hola David, tengo muchas preguntas...  ;D

Esos vasos de los que hablas ¿de que tamaño son?
¿Que tamaño tendría en sí el invernadero? para ver que tipo de conexión podría llegar ha hacerse.
¿de cuantos "vasos" estamos hablando? por el mismo motivo que la pregunta anterior

¿No se justificaría ponerle un micro chico a cada uno y un micro concentrador que establezca la comunicación entre ellos a, modo de Master?

Saludos
Título: Re: Invernadero de hongos.
Publicado por: David Met en Agosto 16, 2011, 12:17:45 PM
Le hago la pregunta a Martiniano y te contesto. La verdad que eso se está encargando él.
Título: Re: Invernadero de hongos.
Publicado por: HJ en Agosto 16, 2011, 12:46:15 PM
Te hago esas preguntas, ya que es necesario saber de que estamos hablando para no tirar ideas al vicio, o encarar soluciones que después no van ha servir.

Saludos
Título: Re: Invernadero de hongos.
Publicado por: Ricber en Agosto 16, 2011, 02:13:18 PM
Muy interesante, cualquier cosa que necesites estaremos para
ayudar.
Veo un reloj, cual seria la funcion?
Título: Re: Invernadero de hongos.
Publicado por: David Met en Agosto 16, 2011, 05:18:53 PM
Gracias Ricardo. En la versión 1 no va a estar, es solo para la compatibilidad con la versión 2. En la versión 2, el objetivo sera que el PIC tome todas las deciciones por si solo, sin intervención de la PC
Título: Re: Invernadero de hongos.
Publicado por: David Met en Agosto 16, 2011, 06:18:55 PM
Cita de: HJ en Agosto 16, 2011, 12:46:15 PM
Te hago esas preguntas, ya que es necesario saber de que estamos hablando para no tirar ideas al vicio, o encarar soluciones que después no van ha servir.

Saludos

Ni bien tenga las medidas las paso. De todas maneras, los vasos no son grandes (del tamaño de una vaso de vidrio aprox.) y se agruparán según reunamos los dispositivos de refrigeración y calefacción. Según las frigorías y las calorías de cada equipo, nos dará la cantidad de hongo a cultivar.
Título: Re: Invernadero de hongos.
Publicado por: HJ en Agosto 16, 2011, 06:44:39 PM
Entonces vas ha tener que llenar de sensores... va ha ser un cablerío bárbaro, por decirlo de alguna manera. Creo que si o si vas ha tener que poner un micro para un grupo de vasos que trabaje en forma independiente y en todo caso utilizar algún tipo de protocolo "industrial" para interconectarlos.

En una de esas estoy entendiendo mal las cosas...

saludos
Título: Re: Invernadero de hongos.
Publicado por: Ricber en Agosto 17, 2011, 11:41:32 AM
Cita de: David Met en Agosto 16, 2011, 05:18:53 PM
Gracias Ricardo. En la versión 1 no va a estar, es solo para la compatibilidad con la versión 2. En la versión 2, el objetivo sera que el PIC tome todas las deciciones por si solo, sin intervención de la PC


Me imaginaba, se hace mas interesante con la posibilidad de que el micro atienda el proceso
autonomamente.
Título: Re: Invernadero de hongos.
Publicado por: YO en Agosto 17, 2011, 05:09:34 PM
Yo no creo que la solución pase por Hacer grupos de vasos, porque también se multiplicaría la cantidád de sistemas de balanceo térmico.

Lo ideal sería determinar cantidades para ensayos, y si no se tiene muy claro todavía el proceso y la cosa es por ahora experimentál, se podría usar una heladera en desuso y una estufa dentro de ella tipo caloventor, para proporcionar temperatura homogénea.

De ésta manera dejando siempre el ventilador del caloventor encendido (o cualquier ventilador al mínimo) se debería alternar entre encender el motor de la heladera o la resistencia del calefactor.

Esto es muy simple de hacer con el microcontrolador y se podría tener una colonia de hongos importante en función del tamaño de la heladera.

La iluminación no sería tampoco problema, y en algun lado ví que se utilizan longitudes de onda tipo ultravioleta para acelerar el proceso.

La NASA hace éstos ensayos con invernaderos como lo que mencioné de la heladera  y con una atmósfera simulada en su interior para ver la posibilidád de utilizar la superficie de Marte para sembradío.

¿Cual sería la temperatura de estabilización de las muestras?

En la semana pasada preparé un programa en Jal que justamente controla calor y frio en función de un setpoint, lo tengo terminado, cuando llegue a casa lo subo para ver si te sirve para probar y ya lo tendrias resuelto.  la semana próxima llego de viaje y publico las fotos del control o un video.     jejejejeje nos metimos de caveza en tu proyecto  jajajajaja jajajajaja espero que los hongos no terminen siendo venenosos con tanta electrónica  jajajajaja
Título: Re: Invernadero de hongos.
Publicado por: HJ en Agosto 17, 2011, 05:32:58 PM
Hola Yo (suena como saludarse solo  ;D ) muy buena idea eso de la heladera.
Tiro un par de ideas al respecto, lo haría tipo cámara frigorífica, es decir, utilizando un forzador de aire pen funcionamiento permanente y como elemento calefactor una de esas resistencias que se utilizan en la estufas de cuarzo. También se debería controlar, por lo visto, la humedad, pero que es factible.
En las incubadoras de huevos, la humedad se controla con recipientes de agua que son calentados por las mismas resistencias que generan el calor y el exceso es retirado mediante extractores (ventiladores sacando aire).

Y sí, nos hemos metido todos con los hongos electrónicos  :D .

Saludos
Título: Re: Invernadero de hongos.
Publicado por: YO en Agosto 17, 2011, 10:21:47 PM
Claro, lo del calefactor de cuarzo tambien sirve hace el mismo efecto  ok!

Y lo de la humedád tambien se podría  resolver así como dices controlando un goteo.

Solo por si sirve para algo (auque creo que David ya lo tiene cocinado) les dejo mi programa de control de temperatura, falta el control de la humedad pero no sería problema agregarleselo.

(http://img692.imageshack.us/img692/7933/dsc01529wep.jpg) (http://imageshack.us/photo/my-images/692/dsc01529wep.jpg/)

Uploaded with ImageShack.us (http://imageshack.us)

Lo probé con un Pirómetro marca Jumo (Aleman) nuevo y parece que dicen lo mismo.

Acá les dejo el programa

-- PROGRAMA: TERMOCONTROL (versión 01)

-- DESCRIPCIÓN:
-- Este programa mide y controla la temperatura desde -40ºC a 125ºC
-- El sensor utilizado es un TC1047 conectado a un amp.op que multiplica
-- por dos la salida del sensor, ingresando al ADC de un PIC 16f877A.
-- El ADC está configurado en 8 bits, por lo tanto la resoluciòn serà de
-- 1ºC, teniendo la posibilidád de medir y controlar temperaturas tanto
-- negativas como positivas.
-- Se podrá modificar el setpoint mediante las teclas de PGM, MAS y MENOS,
-- en todo el rango de medición, tanto en la pantalla de "espera" como en
-- la pantalla de "trabajo", retornando siempre al lugar desde donde se
-- pidió cambiar el setpoint.
-- Para recorrer rápidamente el rango de SP se agregó la función de
-- programar primero las unidades, pero si la tecla de incremento o la
-- de decremento se mantiene oprimida por más de 9 cambios, se comenzará
-- a modificar las decenas, al soltar la tecla, vuelve a modificar las
-- unidades si ésta se vuelve a oprimir.
-- El valor de SP queda guardado en EEPROM, por lo tanto, cada vez que se
-- conecte la alimentación, tomará el último valor utilizado.
-- El contról es de dos salidas, tipo on/off, una activa antes de alcanzar el
-- set y la otra, al superarlo.
-- El estado de las salidas se verá en la pantalla de trabajo
-- Al momento de energizarlo, queda en "espera" hasta que se habilita la
-- medición por medio de la tecla RUN, si mientras que está en la "pantalla
-- de  trabajo" se vuelve a oprimir ésta tecla, volverá al modo de "espera".
   
-- IMPORTANTE:

-- Este código fué creado como "ejercicio de programación en JAL v2"
-- y tal como está funciona correctamente.
-- Se autoriza su publicación con fines didacticos a los foros de:
-- Meteorología Fácil y uControl.
-- Toda modificación o uso del mismo, implicará notificarlo a los
-- respectivos Foros, publicando las mejoras, código modificado y comentarios.
-- Como complemento de éste ejercicio, se podría incluír una rutina en la
-- que mientras se esté programando, simultáneamente el contról esté activo.



-- Programa creado por Juan (Yovani - (YO)) 07/08/011 --

-- Incluimos la librería del pic 16F877A
include 16f877a

             
pragma target OSC HS   -- Usamos un cristal...
pragma target clock 4_000_000 -- de 4 Mhz.
pragma target WDT  disabled  -- No Perro guardian
pragma target LVP  disabled  -- No programar en baja tensión

----------------------- Configuro los pines de E/S --------------------------

enable_digital_io()      -- Todos los pines como I/O digitales


    alias Run  is pin_C0        -- Tecla Run será equivalente al pin 15 (RC0)   
    alias Pgm is pin_C1         -- Tecla Pgm será equivalente al pin 16 (RC1)   
    alias Mas  is pin_C2        -- Tecla Mas será equivalente al pin 17 (RC2)     
    alias Menos is pin_C3       -- Tecla Menos será equivalente al pin 18 (RC3)
   alias Calefactor is pin_C4  -- El calefactor será equivalente al pin 19 (RC4)
   alias Ventilador is pin_C5  -- El Ventilador será equivalente al pin 20 (RC5)

   alias Run_direction is pin_c0_direction
   alias Pgm_direction is pin_c1_direction
   alias Mas_direction is pin_c2_direction
   alias Menos_direction is pin_c3_direction
   alias Calefactor_direction is pin_c4_direction
   alias Ventilador_direction is pin_c5_direction

   Run_direction = input
   Pgm_direction = input
   Mas_direction = input
   Menos_direction = input

   Calefactor_direction = output
   Ventilador_direction = output

   
------- Declaro las constantes y variables a utilizar en el programa --------

var dword sumatoria
var dword medicion
var sdword SPv
var  byte SPK
var sdword temperatura
var byte   Iniciar
var byte   Programar
var byte   Retomar
var sdword temp
var byte c_1 = 0
var byte c_2 = 0


include delay     
include format
include pic_data_eeprom





----------------------- Configuro el LCD -------------------------------------

const byte LCD_ROWS    =  2        -- LCD de 2 lineas
const byte LCD_CHARS   =  20       -- y 20 caracteres por linea

     alias  lcd_en        is  pin_D7       -- Pin E del LCD
     alias  lcd_rs        is  pin_D6       -- Pin RS del LCD
     alias  lcd_dataport  is  portB_low    -- 4 data pins
portb_direction = 0x00         -- Todo el puerto B como salidas
portD_direction   = all_output     -- Todo el puerto D como salidas

                                    -- (B0 al pin 11 del LCD, DB4)
                                           -- (B1 al pin 12 del LCD, DB5)
                                           -- (B2 al pin 13 del LCD, DB6)
                                           -- (B3 al pin 14 del LCD, DB7)



-- --------------------------------------------------------------------------
-- Incluyo librerias e inicializo LCD:
-- --------------------------------------------------------------------------
include lcd_hd44780_4                 -- Incluyo la libreria del LCD
lcd_init()                            -- e inicializo el controlador del LCD
include print                         -- Rutinas para mostrar valores en el LCD 

------------------ Cadenas a mostrar (Mensajes) ----------------

var byte line1[LCD_CHARS] = "Termo control       "  -- Mensaje de arranque                       
var byte line2[LCD_CHARS] = "en espera           "
var byte line3[LCD_CHARS] = "Programar set point "
var byte line4[LCD_CHARS] = "SP:                 "                                                     
var byte line5[LCD_CHARS] = "Iniciando           "
var byte line6[LCD_CHARS] = "Medicion            "                                       
var byte line7[LCD_CHARS] = "Temperatura:        "
var byte line8[LCD_CHARS] = "Set:      out1=  2= "


-- -------- Rutina para mostrar el símbolo de grado ----------
-- ------------ creada por el Maestro FELIXIS ----------------

const byte signogrado[] =     

   0b_00001100,
   0b_00010010,
   0b_00010010,
   0b_00001100,
   0b_00000000,
   0b_00000000,
   0b_00000000,
   0b_00000000
}

lcd_define(0, signogrado)

-- -------------------------------------------------------------
-- -------------------------------------------------------------
   
-- -------------------- Configuramos el ADC ------------------------
-- Utilizamos el modo de baja resolución (8 bits)

const bit ADC_HIGH_RESOLUTION = false        -- ADC en 8 bits

const byte ADC_NCHANNEL = 1      -- Usamos un solo canal de entrada

-- No utilizamos la referencia externa

const byte ADC_NVREF = ADC_NO_EXT_VREF -- Como volt referencia usamos
                                       -- la tension de la fuente
 
include adc      -- Incluímos la librería de control

adc_init()      -- Inicializamos el adc




-- --------------------------------------------------------------------
-- -------- Declaramos los procedimientos que realizaremos ------------

procedure Pantalla_Espera () is -- Procedimiento de pantalla de espera
      
   forever loop

         if Programar == 1 then
            exit loop
          end if

      Calefactor = off
      Ventilador = off

         Retomar = 0

        lcd_clear_screen()             -- Borro la pantalla

   lcd_cursor_position(0,0)    -- Coloco el cursor para centrar el mensaje
   print_string(lcd, line1)    -- Escribo el mensaje (Termo control)
   lcd_cursor_position(1,0)    -- Coloco el cursor para centrar el mensaje
   print_string(lcd, line2)    -- Escribo el mensaje (en espera)

        delay_100ms(1)       -- Retardo para ver mensaje

   if Run == 0 then      
         
          while (Run == 0 ) loop
            Iniciar = 1   
        end loop
      exit loop
    end if

   if PGM == 0 then
       
         while (PGM == 0 ) loop
            Programar = 1
            Retomar = 1
        end loop
      exit loop
    end if

              
  end loop
   

end procedure
-- -----------------------------------------------------------------------
-- -----------------------------------------------------------------------
procedure Pantalla_Comienzo () is      -- Procedimiento de pantalla de comienzo

   if Iniciar == 1 then

      Calefactor = off
      Ventilador = off

         lcd_clear_screen()             -- Borro la pantalla

   lcd_cursor_position(0,0)    -- Coloco el cursor para centrar el mensaje
   print_string(lcd, line5)   -- Escribo el mensaje (Iniciando)
   lcd_cursor_position(1,0)    -- Coloco el cursor para centrar el mensaje
   print_string(lcd, line6)   -- Escribo el mensaje (Medicion)

         delay_100ms(30)          -- espero 3 segundos...

      end if
   Iniciar = 0   
   

end procedure

-- --------------------------------------------------------------------------
-- --------------------------------------------------------------------------
procedure Pantalla_Trabajo () is     -- Procedimiento de pantalla de trabajo

       temperatura = 0 
     
     forever loop                    --Bucle principal

      if Retomar == 1 then
            exit loop
          end if

         Retomar = 0

--    ---- Ahora tomamos la mediciòn del canal 0 del ADC ----
--    -------    255 veces y hacemos un promedio    ---------


      for 255 loop   
            
        medicion = adc_read_low_res(0)     -- Tomamos el valor de la medición
                                        -- en el canal 0
      sumatoria = sumatoria + medicion     -- Sumamos las muestras.....
   end loop

   sumatoria = sumatoria / 255         -- y terminamos el promedio, el
   medicion = sumatoria            -- resultado queda en mediciòn
    
   delay_100ms(7)           -- Hacemos un retardo para que se vean los
                       -- cambios de lectura antes de borrar la pantalla

   temperatura = (medicion * 196)/10        -- convertimos el valor del adc a volt
   temperatura = (temperatura /2)+2

   temperatura = (temperatura - 500)/10      -- lo pasamos a temperatura
   temp = temperatura
   
         lcd_clear_screen()             -- Borramos la pantalla

   lcd_cursor_position(0,0)    -- Colocamos el cursor para centrar el mensaje
   print_string(lcd, line7)   -- Escribimos el mensaje (Iniciando)
   lcd_cursor_position(1,0)    -- Colocamos el cursor para centrar el mensaje
   print_string(lcd, line8)   -- Escribimos el mensaje (Medicion)

    lcd_cursor_position(0,11)        -- Colocamos el cursor para ubicar la medición
    format_sdword_dec(lcd, temp,4,0) -- y lo mostramos sin decimales
   lcd = 0                     -- Agregamos el símbolo de grado
   lcd = "C"               -- y el prefijo de centígrado

   SPv = SPK       
   SPv = (((SPv * 196)/10)/2)-500        -- convertimos el valor de la eeprom a volt
   SPv = SPv/10
   
   lcd_cursor_position(1,3)        -- Colocamos el cursor para ubicar el setpoint
   format_sdword_dec(lcd, SPv,4,0) -- y lo mostramos sin decimales
   lcd = 0
   lcd = "C"

         delay_100ms(1)      -- Retardo para ver mensaje

       if Run == 0 then        -- Acá avisamos que queremos dejar de medir         
          while (Run ==0 ) loop   
        end loop
          Iniciar = 0          
           exit loop         -- salimos del loop
         Pantalla_Espera ()

        end if

    if PGM == 0 then          -- Acá avisamos que queremos modificar el setpoint
         while (PGM == 0 ) loop
            Programar = 1
        end loop
      exit loop
    end if

--       -------   Esta es la rutina de contról ------

         if temp < SPv then
            Calefactor = on
             Ventilador = off
            lcd_cursor_position(1,15) 
            lcd_write_char("1")
            lcd_cursor_position(1,19) 
            lcd_write_char("0")

         elsif temp == SPv then
            Calefactor = off
             Ventilador = off
            lcd_cursor_position(1,15) 
            lcd_write_char("0")
            lcd_cursor_position(1,19) 
            lcd_write_char("0")

         elsif temp > SPv then
            Calefactor = off
             Ventilador = on
            lcd_cursor_position(1,15) 
            lcd_write_char("0")
            lcd_cursor_position(1,19) 
            lcd_write_char("1")
          
         end if
   end loop
end procedure



-- -------------------------------------------------------------------------   
-- -------------------------------------------------------------------------

procedure Prog_sp () is     -- Procedimiento de programar set point

   if Programar == 1 then

      lcd_clear_screen()             

   lcd_cursor_position(0,0)   
   print_string(lcd, line3)   
      delay_100ms(20)       

   lcd_cursor_position(1,0)   
   print_string(lcd, line4)     

   c_1 = 0
   c_2 = 0

   forever loop

   SPv = SPK
      SPv = (((SPv * 196)/10)/2)-500        -- convertimos el valor de la eeprom
         SPv = SPv/10                       -- a temperatura
   
         if SPv < -40 then
            SPv = -40
         end if

            if SPv > 125 then
               SPv = 125
            end if   

   lcd_cursor_position(1,6)       
   format_sdword_dec(lcd, SPv,4,0) 
   lcd = 0
   lcd = "C"

   if (Mas == 0) then      
         delay_100ms(5)
         if SPv < 125 then
                  
            if (c_1 < 9) then
               SPK = SPK + 1
               c_1 = c_1 + 1               
            else
               SPK = SPK + 10   
               c_1 = c_1 + 1            
             end if
         end if                 
      else   
         c_1 = 0                  
   end if


      if (Menos == 0) then               
         delay_100ms(5)
                if SPv > -40 then

               if (c_2 < 9) then
                  SPK = SPK - 1   
                  c_2 = c_2 + 1
               else
                  SPK = SPK - 10   
                  c_2 = c_2 + 1         
                  end if   
            end if
      else
         c_2 = 0                                                                                                 
   end if
               
   

      if PGM == 0 then               
          while (PGM == 0 ) loop       
               end loop
            delay_100ms(5) 
            data_eeprom_write (0,SPK)
            delay_100ms(5)           
            SPK = data_eeprom (0)
         
          exit loop
      end if

     end loop

     end if      

      Programar = 0

end procedure

-- ----------------------------------------------------------------
-- ----------------------------------------------------------------


-- -------------------------------------------------------------------
--      ******** Acà inicia el programa en sì ********
-- -------------------------------------------------------------------
         Programar = 0
         Iniciar = 0   
         Retomar = 0
         Calefactor = off
         Ventilador = off

         SPK = data_eeprom (0)

         SPv = SPK       
            SPv = (((SPv * 196)/10)/2)-500    
            SPv = SPv/10                
         
forever loop      
         Pantalla_Espera ()      
         Prog_sp ()            
         Pantalla_Comienzo ()      
         Pantalla_Trabajo ()      

end loop

-- ---------------------------------------------------------------------
--    ********************** y acá terminó ***********************
-- ---------------------------------------------------------------------

Saludos!
Título: Re: Invernadero de hongos.
Publicado por: David Met en Agosto 18, 2011, 01:57:01 PM
Hola a todos.
Gracias por las buenas ideas y concejos que me están dando.

La idea es, tomar un grupo reducido de vasos con hongos y hacerle su propio ambiente. Por ahora, la idea que tenemos en mente es colocarlo dentro de una caja (el cual caben o van a caber 5 vasos) y controlarle todos los parámetros.
La manera con que configuramos el pic, puede controlar hasta 4 cámaras o cajas, por lo tanto serían 20 vasos.

Hay una razón por la de hacer 4 cámaras, y es para cultivarlos en diferentes fechas. Por ejemplo, el comienzo de la cámara 2, será a dos semanas más tarde de iniciar el primero. La cámara 3 se hará 2 semana después del segundo, y lo mismo con la cuarta cámara. Lo hacemos así para no tener que cosechar todos los hongos en forma simultánea. Si lo hacemos separado, siempre tendremos hongos frescos.

La parte que más nos preocupa, es la refrigeración. Porque tener 4 aire acondicionados, es una muy mala idea. Calculo que haremos lo que dice HJ para controlar la temperatura, con un extractor de aire. De todas maneras, estamos investigando y empezaremos a hacer pruebas. Otra alternativa que tenemos en mente, si falla esta, es la de hacer una sola cámara pero cultivar de la misma manera que la anterior.
Título: Re: Invernadero de hongos.
Publicado por: YO en Agosto 18, 2011, 02:25:41 PM
Hola david!

Si es así te recomiendo un solo aire acondicionado y conductos con dampers para cada grupo.

Los dampers son escotillas que están abisagradas en un costado y en el otro lado le  pones un servo chico (o actuador) que abra o cierre según lo necesites, de esa manera, el aire frio lo mandas donde quieras.

Del mismo modo podes hacer con el calefactor, uno solo y dirigido a donde quieras.

Podes usar tubería de PVC si no necesitas mucha temp. o chapa aislada con lana de vidrio y film de aluminio.

De todas maneras no creo que uses mucho frio ya que éstos vichos son más vale de clima cálido ¿no?

Al margen.. ¿ que te pareció mi programita voy aprendiendo no ?  eh?!

Cuando tengas a HONGOLANDIA  resuelta ¿nos vas a invitar a comer?  jajajajaja jajajajaja jajajajaja
Título: Re: Invernadero de hongos.
Publicado por: Islagrande en Agosto 19, 2011, 02:21:56 PM
Cita de: YO en Agosto 18, 2011, 02:25:41 PM
Cuando tengas a HONGOLANDIA  resuelta ¿nos vas a invitar a comer?  jajajajaja jajajajaja jajajajaja

Champiñones!! Yo quiero Champiñones!!

Y si no!!!
(http://www.museabuse.com/Smileys/dark/starwars.gif)

;D  ;D  ;D
Título: Re: Invernadero de hongos.
Publicado por: David Met en Agosto 19, 2011, 02:34:50 PM
Disculpame YO, ayer entré por apenas 2 minutos y no lo leí.
Se ve muy bien. Están muy buenos los procedimientos porque lo podes usar en otros programas y así te ahorras de tipear todo de nuevo.

Yo me conformo con terminar el proyecto. Si luego puedo cultivar muchos hongos, será una muy buena excusa para hacer la primer Kedada  (reunión) de meteorología fácil.
Título: Re: Invernadero de hongos.
Publicado por: David Met en Septiembre 15, 2011, 04:58:28 AM
A paso lento pero seguro, ya terminé el diagrama del PCB. Ahora me falta hacerlo y montarlo. Luego vendrán las primeras pruebas.
Le adelanto la imagen en 3D echo con el Kicad.

(http://www.meteorologiafacil.com.ar/foros/index.php?action=dlattach;topic=599.0;attach=373)

Y el diagrama esquemático:

(http://www.meteorologiafacil.com.ar/foros/index.php?action=dlattach;topic=599.0;attach=375)

Las características principales son:

- Habilitado para trabajar con sensores analógicos.
- Habilitado para trabajar con sensores seriales (I2C)
- Habilitado para trabajar con una combinación de ambos.
- 20 salidas de 12V @ 500 mA
- Entrada de 12V para las salidas aislada de la fuente de la placa.
- Capacidad para controlar simultáneamente, hasta cuatro series de cajas. Cada caja contendrás X cantidad de hongos que estará determinado por los calefactores, humificador, ventilación, refrigeración y Luz.
- Salida USB para conectarlo a la PC.
- Salida serial I2C para conectar otro microcontrolador. En la versión 2 (*), se utilizará para enviar los datos a Internet sin la necesidad de la PC.
- Reloj de tiempo real por I2C. Se utilizará en la versión 2 (*).
- Memoria serial por I2C. Se utilizará en la versión 2 (*).
- PCB apto para la versión 1 hasta la 2 (*).
- Microcontrolador PIC 18F4550.

(*) Hago referencia según el software que contendrá el PIC. No obstante, si se desea, y con la modificación del software, se podrá utilizar en la versión 1.X

Título: Re: Invernadero de hongos.
Publicado por: YO en Septiembre 16, 2011, 04:12:56 PM
Barbaro!!! exprimis todos los recursos del micro  ok! ok!
Título: Re: Invernadero de hongos.
Publicado por: David Met en Septiembre 16, 2011, 05:49:25 PM
Hasta el último bit ;D
Título: Re: Invernadero de hongos.
Publicado por: YO en Octubre 05, 2011, 09:59:45 AM
Hola !! ¿Como anda Hongolandia?
Título: Re: Invernadero de hongos.
Publicado por: David Met en Octubre 05, 2011, 05:32:17 PM
Bien.
Ahora tengo que hacer el PCB. La quiero mandar hacer, por lo tanto, estoy esperando a un amigo que tenga que realizar PCB para yo unirme a él. Sino me sale muy caro.
Título: Re: Invernadero de hongos.
Publicado por: YO en Octubre 05, 2011, 06:09:25 PM
Si claro, ese es un problema porque necesitas cantidád minima.
Antes yo hacía las placas en un ratito y quedaban como de fábrica porque utilizaba los elementos de transferencia como los Logotyp o los Letraset, pero ya no se consiguen, por lo tanto no me quedó más remedio que aprender cerigrafía y cambiar el método por otro más lento y principalmente muy sucio (según mi señora jejeje).
Por otro lado, estaría muy bueno que si algún otro forista tenga el mismo problema, combinar los trabajos para poder juntar las necesarias como para que cueste menos, el tema es que si no lo hablamos, tampoco lo sabremos, es más, capaz que en éste mismo foro haya gente que lo pueda hacer, ....bueno son solo ideas.

Saludos!!
Título: Re: Invernadero de hongos.
Publicado por: David Met en Octubre 05, 2011, 07:27:20 PM
En mi caso particular, las hago con un papel termotransferible. El método es sencillo, primero imprimo sobre esa hoja, el PCB; luego lo pongo de cara al cobre y lo plancho.

Pero esta vez, quiero que quede profesional, por eso, las voy a mandar hacer a una empresa que se dedica a eso. Está en Pehuajó y no es muy caro.
Título: Re: Invernadero de hongos.
Publicado por: David Met en Febrero 05, 2012, 09:28:19 AM
Después de 5 meses, he podido retomar el trabajo. Por problemas que no vienen al caso, tuve que hacer la placa en forma artesanal. Pero esto no es malo, sino que me permite depurar bien la placa antes de mandarla hacer. Les muestro 2 pares de fotos de como va avanzando la construcción y algunos videos de las pruebas realizadas.

La primera foto, es del lado de los componentes sin componentes instalados:

(http://www.meteorologiafacil.com.ar/foros/index.php?action=dlattach;topic=599.0;attach=468)

La segunda foto, es del lado de las pistas sin componentes instalados:

(http://www.meteorologiafacil.com.ar/foros/index.php?action=dlattach;topic=599.0;attach=470)

La tercera foto, es del lado de los componentes con componentes instalados:

(http://www.meteorologiafacil.com.ar/foros/index.php?action=dlattach;topic=599.0;attach=472)

La cuarta foto, es del lado de las pistas con componentes soldados:

(http://www.meteorologiafacil.com.ar/foros/index.php?action=dlattach;topic=599.0;attach=474)

Y seguimos con los videos.

El primer video, vemos cuando energizamos la placa por primera vez sin C. I. para evitar quemarlos si hay algo mal:

Invernadero. Energizado por primera vez. (http://www.youtube.com/watch?v=DyYHvadlb2U#)

El segundo video, realizamos una prueba de las tensiones en toda la plaqueta, tanto sea para GND como tensión positiva.

Invernadero. Prueba de tensiones. (http://www.youtube.com/watch?v=Z1827cOBbmI&feature=related#)

El tercer video, probamos los leds testigo de los rele para evitar dolores de cabezas.

Invernandero. Prueba led rele. (http://www.youtube.com/watch?v=plr-5Ydbjq0&feature=g-upl&context=G22d2ad1AUAAAAAAAAAA#)
Título: Re: Invernadero de hongos.
Publicado por: HJ en Febrero 05, 2012, 11:47:45 AM
Te quedó muy buena David, felicitaciones  :\ :\ :\   ok!
Título: Re: Invernadero de hongos.
Publicado por: David Met en Febrero 05, 2012, 03:49:10 PM
Muchas gracias HJ
Título: Re: Invernadero de hongos.
Publicado por: Ricber en Febrero 06, 2012, 09:57:35 AM
Muy buena la placa, como haces la impresion de los
componentes.
Título: Re: Invernadero de hongos.
Publicado por: David Met en Febrero 06, 2012, 11:25:22 AM
De la misma manera que la del cobre. La impresión debe hacerse en espejo, así cuando se transfiere, lo hace en espejo y queda del derecho. Limpio la placa con virulana, luego lo limpio con alcohol para sacarle la grasa de los dedos, enfrento el toner con la placa, lo alineo con los agujeros de los componentes (ya los agujeree); para ello utilizo alfileres, siguiente paso es fijar el papel con cinta. Retiro los alfileres y plancho. Una vez transferido, lo pongo en agua caliente para que despegue el papel y listo. Una vez seca la placa, le paso flux transparente en aerosol para protegerlo de las ralladuras que puedan levantar el toner.

El flux en aerosol, le pongo el aislamatic.
Título: Re: Invernadero de hongos.
Publicado por: Ricber en Febrero 07, 2012, 07:28:14 AM
Sorprendente, queda espectacular. ok!
Título: Re: Invernadero de hongos.
Publicado por: David Met en Febrero 07, 2012, 09:56:05 PM
Primera prueba con PIC.
Probamos uno a uno, los LEDs testigos de los relé. El programa utilizado, está adjuntado. Se puede descargar el fichero .jal o directamente, el archivo .hex listo para grabarlo al PIC.

Prueba 1 con PIC led rele (http://www.youtube.com/watch?v=_CUYgdEe9Lk&feature=context&context=G22d2ad1AUAAAAAAAAAA#)
Título: Re: Invernadero de hongos.
Publicado por: David Met en Febrero 09, 2012, 09:01:36 PM
Última prueba del hardware para la versión 1.x
En esta oportunidad, probaremos las entradas analógicas del PIC y sus componentes asociados como por ejemplo los Amplificadores Operacionales.

Prueba AO (http://www.youtube.com/watch?v=VpvTp5lsx7c&feature=g-upl&context=G22d2ad1AUAAAAAAAAAA#)
Título: Re: Invernadero de hongos.
Publicado por: YO en Febrero 13, 2012, 11:05:40 AM
Hola a todos!!!

David, la placa te quedó tan bien como si la hubieses mandado a hacer .
Cuando uno le pone amor a las cosas que hace, no puede salir mal.

  Felicitaciones!!!!!   ok! ok! ok!

  Aguante Hongolandia!!!!!  :\ :\ :\
Título: Re: Invernadero de hongos.
Publicado por: David Met en Febrero 13, 2012, 08:16:48 PM
Gracias YO.

Pronto estaremos haciéndolo trabajar. Hoy vamos a hacer la prueba final, lo vamos a conectar a la computadora y ver como controla a los hongos modificando los valores de temperatura y humedad. Si esta prueba sale bien, ya empezamos a armar el lugar para cultivarlos.
Título: Re: Invernadero de hongos.
Publicado por: David Met en Febrero 14, 2012, 06:17:15 AM
Tengo una buena noticia, y una mala noticia.
La buena noticia, es que pudimos probar la placa con la PC y el programa echo en gamba. Anda de 10.
La mala noticia, es que se me pasó por alto que, en el PIC18F4550, cuando se habilitan las entradas analógicas, se desactiva el pin RA4. Para solucionarlo, vamos a cambiarlo por el 18F4620. No es 100% compatible pin a pin, pero no es mucho trabajo modificar la placa.
Título: Re: Invernadero de hongos.
Publicado por: Ricber en Febrero 14, 2012, 07:43:09 AM
Hola David, no puedes dejar de usar el RA4 por un momento, pasar la configuracion a analogico, medir y volver
a configurar el RA4 como digital, asi te evitas de cambiar el micro.
Se entiende la idea? ??? 
Título: Re: Invernadero de hongos.
Publicado por: David Met en Febrero 14, 2012, 10:51:10 AM
Si, se entiende la idea. De echo lo habíamos tomado en cuenta, pero nos asusta que en el cambio de estado, queme el dispositivo y/o relay con la frecuencia de conmutación.

Pero se me ocurrió una idea mientras te contestaba, colocarle un capacitor para que funcione como UPS en el momento del corte del PIN RA4. Bien, haré pruebas al respecto.
Título: Re: Invernadero de hongos.
Publicado por: David Met en Febrero 14, 2012, 11:08:30 AM
Perdón a todos. Una mala lectura del data sheet hizo que me equivocara.
Es afectado el pin RA4 cuando se utiliza el ADC del pic pero como entrada, como salida, este pin no es afectado.

Tengo que investigar que es lo que me está trabando dicho pin. Por las dudas, voy a configurar yo mismo el ADC y no utilizar la librería que trae JALv2. Seguramente viene por ahí el problema.
Título: Re: Invernadero de hongos.
Publicado por: inus en Junio 03, 2012, 04:30:48 PM
Como va el proyecto?, lo sigo con interes!!!
Saludos
Omar
Título: Re: Invernadero de hongos.
Publicado por: David Met en Junio 03, 2012, 09:29:54 PM
Hola Omar.
El proyecto sigue en camino. A paso lento pero firme. Ahora estamos con dos problemas, una la PC con linux palmó y hay que llevarla a reparar. Es la notebook de mi amigo y utiliza linux. En el trabajo, es la única PC con linux. Como sabrás, hasta que no se repare, no podemos avanzar.
El segundo problema, es que no está respondiendo bien. Es sencillamente una máquina de estado y los comando se trabajan con ASCII. El problema radica que le preguntamos por una cosa y responde con otra.

Por ejemplo, suponemos que el valor 0x50 nos devuelve el estado del ventilador (si está encendido o apagado) y en el valor 0x51 nos devuelve el resultado de la humedad. Bueno, cuando le mandamos 0x51, nos responde con el valor de la humedad.
Por ahora no sabemos que es lo que está mal, si la librería de JAL en el proceso de recuperación del valor recibido por USB, o si el problema está en el programa echo en Linux, o si lo tiene el programa que diseñe en el PIC (aparte de la librería).
Título: Re:Invernadero de hongos.
Publicado por: David Met en Abril 26, 2015, 03:21:08 AM
A casi 3 años de inactividad en el proyecto (Dios mío, como pasó el tiempo); ya tenemos la primera fase echa. El pic responde y trabaja como nosotros queremos.
Aproximadamente desde principio de año, que retomamos el proyecto, se nos han presentado numerosos problemas. El principal fue que la PC no nos reconocía al PIC.

Este es el primer programa para la versión V1.x. Está implementado sobre el PIC 18F4550 conectado al USB.
Para el que lo quiera analizar, el programa está adjuntado. También adjunto un txt con la explicación de como es la comunicación y comandos utilizados.