Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Estación meteorológica Raspberry Pi 2

Nuestro hackerspace (Bloominglabs) recibió recientemente una estación meteorológica ADS-WS1 de un generoso benefactor. Además, fuimos seleccionados por Instructables para el hackathon Raspberry Pi 2, por lo que obtuvimos algunos RPi2 para piratear. Para mi proyecto, decidí usar un RPi2 para poner nuestra estación meteorológica en línea.

Nuestra estación puede medir la dirección del viento, la velocidad del viento, la lluvia, la temperatura y la humedad. La unidad puede generar datos de varias formas, incluido el serial. Necesitaba una forma de leer los datos y sacarlos del poste y ponerlos en nuestra red. La Raspberry Pi 2 hará esto muy bien con un recorrido de PoE a un recinto hermético en el mástil.

Paso 1:lista de piezas

1) Estación meteorológica ADS-WS1 (aunque funcionará cualquier estación meteorológica que admita salida de datos en serie)
2) Raspberry Pi (cualquier versión funcionará, usamos la versión 2)
3) Adaptador de serie a USB
4) Cable serie con al menos una carcasa DB9 hembra
5) Ethernet:suficiente para llegar a su estación meteorológica al aire libre
6) Fuente de alimentación de 5V, 1-2A
7) Recinto exterior

Opcional pero recomendado:
8) Supresor de sobretensiones Ethernet
9) Adaptadores de inyección Power-Over-Ethernet

Lo primero que hay que adquirir es una estación meteorológica. Usé una estación ADS-WS1 de Argent Data pero no es necesaria. Sin embargo, esta unidad está muy bien documentada y también tiene un TNC integrado para transmitir datos meteorológicos a través de APRS (si lo conecta a una radioafición). Sin embargo, eso no es necesario para lo que estoy haciendo, todo lo que necesito es una salida de puerto serie para leer datos. El consumo de energía es de solo 50 mA, por lo que puede ser alimentado por RPi o separándolo del suministro de energía al RPi.
http://wiki.argentdata.com/index.php?title=ADS-WS1…

Paso 2:Configura un sistema operativo en Rasperry Pi 2

Puede usar cualquier sistema operativo, sin embargo, usé Raspbian 7.1 en una tarjeta SD de 8GB. Siga las instrucciones para el sistema operativo desde el que está trabajando:

https://www.raspberrypi.org/documentation/installa…

Una vez que tenga su tarjeta SD preparada, instálela en el RPi2 y enciéndala. Es útil tener una consola local (pantalla que admita HDMI y un teclado USB). Raspbian debería usar DHCP de forma predeterminada y conectarse a su red si tiene un enrutador. Sin embargo, he descubierto que esto es impredecible.

El resto de este documento asume que tiene cierta familiaridad básica con Linux, los documentos de Raspberry Pi son muy buenos si tiene problemas para configurar su RPi2 desde aquí:

https://www.raspberrypi.org/documentation/

Una última cosa para este paso es conectar su adaptador USB a Serie. Suponiendo que sea un FTDI estándar u otro dispositivo común de serie a USB, Raspbian lo configurará automáticamente. Después de conectarlo, debería ver aparecer un nuevo dispositivo / dev / ttyUSBx.

 [correo electrónico protegido] ~ $ ls / dev / ttyUSB * / dev / ttyUSB0 

Suponiendo que sea el único dispositivo USB a serie conectado, será / dev / ttyUSB0. El comando "lsusb" mostrará todos sus dispositivos USB, lo que puede ayudarlo a identificar el dispositivo si no se muestra correctamente:

 [email protected] ~ $ lsusb 
Bus 001 Dispositivo 002:ID 0424:9514 Standard Microsystems Corp. Bus 001 Dispositivo 001:ID 1d6b:0002 Linux Foundation 2.0 root hubBus 001 Dispositivo 003:ID 0424:ec00 Standard Microsystems Corp. Bus 001 Dispositivo 005:ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC

Prefiero configurar una IP estática, ya que es una cosa menos de qué preocuparse por salir mal cuando el RPi2 está en un poste en el cielo. Edite / etc / network / interfaces y cambie esta línea:

 iface eth0 inet dhcp 

A esta línea:

 iface eth0 inet estático 

Y agregue estas líneas. Reemplace con la dirección IP y la puerta de enlace con los valores adecuados para su red:

 dirección 192.168.x.xnetmask 255.255.255.0gateway 192.168.x.x 

Ahora instale el software que necesitamos, Apache2 para un servidor web y algunas otras utilidades. Minicom es una buena herramienta para verificar que las comunicaciones en serie funcionan correctamente, y wget es para descargar el script weather.sh en la siguiente sección.

 apt-get install apache2apt-get install wgetapt-get install minicom 

Para futuras pruebas, recomiendo descargar este script:

 wget -O weather.sh "http://server1.nuge.com/~weather/software/weather -... 

Si por alguna razón el enlace anterior falla, puede encontrar la última versión del script weather.sh aquí:

http://server1.nuge.com/~weather/

Por último, pero no menos importante, es posible que deba editar su archivo / etc / group y agregar la cuenta "pi" o cualquier cuenta con la que esté probando al grupo "dialout". Esto le dará los permisos adecuados para que la cuenta lea y escriba en el dispositivo serie (/ dev / ttyUSBx).

Paso 3:Instale y configure weewx, configure los servicios para que se inicien en el arranque

Weewx es un programa que lee datos en serie de varias marcas de estaciones meteorológicas y presenta una interfaz web para graficar los datos.

 apt-get install weewx 

Ahora querrás configurarlo. Edite /etc/weewx/weewx.conf y ajuste las variables que tengan sentido. El archivo de configuración está autodocumentado, por lo que es fácil de personalizar.

 # $ Id:weewx.conf 2901 2015-02-05 21:15:03Z tkeffer $ ## ARCHIVO DE CONFIGURACIÓN WEEWX ## Copyright (c) 2009-2014 Tom Keffer # Consulte el archivo LICENSE.txt para conocer todos sus derechos . ############################################## ############################# Esta sección es para información de configuración general # Establecer en 1 para información de depuración adicional, de lo contrario comente o establecer en cero.debug =0 # Directorio raíz de la jerarquía de archivos de datos weewx para esta estación WEEWX_ROOT =/ # Cuánto tiempo esperar antes de que se agote el tiempo de espera de una conexión de socket (FTP, HTTP):socket_timeout =20 # No modifique esto - es utilizado por setup.py al instalar y actualizar.version =3.1.0 ############################### ########################################## [Estación] # Este La sección es para información sobre su estación # Descripción de la ubicación de la estación. location ="Bloominglabs - Bloomington, Indiana" # Latitud y longitud en grados decimales ... 

Por último, configure apache2 y weewx para que se inicien en el arranque:

 update-rc.d valores predeterminados de apache2 99 2update-rc.d valores predeterminados de weewx 99 2 

Ahora estos servicios aparecerán automáticamente cada vez que se encienda el RPi2. Eso debería ser todo lo que necesita para su RPi2.

Paso 4:Prepare el cable serie y los cables de alimentación

Solo necesita 3 cables más 2 cables de alimentación para conectar el controlador. En mi foto hay cables en los 5 terminales atornillados superiores, que son para enviar datos TNC / APRS a un radioaficionado y no son necesarios para este tutorial.

Por lo tanto, primero debe conectar un cable en serie al controlador meteorológico. Conecte su cable a su adaptador de serie a USB. Ahora corte el extremo restante del cable serial, asegúrese de dejar suficiente holgura para enrutar el cable según sea necesario y pelar la cubierta exterior sobre los cables al menos 2 pulgadas. Los cables individuales solo necesitan pelarse 1/4 ″ aproximadamente. Necesitará usar un multímetro para mapear los pines del cable y encontrar los cables que coinciden con los pines 2, 3 y 5 de los pines dentro de la carcasa DB9. Por lo general, si observa detenidamente, los números de los pines se enumeran junto a los pines.

El cable para el pin 2 va a TXD1 en el controlador.
El cable para el pin 3 va a RXD1 en el controlador.
El cable para el pin 5 va a tierra en el controlador.

Una vez que esté todo conectado, necesita algo de energía para el controlador. Una batería de 9V funcionará bien para realizar pruebas, o una fuente de 5V o 12V. Conecte el positivo a la "entrada de CC" y el cable de tierra a la entrada GND inferior del controlador.

Usé un par de adaptadores Power-over-Ethernet (PoE) para esta instalación. Apagué tanto mi RPi2 como el controlador meteorológico a 5V, hice un adaptador para el extremo remoto para dividir la energía entre ellos. Dado que esto estará en los elementos, utilicé tubos retráctiles para hacer la conexión más ordenada y más resistente a la intemperie. Aunque todo esto estará en una caja hermética a la intemperie, no está de más agregar capas adicionales de protección en caso de que haya una fuga.

Por último, pero no menos importante, el suministro de 5 V para el RPi2 está bien para alimentar ambos dispositivos. De hecho, puede cortar el conector microUSB y usarlo en el extremo remoto del adaptador PoE.

Paso 5:Verifique que pueda leer los datos de la estación meteorológica

Ahora debería poder encender el RPi2 y el controlador. Una vez que ambos estén encendidos, use minicom para verificar que la comunicación esté funcionando. Tuvimos que actualizar el firmware en nuestro controlador ADS-WS1 antes de que funcionara correctamente. Hay una interfaz en serie interactiva en el controlador que puede requerir configuración. Argent mantiene una wiki para el controlador que incluye los comandos que puede enviar a la unidad:

http://wiki.argentdata.com/index.php?title=ADS-WS1…

Una vez que el controlador está enviando datos regulares, intente usar el script weather.sh. Eso debería confirmar que está obteniendo datos inteligentes.

Paso 6:Prepare el equipo para uso en exteriores

Ahora necesitas poner todo en algún tipo de contenedor para contenedor al aire libre. Técnicamente, debe construir una pantalla Stephenson para garantizar lecturas adecuadas de la temperatura exterior. Los sensores de temperatura y humedad están dentro de la caja del controlador meteorológico (con una abertura para lecturas).

http://en.wikipedia.org/wiki/Stevenson_screen

Aunque por ahora utilicé un recinto hermético de PVC NEMA 4 ″. La desventaja es que no obtendremos lecturas de humedad y las lecturas de temperatura durante el día pueden aumentar de 10 a 15 grados F. En una fecha futura, planeamos construir una pantalla Stephenson para obtener lecturas precisas.

Para más detalles:Estación meteorológica Raspberry Pi 2


Proceso de manufactura

  1. Estación meteorológica basada en Raspberry Pi
  2. Estación meteorológica Raspberry Pi
  3. Monitoreo remoto del clima usando Raspberry Pi
  4. DHT Tiny Breakout para Raspberry Pi
  5. Únase al IOT con su estación meteorológica - CWOP
  6. Mando a distancia universal Raspberry Pi
  7. Un trozo de Raspberry Pi
  8. Cycle Chaser
  9. Detector de ladrones Raspberry Pi
  10. Sensor de temperatura Raspberry Pi
  11. Weather Station V 2.0