Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Vi heter Brock, Eddie och Drew. Huvudmålet för vår fysikklass är att resa från jorden till Mars medan vi simulerar omloppsbana runt Mars med hjälp av en Cube Sat och samlar in data. Våra gruppers mål för detta projekt är att samla in data med hjälp av en accelerometersensor som kommer att fästas på vår Arduino inuti en kub Sat som kommer att kretsa "Mars" för att hitta gravitationskraften på den planeten. Några möjliga begränsningar för denna specifika uppgift skulle vara att koden inte fungerar på rätt sätt, accelerometern inte samlar in data och den gräns CubeSat kan väga. Även om det finns många andra någon kan stöta på, så var det dem vår grupp mötte. En video av vårt slutliga projekt och testning hittar du här https://www.youtube.com/embed/u1_o38KSrEc -Eddie
Steg 1: Materiallista
ALLA MATERIAL LISTADE GÅR INNAN CUBESAT
1. Arduino & strömkabel https://www.amazon.com/Elegoo-EL-CB-001-ATmega328…: arduino är utformad för att göra elektronik mer tillgänglig för artister, designers, hobbyister och alla som är intresserade av att skapa interaktiva objekt eller miljöer
: tillåt ström till och från din Arduino och dator
2. Brödbräda
: en tavla för att göra en experimentell modell av en elektrisk krets
MATERIAL FÄSTE PÅ BREADBOARD
1. Arduino Accelerometer https://www.amazon.com/MPU-6050-MPU6050-Accelerom …
: ett instrument för att mäta acceleration eller för att detektera och mäta vibrationer
2. Arduino SD-kortmodul
: det låter dig lägga till masslagring och dataloggning i ditt projekt
3. Arduino Wires
: överför kod i hela Arduino och breadboard
4. LED-ljus
: en LED är ett litet ljus (det står för "light emitting diode") som fungerar med relativt lite effekt
-Ritade
Steg 2: Nödvändiga verktyg och säkerhetsmetoder
VERKTYG NÖDVÄNDIGT
1. Exacto Knife
- vi använde en exacto -kniv för att skära och spåra formen på Arduino och Breadboard genom frigolit, för att skydda Arduino och Breadboard om det händer olyckor
2. Hotlimpistol
- vi använde en varm limpistol för att limma frigolitet på sidorna av vår Cubesat för att säkerställa att vår Arduino och Breadboard är säkra
3. frigolit
- vi använde bitar av frigolit för att fästa Arduino och brödbräda på sidorna av vår Cubesat, också för att tillåta en kudde om Cubesat tappas eller skakas runt
SÄKERHETSPRAKTIKER
1. den första säkerhetspraxis vi efterlevde var att se till att vi inte rörde 3D -skrivaren när den skrev ut Cubesat. 3D -skrivaren blir väldigt varm och det är viktigt att komma ihåg att inte röra den.
2. när vi använde exacto -kniven för att skära ut bitarna av frigolit, var vi tvungna att lägga kartong under för att säkerställa att borden inte skadades. vi var också tvungna att bära skyddsglasögon när vi använde kniven om något flög upp i våra ansikten eller runt vårt arbetsutrymme.
3. När du använder verktyg som kräver hårt arbete, se till att bära skyddsglasögon av säkerhetsskäl.
4. När du har fäst Cubesat på orbitern, se till att varna människor runt orbitern att du kommer att testa din Cubesat och bära skyddsglasögon för att säkerställa att alla kroppsdelar och människor är säkra.
-Ritade
Steg 3: Så här gör du:
Hur man bygger en CubeSat
1. för att påbörja byggprocessen för CubeSat måste du söka efter modeller av CubeSat som är 10x10x10 och har en STL -fil till hands.
2. när du har hittat en modell som fungerar för att hålla en brödbräda och en Arduino säkert, måste du ladda ner filerna på en flash -enhet så att du kan komma åt filerna på 3D -skrivaren.
3. efter att rätt filer har laddats ner på flash -enheten kan du ansluta flash -enheten till datorn som är ansluten till 3D -skrivaren.
4. När du skriver ut, se till att du väljer rätt filer och att alla trådar, koder och ingångar är korrekt anslutna mellan datorn och 3D -skrivaren. detta säkerställer att CubeSat skrivs ut korrekt och att allt går enligt plan.
5. tilldela varje gruppmedlem en bestämd tid för att effektivt kontrollera skrivarens och CubeSat -framsteg för att fånga eventuella problem du kan stöta på. att kunna få en teammedlem att kontrollera utvecklingen var 2-3: e timme, ger tillräckligt med hjälp för att åtgärda eventuella problem och se hur det går.
-Eddie
KODEN:
#include #include #include #include
const int MPU = 0x68; int16_t AcX, AcY, AcZ, Tmp, GyX, GyY, GyZ; dubbel tonhöjd, rulla;
Fildata;
void setup () {
pinMode (10, OUTPUT); // måste ställa in stift 10 för utmatning även om den inte används; // inställningsstift 7 för att tända LED SD.begin (4); // börjar sd -kort med CS inställd på 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; dubbel t, tx, tf;
// Accelerationsdatakorrigering AcXoff = -950; AcYoff = -300; AcZoff = 0;
// Temperaturkorrigering toff = -1600;
// Gyro -korrigering GyXoff = 480; GyYoff = 170; GyZoff = 210;
// läs accel data AcX = (Wire.read () << 8 | Wire.read ()) + AcXoff; AcY = (Wire.read () << 8 | Wire.read ()) + AcYoff; AcZ = (Wire.read () << 8 | Wire.read ()) + AcYoff;
// läs temperaturdata temp = (Wire.read () << 8 | Wire.read ()) + toff; tx = temp; t = tx/340 + 36,53; tf = (t * 9/5) + 32;
// läs 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); // öppnar filen som heter "Log"
// få pitch/roll getAngle (AcX, AcY, AcZ);
// skicka ut data från serieporten Serial.print ("Vinkel:"); Serial.print ("Pitch ="); Serial.print (tonhöjd); 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 ("Accelerometer:"); 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 (tonhöjd); Data.println (roll);
Data.print (tf); Data.println (t); Data.print (AcX); // skriver aceldata till 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);
fördröjning (1000); }
// konvertera acceldata till pitch/roll void getAngle (int Vx, int Vy, int Vz) {dubbel x = Vx; dubbel y = Vy; dubbel z = Vz;
}
}
KODEN (FORTSÄTTNING):
-den här koden använde vi för att samla in data från accelerometern och SD -kortet.
-När vi kopplade in vår Arduino och Breadboard för att se ut som den på frizting -diagrammet, kopplade vi in SD -kortet i SD -kortadaptermodulen och fortsatte att göra oss redo för vår sista testning.
-Vi hade problem med koden länge, men koden ovan är den slutliga koden som vi använde som gav oss de data vi använde för vår presentation.
-den här koden samlar in data från accelerometern och överför informationen till SD -kortet.
-SD -kortet var anslutet till USB och anslutet till datorn. därifrån lades informationen in i vår dator.
-Brock
KOPPLING AV ARDUINO:
- medan vi kopplade Arduino, kämpade vi med dud trådar och dud Arduinos.
- vi var tvungna att korrigera ledningarna för vår Arduino flera gånger på grund av felaktig kabeldragning.
- För att säkerställa korrekt kabeldragning och kodning, se till att dina ledningar är helt säkrade och att din kodprocess är korrekt.
FRITZING DIAGRAM:
- fritz -diagrammet var rakt fram och lätt att följa med
- vi mötte problem med diagrammet när SD -kortmodulen inte var en del av fritzing -programmet. på grund av detta var vi tvungna att söka online efter en nedladdningsbar del för att inkludera i diagrammet
- vi hade slutfört diagrammet genom att inkludera rätt delar och program i diagrammet
-Ritade
Steg 4: Resultat/lärdomar
Vår graf visar en tydlig temperaturökning, troligen på grund av att värmaren tar tid att nå maximal temperatur.
För detta projekt var fysiken vi stötte på centripetalkraften som höll CubeSat i omlopp.
-Brock