Innehållsförteckning:
- Steg 1: Samla material/skissa på CubeSat
- Steg 2: Bygg Cubesat
- Steg 3: Anslutning och kodning av Arduino
- Steg 4: Kontrollera över Cubesat
- Steg 5: Stränga upp CubeSat
- Steg 6: Swingtestet
- Steg 7: Testa 2- skakningstestet
- Steg 8: Resultat/slutförd temperatur CubeSat
Video: Temperatur CubeSat Ben & Kaiti & Q Hour 1: 8 Steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:38
Har du någonsin velat göra något själv som kan skickas till rymden och ta temperaturen på en annan planet? I vår gymnasiefysikklass fick vi i uppdrag att bygga en CubeSat med en fungerande arduino med huvudfrågan Hur kan vi få detta att fungera på Mars? Vi bestämde oss för att låta den mäta temperaturen på planeten, för vem skulle inte vilja veta hur heta mars är? Vi behövde dock göra det av något prisvärt, men också hållbart. Därför använde vi Legos. Detta gjorde CubeSat hållbar och hjälpte oss att nå storlekarna ganska enkelt-även om alla bitar var lite irriterande! Vårt mål var att ha en fullt fungerande sensor som kan ta temperaturen i omgivningen och en skyddande CubeSat runt den.
Steg 1: Samla material/skissa på CubeSat
Det allra första du kommer att vilja göra är att skissa CubeSat. Du måste ha en uppfattning om vad du vill bygga innan du bygger det. En av bilderna ovan är av CubeSat -skisser vi gjort. Samla sedan ditt material. För CubeSat vi bygger använder vi Legos. Vi valde Legos eftersom de är lätta att få ihop och sätta ihop, och samtidigt är de hållbara och kommer att utföra de nödvändiga uppgifterna bra. Så du måste skaffa några Legos. skaffa ett par breda basstycken, det vill säga 10cm X 10 cm X 10 cm, eller några basstycken som kan sättas ihop till en 10 x 10 bit. För vår CubeSat var vi tvungna att skaffa flera basstycken och sätta ihop dem för att få en bas på 10 cm x 10 cm. Du måste också få Legos för att göra ett takstycke i samma storlek. När du har fått dessa Legos måste du få massor av små Legos för att bygga upp väggarna i CubeSat. Se till att dessa Legos är ganska smala, så att de inte tar upp för mycket av interiören i CubeSat.
Steg 2: Bygg Cubesat
Först byggde vi denna 10x10x10 skönhet. Det krävdes många olika mönster. Först hade vi en hylla i mitten men vi bestämde senare att det var onödigt att ha. Om du väljer att ha en hylla i mitten rekommenderar jag bara en hylla eftersom du måste ta isär den varje gång du sätter in och tar ut din Arduino och sensor. Vi lade till små fönster så att vi kan titta snabbt inuti medan toppen är stängd så att vi kan se att allt fungerar smidigt. För att göra CubeSat mer stabil sätter vi ihop två lager Lego längst ner. Ju mer stabil desto bättre, eftersom denna CubeSat kommer att behöva klara många olika hinder.
Steg 3: Anslutning och kodning av Arduino
Det andra steget i det här projektet är där du måste koppla arduino. Detta steg är mycket viktigt, för om detta inte görs på rätt sätt kommer inte kuben att kunna avläsa temperaturen. För att slutföra kabeldragningen av arduino behöver du några material. Dessa material är ett batteri, arduino, ett SD -kort, bygelkablar, en brödbräda, en temperatursensor och en dator. Datorn kommer att användas för att se om ledningarna fungerar som de ska. Här är en webbplats som var till stor hjälp för att vägleda oss om hur du kopplar arduino:
create.arduino.cc/projecthub/TheGadgetBoy/…
Bilderna och fritzningsdiagrammet ovan kan också hjälpa dig. Arduino -kodningen testas också på datorn för att se om den fungerar. Om allt fungerar kan arduino tas ut ur datorn och är redo att gå.
Koda:
// Datakabel är ansluten till port 2 på Arduino
#define ONE_WIRE_BUS 2
File sensorData;
// Konfigurera en oneWire -instans för att kommunicera med alla OneWire -enheter (inte bara Maxim/Dallas temperatur -IC: er)
OneWire oneWire (ONE_WIRE_BUS);
// Inkludera de bibliotek vi behöver
#omfatta
#omfatta
#omfatta
// Passera vår oneWire -referens till Dallas Temperature.
DallasTemperatursensorer (& oneWire);
// matriser för att hålla enhetsadress
DeviceAdrress insideThermometer;
/*
* Inställningsfunktion. Här gör vi grunderna
*/
void setup (void)
{
pinMode (10, OUTPUT);
SD. Började (4);
// starta seriell port
Serial.begin (9600);
Serial.println ("Dallas Temperature IC Control Library Demo");
// hitta enheter på bussen
Serial.print ("Hitta enheter …");
sensorer.start ();
Serial.print ("Hittat");
Serial.print (sensors.getDeviceCount (), DEC);
Serial.println ("enheter.");
// rapportera kraven på parasitkraft
Serial.print ("Parasitkraft är:");
if (sensors.isParasitePowerMode ()) Serial.println ("ON");
annars Serial.println ("AV");
/*Tilldela adress manuellt. Adresserna nedan kommer att ändras
till giltiga enhetsadresser på din buss. Enhetsadress kan hämtas
genom att använda antingen oneWire.search (deviceAddress) eller individuellt via
sensors.getAddress (deviceAddress, index) Observera att du måste använda din specifika adress här
insideThermometer = {0x28, 0x1D, 0x39, 0x31, 0x2, 0x0, 0x0, 0xF0};
Metod 1:
Sök efter enheter på bussen och tilldela baserat på ett index. Helst, du skulle göra detta för att initialt upptäcka adresser på bussen och sedan
använd dessa adresser och tilldela dem manuellt (se ovan) när du vet det
enheterna på din buss (och förutsatt att de inte ändras).
*/ if (! sensors.getAddress (insideThermometer, 0)) Serial.println ("Det gick inte att hitta adressen för enhet 0");
// metod 2: sök ()
// search () letar efter nästa enhet. Returnerar 1 om en ny adress har varit
// återvände. En nolla kan innebära att bussen är kortsluten, det finns inga enheter, // eller så har du redan hämtat dem alla. Det kan vara en bra idé att
// kolla CRC för att se till att du inte fick skräp. Beställningen är
// deterministisk. Du får alltid samma enheter i samma ordning
//
// Måste ringas före sökning ()
//oneWire.reset_search ();
// tilldelar insideThermometer den första adressen som hittades
// if (! oneWire.search (insideThermometer)) Serial.println ("Det gick inte att hitta adressen för insideThermometer");
// visa adresserna vi hittade på bussen
Serial.print ("Device 0 Address:");
printAddress (insideThermometer);
Serial.println ();
// ställ in upplösningen till 9 bitar (Varje Dallas/Maxim -enhet kan flera olika upplösningar)
sensorer.setResolution (inutiTermometer, 9);
Serial.print ("Enhet 0 -upplösning:");
Serial.print (sensors.getResolution (insideThermometer), DEC);
Serial.println ();
}
// funktion för att skriva ut temperaturen för en enhet
void printTemperature (DeviceAddress deviceAddress)
{
// metod 1 - långsammare
//Serial.print("Temp C: ");
//Serial.print(sensors.getTempC(deviceAddress));
//Serial.print ("Temp F:");
//Serial.print(sensors.getTempF(deviceAddress)); // Ringer ett andra samtal till getTempC och konverterar sedan till Fahrenheit
// metod 2 - snabbare
float tempC = sensorer.getTempC (deviceAddress);
if (tempC == DEVICE_DISCONNECTED_C)
{
Serial.println ("Fel: Det gick inte att läsa temperaturdata");
lämna tillbaka;
}
sensorData = SD.open ("log.txt", FILE_WRITE);
if (sensorData) {
Serial.print ("Temp C:");
Serial.print (tempC);
Serial.print ("Temp F:");
Serial.println (DallasTemperature:: toFahrenheit (tempC)); // Konverterar tempC till Fahrenheit
sensorData.println (tempC);
sensorData.close ();
}
}
/*
* Huvudfunktion. Det kommer att begära tempC från sensorerna och visa på Serial.
*/
void loop (void)
{
// ringa sensorer.requestTemperatures () för att utfärda en global temperatur
// begäran till alla enheter på bussen
Serial.print ("Begär temperaturer …");
sensors.requestTemperatures (); // Skicka kommandot för att få temperaturer
Serial.println ("KLAR");
// Det svarar nästan omedelbart. Låt oss skriva ut data
printTemperature (insideThermometer); // Använd en enkel funktion för att skriva ut data
}
// funktion för att skriva ut en enhetsadress
void printAddress (DeviceAddress deviceAddress)
{
för (uint8_t i = 0; i <8; i ++)
{
if (deviceAddress <16) Serial.print ("0");
Serial.print (deviceAddress , HEX);
}
}
Svara Framåt
Steg 4: Kontrollera över Cubesat
Nu när CubeSat, kod och ledningar för a Arduino är klar kör du snart test. Om dessa test misslyckas kan din CubeSat eventuellt förstöras helt, tillsammans med din Arduino. Därför vill du se till att din Arduino är redo för detta. Det är där detta steg kommer in för att spela, kontrollera över CubeSat. Först måste du placera din Arduino säkert inuti CubeSat och se till att den inte skakar runt. Då måste du se till att alla bitar av CubeSat sitter ordentligt på plats. Det kan inte finnas några lösa bitar, annars är det mer troligt att CubeSat lossnar under testerna. Om du kontrollerar din CubeSat noggrant bör de tester som den genomgår enkelt klaras.
Steg 5: Stränga upp CubeSat
Detta steg kommer att förberedas för det första testet som CubeSat kommer att gå igenom. I testet kommer CubeSat att svängas runt i snabb takt i en cirkel i 30 sekunder. Du måste se till att CubeSat är hårt spänd så att den inte flyger iväg. Vi knöt 2 strängar helt runt CubeSat och band dem tätt. Sedan lade vi till en annan lång sträng, som var bunden runt de två första. Vi knöt denna sträng flera gånger upptill och nedtill så den var så säker som möjligt. Detta kan ta flera försök eftersom du vill göra strängen perfekt så att den inte lossnar under flygningen.
Steg 6: Swingtestet
För säkerhets skull i detta steg, var noga med att bära skyddsglasögon för att skydda dina ögon. I det här steget kommer du att köra CubeSat genom ett test för att se om den skyddar Arduino tillräckligt bra för att den ska kunna utföra sin uppgift (att hitta temperatur). Det första testet är det som behöver strängningen. I detta test kommer Arduino att svängas runt (som visas på bilden/videon ovan)- (ibland har videon problem med att ladda). En modell Mars kan placeras i mitten. För att lyckas med detta test måste Arduino svänga runt utan att komma loss, varför det måste spännas upp bra och Arduino måste fungera fullt ut efter att testet är klart. Det är därför du måste se till att Arduino är säkert säkrad i CubeSat.
Steg 7: Testa 2- skakningstestet
I detta steg kommer din CubeSat att genomgå test nr 2. Detta test är skakprovet. I detta test kommer CubeSat att placeras i en hållare som visas på bilden/videon (ibland har videon problem med att ladda) ovan och kommer att skakas våldsamt fram och tillbaka i 30 sekunder. För att klara detta test måste din CubeSat och Arduino fortfarande fungera fullt ut efter att de skakats.
Steg 8: Resultat/slutförd temperatur CubeSat
I slutändan kunde vår CubeSat framgångsrikt registrera temperaturen medan vi genomgick varje test. Data läste konsekvent 26-30 grader Celsius i varje test. Detta är samma sak som 78-86 grader Fahrenheit. Men vi sprang in på några problem på vägen. Till exempel fungerade inte kodningen av arduinoen flera gånger och läste 126 grader Celsius. Det tog flera försök att uppnå rätt temperatur. Några råd jag skulle ge till alla som gör det här projektet skulle vara att prova flera varianter av kod och ledningar och se till att din arduino passar tätt in i CubeSat. Du kan behöva dra åt gapet inuti CubeSat för att se till att arduino passar perfekt inuti. Vi hade några problem med att arduino var för lös i CubeSat.
I detta projekt måste du också tillämpa dina kunskaper i fysik. Fysikkunskaper om teknik, energi och kraft kommer att behöva tillämpas under hela projektet. Under hela projektet lärde vi oss mer om solsystemet och ny teknik som CubeSats. Vi lärde oss också om gravitationskraft och hur denna kraft kan påverka CubeSat. Ett mycket viktigt ämne med detta projekt var satellitrörelse. Vi lärde oss om satellitrörelser genom att använda hastighet, nettokraft och gravitation. Detta skulle hjälpa oss att hitta satelliternas projektiler.
När din CubeSat och arduino har klarat testerna och fungerar korrekt är du klar. Din CubeSat ska kunna överleva Mars atmosfär. Se till att sensorn också registrerade temperaturen under testerna. Din CubeSat är redo att gå till rymden!
Rekommenderad:
Hur man gör en CubeSat som kan mäta temperatur: 3 steg
Hur man gör en CubeSat som kan mäta temperatur: Kom med och du kommer att se en 11x11x11x11 kub av ren fantasi, ta min hand och du kommer att se Mars temperatur! (enligt melodin av Willy Wonkas “Imagination”) Idag visar jag att du måste bygga din egen CubeSat! Jag och mina partner Alyssa och
Slagkraft på löparens häl och ben under löpning: 6 steg
Impact Force på en löparhäl och ben under löpning: För mitt projekt ville jag testa mängden kraft som löparens häl och ben utsätts för, och om nya löparskor verkligen minskar kraften. En accelerometer är en enhet som detekterar acceleration i X-, Y- och Z -axlarna. Accelerationen mäts
CubeSat temperatur och luftfuktighet: 7 steg
CubeSat temperatur och luftfuktighet: Detta är vår CubeSat. Vi bestämde att vi ville mäta temperatur och luftfuktighet eftersom vi var nyfikna på förhållandena i rymden. Vi 3D -skrivit ut vår struktur och hittade de mest effektiva sätten att bygga denna modell. Vårt mål var att bygga ett system som
Hur man bygger en temperatur Cubesat: 5 steg
Hur man bygger en temperatur Cubesat: Tänk dig att ha möjlighet att utforska en planet med bara en 10x10x10 kub. Nu kan du! (Obs: Det här projektet kommer faktiskt inte att gå till månen, förlåt) Jag heter Alyssa, och i denna instruktionsbok kommer jag att visa dig hur mina två partners (Stormi och H
Temperatur och luftfuktighet Cubesat: 5 steg
Temperatur och luftfuktighet Cubesat: Hur kan vi designa, bygga och programmera en modell av en Mars Orbiter, som samlar in data och informerar oss om specifika aspekter av planeten? Av: Abe, Mason, Jackson och Wyatt