martes, 9 de febrero de 2016

Tres Relojes

Poco a poco voy introduciendo más cosas en el invento de la caldera:


   La novedad son los dos cuadros de la izquierda, el de los tres relojes (que son los que antes tenía en cuadros separados), incluye además los botones de encender y apagar, que ejecutan el Talkback que cierra o abre el relé del invento que arranca o para la caldera.
  El cuadro de altura Nubes es una estimación teórica de la altura de la base de las nubes basada en la temperatura y el punto de rocio, suponiendo que la distribución del gradiente de temperaturas es lineal desde el suelo y dado que según subimos la temperatura baja, en algún punto la temperatura del aire alcanzará la temperatura del punto de rocio, con lo cual se condensará la humedad.
   Cálculo atura base nubes en Wikipedia, este es el método que he usado, pero he visto otros por ahí, la realidad es que desde que lo he montado, voy siguiendo estos días de invierno y cuando se ve un nivel de nubes bajo, suele amanecer con niebla o nuboso-lluvioso.
   Tampoco se puede relacionar con el  nivel exacto de las nubes, pero como indicador de niebla o nubes bajas, parece válido.

Aquí os dejo la actualización del análisys MATLAB que calcula las variables derivadas (altura base nubes, velocidad de viento, sensación térmica y punto de rocio):


readChannelID = 56115;
TemperatureFieldID = 1;
HumidityFieldID = 2;
tempC = thingSpeakRead(readChannelID,  'ReadKey','------------------------------', 'Fields', TemperatureFieldID, 'Timeout', 20);
url = 'https://api.thingspeak.com/apps/thinghttp/send_request?api_key=--------------------------------';
VViento = urlfilter(url, 'speed');
v=VViento*3.6;
Wch = (13.12+(0.6215*tempC)-(11.37*(power(v,0.16)))+(0.3965*tempC*(power(v,0.16))));
b = 17.62;
c = 243.5;
humidity = thingSpeakRead(readChannelID, 'ReadKey','---------------------------------------', 'Fields', HumidityFieldID, 'Timeout', 20);
gamma = log(humidity/100) + b*tempC ./ (c+tempC);
dewPoint = c*gamma ./ (b-gamma);
display(tempC, 'ºC temp actual');
display(Wch, 'ºC sensacion termica');
display(humidity, '% humedad relativa');
display(VViento, 'viento en m/s');
display(v, 'viento en km/h');
display(dewPoint, 'Dew point ºC');
altnubes=((tempC-dewPoint)/2.5)*304,799;
display(altnubes, 'Altura Base Nubes m.');
writeChannelID = 56115;
writeAPIKey = '-----------------------------';
thingSpeakWrite(writeChannelID, 'Fields',[4,5,6],'Values', [dewPoint,Wch,v], 'Writekey', writeAPIKey);
thingSpeakWrite(71070,'Fields',[2],'Values', [altnubes],'WriteKey','-------------------------------');

3 comentarios:

  1. Recontrainteresante este sitio que mantienes ... y adelantado porque nosotros calentamos el agua a leña y hasta que "echa humo" :);) jiji
    Felicitaciones y bromas aparte, a pesar del atrevimiento lo preguntare ... como veo compartes un Matlab estarias dispuesto a compartir tu Matlab, seguro privado de los relojes con botones (Talkback) que todavia no he llegado ahi pero que seria de gran ayuda "clonartelo", por lo menos la estructura o algoritmo. Te quedaria agradecido 2 o 3 eternidades.

    ResponderEliminar
    Respuestas
    1. Hola, claro que si, pensaba hacerlo pero en una entrada aparte porque estoy trabajando en aprovechar esta parte del código para hacer control remoto sólamente.
      En cualquier caso, te copio el enlace de la carpeta donde dejo el código de la ventana Tres Relojes que incluye los botones de encender y apagar tal y como está ahora mismo:
      https://drive.google.com/open?id=0Bxi2zAgtRZ32eXZXam96cUhSRU0

      Evidentemente en las API Id y Channel Id tienes que poner las tuyas, yo he puesto --------------.
      Espero que funcione.
      Gracias.

      Eliminar
    2. Miro, hola, espero te vaya de lo mejor.
      Primero que todo, muchas gracias por tu respuesta y por compartir conocimiento.
      Seguramente va a funcionar, a priori y por lo que veo en tu sitio.
      Vas a colaborar en la reduccion del calentamiento global porque dejare la leña y se conservaran mas arboles ;)
      Hoy me has dado un buen dia (ojala todos fueran asi) y un sitio web al que hay que perseguir :)
      Nuevamente gracias tres mil de la parte de un un fan al otro lado del charco y un poco mas alla en el otro mar

      Eliminar