martes, 25 de abril de 2017

Tizón tardío de la papa. Hambruna

Hacia 1840 se desencadenó una epidemia sanitaria sobre el cultivo de papa (Phytophtora infestans) en toda Europa. Se estima que 2,000,000 de personas fallecieron como consecuencia de la pérdida de las cosechas de este tubérculo (Solanum tuberosum), originario de los andes peruanos, en América del Sur.


jueves, 20 de abril de 2017

Control de bomba de una cisterna

El almacenamiento de agua en una cisterna, permite contar con una reserva para abastecer una vivienda o negocio, almacenando agua durante las horas que la red de abastecimiento nos permita.

De esta manera, aumentamos al máximo la cantidad de agua disponible, o bien, evitamos agotar nuestras existencias cuando el suministro se vuelve irregular.

En ocasiones, el tinaco está un tanto inaccesible para revisar constantemente el nivel de reserva que nos queda, de manera que es más cómodo y conveniente contar con un sistema automático que haga el trabajo por nosotros.

El objetivo de este proyecto es construir un sistema automático para controlar la bomba de una cisterna. El sistema está siempre pendiente del nivel de agua en el tinaco y cuando se alcanza el nivel crítico, activa una bomba que eleva agua desde una cisterna a nivel del suelo.

Circuito de control de bomba para una cisterna.

El circuito consta de un microcontrolador -en este caso se utilizó la placa electrónica programable modelo MSP 430 Launchpad de Texas Instruments-, un circuito relevador de voltaje de 120V a 10A, accionado con 5.0V, una entrada en PULL-UP que recibe la señal del electronivel instalado en el tinaco, un sensor de iluminación -LDR 2 Mega_Ohm-, una barra de led's para señalar el estado de reposo, un buzzer y un led rojo para señalar el estado activo del sistema, una fuente de alimentación de 5.0V a 500mA con salida USB y un electro-nivel en el tinaco conectado al circuito PULL-UP del sistema. 

El botón pulsador de la placa Launchpad se utiliza para simular el estado del sensor electro-nivel, de manera que en cualquier momento se puede checar el estado de funcionamiento de la bomba de cisterna. El sensor de iluminación -LDR- se calibró para que el sistema evite activar la bomba durante la noche. Para esto, se midió la intensidad lumínica durante la noche -con luz artificial- y durante el día en el sitio donde se colocó la placa. Como la intensidad era alrededor de 200 con luz artificial y alrededor de 400 con luz natural -lecturas de 0 a 1023-, se colocó un valor de 275 en la instrucción condicional if que acciona la bomba. Esto con el fin de evitar molestos ruidos durante la noche, que puedan perturbar el sueño de los inquilinos.

    if (state2 > 275)     {      digitalWrite(LED,HIGH);    }
    else    {      digitalWrite(LED,LOW);    }

En este caso, el pin marcado con la etiqueta LED, acciona al mismo tiempo un led rojo y un relevador de voltaje.

Como sabemos, las salidas en los pines de la placa MSP 430 Launchpad, tienen un voltaje de 3.3V. En el caso del relevador de voltaje accionado con 5.0V, se soldaron unos headers a la toma directa del USB situados en los costados del conector hembra (USB) de la placa. La alimentación del relevador se hace en una etapa de potencia, a través de un transistor NPN. Para proteger los circuitos al activar la bobina del relevador, se colocó un diodo.
El transistor se activa a través de una resistencia de 1.0 a 1.5 k_Ohm

La señal del electro-nivel en el tinaco, se conectó en el sitio marcado para el pulsador (ver diagrama), de manera que al cerrarse el circuito, la señal digital cambiará de 1 a 0 lógico. La resistencia en PullUp deberá ser 6.0 k_Ohm máximo para que el voltaje que reciba el pin sea mayor a 1,8V (1 lógico de 1.8 a 3.3V).

Se colocó una resistencia de 4.7 k_Ohm

Como la bomba de cisterna tiene una potencia de 1.0HP y un consumo de 6.2A, se colocó un relevador de 120V a 10.0A.

Operación diurna

Para evitar que se generen ruidos intensos durante la noche, el sistema cuenta con un sensor de iluminación y un código para que en caso de ser necesario bombear agua, esto se haga solamente durante el día. Las condiciones en que el sistema puede operar y fueron descritas, unas líneas más arriba.

Glosario de términos

Bomba. Bomba centrífuga de 1.0 HP, accionada por energía eléctrica (120V), con control de nivel (electro-nivel).
Tinaco. Depósito de agua menor de 1.0 metro cúbico de capacidad, alojado en la azotea del edificio. Puede o no contar con válvula accionada por flotador conectada a la red pública de suministro.
Cisterna. Depósito de agua de cualquier volumen, alojado al nivel del suelo o debajo de este nivel, con válvula accionada por flotador conectada a la red pública de suministro.

Código

/*
Prueba del sensor digital ELECTRONIVEL
*/
// #define LED1 P1_0 // OUTPUT
#define RX P1_1 // INPUT
#define TX P1_2 // OUTPUT
#define S2 P1_3 // INPUT

#define LDR A4 // P1_4 // INPUT
// #define ELECTRONIVEL P1_5 // INPUT
#define BUZZER P1_6 // OUTPUT
#define LED P1_7 // OUTPUT

#define bit0 P2_0
#define bit1 P2_1
#define bit2 P2_2
#define bit3 P2_3
#define bit4 P2_4
#define bit5 P2_5

void setup()
{
  pinMode(RED_LED,OUTPUT);
  pinMode(GREEN_LED,OUTPUT);
  pinMode(LED,OUTPUT);
  pinMode(BUZZER,OUTPUT);
  // pinMode(LDR,INPUT);
  pinMode(S2,INPUT_PULLUP);
  
  pinMode(bit0,OUTPUT);
  pinMode(bit1,OUTPUT);
  pinMode(bit2,OUTPUT);
  pinMode(bit3,OUTPUT);
  pinMode(bit4,OUTPUT);
  pinMode(bit5,OUTPUT);
  
  Serial.begin(9600);
}
void loop()
{
  int state1=digitalRead(S2);
  int state2=analogRead(LDR);
  Serial.print(state1);
  Serial.print("\t");
  Serial.println(state2);
  while (state1==0) 
  {
    digitalWrite(RED_LED,HIGH);
    digitalWrite(BUZZER,HIGH);
    delay(200); 
    // digitalWrite(LED,LOW);
    digitalWrite(RED_LED,LOW);
    digitalWrite(BUZZER,LOW);
    delay(100);
    // digitalWrite(LED,HIGH);
    digitalWrite(RED_LED,HIGH);
    digitalWrite(BUZZER,HIGH);
    delay(200); 
    // digitalWrite(LED,LOW);
    digitalWrite(RED_LED,LOW);
    digitalWrite(BUZZER,LOW);
    if (state2 > 275)
    {
      digitalWrite(LED,HIGH);
    }
    else
    {
      digitalWrite(LED,LOW);
    }
    state2=analogRead(LDR);
    state1=digitalRead(S2);
    Serial.print(state1);
    Serial.print("\t");
    Serial.println(state2);
    delay(1500);
  }
  
  digitalWrite(LED,LOW);
  delay(200);
    
  //digitalWrite(LED,HIGH);
  digitalWrite(bit0,HIGH);
  digitalWrite(bit1,HIGH);
  digitalWrite(bit2,HIGH);
  //digitalWrite(BUZZER,HIGH);
  //digitalWrite(GREEN_LED,HIGH);
  delay(50);
  //digitalWrite(LED,LOW);
  digitalWrite(bit0,LOW);
  digitalWrite(bit1,LOW);
  digitalWrite(bit2,LOW);
  //digitalWrite(BUZZER,LOW);
  //digitalWrite(GREEN_LED,LOW);
  
  digitalWrite(bit3,HIGH);
  digitalWrite(bit4,HIGH);
  digitalWrite(bit5,HIGH);
  delay(50);
  digitalWrite(bit3,LOW);
  digitalWrite(bit4,LOW);
  digitalWrite(bit5,LOW);
  
  delay(1700);
}

martes, 18 de abril de 2017

La población, los alimentos y el medio ambiente

Un tercio de los alimentos que se producen en el campo, nunca alcanzan a ser consumidos por una persona.

Ahora tenemos una población de 7325 millones de habitantes en el planeta, lo que junto con el dato anterior, significa que el campo produce alimentos que serían suficientes para alimentar a 9742 millones de personas. Esto es más que la población estimada para el años 2050, que ascenderá, poco más o menos, a 9500 millones de personas.

Entonces sabemos que la agricultura puede cumplir sobradamente el reto de producir alimentos para 9500 millones de personas en el año 2050 y prepararse para alimentar a 12500 millones de personas a partir del año 2100.

Los retos consisten en: Uno, sostener ese nivel de producción durante al menos 500 años, tiempo mínimo en el que la población mundial descenderá nuevamente al nivel actual (7325 millones de personas); dos, sustituir prácticas agresivas por tecnologías amigables con el medio ambiente; y tres, mejorar las tecnologías de procesamiento y empaque de alimentos, así como implementarlas de manera masiva.

Sin embargo (however), es necesario hacer rentable el uso de abonos orgánicos; habrá que lidiar con el agotamiento de las fuentes minerales de fósforo y utilizar el que se encuentra disperso en aguas residuales y océanos; habrá que desarrollar variedades de cultivos resistentes a plagas, enfermedades, malezas, contaminación y cambio climático; habrá que cultivar en el mismo espacio cultivos alimenticios, forestales y energéticos (biocombustibles) sin dejar de abastecer ninguno de sus destinatarios; habrá que vencer barreras culturales que entorpecen la adopción de nuevas tecnologías; será necesario que las actividades agropecuarias sean financieramente sustentables, ya sea por una buena relación beneficio / costo o mediante subsidios que garanticen la adopción de tecnología limpia.

Ver video:

https://www.facebook.com/UNFAO/videos/10155191344313586/