Sommario:

Registratore di dati di volo RC/scatola nera: 8 passaggi (con immagini)
Registratore di dati di volo RC/scatola nera: 8 passaggi (con immagini)

Video: Registratore di dati di volo RC/scatola nera: 8 passaggi (con immagini)

Video: Registratore di dati di volo RC/scatola nera: 8 passaggi (con immagini)
Video: Quando provi a fare un complimento a una ragazza... 2024, Novembre
Anonim
Registratore di dati di volo RC/scatola nera
Registratore di dati di volo RC/scatola nera

In questo tutorial costruirò un registratore di dati di combattimento basato su arduino per veicoli RC, in particolare aeroplani RC. Utilizzerò un modulo GPS UBlox Neo 6m collegato a un arduino pro mini e uno scudo per schede SD per registrare i dati. Questo progetto registrerà tra le altre cose la latitudine, la longitudine, la velocità, l'altitudine e la tensione della batteria. Questi dati verranno arricchiti per una migliore esperienza di visualizzazione utilizzando Google Earth Pro.

Passaggio 1: strumenti e parti

Strumenti e parti
Strumenti e parti
Strumenti e parti
Strumenti e parti

Parti

  • Modulo GPS Ublox NEO 6m: ebay/amazon
  • Modulo scheda micro SD: ebay/amazon
  • Scheda Micro SD (alta velocità o capacità non necessaria): amazon
  • Arduino pro mini: ebay/amazon
  • Programmatore FTDI e cavo corrispondente: ebay/amazon
  • Perfboard: ebay/amazon
  • Cavo di collegamento: ebay/amazon
  • Pin dell'intestazione: ebay/amazon
  • Diodo raddrizzatore: ebay/amazon
  • 2 resistenze da 1K ohm: ebay/amazon
  • Cartone da 1500 micron

Utensili

  • Saldatore e saldatore
  • Pistola per colla a caldo
  • Computer portatile o computer
  • Multimetro (non strettamente necessario ma incredibilmente utile)
  • Aiutare le mani (di nuovo non necessario ma utile)
  • Coltello artigianale

Opzionale

  • Articoli utilizzati per la prototipazione non necessari ma molto utili
  • tagliere
  • Arduino Uno
  • Cavi per ponticelli

Fase 2: Teoria e Schema

Teoria e Schema
Teoria e Schema

Il cervello del dispositivo è Arduino pro mini, è alimentato dalla porta di bilanciamento della batteria Li-Po dei veicoli RC (nel mio caso un aereo). Ho questa configurazione per una batteria da 2 secondi, ma può essere facilmente modificata per adattarsi ad altre dimensioni della batteria.

Questo pezzo non è completo Aggiornerò questo istruibile quando la lettura della superficie di controllo sarà completa

Servo1 sarà il motore dell'elevone del mio aereo mentre il servo 2 sarà l'uscita del servo del mio controller di volo

Il modulo GPS sta ricevendo dati dai satelliti GPS sotto forma di stringhe NMEA. Queste stringhe contengono informazioni sulla posizione ma anche l'ora esatta, la velocità, la direzione, l'altitudine e molti altri dati utili. Una volta ricevuta una stringa, le informazioni utili a questo progetto vengono estratte utilizzando la libreria di codici TinyGPS.

Questi dati, insieme alla tensione della batteria e alla posizione degli elevoni, verranno scritti sulla scheda SD a una velocità di 1Hz. Questi dati sono scritti in formato CSV (valori separati da virgola) e verranno interpretati utilizzando Google Maps per tracciare una traiettoria di volo.

Passaggio 3: prototipazione

prototipazione
prototipazione
prototipazione
prototipazione

NOTA: le connessioni del modulo GPS non sono mostrate sopra. Il GPS è cablato come segue:

GND a massa Arduino

Da VCC ad Arduino 5V

RX su Arduino pin digitale 3

TX al pin digitale Arduino 2

Per verificare che tutti i componenti funzionino correttamente, è meglio iniziare disponendo tutto su una breadboard poiché non si desidera scoprire solo dopo che tutto è stato messo insieme che si ha una parte difettosa. La libreria di codici aggiuntiva necessaria è la libreria TinyGPS, il collegamento è disponibile di seguito.

piccolo gps

Il codice del tester di tensione di seguito verifica solo il circuito di misurazione della tensione. Il valore di regolazione deve essere modificato per far leggere all'arduino la tensione corretta.

Il codice File viene utilizzato per testare il modulo della scheda SD e la scheda micro SD per assicurarsi che entrambi stiano leggendo e scrivendo correttamente.

Il codice gpsTest viene utilizzato viene utilizzato per assicurarsi che il gps stia ricevendo dati corretti e sia configurato correttamente. Questo codice restituirà la tua latitudine, longitudine e altri dati in tempo reale.

Se tutte queste parti funzionano insieme correttamente, puoi passare al passaggio successivo.

Passaggio 4: saldatura e cablaggio

Saldatura e cablaggio
Saldatura e cablaggio
Saldatura e cablaggio
Saldatura e cablaggio
Saldatura e cablaggio
Saldatura e cablaggio

Prima di eseguire qualsiasi saldatura o cablaggio, disponi tutti i componenti su un pezzo di cartone e taglialo alle dimensioni esterne dei componenti. Questa sarà la tua piastra di montaggio per tutti i tuoi pezzi.

Realizzare il circuito tagliando il perfboard alla dimensione più piccola possibile poiché il peso e le dimensioni sono le priorità. Saldare i pin dell'intestazione in posizione lungo il bordo della perfboard tagliata, qui è dove si collegheranno la porta di bilanciamento della batteria e in futuro il servo della superficie di controllo e il controller di volo. Saldare i resistori da 2 1k Ohm e il diodo raddrizzatore in posizione secondo lo schema elettrico.

Saldare il modulo della scheda micro SD ai pin dell'arduino secondo lo schema elettrico, effettuare i collegamenti utilizzando il filo AWG 24.

Rifare i collegamenti tra la perfboard e l'arduino secondo lo schema elettrico e utilizzando più fili dello stesso tipo.

NOTA: il GPS è un dispositivo sensibile alle scariche elettrostatiche, prestare attenzione durante la saldatura e non far passare mai alcuna corrente attraverso i fili durante le connessioni

Saldare i pin dei moduli GPS ai pin corrispondenti sull'arduino usando lunghezze di circa 3-4 cm (1-1,5 pollici) di filo per dare al modulo GPS abbastanza gioco da piegarsi sull'altro lato della scheda di supporto.

Controllare e ricontrollare la continuità di tutte le connessioni per assicurarsi che tutto sia cablato correttamente.

Usando la colla a caldo monta il modulo della scheda SD, l'Arduino Pro Mini e la tua perfboard personalizzata su un lato del cartone e il modulo GPS e l'antenna sull'altro.

Una volta che tutto il pezzo è stato correttamente cablato e montato sul cartone è il momento di passare al codice.

Passaggio 5: il codice

Questo è il codice che viene eseguito sul dispositivo finale. Mentre questo codice è in esecuzione, il LED sul modulo GPS inizierà a lampeggiare non appena il GPS avrà un fix con più di 3 satelliti. Il LED sulla scheda arduino lampeggerà una volta non appena arduino si avvia per mostrare che il file CSV è stato creato con successo e quindi lampeggerà in tempo con il LED GPS quando viene scritto con successo sulla scheda micro SD. Se il LED rimane sulla scheda micro SD non può essere inizializzato e molto probabilmente c'è un problema con il cablaggio o la scheda micro SD.

Questo codice creerà un nuovo file CSV ogni volta che viene eseguito il programma, verrà etichettato come "flightxx" dove xx è un numero compreso tra 00 e 99 che aumenta ogni volta che viene eseguito il programma.

Per ottenere che il campo dell'ora corrente nel foglio di calcolo sia corretto, devi convertire l'UTC (Coordinated Universal Time) nel fuso orario corretto per te. Per me il valore è UTC +2.0 in quanto questo è il fuso orario in cui mi trovo, ma questo può essere modificato nel codice alterando il float "timezone".

Passaggio 6: test, test, test

Test, test, test
Test, test, test

Ormai dovresti avere un sistema funzionante, è ora di testarlo, assicurati che tutto funzioni come previsto.

Una volta che tutto funziona e si ottiene un output sul foglio di calcolo che sembra corretto, è il momento di apportare modifiche fini. Ad esempio, originariamente avevo il dispositivo montato sul fondo del mio aereo con fascette per cavi, ma dopo alcune indagini ho capito che ciò significava ridurre la quantità di satelliti GPS che potevano vedere in qualsiasi momento di circa il 40%.

Testa il tuo sistema per assicurarti che tutto funzioni e perfezionalo dove necessario.

Passaggio 7: arricchire i dati

Arricchire i tuoi dati
Arricchire i tuoi dati
Arricchire i tuoi dati
Arricchire i tuoi dati
Arricchire i tuoi dati
Arricchire i tuoi dati
Arricchire i tuoi dati
Arricchire i tuoi dati

Ora che hai un sistema affidabile è il momento di capire come visualizzare quei dati in un modo più leggibile. Il foglio di calcolo va bene se vuoi la velocità esatta in qualsiasi momento o se vuoi controllare esattamente come si stava comportando il tuo veicolo quando hai eseguito una determinata azione, ma cosa succede se vuoi tracciare un intero volo su una mappa o vedere ogni punto dati in un modo più leggibile è qui che l'arricchimento dei dati è utile

Per visualizzare i nostri dati in un modo più leggibile utilizzeremo google earth pro, puoi fare clic qui per scaricarlo.

Ora devi convertire il file CSV in un file GPX che può essere letto più facilmente da Google Earth utilizzando il visualizzatore GPS. Seleziona output GPX, carica il tuo file CSV e scarica il file convertito. Quindi apri il file GPX in Google Earth e dovrebbe importare e tracciare automaticamente tutti i dati in un bel percorso di volo. Questo contiene anche informazioni aggiuntive come l'intestazione in qualsiasi momento.

NOTA: ho rimosso i dati lat, long dalle foto in quanto non voglio rivelare la mia posizione esatta

Passaggio 8: conclusione e possibili miglioramenti

Quindi, nel complesso, sono molto contento di come è venuto fuori questo progetto. Mi piace avere i dati di tutti i miei voli. tuttavia ci sono alcune cose su cui voglio lavorare.

Ovviamente voglio essere in grado di leggere l'esatta posizione delle superfici di controllo. Ho la maggior parte dell'hardware in atto per questo, ma devo abilitarne l'uso nel codice. Ci sono ancora alcune sfide tecniche da superare.

Vorrei anche aggiungere un barometro per dati di altitudine più accurati, poiché attualmente i dati di altitudine del GPS non sembrano molto più di un'ipotesi plausibile.

Penso che aggiungere un accelerometro a tre assi sarebbe bello in modo da poter vedere esattamente quanta forza g l'aereo sta sopportando in qualsiasi momento.

Forse creare un recinto di qualche tipo. Attualmente con i componenti e il cablaggio a vista non è molto elegante o robusto.

Per favore fatemi sapere se trovate miglioramenti o modifiche al design, mi piacerebbe vederli.

Consigliato: