Noticias:

Grupo en telegram, del foro de meteorología fácil: https://t.me/meteorologiafacil

Para mas detalles, puedes visitar el siguiente tema http://www.meteorologiafacil.com.ar/foros/index.php?topic=1608.0

Espero que les sea de mucha utilidad.

Menú Principal

Estacion automática desde Ramallo

Iniciado por elgarbe, Agosto 19, 2012, 09:24:21 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Ricber

Como has implementado la direccion del viento.

elgarbe

Hola! si ya queda poco, me faltaría la presion, me llego una muestra de TI de un amplo ponga por aho para el sensor, pero no creo que lo ponga por ahora.
La direccion del viento (y el anemómetro) uso los sensores de la estacion original. En el caso de la direccion del viento era un potenciometro especial, casi sin rozamiento, de 20K. A ese pote le coloco una R fija de 20K y lo alimento con 5V. Mido con el ADC la caida de tension. Acá al principio no me andaba bien, parecía que en una zona cambiaba muy rapido de direccion y en otra zona menos rápida. Despues de renegar un buen rato hice la curva de ángulo vs tension medida (hice el cálculo) y vi que no es lineal, así que arme los rangos nuevos y lo acomodé, en el programa hago así:


#int_AD
void AD_isr()
{
   //Primero leo el valor actualmente convertido
   lADC=read_adc(ADC_READ_ONLY);
   if(medicion==0){
      lTemp+=lADC;
      if(++cantTemp==10){
         newDataT=1;
         cantTemp=0;
      }
   }
   if(medicion==1){
      lHum+=lADC;
      if(++cantHum==10){
         newDataH=1;
         cantHum=0;
      }
   }
   if(medicion==3){
      lDv=lADC;
      newDataDv=1;
   }
}


El ADC lo tengo con interrupciones y en el pedido de interrupcion, en funcion de que canal mandé a medir voy sumando los valores obtenidos con los anteriores hasta tener 10 muestras, en el caso de la direccion del viento no, con un dato solo ya lo uso.

En el main tengo lo siguiente:


   do{
      set_adc_channel(0);
      delay_ms(1);
      medicion=0;
      read_adc(ADC_START_ONLY);
      delay_ms(1);
      set_adc_channel(1);
      delay_ms(1);
      medicion=1;
      read_adc(ADC_START_ONLY);
      delay_ms(1);
      set_adc_channel(3);
      delay_ms(1);
      medicion=3;
      read_adc(ADC_START_ONLY);
      delay_ms(1);

      if(newDataT){
         newDataT=0;
         fTemp=4.3*100*(lTemp/10.0)/1024;
         lTemp=0;
      }
      if(newDataH){
         newDataH=0;
         fHum=((4.3*(lHum/10.0)/1024)-(5*0.16))/(5*0.0062);
         lHum=0;
      }
      if(newDataDv){
         newDataDv=0;
         if((lDv>0) && (lDv<114))
            strcpy( cDv, "N");
         if((lDv>114) && (lDv<205))
            strcpy( cDv, "NE");
         if((lDv>205) && (lDv<279))
            strcpy( cDv, "E");
         if((lDv>279) && (lDv<341))
            strcpy( cDv, "SE");
         if((lDv>341) && (lDv<394))
            strcpy( cDv, "S");
         if((lDv>394) && (lDv<439))
            strcpy( cDv, "SO");
         if((lDv>439) && (lDv<478))
            strcpy( cDv, "O");
         if((lDv>478) && (lDv<512))
            strcpy( cDv, "NO");
      }
      if(hay_viento){
         hay_viento=0;
         vel_vien=2.0*3.141592*5*36000/tiempo;
      }
      printf(lcd_putc, "\fT: %01.1f Dv: %s\nH: %01.1f Vv: %01.1f", fTemp, cDv, fHum,vel_vien);
      delay_ms(20);
   }while(true);


Ahí voy creando los rangos de cada direccion de viento. También está la parte de cálculo de temperatura y humedad. Todo esto lo tengo que ajustar bien cuando haga el PCB, ya que en el protoboard ya tengo mucho lío.

Esta semana lo termino y publicaré el proyecto completo.
Este proyecto lo estamos haciendo con los alumnos de la secundaria donde doy clases...

Saludos!!

Ricber

Me interesa el tema del potenciometro para la veleta, siempre tuve esa idea pero
nunca pude lograr bajar el razamiento, si tienes algun dato de ese potenciometro
podrias pasarmelo asi investigo un poco.
Saludos.

David Met

Cita de: Ricber en Octubre 23, 2012, 07:26:18 AM
Muy bueno, me alegro por el avance, casi tenes todo cocinado ok!.

+1

Cita de: Ricber en Octubre 23, 2012, 09:38:09 AM
Me interesa el tema del potenciometro para la veleta, siempre tuve esa idea pero
nunca pude lograr bajar el razamiento, si tienes algun dato de ese potenciometro
podrias pasarmelo asi investigo un poco.

+1 también.
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega al PADRE si no es por mi.

elgarbe

hola, sdespues de unas largas vacaciones en el proyecto, en estos dias he tenido que retomarlo.
estuve tratando de desarmar la veleta para ver el potenciometro, pero es imposible, como pertenece a una estacion comercial, esta metido dentro de unos plasticos que no puedo separar, probablemente esten pegados. igual, no creo que sea un pote comun, comercial, seguramente han hecho algo propio para sacar rozamiento.
ahora meestoy metiendo un poco con el enlace de rf.
que modulos han usado?que alcance obtienen?

ya ire mostrando avances del proyecto.

Saludos!

Ricber

Hola Elgarbe, estoy empezando a ver el modulo de wenshing TRW-24G, que trabaja en 2,4ghz, es bidireccional y le puedes ajustar la potencia de salida de acuerdo al alcance y asi se puede controlar el consumo, esas son algunas cosas, sino tenes los wenshing de 433mhz que son transmisor y receptor separados.

elgarbe

Cita de: Ricber en Marzo 20, 2013, 07:43:57 AM
Hola Elgarbe, estoy empezando a ver el modulo de wenshing TRW-24G, que trabaja en 2,4ghz, es bidireccional y le puedes ajustar la potencia de salida de acuerdo al alcance y asi se puede controlar el consumo, esas son algunas cosas, sino tenes los wenshing de 433mhz que son transmisor y receptor separados.

Donde los compras en Argentina?

yo estoy estudiando los de elemon, creo que lo más confiable es el MRF24J40MA-I/RM 2.4 GHz IEEE 802.15.4 RF Trans.Mod, cuesta unos 16 dólares y si no me equivoco es de Microchip. El tema es que estuve viendo que tiene sus cositas para configurarlo, posee interfaz SPI... Vos que distancia tenes que cubrir?

Saludos!

Ricber

Yo los compre en Buenos Aires en cika. Tienen un alcance de hasta 300mts, los que vos decis tambien los vi pero
me decici por los wenshing, y creo que en precio andan parecido.

elgarbe

Cita de: Ricber en Marzo 20, 2013, 09:50:41 AM
Yo los compre en Buenos Aires en cika. Tienen un alcance de hasta 300mts, los que vos decis tambien los vi pero
me decici por los wenshing, y creo que en precio andan parecido.

300mts sin renegar, leáse sin antenas, filtros etc??? Me vendrían como anillo al dedo!
Ahora me pongo a investigarlos... vos los tenes funcionando?

Saludos!

Ricber

No, tadavia no los he hecho funcionar, estoy leyendo como inicializarlos y manejarlos.
Ademas trabajan con 3v y si las pruebas las hago con un pic a 5v voy a necesitar hacer
algunos adapatdores de nivel de tension.
En cuanto empieze ire publicando los resultados.

Ricber

El alcance depende de la velocidad de transmision y de como se configure
la potencia de salida.

Transmit Receiver Distance
TRW-2.4G(250Kbps)  280M
TRW-2.4G(1Mbps)    150M

elgarbe

Fantástico!

Hay unos adaptadores en TI con free samples: http://www.ti.com/product/txb0108 si te das de alta y los pedis en 4 días los tenes....

Saludos!


Ricber

Hola Elgarbe te dejo un link donde hay codigos para compilador CCS de una
puerta serie inalambrica con el TRW.
http://semifluid.com/2006/01/30/pic18lf2550-24ghz-serial-link/

Para empezar a ver como manejarlo puede servir.
Saludos

elgarbe

Cita de: Ricber en Marzo 21, 2013, 07:46:10 AM
Hola Elgarbe te dejo un link donde hay codigos para compilador CCS de una
puerta serie inalambrica con el TRW.
http://semifluid.com/2006/01/30/pic18lf2550-24ghz-serial-link/
Para empezar a ver como manejarlo puede servir.
Saludos

Fantástico, parece muy completo. Lo voy a ver más en detalle. Cuanto te costaron en cika mas o menos?

Otra duda, como resuelves la alimentacion de la estacion? con batería recargable y cargador continuamente conectado?

Es un tema por que la mía está a 200mts... estoy pensando en panel solar, pero eso ya sera otra historia...

Saludos!