Tabla de contenido:
- Paso 1: Piezas y materiales
- Paso 2: Diseño eléctrico
- Paso 3: Diseño mecánico
- Paso 4: Montaje del marco: cara y base
- Paso 5: Ensamblaje de componentes electrónicos y sensores
- Paso 6: Configuración de Twitter
- Paso 7: Software y configuración
- Paso 8: Contribución al repositorio de sensores
Video: Tuiteando la estación meteorológica: 8 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
¿Alguna vez quiso monitorear las condiciones climáticas actuales, la huella de carbono, el ruido y los niveles de contaminación de su ciudad? ¿Quieres ser un Cruzado del Cambio Climático o configurar tu propia Estación Meteorológica de Tweeting y compartir tus condiciones climáticas locales con el mundo?
Conozca Tweeting Weather IoT Station, también conocida como TWIST, una plataforma de adquisición de datos meteorológicos y monitoreo ambiental de código abierto. El propósito de TWIST es que las personas y las comunidades puedan recopilar datos de lo que realmente está sucediendo en su entorno y compartir estos datos en las redes sociales como Twitter.
- TWIST es una plataforma impulsada por Internet de las cosas (IoT).
- El cerebro de TWIST es una placa Intel Edison.
- TWIST es compatible con una variedad de sensores.
- Todo el código, los archivos de diseño (esquemas y diseño de PCB) son de código abierto. Esto significa que cualquiera puede contribuir a la plataforma TWIST compartiendo código y esquemas para diferentes sensores.
TWIST consta de tres capas tecnológicas:
La primera capa es una placa de hardware que contiene todos los sensores ambientales y meteorológicos conocidos como la "placa de sensores". Como su nombre indica, lleva sensores que miden la composición del aire, temperatura, humedad, lluvia. También se pueden agregar sensores adicionales como actividad sísmica, índice UV, presión barométrica, altitud, lux (luminosidad), niveles de sonido, velocidad y dirección del viento, etc. Una vez configurada, la placa de sensores puede transmitir los datos medidos por los sensores a la segunda capa. La segunda capa es la placa Intel Edison que recibe datos de la placa de sensores, los procesa y los envía a la siguiente capa. La tercera capa conecta su tablero Edison a Internet a través de Wi-Fi utilizando el módulo inalámbrico en el tablero Edison y tuitea las condiciones climáticas y ambientales actuales.
La energía para el dispositivo puede ser proporcionada por un panel solar o un adaptador de CA.
Repositorios controlados por versiones
Las tres capas tecnológicas de TWIST son de código abierto y, por lo tanto, todos los archivos que usamos para el código, el desarrollo de PCB, el diseño mecánico, etc.están disponibles en nuestro repositorio de Github.
Inscripciones al concurso
Intel IoT Invitational
Me gustaría agradecer a Intel + Instructables por proporcionarme la placa Intel Edison. Planeo hacer muchos más Instructables relacionados con IoT usando la placa de Edison.
#otweatherstn
Si haces TWIST, no olvides tuitear el clima usando #iotweatherstn. #iotweatherstn puede ser un hashtag utilizado por todas las estaciones meteorológicas de tweeting con tecnología de IoT.
Paso 1: Piezas y materiales
CantidadPartDetails 1
Intel Edison
con placa de arranque Arduino
1
Sensor de gas combustible MQ2
1
YL-83
Sensor de lluvia
1
SL-HS-220
Sensor de temperatura y humedad
1
Resistor
32K
4,7 mil
3 separadores de metal de 1 pulgada
1
Resistor
32K
4,7 mil
2
Hoja de madera tamaño A4
Posteriormente se puede cortar en tamaño
3
Separador de metal
1 pulgada
Paso 2: Diseño eléctrico
Poder
Todo el sistema se alimenta de una fuente de alimentación de 5V 1A. Los sensores (temperatura, humedad, lluvia, gas) consumen aproximadamente 200 mA, el Edison alrededor de 500 mA. Dado que la corriente total requerida es inferior a 1 amperio, un suministro de 1 amperio debería funcionar bien. El LED verde incorporado en el pin digital 13 de la placa Edison se usa para mostrar el estado de energía.
Control Un Intel Edison dirige el espectáculo para TWIST. El Edison está montado en una placa de arranque Arduino, lo que facilita la lectura de las señales digitales y analógicas de los sensores. El Edison está conectado al riel de 5V a través de un cable micro USB. El Edison tiene una radio Wi-Fi incorporada, lo que le permite conectarse a Twitter sin la necesidad de ningún hardware adicional.
Reloj de tiempo real (RTC)
Dado que la marca de tiempo que realiza Twitter automáticamente para cada tweet tiene una resolución limitada al número total de días desde la hora de tuitear, se utiliza un reloj en tiempo real para marcar con precisión la fecha y la hora en la hora-minuto- Segundo formato. El reloj de tiempo real utilizado en la plataforma TWIST es el módulo DS-1307 RTC.
Sensores La configuración más básica de este sistema tiene cuatro sensores (temperatura, humedad, lluvia, gas) que se conectan al Edison. Se pueden agregar sensores adicionales como ruido, viento, etc. Cada sensor se alimenta directamente desde el riel de 5V y tiene su pin de señal conectado respectivamente a los pines analógicos A0 a A2 y al pin 2 digital en la placa de conexiones Edison. Los sensores también tienen cada uno un potenciómetro de ajuste de sensibilidad montado en cada placa de sensor; El MQ-2 es un sensor de gas combustible (gas licuado de petróleo, propano, hidrógeno y metano) que genera un voltaje analógico proporcional a la concentración de gases en partes por millón. El SL-HS-220 tiene un termistor que da el valor de temperatura. Dado que la salida del termistor no es lineal, la tabla de temperatura correspondiente se proporciona en el repositorio de sensores. El termistor requiere un circuito divisor de voltaje cuando se conecta a la placa Edison como se muestra en el diagrama del circuito. El SL-HS-220 también tiene un higrómetro incorporado que mide la humedad y emite un voltaje analógico que corresponde a un valor de humedad fijo. La tabla de humedad-voltaje también se encuentra en el repositorio de sensores. Un sustituto común del SL-HS-220 es el sensor DHT11. El sensor de lluvia / sensor de agua tiene un potenciómetro que se ajusta para dar una salida digital para una cierta cantidad de lluvia cuya sensibilidad puede ser ajustada por el usuario.
Estación meteorológica.fzz
Paso 3: Diseño mecánico
El cuerpo del TWIST está formado por dos placas de láminas de madera. Aunque utilicé madera contrachapada de 1/4 ", el diseño se puede ensamblar con cualquier material de lámina, ya que el espacio (mantenido por separadores de aluminio de 1") es el único elemento crítico. Adjunté los archivos vectoriales para descargar arriba.
Corte por láser
Para todos aquellos que deseen cortar con láser las dos placas, he adjuntado los archivos del cortador láser para descargar a continuación. También incluye un sensor de calidad del aire adicional en su diseño. Por lo tanto, puede utilizar un módulo de sensor MQ2 o un módulo de sensor de calidad del aire según su elección.
Paso 4: Montaje del marco: cara y base
Placa frontal
Los sensores encajan en sus orificios y recortes correspondientes y se pueden fijar con tornillos o pegamento.
Plato base
Los separadores de la placa Edison se atornillan a la placa base. El convertidor de analógico a digital (ADC) que está conectado al sensor de lluvia también se puede atornillar a la placa base.
Los componentes adicionales como zumbadores o el circuito regulador de voltaje para la entrada solar también se pueden atornillar en la placa base.
La placa base y la placa frontal están separadas por separadores de 1.
Paso 5: Ensamblaje de componentes electrónicos y sensores
Poder
La alimentación del sistema la proporciona un adaptador de pared con un conector de barril estándar que se conecta directamente al conector de barril de Edison. El sistema también se puede alimentar a través del puerto USB de la placa Edison. También puede alimentar la placa desde un panel solar externo.
Sensores
Los sensores están conectados a placas de conexiones con conectores macho y, por lo tanto, pueden conectarse directamente al Edison mediante cables de puente macho a hembra.
Paso 6: Configuración de Twitter
Para tuitear, estamos usando una aplicación de terceros desarrollada por NeoCat que obtiene el token de Twitter que necesitarás para tuitear con tu tablero de Edison. Los tokens también se pueden obtener de la página web de desarrolladores de Twitter.
Entonces, para comenzar, visite el sitio web de NeoCat, siga su tutorial para obtener la biblioteca de Twitter y su token de Twitter. Como NeoCat mencionó en su sitio, no abuse del servicio. Mantenga sus tweets escasos. Si necesita algo que tuitee cada 6 segundos, debe configurar su propio servidor y aplicación de Twitter y, por lo tanto, el código que escribí garantiza que el servidor de NeoCat no se sobrecargue (TWIST tweets cada 6 horas).
La biblioteca utiliza el sitio web de este NeoCat como servidor proxy para cosas de OAuth. Es posible que su tweet no se aplique durante el mantenimiento del sitio web de este NeoCat. Twitter parece rechazar los tweets repetidos con el mismo contenido (devuelve el error 403).
Token de Twitter
Biblioteca de tweets de Arduino
Paso 7: Software y configuración
Siga la guía de configuración de Intel para Intel Edsion antes de comenzar a codificar.
El programa es un boceto de Arduino que se ejecuta en Edison. He explicado cada uno de los principales bloques de código a continuación.
El código incluye algunas constantes predefinidas, declaraciones de pines y un par de declaraciones de impresión en serie que ayudan en la resolución de problemas.
Retraso de tweet
Dado que Twitter filtra los tweets que tienen el mismo contenido y se tuitean en breves períodos de tiempo entre cada uno de ellos, se ha establecido un retraso estándar de 3 horas (10800000 milisegundos) entre cada tweet.
tweetMessage ();
retraso (10800000);
Tipo Casting
Muchas de las lecturas que obtenemos de los sensores están en el tipo de datos 'int' o 'float'. Pero dado que estamos twitteando estos valores, necesitamos convertirlos en un tipo de datos 'Cadena'. Para ello utilizamos una técnica especial de Type-casting.
char * dtostrf (valor doble, ancho de char firmado, prec de char sin firmar, char * sout) {
char fmt [100]; sprintf (fmt, "%%% d.% df", ancho, prec); sprintf (sout, fmt, val); volver al sur; }
Token de Twitter
El token de Twitter se crea en el sitio web de NeoCat y debe pegarse en el espacio del token aquí.
void tweetMessage () {
Twitter twitter ("INTRODUZCA EL TOKEN DE TWITTER AQUÍ");
Twittear valores de sensor
Para twittear el valor del sensor, primero incluimos el tipo de sensor; Ejemplo: "Humedad". Esto seguido de una declaración de carácter y una línea de código necesaria para encasillar. A continuación, agregamos una declaración para la unidad de medida; Ejemplo: "% RH". También podemos seguir agregando valores de otros sensores de manera similar.
humedad(); flotar húmedo;
// Mensaje de Twitter String stringMsg = "Humedad:"; char tmp [10]; dtostrf (húmedo, 1, 2, tmp); stringMsg + = tmp; stringMsg + = "% RH";
Ubicación y etiquetado de la estación meteorológica
A continuación, etiquetamos la ubicación (ciudad, localidad, etc.) y otras etiquetas como #iotweatherstn.
stringMsg + = "#Mumbai #Bandra #iotweatherstn";
Reloj de tiempo real (RTC)
Como se explicó anteriormente, TWIST también puede twittear los datos del reloj en tiempo real. A continuación se muestra un ejemplo del bloque de código del parámetro 'día' del RTC. La función de reloj en tiempo real es opcional en la plataforma TWIST ya que el módulo viene por separado. Por lo tanto, hay una rama separada creada en el repositorio TWIST para el código y los esquemas de la rama Real Time Clock.
TwistDateTime (); DateTime ahora = rtc.now (); int twistday, twistmonth, twistyear, twisthour, twistmin, twistsec; String stringMsg = ""; char ds1307day [10]; dtostrf (twistday, 1, 0ds1307day); stringMsg + = ds1307day; stringMsg + = "/";
Límite de 140 caracteres
Este bloque de código convierte la matriz de cadenas en una matriz de 140 caracteres lista para twittear.
char msg [140];
stringMsg.toCharArray (mensaje, 140);
Solución de problemas de mensajes y conexión
Este bloque de código imprime un par de líneas de texto en Serial Monitor para ayudar al usuario a verificar el mensaje y el estado del tweet.
// ¡Tuitea a ese tonto!
if (twitter.post (msg)) {estado int = twitter.wait (); if (estado == 200) {Serial.println ("OK."); Serial.println ("Mensaje tuiteado"); } else {// Prueba de conexión Serial.print ("error: código"); Serial.println ("Mensaje no tuiteado"); Serial.println (estado); }} else {Serial.println ("conexión fallida"); Serial.println ("Mensaje no tuiteado"); }
Todos los demás bloques de código simplemente convierten la lectura analógica o digital de los sensores en datos utilizables.
El código se puede descargar desde aquí o desde el repositorio principal:
Weather Station.ino
Paso 8: Contribución al repositorio de sensores
¿Es usted un programador, ingeniero o diseñador que tiene una gran idea para una nueva función en TWIST? ¿Quizás tienes una buena idea para corregir un error? Siéntase libre de tomar nuestro código, esquemas y archivos CAD de Github y jugar con él.
TWIST GitHub
Segundo premio en el Intel® IoT Invitational
Recomendado:
Estación meteorológica profesional con ESP8266 y ESP32 DIY: 9 pasos (con imágenes)
Estación meteorológica profesional con ESP8266 y ESP32 DIY: LineaMeteoStazione es una estación meteorológica completa que se puede interconectar con sensores profesionales de Sensirion, así como con algunos componentes de instrumentos Davis (pluviómetro, anemómetro) El proyecto está diseñado como una estación meteorológica de bricolaje, pero solo requiere
Estación de soldadura portátil de material reciclado. / Estación De Soldadura Portátil Hecha Con Material Reciclado .: 8 Pasos (con Imágenes)
Estación de soldadura portátil de material reciclado. / Estación De Soldadura Portátil Hecha Con Material Reciclado .: Papá era un gran artista y aventurero tanto como un gran fanático de la cultura del bricolaje. Él solo hizo muchas modificaciones en la casa, que incluyen mejoras en muebles y armarios, reciclaje de lámparas antiguas e incluso modificó su furgoneta VW kombi para viajar
Estación meteorológica NaTaLia: estación meteorológica con energía solar Arduino hecha de la manera correcta: 8 pasos (con imágenes)
Estación meteorológica NaTaLia: estación meteorológica con energía solar Arduino hecha de la manera correcta: después de 1 año de operación exitosa en 2 ubicaciones diferentes, estoy compartiendo los planes del proyecto de mi estación meteorológica con energía solar y explicando cómo evolucionó a un sistema que realmente puede sobrevivir durante mucho tiempo períodos de energía solar. Si tu sigues
Estación meteorológica de bricolaje y estación de sensor WiFi: 7 pasos (con imágenes)
Estación meteorológica de bricolaje y estación de sensor WiFi: en este proyecto, le mostraré cómo crear una estación meteorológica junto con una estación de sensor WiFi. La estación de sensores mide los datos de temperatura y humedad locales y los envía, a través de WiFi, a la estación meteorológica. La estación meteorológica muestra t
Estación meteorológica completa de bricolaje Raspberry Pi con software: 7 pasos (con imágenes)
Estación meteorológica completa de bricolaje Raspberry Pi con software: a fines de febrero vi esta publicación en el sitio de Raspberry Pi. http://www.raspberrypi.org/school-weather-station-… Habían creado estaciones meteorológicas Raspberry Pi para escuelas. ¡Quería uno totalmente! Pero en ese momento (y creo que todavía al momento de escribir