Innholdsfortegnelse:

Hvordan bygge en Cubesat med et Arduino og akselerometer .: 5 trinn
Hvordan bygge en Cubesat med et Arduino og akselerometer .: 5 trinn

Video: Hvordan bygge en Cubesat med et Arduino og akselerometer .: 5 trinn

Video: Hvordan bygge en Cubesat med et Arduino og akselerometer .: 5 trinn
Video: Lær om Arduino og programmering af dem. 2024, November
Anonim
Hvordan bygge en Cubesat med et Arduino og akselerometer
Hvordan bygge en Cubesat med et Arduino og akselerometer

Vi heter Brock, Eddie og Drew. Hovedmålet for vår fysikklasse er å reise fra jorden til Mars mens vi simulerer bane rundt Mars ved hjelp av en Cube Sat og samler data. Våre gruppers mål for dette prosjektet er å samle inn data ved hjelp av en akselerometersensor som vil bli festet til Arduino inne i en Cube Sat som vil gå i bane rundt "Mars" for å finne gravitasjonskraften på den planeten. Noen mulige begrensninger for denne spesifikke oppgaven er at koden ikke fungerer på riktig måte, akselerometeret ikke samler inn data og grensen CubeSat kan veie. Selv om det er mange andre noen kan støte på, var det dem gruppen vår møtte. En video av vårt siste prosjekt og testing finner du her https://www.youtube.com/embed/u1_o38KSrEc -Eddie

Trinn 1: Materialeliste

Materialeliste
Materialeliste
Materialeliste
Materialeliste
Materialeliste
Materialeliste

ALLE MATERIALER LISTE GÅ INNE I CUBESAT

1. Arduino og strømkabel https://www.amazon.com/Elegoo-EL-CB-001-ATmega328…: arduino er designet for å gjøre elektronikk mer tilgjengelig for kunstnere, designere, hobbyister og alle som er interessert i å lage interaktive objekter eller miljøer

: la strøm til og fra Arduino og datamaskinen

2. Breadboard

: et brett for å lage en eksperimentell modell av en elektrisk krets

MATERIALER FESTE TIL BREADBOARD

1. Arduino akselerometer

: et instrument for å måle akselerasjon eller for å oppdage og måle vibrasjoner

2. Arduino SD-kortmodul

: det lar deg legge til masselagring og datalogging i prosjektet ditt

3. Arduino Wires

: overfører kode gjennom Arduino og brødbrett

4. LED-lys

: en LED er et lite lys (det står for "lysemitterende diode") som fungerer med relativt lite strøm

-Tegnet

Trinn 2: Nødvendige verktøy og sikkerhetspraksis

VERKTØY NØDVENDIG

1. Exacto Knife

- vi brukte en exacto -kniv til å skjære og spore formen på Arduino og Breadboard gjennom isopor, for å beskytte Arduino og Breadboard i tilfelle det skjer ulykker

2. Varm limpistol

- vi brukte en varm limpistol til å lime isopor på sidene av Cubesat for å sikre at Arduino og Breadboard er sikre

3. Isopor

- vi brukte styropor for å feste Arduino og brødbrett til sidene av Cubesat, også for å tillate en pute hvis Cubesat faller ned eller ristes rundt

SIKKERHETSPRAKSIS

1. den første sikkerhetspraksisen vi håndhevet var å sørge for at vi ikke berørte 3D -skriveren da den skrev ut Cubesat. 3D -skriveren blir veldig varm, og det er viktig å huske å ikke røre den.

2. Når vi brukte exacto -kniven til å kutte ut styrofoambitene, måtte vi legge papp under for å sikre at bordene ikke ble skadet. Vi måtte også bruke vernebriller når vi brukte kniven, ettersom noe fløy opp i ansiktet vårt eller rundt arbeidsplassen vår.

3. Når du bruker verktøy som krever hardt arbeid, må du bruke vernebriller av sikkerhetshensyn.

4. Når du har festet Cubesat til orbiteren, må du advare folk rundt orbiteren om at du skal teste Cubesat og bruke briller for å sikre at alle kroppsdeler og mennesker er trygge.

-Tegnet

Trinn 3: Slik gjør du:

Hvordan
Hvordan
Hvordan
Hvordan
Hvordan
Hvordan

Hvordan bygge en CubeSat

1. For å starte byggeprosessen for CubeSat må du søke etter modeller av CubeSat som er 10x10x10 og har en STL -fil tilgjengelig.

2. Når du har funnet en modell som fungerer for å holde et brødbrett og en Arduino trygt, må du laste ned filene på en flash -stasjon, slik at du får tilgang til filene på 3D -skriveren.

3. etter at de riktige filene er lastet ned på flash -stasjonen, kan du koble flash -stasjonen til datamaskinen som er koblet til 3D -skriveren.

4. Når du skriver ut, må du sørge for at du velger de riktige filene, og at alle ledninger, koder og innganger er riktig kablet mellom datamaskinen og 3D -skriveren. Dette vil sikre at CubeSat skrives ut riktig, og at alt går etter planen.

5. gi hvert gruppemedlem en bestemt tid til å kontrollere skriveren og CubeSat på en effektiv måte for å løse eventuelle problemer du måtte støte på. å kunne få et teammedlem til å sjekke fremdriften omtrent hver 2-3 time, vil gi nok hjelp til å fikse eventuelle problemer og se fremdriften som vil bli gjort.

-Eddie

KODEN:

#include #include #include #include

const int MPU = 0x68; int16_t AcX, AcY, AcZ, Tmp, GyX, GyY, GyZ; dobbel stigning, rull;

Fildata;

ugyldig oppsett () {

pinMode (10, OUTPUT); // må sette pin 10 til utgang selv om den ikke brukes; // innstilling av pinne 7 for å lyse LED SD.begin (4); // begynner sd -kortet med CS satt til pin 4 Serial.begin (9600); Serial.println (F ("BMP280 test")); 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, true);

int AcXoff, AcYoff, AcZoff, GyXoff, GyYoff, GyZoff; int temp, toff; dobbelt t, tx, tf;

// Akselerasjonsdatakorreksjon AcXoff = -950; AcYoff = -300; AcZoff = 0;

// Temperaturkorreksjon toff = -1600;

// Gyro -korreksjon GyXoff = 480; GyYoff = 170; GyZoff = 210;

// lese accel data AcX = (Wire.read () << 8 | Wire.read ()) + AcXoff; AcY = (Wire.read () << 8 | Wire.read ()) + AcYoff; AcZ = (Wire.read () << 8 | Wire.read ()) + AcYoff;

// lese temperaturdata temp = (Wire.read () << 8 | Wire.read ()) + toff; tx = temp; t = tx/340 + 36,53; tf = (t * 9/5) + 32;

// les gyrodata GyX = (Wire.read () << 8 | Wire.read ()) + GyXoff; GyY = (Wire.read () << 8 | Wire.read ()) + GyYoff; GyZ = (Wire.read () << 8 | Wire.read ()) + GyZoff;

Data = SD.open ("Log.txt", FILE_WRITE); // åpner filen som heter "Logg"

// få pitch/roll getAngle (AcX, AcY, AcZ);

// sende dataene ut den serielle porten Serial.print ("Angle:"); Serial.print ("Pitch ="); Serial.print (tonehøyde); Serial.print ("| Roll ="); Serial.println (rulle);

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

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

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

Data.print (tonehøyde); Data.println (rull);

Data.print (tf); Data.println (t); Data.print (AcX); // skriver aceldata til filen Data.print (","); // skriver ut komma i fil Data.print (AcY); Data.print (","); Data.print (AcZ); Data.print (","); Data.print (GyX); Data.print (","); Data.print (GyY); Data.print (","); Data.println (GyZ);

forsinkelse (1000); }

// konverter accel -dataene til pitch/roll void getAngle (int Vx, int Vy, int Vz) {double x = Vx; dobbelt y = Vy; dobbelt z = Vz;

}

}

KODEN (FORTSATT):

-Dette er koden vi brukte til å samle data fra akselerometeret og SD -kortet.

-Etter at ledningen til Arduino og Breadboard så ut som den på frizting -diagrammet, koblet vi SD -kortet til SD -kortadaptermodulen og fortsatte å gjøre oss klare til den siste testen.

-Vi hadde problemer med koden i lang tid, men koden ovenfor er den siste koden vi brukte som ga oss dataene vi brukte til presentasjonen.

-Denne koden samler data fra akselerometeret og overfører informasjonen til SD -kortet.

-SD -kortet ble koblet til USB og plugget inn i datamaskinen. derfra ble informasjonen lagt inn i datamaskinen vår.

-Brock

KOBLING AV ARDUINOEN:

- mens vi koblet til Arduino, slet vi med dud -ledninger og dud -Arduinos.

- vi måtte korrigere ledningene til vår Arduino flere ganger på grunn av feil ledninger.

- For å sikre riktig kabling og koding må du kontrollere at ledningene er helt sikret og at kodeprosessen er riktig.

FRITZING DIAGRAM:

- fritz -diagrammet var rett frem og lett å følge med

- vi møtte problemer med diagrammet da SD -kortmodulen ikke var en del av fritzing -programmet. på grunn av dette måtte vi søke på nettet etter en nedlastbar del for å inkludere i diagrammet

- vi hadde fullført diagrammet ved å inkludere riktige deler og programmer i diagrammet

-Tegnet

Trinn 4: Resultater/leksjoner lært

Grafen vår viser en klar temperaturstigning, sannsynligvis på grunn av at varmeren tok tid å nå maksimumstemperaturen.

For dette prosjektet var fysikken vi kjørte inn i sentripetalkraften som holdt CubeSat i bane.

-Brock

Anbefalt: