Sommario:

Come costruire un Cubesat con un Arduino e un accelerometro: 5 passaggi
Come costruire un Cubesat con un Arduino e un accelerometro: 5 passaggi

Video: Come costruire un Cubesat con un Arduino e un accelerometro: 5 passaggi

Video: Come costruire un Cubesat con un Arduino e un accelerometro: 5 passaggi
Video: Costruire un indicatore di urti con LED, Arduino e un accelerometro MPU6050 - Video 632 2024, Dicembre
Anonim
Come costruire un Cubesat con un Arduino e un accelerometro
Come costruire un Cubesat con un Arduino e un accelerometro

I nostri nomi sono Brock, Eddie e Drew. L'obiettivo principale della nostra classe di fisica è viaggiare dalla Terra a Marte simulando l'orbita attorno a Marte usando un Cube Sat e raccogliendo dati. L'obiettivo del nostro gruppo per questo progetto è raccogliere dati utilizzando un sensore accelerometro che sarà collegato al nostro Arduino all'interno di un Cube Sat che orbiterà attorno a "Marte" per trovare la forza gravitazionale su quel pianeta. Alcuni possibili vincoli per questo compito specifico potrebbero essere il codice che non funziona nel modo corretto, l'accelerometro che non raccoglie dati e il limite che CubeSat può pesare. Sebbene ce ne siano molti altri che chiunque potrebbe incontrare, quelli erano quelli che il nostro gruppo ha affrontato. Un video del nostro progetto finale e dei test può essere trovato qui https://www.youtube.com/embed/u1_o38KSrEc -Eddie

Passaggio 1: elenco dei materiali

Elenco dei materiali
Elenco dei materiali
Elenco dei materiali
Elenco dei materiali
Elenco dei materiali
Elenco dei materiali

TUTTI I MATERIALI ELENCATI VAI ALL'INTERNO DI CUBESAT

1. Arduino e cavo di alimentazione https://www.amazon.com/Elegoo-EL-CB-001-ATmega328…: arduino è progettato per rendere l'elettronica più accessibile ad artisti, designer, hobbisti e chiunque sia interessato a creare oggetti o ambienti interattivi

: consenti l'alimentazione da e verso Arduino e computer

2. Tagliere

: una scheda per realizzare un modello sperimentale di un circuito elettrico

MATERIALI ATTACCATI AL BREADBOARD

1. Accelerometro Arduino

:strumento per misurare l'accelerazione o per rilevare e misurare le vibrazioni

2. Modulo scheda SD Arduino

:ti permette di aggiungere memoria di massa e registrazione dei dati al tuo progetto

3. Fili Arduino

:trasferisce il codice attraverso Arduino e breadboard

4. Luce LED

:un LED è una piccola luce (sta per "diodo ad emissione luminosa") che funziona con una potenza relativamente bassa

-Ha disegnato

Passaggio 2: strumenti necessari e pratiche di sicurezza

STRUMENTI NECESSARI

1. Coltello esatto

- abbiamo usato un taglierino per tagliare e tracciare la forma di Arduino e Breadboard attraverso il polistirolo, per proteggere Arduino e Breadboard in caso di incidenti

2. Pistola per colla a caldo

- abbiamo usato una pistola per colla a caldo per incollare il polistirolo ai lati del nostro Cubesat per garantire che Arduino e Breadboard siano sicuri

3. Polistirolo

- abbiamo usato pezzi di polistirolo per fissare Arduino e breadboard ai lati del nostro Cubesat, anche per consentire un cuscino se Cubesat viene lasciato cadere o scosso

PRATICHE DI SICUREZZA

1. la prima pratica di sicurezza che abbiamo applicato è stata quella di assicurarci di non toccare la stampante 3D durante la stampa del Cubesat. la stampante 3D diventerà molto calda ed è importante ricordarsi di non toccarla.

2. quando usavamo il coltello esatto per tagliare i pezzi di polistirolo, dovevamo posizionare il cartone sotto per assicurarci che i tavoli non venissero danneggiati. dovevamo anche indossare gli occhiali quando usavamo il coltello nel caso in cui qualcosa ci fosse volato in faccia o intorno al nostro spazio di lavoro.

3. quando si utilizzano strumenti che richiedono un duro lavoro, assicurarsi di indossare occhiali di protezione per motivi di sicurezza.

4. una volta collegato il Cubesat all'orbiter, assicurati di avvertire le persone intorno all'orbiter che proverai il tuo Cubesat e indossa gli occhiali per assicurarti che tutte le parti del corpo e le persone siano al sicuro.

-Ha disegnato

Passaggio 3: come:

Come
Come
Come
Come
Come
Come

Come costruire un CubeSat

1. per iniziare il processo di costruzione di CubeSat, è necessario cercare modelli di CubeSat che siano 10x10x10 e avere un file STL a portata di mano.

2. quando hai trovato un modello che funzionerà nel contenere una breadboard e un Arduino in modo sicuro, devi scaricare i file su un'unità flash in modo da poter accedere ai file sulla stampante 3D.

3. dopo aver scaricato i file corretti sull'unità flash, è possibile collegare l'unità flash al computer collegato alla stampante 3D.

4. quando si stampa, assicurarsi di selezionare i file corretti e che tutti i cavi, i codici e gli ingressi siano cablati correttamente tra il computer e la stampante 3D. questo assicurerà che CubeSat venga stampato correttamente e che tutto vada secondo i piani.

5. assegnare a ciascun membro del gruppo un tempo designato per controllare in modo efficiente la stampante e l'avanzamento di CubeSat per rilevare eventuali problemi in cui si potrebbe incorrere. essere in grado di fare in modo che un membro del team controlli i progressi circa ogni 2-3 ore, fornirà assistenza sufficiente per risolvere eventuali problemi e osservare i progressi che verranno fatti.

-Eddie

IL CODICE:

#include #include #include #include

const int MPU=0x68; int16_t AcX, AcY, AcZ, Tmp, GyX, GyY, GyZ; doppio passo, rollio;

Dati dell'archivio;

void setup(){

pinMode (10, USCITA); //deve impostare il pin 10 in output anche se non utilizzato; //impostando il pin 7 per accendere il led SD.begin(4); //inizia la scheda SD con CS impostato sul pin 4 Serial.begin(9600); Serial.println(F("Test BMP280")); Wire.begin(); Wire.beginTransmission(MPU); Wire.write(0x6B); Wire.write(0); Wire.endTransmission(true); Serial.begin(9600); } void loop(){ Wire.beginTransmission(MPU); Wire.write(0x3B); Wire.endTransmission(false); Wire.requestFrom(MPU, 14, vero);

int AcXoff, AcYoff, AcZoff, GyXoff, GyYoff, GyZoff; int temperatura, toff; doppia t, tx, tf;

//Correzione dati accelerazione AcXoff = -950; AcYoff = -300; AcZoff = 0;

//Correzione temperatura toff = -1600;

//Correzione giroscopio GyXoff = 480; GyYoff = 170; GyZoff = 210;

//leggi i dati accel AcX=(Wire.read()<<8|Wire.read()) + AcXoff; AcY=(Wire.read()<<8|Wire.read()) + AcYoff; AcZ=(Wire.read()<<8|Wire.read()) + AcYoff;

//leggi i dati della temperatura temp=(Wire.read()<<8|Wire.read()) + toff; tx=temperatura; t = tx/340 + 36,53; tf = (t * 9/5) + 32;

//leggi i dati del giroscopio GyX=(Wire.read()<<8|Wire.read()) + GyXoff; GyY=(Wire.read()<<8|Wire.read()) + GyYoff; GyZ=(Wire.read()<<8|Wire.read()) + GyZoff;

Dati = SD.open("Log.txt", FILE_WRITE); //apre il file chiamato "Log"

// ottieni beccheggio/rotazione getAngle(AcX, AcY, AcZ);

//invia i dati alla porta seriale Serial.print("Angle: "); Serial.print("Pitch = "); Serial.print(passo); Serial.print(" | Rotolo = "); Serial.println(rotolo);

Serial.print("Temp: "); Serial.print("Temp(F) = "); Serial.print(tf); Serial.print(" | Temp(C) = "); Serial.println(t);

Serial.print("Accelerometro: "); Serial.print("X = "); Serial.print(AcX); Serial.print(" | Y = "); Serial.print(AcY); Serial.print(" | Z = "); Serial.println(AcZ);

Serial.print("Giroscopio: "); Serial.print("X = "); Serial.print(GyX); Serial.print(" | Y = "); Serial.print(GyY); Serial.print(" | Z = "); Serial.println(GyZ); Serial.println(" ");

Data.print(passo); Data.println(rotolo);

Data.print(tf); Data.println(t); Data.print(AcX); //scrive i dati acel nel file Data.print(", "); //stampa la virgola nel file Data.print(AcY); Data.print(", "); Data.print(AcZ); Data.print(", "); Data.print(GyX); Data.print(", "); Data.print(GyY); Data.print(", "); Data.println(GyZ);

ritardo(1000); }

//converte i dati di accelerazione in pitch/roll void getAngle(int Vx, int Vy, int Vz) { double x = Vx; doppia y = Vy; doppia z = Vz;

}

}

IL CODICE (CONT.):

-questo è il codice che abbiamo usato per raccogliere i dati dall'accelerometro e dalla scheda SD.

-dopo aver cablato Arduino e Breadboard per assomigliare a quello sul diagramma frizting, abbiamo collegato la scheda SD al modulo adattatore per schede SD e abbiamo continuato a prepararci per il nostro test finale.

-abbiamo avuto problemi con il codice per molto tempo, ma il codice dato sopra è il codice finale che abbiamo usato che ci ha fornito i dati che abbiamo usato per la nostra presentazione.

-questo codice raccoglie i dati dall'accelerometro e trasferisce le informazioni nella scheda SD.

-la scheda SD è stata inserita nell'USB e inserita nel computer. da lì le informazioni sono state inserite nel nostro computer.

-Brock

CABLAGGIO DELL'ARDUINO:

- durante il cablaggio dell'Arduino, abbiamo lottato con cavi scadenti e Arduino scadenti.

- abbiamo dovuto correggere più volte il cablaggio del nostro Arduino a causa di un cablaggio errato.

- al fine di garantire un cablaggio e una codifica corretti, assicurati che i cavi siano completamente protetti e che il codice venga elaborato correttamente.

SCHEMA DI FRITTURA:

- il diagramma fritzing era semplice e facile da seguire insieme

- abbiamo riscontrato problemi con il diagramma quando il modulo della scheda SD non faceva parte del programma fritzing. per questo motivo, abbiamo dovuto cercare online una parte scaricabile da includere nel diagramma

- avevamo completato lo schema includendo le parti e i programmi corretti nello schema

-Ha disegnato

Passaggio 4: risultati/lezioni apprese

Il nostro grafico mostra un chiaro aumento della temperatura, probabilmente dovuto al tempo che il riscaldatore impiega per raggiungere la temperatura massima.

Per questo progetto, la fisica in cui ci siamo imbattuti era la forza centripeta che mantiene in orbita il CubeSat.

-Brock

Consigliato: