- Identifica automáticamente la ubicación en el mundo
- Determina automáticamente el horario de verano y la hora local
- Muestra gráficamente la información actual y previsión del tiempo
- Sincroniza automáticamente el ahorro de tiempo y la luz del día a través de Internet (utilizando el protocolo NTP)
- Muestra:
- Temperatura ,el tiempo, humedad, dirección y velocidad del viento
- Actual presión barométrica tiempo
- Tiempo condición texto y el icono
- Hoy bajas y altas temperaturas
- Fase de la luna para hoy
- Salida y puesta del sol para hoy
- El tiempo para los próximos 3 días, incluyendo:
- Altas y bajas temperaturas
- Tiempo condición texto y el icono
- Humedad
- Dirección del viento y velocidad
- No requiere ningún PC de participar, totalmente independiente
- Fácil de conectar y de reunión, sólo cable Ethernet y fuente de alimentación
- Soporta DHCP para la conexión a la red
- Soporta pantallas VGA y pequeñas pantallas 3.2 “
Algunos otras características incluyen el cambio de color de fondo entre la noche (azul oscuro) y el día (azul claro) para el reloj y el cambio de texto color de fondo de las áreas de datos de tiempo en función de la temperatura (caliente en naranja, normales a la luz azul y frías en azul oscuro ). El ciclo de noche y día son detectados automáticamente por el servicio de Internet de Weather Underground (amanecer y atardecer).
Esta versión no requiere la configuración de la ciudad en la que se vive durante tiempo de compilación, y establece el ahorro de forma manual la a luz del día. Aquí todo es automático
.En comparación con Google wether , ofrece características adicionales:
- Información Tiempo de hoy incluyendo la presión barométrica
- La previsión del tiempo incluye información humedad demasiado para cada día
- Tiempo y puesta del sol Sunrise están disponibles para hoy
- Información de fase lunar está disponible para hoy
- Sustancialmente más iconos en la pantalla y mejorar la visibilidad de la información existente
- Soporte para el horario de verano, la ubicación y la hora automática zona
- Se muestra Indicadores para la comunicación entre la pantalla y el tablero de acogida
Sin embargo, este proyecto no puede medir la temperatura interior y tampoco soporte del sensor de humedad.
Lo componentes que zmashiah ha usado son los siguientes:- Netduino Plus ( http://www.sparkfun.com/products/10186 ) ~ $ 60
- Pantalla 4D Systems (uLCD-32PT) http://www.sparkfun.com/products/10089o adaptador de pantalla (uVGA II) http://www.sparkfun.com/products/10329~ $ 55 para VGA
- Una pantalla VGA en desuso
- Cables 5x Jumper (sólo 3 necesarios para el funcionamiento, 5 mientras programa de grabación), tenga el adaptador de pantalla y la pantalla tiene pines machos y Netduino viene con encabezados femeninos, por lo que necesitará un cable de puente que es conector macho en un extremo y conector hembra el otro extremo, como este http://www.ebay.com/itm/Arduino-Solderless-Dupont-Jumper-Wire-AWG-24-Male-Female-Protyping-QTY30-/251028328487?pt=LH_DefaultDomain_0&hash=item3a72745027#ht_1797wt_1393
- 2 GB o menos micro-SD (sólo necesita alrededor de 150 KB, así que si usted tiene uno de un teléfono antiguo, puede ser utilizado)
- Fuente de alimentación (7.5V o 9V)
- Cable Ethernet
- Caja para albergar todo el contenido
También para la construcción del aparato, necesitará la siguiente
- Tablero FTDI, mejor usar 5Volts uno como este uno.
- PC para la programación
- Un dispositivo lector de micro-SD
Después de comprar los componentes , descargar el software en su PC, incluyendo:
- Herramientas de Sistema 4D para la programación de sus adaptadores o pantallas de aquí
- Visual Studio 2010 Express o si tiene un Pro instalado, no hay problema (se puede descargar desde Netduino sitio abajo también)
- SDK Netduino de http://netduino.com/downloads/
- Microsoft .NET Micro Framework 4.1 de http://netduino.com/downloads /
- Registrarse con Weather Underground y generar una clave
- Modificar una llave en el código Netduino-Plus en la función ‘initlocation‘ en Program.cs archivos para que la línea que dice WeatherData = new WeatherUndergroundData (“<< >> yourkey”, myLocation.latitude, myLocation.longitude); será cambiado para tener la clave en forma de cadena (entre comillas) en lugar del yourkey.
- Registrarse con AskGeo.com y generar una clave
- Actualice su clave AskGeo y cuenta ID en el fichero NTPThread.cs archivos, buscar // <<< encontrar en qué parte del archivo
2. Cargar el firmware y el software de los dispositivos
- Conecte su pantalla 4D o adaptador de pantalla para el FTDI (Vcc a 5V, GND a GND, Rx a Tx y Rx Tx a, DTR en el FTDI restablecer pines) y el FTDI para USB de su PC
- Suba el firmware a la derecha en el adaptador de LCD o VGA 4D utilizando herramienta PMMC Loader desde 4D Systems (necesita la versión GFX). zmashiah lo ha comprobado con la versión de firmware 2.7
- Abra la herramienta Taller sistemas 4D; abrir el archivo de programa en el subdirectorio 4D del archivo ZIP en esta publicación. Siga los pasos como se muestra también en la imagen para que esta herramienta:
- Seleccione la pantalla derecha o modelo de adaptador
- Seleccione el puerto COM correcto (el que genera el FTDI)
- Elige la localidad como “Flash” y no “Ram” (no te olvides de esto!)
- Compilar y cargar el programa en la pantalla / adaptord)
- Conecte su tablero Netduino Plus a su PC
- Herramienta Ejecutar MFDeploy (parte del kit .NETMF y debe estar en C: \ Archivos de programa (x86) \ directorio de Microsoft .NET Micro Framework \ v4.1 \ Tools si está usando Windows 7 de 64 bits PC),
- Escoja USB como la conexión de dispositivos
- Elija el Netduino Plus
- Pulse el Ping para ver el dispositivo está conectado bien y responder
- En Target | Configuración | Network set el Netduino-Plus para usar DHCP o IP estática si está utilizando direcciones IP estática en su casa.
- Registrarse con AskGeo Servicios (AG) Tiempo-metro (WU) y. Usted debe obtener ID y clave.
- Ejecutar Visual Studio y cargar el proyecto para el programa Netduino (En subdirectorio NetduinoPlusWeatherUnderground en el archivo ZIP). Coloca los códigos que obtuvo de WU y AG en el código (búsqueda de los “<<<” marcas). Reconstruir y Desplegar en el tablero.
- Cargar la tarjeta micro SD a su lector de tarjetas SD, formato FAT si es necesario
- Cargue los iconos del directorio NetduinoPlusWeatherUnderground \ 4DIcons en el archivo ZIP en su tarjeta SD
- Extracción segura de la micro-SD del lector y lo coloca en la pantalla o display adaptador
- Desconecte la pantalla, el Netduino y el lector de tarjetas SD de su PC.
3. Conexión del hardware juntos
En los siguientes pasos obtendrá su conjunto terminado,
- Inserte la tarjeta micro SD para la visualización 4D o al adaptador de pantalla 4D
- Conecte la pantalla o adaptador de pantalla a su Netduino Plus (sólo 3 cables requeridos)
- Vin o Vcc desde el dispositivo 4D a 5V del tablero Netduino Plus
- GND del dispositivo 4D a GND de la junta Netduino Plus
- Rx del dispositivo 4D a Digital 3 pines de la placa Netduino Plus
- Conecte el Netduino Plus al puerto Ethernet en su router / red
- Si está utilizando la tarjeta de adaptador VGA, conecte la pantalla al adaptador 4D
- Conecte el suministro eléctrico de su Netduino Plus
- Edite el archivo de programa de visualización 4GL y cambiar el ShowCelsiusSymbol función y cambiar putStr (“C”); a putStr (“F”);
- Cambiar los umbrales de temperaturas para Hot e indicadores Labial (TEMP_THHOT y TEMP_THCOLD constantes) a lo que crees que es bueno para usted (89 y 68 son los equivalentes de mi configuración Celsius actuales).
- Edite el archivo WeatherUnderground.cs y cambie las líneas que recogen las temperaturas Celsius a Fahrenheit uno (temp_c a temp_f etc.) .:
- Usted también puede cambiar la información del viento a buscar Millas por hora en lugar de Kilómetro por hora uno
- Compilar y cargar los programas a los dispositivos
- Netduino-Plus primeros arrendamientos y dirección IP desde el servidor DHCP
- Netduino-Plus va al servicio de internet http://www.geobytes.com/ para averiguar en qué lugar del mundo se encuentra. La salida de este servicio incluye ciudad, país, etc, pero lo que tomamos de ella es la longitud y latitud.
- Netduino-Plus va al servicio de internet http://www.askgeo.com/ para averiguar cuál es el desplazamiento de su ubicación con respecto al UTC actual. De esta manera sabemos no sólo su zona horaria, sino también el horario de verano.
- Netduino-Plus va al servicio NTP en el Internet para obtener el tiempo atómico precisa y fija el reloj interno Netduino-Plus para esta época junto con el offset nos enteramos antes.
- Netduino-Plus va a Tiempo servicio Undergroundhttp://www.wunderground.com/ a buscar información actual y previsión del tiempo.
- Netduino-Plus envía los datos del tiempo y el reloj en el dispositivo 4D sobre interfaz serial (UART) utilizando el protocolo simple que voy a omitir la descripción de aquí. Es en el código.
- Tiempo de NTP se sincroniza cada 300 minutos (6 horas) que me pareció ser lo suficientemente preciso.
- La información meteorológica se descarga cada 10 minutos. Más que suficiente para la mayoría de la gente y de los casos. Actualizaciones más frecuentes de Weather Underground se requieren para ser un usuario pagar.
- Tiempo de NetduinoPlus se envía al dispositivo 4D cada 3 minutos (temporizadores Netduino encontraron un poco más preciso que los 4D)
- Los formatos de dispositivos 4D datos de flujo de texto que recibió de la Netduino-Plus para gráficos en la pantalla.
Algunas notas:
A zmashiah le pareció que Netduino sería mejor que Arduino pues tiene algunos más recursos como la memoria y la CPU más rápida (16MHz en Arduino vs a 48MHz de Netduino). También logró código muy atractivo para este tipo de consultas en Internet … pero después supo que se carga el conjunto de analizador genérico XML para el huésped y se ejecuta fuera de la memoria. Peor que eso, no fue suficiente para agregar las características que quería para la automatización de DST y la ubicación. Decepcionado decidió atenerse a lo que es importante, la automatización y sencillez, y pasar algunas pulsaciones tediosas en analizar XML. El estado de cosas ahora es que el Netduino-Plus está teniendo sus propios desafíos de memoria, y este proyecto encaja bien en y obras, pero hay muy poco espacio para añadir algo más. Así, en comparación con el anterior proyecto con Arduino , en éste no está a la temperatura interior y la humedad. Además, los sensores DHT22 de bajo precio no están apoyados en Netduino( tampoco en .NETMF 4.2 )
El análisis de XML se realiza mediante la lectura de un byte en un momento de la toma de internet. Como este es el código administrado, funciona terriblemente lento. Toma en un Netduino-Plus unos 19 segundos para analizar la secuencia XML de Weather Underground. Se podria optimizarlo para un rendimiento mucho mejor, como el uso de clase Stream y todo, pero ¿adivinen qué? Se queda sin memoria al hacer eso. La verdad del asunto es que podría importar menos si la CPU de Netduino-Plus gaste 9 segundos hibernada o procesar trozos de Weather Underground. No hay da mejor para que haga y aunque quisiera, se deja sin memoriasi hace algo más. Por lo tanto, esos 19 segundos no debería importar mucho a cualquiera.Usted se dará cuenta de que el led de a bordo LED en el Netduino (azul uno frío) se iluminará cuando hace su análisis de los datos XML.
También el autor ha reutilizado el botón de a bordo en el Netduino-Plus para actuar como “tiempo de sincronización y la información del tiempo ahora” en lugar de reset. Este cambio fue útil para depurar y el autor esta contento con el reciclaje de energía como de reposición de bienes de todos modos.
Los chicos de Weather Underground realmente hacen cumplir los límites de 500 llamadas diarias o 10 por minuto. Así que es por eso zmashiah no esta compartiendo la clave aquí y también usted debería evitar hacer eso. Ademas ha incluido su logotipo y esas cosas como sus términos de condiciones requieren.
El servicio AskGeo estaba en alfa o beta cuando empezo a usarlo el autor ,pero despues se trasladaron a la nube de Amazon e hicieron ligeras modificaciones en los servicios. zmashiah ha actualizado el código en consecuencia, por lo que no debería molestarse con nada de eso. Tenga en cuenta que usted debe registrarse con ellos también y no debe compartir su clave pública.
Sobre el “truco” para averiguar la ubicación, no es, sin limitaciones. Debería funcionar en cualquier red en casa, pero en la oficina podría ser un poco un desafío. Si la red está pasando por un proxy muy remoto, como muchas organizaciones se sigue utilizando para conectar oficinas remotas a Internet, entonces la ubicación del Netduino-Plus es donde se encuentra el servidor proxy . Es bastante fácil de cambiar el código Netduino-Plus para usar ubicación fija en lugar de auto-detección, y zmashiah vaa dejar que aquellos que estén interesados lo hacen ellos mismos.
Sugerencia: Todo lo que necesita es el uso fijo longitud y latitud en la función ‘initlocation’ codificado en los Program.cs archivos
Código fuente puede obtenerse en https://github.com/zmashiah/netduino-projects-netdunoPlusWeatherUnderground Fuente aqui