Índice:

Estação de meteoros Raspberry Pi: 17 etapas (com fotos)
Estação de meteoros Raspberry Pi: 17 etapas (com fotos)

Vídeo: Estação de meteoros Raspberry Pi: 17 etapas (com fotos)

Vídeo: Estação de meteoros Raspberry Pi: 17 etapas (com fotos)
Vídeo: Projeto 17 - Reconhecimento "Automático" de Imagens com Google Vision para a Robô Rosie - Maker 4.0 2024, Novembro
Anonim
Estação de meteoros Raspberry Pi
Estação de meteoros Raspberry Pi

O objetivo deste tutorial é que você construa uma câmera de vídeo para detecção de meteoros totalmente funcional, que poderá ser usada posteriormente para detecção e observações de meteoros. Os materiais usados serão relativamente baratos e podem ser facilmente comprados na loja de tecnologia local. Todo o software usado neste projeto é de código aberto, e o projeto em si é de código aberto.

Você pode encontrar mais informações sobre o projeto no Hackaday e no Github da Croatian Meteor Network.

Etapa 1: Requisitos e materiais

Os materiais utilizados são:

  • Raspberry Pi 3 computador
  • Cartão micro SD Classe 10, 32 GB de armazenamento ou superior
  • adaptador de cartão micro SD
  • Fonte de alimentação 5V para o RPi com corrente máxima de pelo menos 2A
  • Caso RPi com ventilador
  • Dissipadores de calor
  • Módulo RTC (Real Time Clock) - módulo DS3231 RTC
  • Digitalizador de vídeo EasyCap (chipset UTV007) (os outros têm problemas no RPi)
  • Câmera CCTV Sony Effio 673 e lente widefield (4 mm ou 6 mm)
  • Fonte de alimentação da câmera 12V
  • Caixa da câmera de segurança
  • Fiação e cabos
  • OPCIONAL: adaptador HDMI para VGA

Etapa 2: Configurando o RPi - Materiais

Configurando o RPi - Materiais
Configurando o RPi - Materiais

Começaremos primeiro com a configuração do próprio RPi. Para fazer isso, precisaremos dos seguintes materiais:

  • Raspberry Pi 3
  • 3 dissipadores de calor
  • RPi caixa de plástico com ventilador
  • Módulo RTC
  • cartão SD

Etapa 3: Instalando o Raspbian

Instalando o Raspbian
Instalando o Raspbian

Agora você terá que instalar o Raspbian, o sistema operacional da RPi em seu cartão micro SD. Você pode obter o Raspbian Jessie (a imagem do sistema operacional que funciona com esta configuração de câmera atual) neste link: Baixando o Raspbian

Além disso, você deve ter um adaptador de cartão micro SD para instalar o sistema operacional no cartão.

Caso o seu cartão SD não seja novo, você terá que formatar o cartão antes de instalar o Raspbian. Você pode encontrar o guia para instalar o Raspbian e formatar o cartão SD neste link: Instalando o Raspbian

Etapa 4: Dissipadores de calor e cartão SD

Dissipadores de calor e cartão SD
Dissipadores de calor e cartão SD
Dissipadores de calor e cartão SD
Dissipadores de calor e cartão SD
Dissipadores de calor e cartão SD
Dissipadores de calor e cartão SD

Começamos colando os dissipadores de calor na CPU e GPU da placa, bem como na parte traseira da GPU. Primeiro você tem que retirar a tampa azul sob a qual há uma superfície pegajosa que se fixa às unidades mencionadas. A parte removível pode ser um pouco complicada, mas você pode usar qualquer objeto pontiagudo para remover a tampa com relativa facilidade.

Depois disso, você deve colocar o cartão SD em que instalou o Raspbian na porta do cartão SD em seu RPi (para a localização da porta do cartão SD, consulte a Etapa 6.)

Etapa 5: montagem da caixa e do ventilador

Montando a Caixa e o Ventilador
Montando a Caixa e o Ventilador
Montando a Caixa e o Ventilador
Montando a Caixa e o Ventilador
Montando a Caixa e o Ventilador
Montando a Caixa e o Ventilador

Depois disso, você pode prosseguir com a montagem da caixa em que seu RPi estará. A caixa é feita de plástico e é novamente coberta por uma folha que se solta facilmente. Sugerimos que você comece a montar a caixa pelas laterais da placa RPi, pois assim você poderá identificar facilmente qual lado é qual e como exatamente a caixa deve ser montada, reconhecendo os slots de porta nas laterais. Em seguida, você anexará a parte inferior da caixa. Certifique-se de que o orifício na parte inferior esteja alinhado com a GPU.

Depois disso, você pode anexar a parte superior da caixa. As 'pernas' menores que saem de ambos os lados do lado superior devem ser alinhadas com pequenos orifícios em cada lado da caixa. Neste ponto, você deve ter certeza absoluta de que a parte superior da caixa está sobre a matriz de pinos GPIO. Continuando, agora você pode conectar o módulo RTC. Ele pode ser conectado aos primeiros quatro pinos GPIO olhando para o centro da placa, como pode ser visto na imagem. Agora termine o trabalho de configuração do hardware do seu RPi apenas conectando o ventilador na parte superior da placa. A função do ventilador, assim como dos dissipadores de calor, é permitir o resfriamento e o desempenho ideais do seu RPi quando ele está sob uma carga computacional pesada. Primeiro, você parafusará o ventilador no lugar usando um pequeno parafuso em cruz, com os parafusos e o logotipo do ventilador apontando para o interior da caixa. Em seguida, o cabo da ventoinha deve ser conectado aos pinos 2 e 3 do GPIO, olhando para o lado de fora da caixa. Se algum dos parafusos parece estar interferindo na própria placa e / ou não permite que a caixa seja totalmente fechada, você pode, é claro, parafusar alguns deles de forma que apontem para o lado de fora da caixa. Se o ventilador não funcionar, tente reconectar o cabo do ventilador aos pinos ou mesmo soldar o cabo solto ao ventilador.

Etapa 6: conectando os periféricos

Conectando os periféricos
Conectando os periféricos
Conectando os periféricos
Conectando os periféricos
Conectando os periféricos
Conectando os periféricos

Nesta parte do processo, você transformará sua placa RPi em um computador utilizável.

Para isso, você precisará de:

  • OPCIONAL: cabo HDMI para VGA
  • mouse
  • teclado
  • Monitor
  • Cabos de alimentação de monitor e RPi

Você começará conectando o monitor ao seu RPi. A porta de vídeo que RPi usa é HDMI, então se você não tiver um cabo HDMI ou monitor (por exemplo, se você tiver um cabo VGA), você deve comprar um adaptador HDMI para VGA. A porta HDMI está localizada em um dos lados do computador de placa única RPi. Depois disso, você pode conectar seu teclado e mouse ao RPi através das portas USB. Depois de configurar seus dispositivos básicos de entrada e saída, você pode conectar seu RPi a uma fonte de alimentação usando o adaptador e o cabo que veio com sua placa. É importante observar que a potência da eletricidade usada para executar o RPi deve ser de pelo menos 2,5 A.

Etapa 7: configuração do hardware da câmera

Configuração do hardware da câmera
Configuração do hardware da câmera
Configuração do hardware da câmera
Configuração do hardware da câmera
Configuração do hardware da câmera
Configuração do hardware da câmera

Nesta etapa, você fará uma configuração de hardware de sua câmera e a conectará ao RPI.

Para isso, você precisará do seguinte:

  • EasyCap ADC (conversor analógico-digital) - chipset UTV007
  • Câmera Sony Effio CCTV
  • Fiação e cabos

A instalação e configuração do cabo geralmente depende de você. Basicamente, você precisa conectar a câmera à fonte de alimentação com algum tipo de cabo de alimentação e a saída do sinal da câmera para a câmera. Você pode ver nossa configuração nas imagens acima. Você precisará conectar o cabo de sinal da câmera ao cabo fêmea amarelo do EasyCap ADC. Os outros cabos do EasyCap não serão necessários. Agora você pode conectar o EasyCap ao RPi. Como você provavelmente não terá espaço suficiente ao redor da área dos slots USB do Pi, sugerimos que você conecte o ADC com um cabo de extensão USB.

AVISO: EasyCap ADC com chipsets STK1160, Empia ou Arcmicro não funcionará. O único chipset suportado é o UTV007.

Etapa 8: Testar a câmera

Testando a câmera
Testando a câmera
Testando a câmera
Testando a câmera

Para testar sua configuração, você deverá verificar o sinal transmitido ao RPi.

A partir de agora, você instalará todo o software usando o terminal, que é uma interface de usuário de linha de comando. Como você o usará com frequência, é importante observar que ele pode ser aberto por meio do atalho de teclado: Crtl + Alt + T.

Primeiro instale o mplayer por meio do terminal usando este comando:

sudo apt-get install mplayer

Este é um programa para visualizar o vídeo da câmera.

Em seguida, você terá que executar o mplayer. Se você tiver uma câmera NTSC (padrão norte-americano), execute-a no terminal:

mplayer tv: // -tv driver = v4l2: device = / dev / video0: input = 0: norm = NTSC -vo x11

Se você tiver uma câmera PAL (Europa), digite o seguinte:

mplayer tv: // -tv driver = v4l2: device = / dev / video0: input = 0: norm = PAL -vo x11

Se você estiver digitando os comandos manualmente no Terminal, certifique-se de que o caractere correto na parte "driver = v4l2" do comando anterior não seja um ('1'), mas uma letra L minúscula ('l'). No entanto, recomendamos fortemente apenas copiar e colar os comandos usando Ctrl + Shift + C para copiar e Ctrl + Shift + V para colar comandos dentro do Terminal. Isso torna o processo de configuração muito mais fácil e rápido.

Se a câmera estiver conectada corretamente, você verá o feed de vídeo da câmera. Caso contrário, verifique as etapas anteriores novamente e certifique-se de segui-las corretamente.

Etapa 9: Instalando todo o software necessário

Em seguida, você deverá instalar todo o software necessário. Primeiro, execute isto:

sudo apt-get update

E atualize todos os pacotes:

sudo apt-get upgrade

Você pode instalar todas as bibliotecas do sistema usando o seguinte comando:

sudo apt-get install git mplayer python-scipy python-matplotlib python2.7 python2.7-dev libblas-dev liblapack-dev at-spi2-core python-matplotlib libopencv-dev python-opencv python-imaging-tk libffi-dev libssl -dev

Como o código usado para detectar meteoros é escrito em Python, você também deve instalar alguns 'módulos' Python que são usados no código. Primeiro, comece instalando pip (Pip Instala Pacotes) a partir do terminal:

sudo pip install -U pip setuptools

Você também deve instalar e atualizar o pacote Numpy primeiro:

sudo pip install numpy

sudo pip --upgrade numpy

Você já terá pip e Python em seu RPi, mas precisa atualizar para a versão mais recente. Instale todas as bibliotecas Python com o seguinte comando:

sudo pip install gitpython Travesseiro scipy cython astropy pyephem weave paramiko

Isso provavelmente levará algum tempo.

Etapa 10: Configurando o Fuso Horário e o Módulo RTC

Visto que o tempo preciso desempenha um papel importante na observação e detecção de meteoros, você deve certificar-se de que seu RPi mantenha o tempo correto. Primeiro, defina seu fuso horário para UTC (um fuso horário padrão entre os astrônomos) usando o seguinte comando:

sudo dpkg-reconfigure tzdata

Isso abrirá uma GUI que o guiará pelo processo. Selecione 'Nenhuma das opções acima' e, em seguida, 'UTC' e saia.

Em seguida, você terá que configurar o módulo RTC para manter a hora, mesmo que o computador esteja desligado e offline. Para configurar o módulo, você frequentemente será solicitado a editar um arquivo de alguma forma. Faça com:

sudo nano

onde você substituirá pelo endereço do arquivo real. Depois de terminar, pressione Crtl + O e Crtl + X.

Além disso, quando for necessário 'comentar' uma linha de código, faça-o colocando um sinal # no início da linha em questão.

Adicione as seguintes linhas no final de /boot/config.txt:

dtparam = i2c_arm = on

dtoverlay = i2c-rtc, ds3231

Em seguida, reinicie o RPi:

sudo reboot

Depois disso, remova o módulo fake-hwclock, pois você não precisa mais dele:

sudo apt-get remove fake-hwclock

sudo update-rc.d hwclock.sh enable sudo update-rc.d fake-hwclock remove

Em seguida, comente as linhas com -systz no arquivo / lib / udev / hwclock-set.

Agora você deve definir a hora atual gravando a hora atual do sistema no RTC e se livrar do daemon NTP redundante:

sudo hwclock -w

sudo apt-get remove ntp sudo apt-get install ntpdate

Mais edição! Edite o arquivo /etc/rc.local e adicione o comando hwclock acima da linha que diz saída 0:

dormir 1

hwclock -s ntpdate-debian

Evite a configuração automática do relógio para um valor diferente editando o arquivo / etc / default / hwclock e alterando o parâmetro H WCLOCKACCESS:

HWCLOCKACCESS = não

Agora você tem que desabilitar a atualização do sistema RTC a partir do relógio do sistema, uma vez que já fizemos isso, comentando a seguinte linha no arquivo /lib/systemd/system/hwclock-save.service:

ConditionFileIsExecutable =! / Usr / sbin / ntpd

Habilite o relógio RTC executando:

sudo systemctl enable hwclock-save.service

Para que o horário RTC seja atualizado a cada 15 minutos, execute o seguinte:

crontab -e

e selecione seu editor de texto favorito.

E no final do arquivo adicione a seguinte linha:

* / 15 * * * * ntpdate-debian> / dev / null 2> & 1

Isso atualizará a hora do relógio RTC a cada 15 minutos através da Internet.

É isso! Você está pronto! Foi fácil, não foi? Tudo o que você precisa fazer a seguir é reiniciar o computador:

sudo reboot

Etapa 11: Habilitando o serviço Watchdog

O RPi às vezes inexplicavelmente trava e congela. O serviço de watchdog essencialmente reinicia o RPi automaticamente quando seu temporizador registra que o computador não fez nada em um período de tempo arbitrário.

Para habilitar o serviço watchdog completamente, primeiro instale o pacote watchdog executando-o no terminal:

sudo apt-get install watchdog

Em seguida, carregue o módulo de serviço manualmente:

sudo modprobe bcm2835_wdt

Adicione um arquivo.config para carregar automaticamente o módulo e abri-lo com o editor nano:

sudo nano /etc/modules-load.d/bcm2835_wdt.conf

Em seguida, adicione esta linha ao arquivo:

bcm2835_wdt

e salve o arquivo digitando Ctrl + O e Ctrl + X.

Você também precisa editar outro arquivo em / lib / systemd / system / watchdog.service executando isso no terminal:

sudo nano /lib/systemd/system/watchdog.service

Agora adicione uma linha à seção [Instalar]:

[Instalar]

WantedBy = multi-user.target

Além disso, uma coisa que falta fazer é configurar o próprio serviço de watchdog. Primeiro abra o arquivo.conf no terminal:

sudo nano /etc/watchdog.conf

e, em seguida, remova o comentário [isto é, remova o sinal de hashtag na frente dele] a linha que começa com # watchdog-device. Também remova o comentário da linha que diz # max-load-1 = 24.

Tudo o que resta é habilitar e iniciar o serviço:

sudo systemctl enable watchdog.service

E então:

sudo systemctl start watchdog.service

Etapa 12: Obtendo o Código

O código terá que ser baixado para / home / pi. Para baixar o código lá, digite o seguinte no terminal:

CD

Você pode obter o código abrindo o terminal e executando:

git clone "https://github.com/CroatianMeteorNetwork/RMS.git"

Agora, para compilar o código baixado e instalar todas as bibliotecas Python, abra o terminal e navegue até a pasta onde o código foi clonado:

cd ~ / RMS

E então execute:

sudo python setup.py install

Etapa 13: Definir o arquivo de configuração

Uma das etapas mais importantes é definir o arquivo de configuração. Você terá que abrir o arquivo de configuração e editá-lo:

sudo nano /home/pi/RMS/.config

O processo de configuração consiste basicamente em várias partes:

Primeiro, você deve configurar o ID da estação, que se encontra sob o título [Sistema]. Deve ser um número de 3 dígitos. Se o seu RPi pertencer a uma organização astronômica, o ID da estação será fornecido a você por essa organização. Caso contrário, você mesmo pode definir o ID. Em seguida, você deve definir as coordenadas do local onde sua câmera está, incluindo a altura do local de observação. A informação relativa às coordenadas de qualquer local pode ser facilmente obtida através da aplicação 'Coordenadas GPS' no Android ou da aplicação 'Dados GPS - Coordenadas, Elevação, Velocidade e Bússola' no iOS.

Em seguida, você deve definir a parte [Captura] do arquivo de configuração. Você só precisa alterar as configurações de resolução da câmera e o número de FPS (quadros por segundo).

Se você tiver uma câmera NTSC (América do Norte), terá uma resolução de tela de 720 x 480 e seu FPS será de 29,97.

Se você tiver uma câmera de sistema PAL (Europa), terá uma resolução de tela de 720 x 576 e seu FPS será de 25. Você deve preencher os dados no arquivo.config de acordo com esses parâmetros.

Depois de concluir a configuração do arquivo de configuração, pressione Ctrl + O para salvar as alterações no arquivo e Crtl + X para sair.

Etapa 14: Configurando a câmera

Configurando a câmera
Configurando a câmera
Configurando a câmera
Configurando a câmera

Para o início da configuração da câmera, você terá que iniciar mais uma vez o mplayer que permite a comunicação com a câmera no terminal.

Se você tiver uma câmera NTSC, digite isto no terminal:

mplayer tv: // -tv driver = v4l2: device = / dev / video0: input = 0: norm = NTSC -vo x11

Se você mora na Europa, execute este:

mplayer tv: // -tv driver = v4l2: device = / dev / video0: input = 0: norm = PAL -vo x11

Em seguida, a janela do mplayer será iniciada e você verá exatamente o que sua câmera está capturando. Agora você tem que fazer uma configuração manual da câmera. Primeiro você tem que pressionar o botão 'SET' do meio na parte traseira da câmera, que abrirá um menu. Você pode navegar por ele com os botões ao redor do botão SET.

Em seguida, você deve abrir o arquivo RMS / Guides / icx673_settings.txt por meio do terminal ou no Github e apenas copiar as configurações fornecidas no arquivo para sua câmera navegando pelo menu e alterando as configurações da câmera conforme descrito em aqui:

LENS - MANUAL

OBTURADOR / AGC - MANUAL (ENTRAR) MODO - SHT + AGC OBTURADOR - AGC - 18 WHITE BALLANCE - ANTI CR LUZ DE FUNDO - OFF PICT AJUSTE (ENTER) ESPELHO - OFF BRILHO - 0 CONTRASTE - 255 NITIDEZ - 0 HUE - 128 GANHO - 128 DEFOGG - DESLIGADO ATR - DESLIGADO DETECÇÃO DE MOVIMENTO - DESLIGADO ……… Pressione PRÓXIMO ……… PRIVACIDADE - DESLIGADO DIA / NOITE - P / B (DESLIGADO, DESLIGADO, -, -) NR (ENTRAR) MODO NR - DESLIGADO NÍVEL Y - - NÍVEL C - - CAM ID - OFF SYNC - INT LANG - ENG ……… SALVAR TODAS AS SAÍDAS

Essas configurações tornarão a câmera ideal para detecção noturna de meteoros.

Se a imagem parecer muito escura (sem estrelas visíveis), você pode definir o parâmetro AGC para 24.

Se o visor do mplayer ficar verde, pressione Crtl + C na janela do Terminal. Abra outra janela do Terminal e digite o seguinte comando duas vezes:

sudo killall mplayer

Etapa 15: Finalmente! Executando o Software

Primeiro, teste sua configuração executando StartCapture por 0,1 horas (6 minutos):

python -m RMS. StartCapture -d 0.1

Se tudo estiver OK com a configuração, uma janela completamente branca deve aparecer. Em algum lugar no topo da janela, haverá uma linha que diz 'Maxpixel'. Se a janela não abrir ou o processo de captura não iniciar, vá para a 'Etapa 16: Solução de problemas'.

Agora você está pronto para o início da captura de dados e detecção de meteoros. Tudo que você precisa fazer agora é executar o código no terminal:

python -m RMS. StartCapture

Isso começará a capturar após o pôr do sol e parará de capturar ao amanhecer.

Os dados serão salvos em / home / pi / RMS_data / CapturedFiles, e os arquivos com as detecções de meteoros serão salvos / home / pi / RMS_data / ArchivedFiles.

Todas as detecções de meteoros para uma noite de detecção serão armazenadas em um arquivo *.tar.gz em / home / pi / RMS_data / ArchivedFile s.

Etapa 16: Solução de problemas

Problema GTK

Às vezes e em alguns dispositivos, parece não haver janela 'Maxpixel' que deva ser renderizada antes da captura e que há um aviso no registro RMS. StartCapture:

(StartCapture.py:14244): Gtk-ERROR **: símbolos GTK + 2.x detectados. O uso de GTK + 2.x e GTK + 3 no mesmo processo não é compatível

Você terá que instalar um pacote usando apt-get:

sudo apt-get install pyqt4-dev-tools

Para corrigir o erro e iniciar a captura, execute:

Pitão

E então:

>> importar matplotlib

>> matplotlib.matplotlib_fname ()

Isso imprimirá a localização do arquivo de configuração da biblioteca matplotlib python, por exemplo: /usr/local/lib/python2.7/dist-packages/matplotlib-2.0.2-py2.7-linux-armv7l.egg/matplotlib/mpl -data / matplotlibrc

Edite o arquivo usando o editor nano:

sudo nano

E quando estiver no arquivo, substitua a linha que diz:

backend: gtk3agg

com esta linha:

backend: Qt4Agg

Você também deve remover o comentário da linha:

# backend.qt4: PyQt4

Salve o arquivo e pronto!

A instalação do Astropy falhou

Se o módulo astropy python falhar na instalação e a mensagem de erro exibida disser:

ImportError: Nenhum módulo denominado _build_utils.apple_accelerate

Então você provavelmente precisará de uma versão mais recente do numpy. Então, vá em frente e atualize o numpy para resolver o problema:

sudo pip --upgrade numpy

Depois de fazer isso, você também precisa fazer uma reinstalação completa dos módulos Python e outros pacotes, conforme descrito na Etapa 9.

Etapa 17: Resultados

Resultados
Resultados
Resultados
Resultados
Resultados
Resultados

Aqui estão algumas imagens de meteoros que obtivemos capturando os meteoros e executando o software instalado anteriormente.

Recomendado: