Índice:

Gravador de dados de voo RC / caixa preta: 8 etapas (com imagens)
Gravador de dados de voo RC / caixa preta: 8 etapas (com imagens)

Vídeo: Gravador de dados de voo RC / caixa preta: 8 etapas (com imagens)

Vídeo: Gravador de dados de voo RC / caixa preta: 8 etapas (com imagens)
Vídeo: Dentista reage a ASMR de Língua Bizarra #shorts 2024, Novembro
Anonim
RC Flight Data Recorder / Black Box
RC Flight Data Recorder / Black Box

Neste instrutível, irei construir um gravador de dados de combate baseado em Arduino para veículos RC, especificamente aviões RC. Vou usar um módulo GPS UBlox Neo 6m conectado a um arduino pro mini e um escudo de cartão SD para registrar os dados. Este projeto irá registrar a latitude, longitude, velocidade, altitude e voltagem da bateria, entre outras coisas. Esses dados serão enriquecidos para uma melhor experiência de visualização usando o Google Earth Pro.

Etapa 1: Ferramentas e peças

Ferramentas e peças
Ferramentas e peças
Ferramentas e peças
Ferramentas e peças

Peças

  • Módulo GPS Ublox NEO 6m: ebay / amazon
  • Módulo de cartão Micro SD: ebay / amazon
  • Cartão Micro SD (alta velocidade ou capacidade desnecessária): amazon
  • Arduino pro mini: ebay / amazon
  • Programador FTDI e cabo correspondente: ebay / amazon
  • Perfboard: ebay / amazon
  • Fio de conexão: ebay / amazon
  • Alfinetes de cabeçalho: ebay / amazon
  • Díodo retificador: ebay / amazon
  • 2 resistor de 1K ohm: ebay / amazon
  • Papelão de 1500 micron

Ferramentas

  • Ferro de solda e solda
  • Pistola de cola quente
  • Laptop ou computador
  • Multímetro (não estritamente necessário, mas extremamente útil)
  • Mãos que ajudam (novamente não são necessárias, mas úteis)
  • Faca artesanal

Opcional

  • Itens usados para prototipagem não são necessários, mas são muito úteis
  • Tábua de pão
  • Arduino Uno
  • Jumper Wires

Etapa 2: Teoria e Esquema

Teoria e Esquema
Teoria e Esquema

O cérebro do dispositivo é o Arduino pro mini, ele é alimentado por veículos RC (no meu caso, um avião) porta de equilíbrio de bateria Li-Po. Eu tenho isso configurado para uma bateria de 2s, mas isso pode ser facilmente alterado para acomodar outros tamanhos de bateria.

Esta peça não está completa, atualizarei este instrutível quando a leitura da superfície de controle for concluída

Servo1 será meu motor elevon de aviões enquanto servo 2 será minha saída servo controlador de vôo

O módulo GPS está recebendo dados dos satélites GPS na forma de strings NMEA. Essa string contém informações de localização, mas também o tempo exato, velocidade, rumo, altitude e muitos outros dados úteis. Depois que uma string é recebida, as informações úteis para este projeto são extraídas usando a biblioteca de códigos TinyGPS.

Esses dados, juntamente com a tensão da bateria e a posição de elevon, serão gravados no cartão SD a uma taxa de 1Hz. Esses dados são gravados no formato CSV (valores separados por vírgula) e serão interpretados usando o Google Maps para traçar uma trajetória de voo.

Etapa 3: Prototipagem

Prototipagem
Prototipagem
Prototipagem
Prototipagem

NOTA: As conexões do módulo GPS não são mostradas acima. O GPS é conectado da seguinte forma:

GND para o solo do Arduino

VCC para Arduino 5V

RX para Arduino pino digital 3

TX para Arduino pino digital 2

Para testar se todos os componentes estão funcionando corretamente, é melhor começar colocando tudo em uma placa de ensaio, pois você não quer descobrir somente depois que tudo estiver montado que você tem uma peça com defeito. A biblioteca de código adicional necessária é a biblioteca TinyGPS. O link pode ser encontrado abaixo.

minúsculo gps

O código do testador de tensão abaixo apenas testa o circuito de medição de tensão. O valor de ajuste precisa ser alterado para fazer o arduino ler a tensão correta.

O código de Arquivos é usado para testar o módulo do cartão SD e o cartão micro SD para garantir que ambos estejam lendo e gravando corretamente.

O código gpsTest usado é usado para se certificar de que o gps está recebendo dados corretos e está configurado corretamente. Este código irá gerar sua latitude, longitude e outros dados ao vivo.

Se todas essas peças estiverem funcionando juntas corretamente, você pode seguir para a próxima etapa.

Etapa 4: Solda e fiação

Solda e fiação
Solda e fiação
Solda e fiação
Solda e fiação
Solda e fiação
Solda e fiação

Antes de fazer qualquer solda ou fiação, coloque todos os seus componentes em um pedaço de papelão e corte-o nas dimensões externas dos componentes. Esta será a sua placa de montagem para todas as suas peças.

Faça a placa de circuito cortando a perfboard no menor tamanho possível, pois o peso e o tamanho são prioridades. Solde os pinos do cabeçote no lugar ao longo da borda da perfboard cortada, é aqui que a porta de equilíbrio da bateria e, no futuro, o servo da superfície de controle e o controlador de vôo se conectarão. Solde os 2 resistores de 1k Ohm e o diodo retificador no lugar de acordo com o diagrama do circuito.

Solde o módulo do cartão micro SD nos pinos do arduino de acordo com o diagrama do circuito e faça as conexões usando o fio AWG 24.

Faça as conexões entre a perfboard e o arduino novamente de acordo com o diagrama de circuito e usando mais fios do mesmo tipo.

NOTA: O GPS é um dispositivo sensível à eletrostática, tenha cuidado ao soldar e nunca tenha corrente passando por qualquer um dos fios ao fazer as conexões

Solde os pinos dos módulos GPS aos pinos correspondentes no Arduino usando comprimentos de cerca de 3-4 cm (1-1,5 pol.) De fio, isso dá ao módulo GPS folga suficiente para dobrar para o outro lado do cartão de apoio.

Verifique e verifique a continuidade de todas as conexões para se certificar de que tudo está conectado corretamente.

Usando cola quente, monte o módulo do cartão SD, o Arduino Pro Mini e seu perfboard personalizado de um lado do papelão e o módulo GPS e a antena do outro.

Depois de ter todas as peças corretamente conectadas e montadas no papelão, é hora de passar para o código.

Etapa 5: O Código

Este é o código executado no dispositivo final. Enquanto este código estiver em execução, o LED no módulo GPS começará a piscar assim que o GPS encontrar mais de 3 satélites. O LED na placa arduino piscará uma vez assim que o arduino iniciar para mostrar que o arquivo CSV foi criado com sucesso e, em seguida, piscará junto com o LED GPS quando for gravado no cartão micro SD com sucesso. Se o LED permanecer do cartão micro SD, não será possível inicializar e provavelmente há um problema com a fiação ou cartão micro SD.

Este código criará um novo arquivo CSV toda vez que o programa for executado, eles serão rotulados como "flightxx", onde xx é um número entre 00 e 99 que aumenta toda vez que o programa é executado.

Para que o campo da hora atual na planilha esteja correto, você precisa converter o UTC (Coordinated Universal Time) para o fuso horário correto para você. Para mim, o valor é UTC +2.0, pois esse é o fuso horário no qual estou localizado, mas isso pode ser alterado no código alterando o float "fuso horário".

Etapa 6: Teste, Teste, Teste

Testando, testando, testando
Testando, testando, testando

Agora você deve ter um sistema funcionando, é hora de testá-lo, certifique-se de que tudo está funcionando conforme o esperado.

Uma vez que tudo está funcionando e você está recebendo uma saída na planilha que parece correta, é hora de fazer alguns ajustes. Por exemplo, originalmente eu tinha o dispositivo montado na parte inferior do meu avião com braçadeiras, mas após alguma investigação descobri que isso reduziria a quantidade de satélites GPS que podiam ver a qualquer momento em cerca de 40%.

Teste seu sistema para certificar-se de que tudo funciona e refine-o quando necessário.

Etapa 7: Enriquecer seus dados

Enriquecendo seus dados
Enriquecendo seus dados
Enriquecendo seus dados
Enriquecendo seus dados
Enriquecendo Seus Dados
Enriquecendo Seus Dados
Enriquecendo seus dados
Enriquecendo seus dados

Agora que você tem um sistema confiável, é hora de descobrir como exibir esses dados de uma forma mais legível. A planilha é adequada se você quiser a velocidade exata a qualquer momento ou se quiser verificar exatamente como seu veículo estava se comportando quando você executou uma determinada ação, mas e se você quiser traçar um voo inteiro em um mapa ou ver cada ponto de dados de uma forma mais legível, é onde o enriquecimento de dados é útil

Para visualizar nossos dados de uma maneira mais legível, usaremos o google earth pro, você pode clicar aqui para fazer o download.

Agora você tem que converter o arquivo CSV em um arquivo GPX que pode ser lido mais facilmente pelo google earth usando o visualizador GPS. Selecione a saída GPX, carregue seu arquivo CSV e baixe o arquivo convertido. Em seguida, abra o arquivo GPX no google earth e ele deve importar automaticamente e representar graficamente todos os dados em um bom caminho de vôo. Também contém informações adicionais, como o título em qualquer momento.

NOTA: Eu removi os dados mais longos das fotos porque não quero divulgar minha localização exata

Etapa 8: Conclusão e melhorias possíveis

Portanto, no geral, estou muito feliz com o resultado desse projeto. Gosto de ter dados de todos os meus voos. no entanto, há algumas coisas nas quais quero trabalhar.

Obviamente, eu quero ser capaz de ler a posição exata das superfícies de controle. Tenho a maior parte do hardware para isso, mas preciso habilitar o uso dele no código. Ainda existem alguns desafios técnicos a serem superados.

Eu também gostaria de adicionar um barômetro para dados de altitude mais precisos, já que atualmente os dados de altitude por GPS não parecem muito mais do que um palpite.

Eu acho que adicionar um acelerômetro de três eixos seria legal para que eu pudesse ver exatamente quanta força g o avião está suportando a qualquer momento.

Talvez crie algum tipo de recinto. Atualmente com os componentes expostos e a fiação não é muito elegante ou robusta.

Por favor, deixe-me saber se você sugerir alguma melhoria ou modificação no design, eu adoraria vê-los.

Recomendado: