Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Estação meteorológica Raspberry Pi 2


Nosso hackerspace (Bloominglabs) recebeu recentemente uma estação meteorológica ADS-WS1 de um generoso benfeitor. Além disso, fomos selecionados pelo Instructables para o hackathon Raspberry Pi 2, então temos alguns RPi2 para hackear. Para o meu projeto, decidi usar um RPi2 para colocar nossa estação meteorológica online.

Nossa estação pode medir a direção do vento, velocidade do vento, chuva, temperatura e umidade. A unidade pode enviar dados de várias maneiras, incluindo serial. Eu precisava de uma maneira de ler os dados e tirá-los do mastro e colocá-los em nossa rede. O Raspberry Pi 2 fará isso muito bem com um PoE executado em um gabinete à prova d'água no mastro.

Etapa 1:Lista de peças


1) Estação meteorológica ADS-WS1 (qualquer estação meteorológica que suporte saída serial de dados funcionará)
2) Raspberry Pi (qualquer versão funcionará, usamos a versão 2)
3) Adaptador serial para USB
4) Cabo serial com pelo menos um shell DB9 fêmea
5) Ethernet - o suficiente para alcançar sua estação meteorológica externa
6) Fonte de alimentação 5V, 1-2A
7) Recinto externo

Opcional, mas recomendado:
8) Supressor de pico Ethernet
9) Adaptadores de injeção Power-Over-Ethernet

A primeira coisa a adquirir é uma estação meteorológica. Usei uma estação ADS-WS1 da Argent Data, mas não é necessária. No entanto, esta unidade é muito bem documentada e também possui um TNC integrado para transmissão de dados meteorológicos via APRS (se você conectá-lo a um rádio amador). No entanto, isso não é necessário para o que estou fazendo, tudo que preciso é uma saída de porta serial para ler os dados. O consumo de energia é de apenas 50mA, então pode ser alimentado por RPi ou pela divisão da energia de alimentação para o RPi.
http://wiki.argentdata.com/index.php?title=ADS-WS1…

Etapa 2:configurar um sistema operacional no Rasperry Pi 2


Você pode usar qualquer sistema operacional, mas usei Raspbian 7.1 em um cartão SD de 8GB. Siga as instruções para o sistema operacional a partir do qual você está trabalhando:

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

Depois de preparar o cartão SD, instale-o no RPi2 e ligue-o. Ajuda ter um console local (monitor compatível com HDMI e teclado USB). O Raspbian deve usar DHCP por padrão e entrar na sua rede se você tiver um roteador. No entanto, descobri que isso é imprevisível.

O restante deste documento pressupõe que você tenha alguma familiaridade básica com Linux. Os documentos do Raspberry Pi são muito bons se você tiver problemas para configurar o RPi2 daqui:

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

Uma última coisa para esta etapa é conectar seu adaptador USB-para-serial. Supondo que seja um FTDI padrão ou outro dispositivo Serial-para-USB comum, o Raspbian irá configurá-lo automaticamente. Depois de conectá-lo, você verá um novo dispositivo / dev / ttyUSBx aparecer.
 [email protegido] ~ $ ls / dev / ttyUSB * / dev / ttyUSB0 

Supondo que seja o único dispositivo USB para serial conectado, ele será / dev / ttyUSB0. O comando “lsusb” exibirá todos os seus dispositivos USB, o que pode ajudá-lo a identificar o dispositivo se ele não estiver aparecendo corretamente:
 [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 Microsystems Standard Corp. Bus 001 Dispositivo 005:ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC

Eu prefiro configurar um IP estático, pois é uma coisa a menos para se preocupar em dar errado quando o RPi2 está em cima de um poste no céu. Edite / etc / network / interfaces e altere esta linha:
 iface eth0 inet dhcp 

Para esta linha:
 iface eth0 inet static 

E adicione essas linhas. Substitua pelo endereço IP e gateway com valores apropriados para sua rede:
 endereço 192.168.x.xnetmask 255.255.255.0gateway 192.168.x.x 

Agora instale o software de que precisamos, Apache2 para um servidor web e alguns outros utilitários. O Minicom é uma boa ferramenta para verificar se as comunicações seriais estão funcionando corretamente e o wget é para fazer o download do script weather.sh na próxima seção.
 apt-get install apache2apt-get install wgetapt-get install minicom 

Para fins de teste futuro, recomendo fazer o download deste script:
 wget -O weather.sh "http://server1.nuge.com/~weather/software/weather -... 

Se por algum motivo o link acima falhar, você pode encontrar a versão mais recente do script weather.sh aqui:

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

Por último, mas não menos importante, você pode precisar editar seu arquivo / etc / group e adicionar a conta “pi” ou qualquer outra conta com a qual você estará testando ao grupo “dialout”. Isso dará as permissões apropriadas para a conta ler e gravar no dispositivo serial (/ dev / ttyUSBx).

Etapa 3:instale e configure o weewx, configure os serviços para iniciar na inicialização


Weewx é um programa que lê dados seriais de várias marcas de estações meteorológicas e apresenta uma interface web para representar graficamente os dados.
 apt-get install weewx 

Agora você vai querer configurá-lo. Edite /etc/weewx/weewx.conf e ajuste as variáveis ​​que fazem sentido. O arquivo de configuração é autodocumentado, por isso é fácil de personalizar.
 # $ Id:weewx.conf 2901 05-02-2015 21:15:03Z tkeffer $ ## WEEWX CONFIGURATION FILE ## Copyright (c) 2009-2014 Tom Keffer # Veja o arquivo LICENSE.txt para seus direitos completos . ############################################################## ######################################### Esta seção é para informações gerais de configuração # Defina como 1 para informações extras de depuração, caso contrário, comente-a ou definido como zero.debug =0 # Diretório raiz da hierarquia de arquivos de dados weewx para esta estação.WEEWX_ROOT =/ # Quanto tempo esperar antes de esgotar o tempo limite de uma conexão de socket (FTP, HTTP):socket_timeout =20 # Não modifique isto - é usado por setup.py ao instalar e atualizar.version =3.1.0 ###################################### ########################################################## [Estação] # Este seção é para informações sobre sua estação # Descrição da localização da estação. location ="Bloominglabs - Bloomington, Indiana" # Latitude e longitude em graus decimais ... 

Por último, configure apache2 e weewx para iniciar na inicialização:
 update-rc.d apache2 defaults 99 2update-rc.d weewx defaults 99 2 

Agora, esses serviços serão ativados automaticamente sempre que o RPi2 for ligado. Isso deve ser tudo que você precisa para o seu RPi2.

Etapa 4:prepare o cabo serial e os cabos de alimentação


Você só precisa de 3 fios mais 2 fios de alimentação para conectar o controlador. Na minha foto, há fios nos 5 principais terminais aparafusados, que são para enviar dados TNC / APRS para um rádio amador e não são necessários para este tutorial.

Portanto, primeiro você precisa conectar um cabo serial ao controlador de clima. Conecte o cabo ao adaptador Serial-para-USB. Agora corte a extremidade restante do cabo serial, certifique-se de dar a si mesmo folga suficiente para direcionar o cabo conforme necessário e para descascar a capa externa sobre os fios pelo menos 2 polegadas. Os fios individuais só precisam ser descascados 1/4 ″ ou mais. Você precisará usar um multímetro para mapear os pinos do cabo e encontrar os fios que correspondem aos pinos 2, 3 e 5 dos pinos dentro do shell DB9. Normalmente, se você olhar de perto, os números dos pinos estão listados ao lado dos pinos.

O fio do pino 2 vai para TXD1 no controlador.
O fio do pino 3 vai para RXD1 no controlador.
O fio do pino 5 vai para o aterramento no controlador.

Depois que tudo estiver conectado, você precisará de um pouco de energia para o controlador. Uma bateria de 9 V funcionará bem para teste, ou uma fonte de 5 V ou 12 V. Ligue o positivo à “entrada CC” e o fio terra à entrada GND inferior no controlador.

Usei um par de adaptadores Power-over-Ethernet (PoE) para esta instalação. Eu desliguei meu RPi2 e o controlador de clima de 5V, criei um adaptador para a extremidade remota para dividir a energia entre eles. Já que isso vai estar nos elementos, usei tubo retrátil para fazer a conexão bem organizada e mais resistente às intempéries. Mesmo que tudo esteja em uma caixa à prova de intempéries, não faz mal adicionar camadas extras de proteção no caso de haver um vazamento.

Por último, mas não menos importante, a fonte de 5 V para o RPi2 é adequada para alimentar ambos os dispositivos. Na verdade, você pode cortar o conector microUSB e usá-lo na extremidade remota do adaptador PoE.

Etapa 5:verifique se você consegue ler os dados da estação meteorológica


Agora você deve ser capaz de ligar o RPi2 e o controlador. Assim que ambos estiverem ligados, use o minicom para verificar se a comunicação está funcionando. Tivemos que atualizar o firmware em nosso controlador ADS-WS1 antes que funcionasse corretamente. Há uma interface serial interativa no controlador que pode requerer configuração. Argent mantém um wiki para o controlador que inclui os comandos que você pode enviar para a unidade:

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

Quando o controlador estiver enviando dados regulares, tente usar o script weather.sh. Isso deve confirmar que você está obtendo dados inteligentes.

Etapa 6:prepare o equipamento para uso externo


Agora você precisa colocar tudo em algum tipo de recipiente para recipiente ao ar livre. Tecnicamente, você deve construir uma tela Stephenson para garantir leituras de temperatura externa adequadas. Os sensores de temperatura e umidade estão dentro da caixa do controlador de clima (com uma abertura para leituras).

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

Eu usei um invólucro de PVC NEMA 4 ″ à prova d'água, embora por agora. A desvantagem é que não obteremos leituras de umidade e as leituras de temperatura diurna podem aumentar em 10-15 graus F. Em uma data futura, planejamos construir uma tela Stephenson para obter leituras precisas.



Para mais detalhes:Estação meteorológica de Raspberry Pi 2

Processo de manufatura

  1. Estação meteorológica baseada no Raspberry Pi
  2. Estação meteorológica Raspberry Pi
  3. Monitoramento remoto do clima usando Raspberry Pi
  4. DHT Tiny Breakout para Raspberry Pi
  5. Junte-se ao IOT com sua estação meteorológica - CWOP
  6. Controle remoto universal Raspberry Pi
  7. Uma fatia de Raspberry Pi
  8. Cycle Chaser
  9. Detector de ladrão Raspberry Pi
  10. Sensor de temperatura Raspberry Pi