Sadržaj:

Temperature CubeSat Ben & Kaiti & Q Sat 1: 8 koraka
Temperature CubeSat Ben & Kaiti & Q Sat 1: 8 koraka

Video: Temperature CubeSat Ben & Kaiti & Q Sat 1: 8 koraka

Video: Temperature CubeSat Ben & Kaiti & Q Sat 1: 8 koraka
Video: Cubesat 101: Why go to space? | BinarX 2024, Novembar
Anonim
Temperature CubeSat Ben & Kaiti & Q Sat 1
Temperature CubeSat Ben & Kaiti & Q Sat 1
Temperature CubeSat Ben & Kaiti & Q Sat 1
Temperature CubeSat Ben & Kaiti & Q Sat 1

Jeste li ikada poželjeli sami napraviti nešto što se može poslati u svemir i izmjeriti temperaturu na drugoj planeti? Na našem času fizike u srednjoj školi dobili smo zadatak da napravimo CubeSat sa funkcionalnim arduinom sa glavnim pitanjem Kako ovo možemo postići na Marsu? Odlučili smo da mjerimo temperaturu na planeti, jer tko ne bi htio znati koliko je vruć Mars? Međutim, morali smo ga napraviti od nečega pristupačnog, ali i izdržljivog. Stoga smo koristili Lego kocke. To je CubeSat učinilo izdržljivim i pomoglo nam je da lako postignemo dimenzije-čak i ako su svi komadi pomalo dosadni! Naš cilj je bio imati potpuno funkcionalan senzor koji može mjeriti temperaturu okoline i zaštitni CubeSat oko nje.

Korak 1: Prikupljanje materijala/skiciranje CubeSat -a

Prikupljanje materijala/skiciranje CubeSat -a
Prikupljanje materijala/skiciranje CubeSat -a
Prikupljanje materijala/skiciranje CubeSat -a
Prikupljanje materijala/skiciranje CubeSat -a

Prva stvar koju ćete htjeti učiniti je skicirati CubeSat. Morat ćete imati ideju o tome šta želite izgraditi prije nego što ga izgradite. Jedna od gornjih slika su CubeSat skice koje smo napravili. Zatim prikupite svoj materijal. Za CubeSat koji gradimo koristimo Lego kocke. Odabrali smo Lego kocke jer ih je lako nabaviti i sastaviti, a istovremeno su izdržljivi i dobro će obavljati potrebne zadatke. Dakle, morat ćete nabaviti neke Lego kockice. nabavite nekoliko širokih temeljnih komada dimenzija 10 cm x 10 cm x 10 cm ili nekoliko osnovnih dijelova koji se mogu sastaviti u komad dimenzija 10 x 10. Za naš CubeSat morali smo nabaviti više osnovnih dijelova i sastaviti ih kako bismo napravili bazu 10 x 10 cm. Takođe ćete morati nabaviti Lego kockice za izradu krova iste veličine. Nakon što nabavite te Lego kockice, morat ćete nabaviti tonu malih Lego kockica za izgradnju zidova CubeSat -a. Uvjerite se da su ovi Lego kockice prilično mršavi kako ne bi zauzeli previše unutrašnjosti CubeSat -a.

Korak 2: Izgradnja Cubesat -a

Izgradnja Cubesat -a
Izgradnja Cubesat -a
Izgradnja Cubesat -a
Izgradnja Cubesat -a
Izgradnja Cubesat -a
Izgradnja Cubesat -a

Prvo smo izgradili ovu ljepotu 10x10x10. Bilo je potrebno mnogo različitih dizajna. Prvo smo imali policu u sredini, ali smo kasnije odlučili da to nije potrebno imati. Ako se odlučite za policu u sredini, preporučio bih samo jednu policu jer ćete je morati rastaviti svaki put kada stavite i izvadite Arduino i senzor. Dodali smo male prozore kako bismo mogli brzo pogledati unutra dok je vrh zatvoren kako bismo mogli vidjeti kako sve radi glatko. Kako bismo CubeSat učinili stabilnijim, sastavili smo dva sloja Lega na dnu. Što je stabilniji to bolje, jer će ovaj CubeSat morati preživjeti mnoge različite prepreke.

Korak 3: Ožičenje i kodiranje Arduina

Ožičenje i kodiranje Arduina
Ožičenje i kodiranje Arduina
Ožičenje i kodiranje Arduina
Ožičenje i kodiranje Arduina
Ožičenje i kodiranje Arduina
Ožičenje i kodiranje Arduina

Drugi korak ovog projekta je mjesto gdje ćete morati spojiti arduino. Ovaj korak je vrlo važan, jer ako se to ne učini kako treba, kocka sat neće moći očitati temperaturu. Da biste dovršili ožičenje arduina, trebat će vam neki materijali. Ovi materijali su baterija, arduino, SD kartica, kratkospojne žice, matična ploča, temperaturni senzor i računar. Računalo će se koristiti za provjeru radi li ožičenje ispravno. Evo jedne web stranice koja nam je bila od velike pomoći pri usmjeravanju načina povezivanja arduina:

create.arduino.cc/projecthub/TheGadgetBoy/…

Gore navedene slike i dijagram frcanja takođe vam mogu pomoći. Kodiranje arduina također će se testirati na računaru da se provjeri radi li. Ako sve radi, arduino se može izvaditi iz računara i spreman je za rad.

Šifra:

// Podatkovna žica je priključena na port 2 na Arduinu

#define ONE_WIRE_BUS 2

File sensorData;

// Postavljanje instance OneWire -a za komunikaciju s bilo kojim OneWire uređajem (ne samo sa IC -ovima temperature Maxim/Dallas)

OneWire oneWire (ONE_WIRE_BUS);

// Uključuje biblioteke koje su nam potrebne

#include

#include

#include

// Prenesite našu referencu oneWire na Dallas Temperature.

Senzori temperature u Dallasu (& oneWire);

// nizovi za držanje adrese uređaja

Adresa uređaja unutarTermometar;

/*

* Funkcija postavljanja. Ovdje radimo osnove

*/

void setup (void)

{

pinMode (10, OUTPUT);

SD.početak (4);

// pokretanje serijskog porta

Serial.begin (9600);

Serial.println ("Demo demonstracija biblioteke za kontrolu temperature u Dallasu");

// lociranje uređaja na sabirnici

Serial.print ("Lociranje uređaja …");

sensors.begin ();

Serial.print ("Pronađeno");

Serial.print (sensors.getDeviceCount (), DEC);

Serial.println ("uređaji.");

// prijavljuju zahtjeve napajanja parazita

Serial.print ("Moć parazita je:");

if (sensors.isParasitePowerMode ()) Serial.println ("UKLJUČENO");

else Serial.println ("OFF");

/*Ručno dodijelite adresu. Dolje navedene adrese bit će potrebno promijeniti

do valjanih adresa uređaja na autobusu. Adresa uređaja se može dohvatiti

pomoću oneWire.search (deviceAddress) ili pojedinačno putem

sensors.getAddress (deviceAddress, index) Imajte na umu da ćete ovdje morati koristiti svoju određenu adresu

unutrašnji termometar = {0x28, 0x1D, 0x39, 0x31, 0x2, 0x0, 0x0, 0xF0};

Metoda 1:

Potražite uređaje na sabirnici i dodijelite ih na osnovu indeksa. Idealno, to biste učinili da biste prvo otkrili adrese u autobusu, a zatim

upotrijebite te adrese i ručno ih dodijelite (pogledajte gore) kad saznate

uređaje na vašoj sabirnici (i pod pretpostavkom da se ne mijenjaju).

*/ if (! sensors.getAddress (insideThermometer, 0)) Serial.println ("Nije moguće pronaći adresu za uređaj 0");

// metoda 2: search ()

// search () traži sljedeći uređaj. Vraća 1 ako je bila nova adresa

// vraćeno. Nula može značiti da je sabirnica kratka, nema uređaja, // ili ste ih već preuzeli. Možda bi to bila dobra ideja

// provjerite CRC da biste bili sigurni da niste dobili smeće. Naredba je takva

// determinističko. Uvijek ćete dobiti iste uređaje istim redoslijedom

//

// Mora se pozvati prije pretraživanja ()

//oneWire.reset_search ();

// dodjeljuje prvu pronađenu adresu insideThermometru

// if (! oneWire.search (insideThermometer)) Serial.println ("Nije moguće pronaći adresu za insideThermometer");

// prikazujemo adrese koje smo pronašli u autobusu

Serial.print ("Adresa 0 adresa:");

printAddress (unutar termometra);

Serial.println ();

// postavite rezoluciju na 9 bita (Svaki Dallas/Maxim uređaj može imati nekoliko različitih rezolucija)

sensors.setResolution (unutraTermometar, 9);

Serial.print ("Rezolucija uređaja 0:");

Serial.print (sensors.getResolution (unutar termometra), DEC);

Serial.println ();

}

// funkcija za ispis temperature za uređaj

void printTemperature (DeviceAddress deviceAddress)

{

// metoda 1 - sporija

//Serial.print("Temp C: ");

//Serial.print(sensors.getTempC(deAdAdress));

//Serial.print ("Temp F:");

//Serial.print(sensors.getTempF(deAdAdress)); // Upućuje drugi poziv getTempC -u, a zatim se pretvara u Fahrenheit

// metoda 2 - brža

float tempC = sensors.getTempC (deviceAddress);

ako (tempC == DEVICE_DISCONNECTED_C)

{

Serial.println ("Greška: Nije moguće očitati podatke o temperaturi");

return;

}

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)); // Pretvara tempC u Fahrenheit

sensorData.println (tempC);

sensorData.close ();

}

}

/*

* Glavna funkcija. Zahtijevat će tempC od senzora i prikazati na Serial.

*/

void petlja (void)

{

// poziva senzore.requestTemperatures () za izdavanje globalne temperature

// zahtjev svim uređajima na sabirnici

Serial.print ("Zahtijevane temperature …");

sensors.requestTemperatures (); // Pošaljite naredbu za mjerenje temperature

Serial.println ("GOTOVO");

// Odgovara gotovo odmah. Odštampajmo podatke

printTemperature (insideThermometer); // Koristite jednostavnu funkciju za ispis podataka

}

// funkcija za ispis adrese uređaja

void printAddress (DeviceAddress deviceAddress)

{

za (uint8_t i = 0; i <8; i ++)

{

if (deviceAddress <16) Serial.print ("0");

Serial.print (deviceAddress , HEX);

}

}

ReplyForward

Korak 4: Provjerite Cubesat

Provjera Cubesat -a
Provjera Cubesat -a
Provjera Cubesat -a
Provjera Cubesat -a

Sada kada su CubeSat, kôd i ožičenje Arduina završeni, uskoro ćete pokrenuti testove. Ako ovi testovi ne uspiju, vaš CubeSat bi mogao biti potpuno uništen, zajedno s vašim Arduinom. Stoga ćete htjeti provjeriti je li vaš Arduino spreman za to. Tu dolazi do izražaja ovaj korak, provjera preko CubeSat -a. Prvo ćete morati sigurno postaviti Arduino unutar CubeSat -a i paziti da se ne pomakne. Zatim ćete morati provjeriti jesu li svi dijelovi CubeSat -a dobro postavljeni. Ne može biti labavih komada, ili će se CubeSat vjerovatno rastaviti tokom testiranja. Ako pažljivo provjerite svoj CubeSat, tada bi testovi koje prolazi trebali lako proći.

Korak 5: Nanizajte CubeSat

Nizanje CubeSat -a
Nizanje CubeSat -a

Ovaj korak će biti priprema za prvi test kroz koji će CubeSat proći. U testu, CubeSat će se brzo vrtjeti u krugu 30 sekundi. Morat ćete biti sigurni da je CubeSat čvrsto navezan kako ne bi odletio. Vezali smo 2 žice potpuno oko CubeSat -a i čvrsto ih vezali. Zatim smo dodali još jedan dugi niz koji je bio vezan oko prva dva. Ovaj niz smo više puta vezali pri vrhu i dnu kako bi bio što sigurniji. To može potrajati više pokušaja jer želite da žicu učinite savršenom kako se ne bi olabavila tijekom leta.

Korak 6: Test zamaha

Zamašni test
Zamašni test

Radi sigurnosti u ovom koraku, obavezno nosite naočale kako biste zaštitili oči. U ovom koraku ćete izvesti CubeSat kroz test kako biste provjerili štiti li Arduino dovoljno dobro da može obaviti svoj zadatak (pronalaženje temperature). Prvi test je onaj kojem je potrebno nizanje. U ovom testu, Arduino će se okretati (kao što je prikazano na gornjoj slici/video zapisu)- (ponekad se video prikazuje problem pri učitavanju). Model Marsa se može postaviti u sredinu. Da bi uspješno završio ovaj test, Arduino će se morati okretati, a da pritom ne bude vezan, zbog čega ga treba dobro nanizati, a Arduino će morati biti u potpunosti funkcionalan nakon završetka testa. Zato morate biti sigurni da je Arduino dobro pričvršćen u CubeSat -u.

Korak 7: Test #2- Test protresanja

Test #2- Test protresanja
Test #2- Test protresanja

U ovom koraku vaš CubeSat će proći test #2. Ovaj test je test protresanja. U ovom testu, CubeSat će biti postavljen u držač kao što je prikazano na slici/videozapisu (ponekad se video zapis ima problema pri učitavanju) gore i snažno će se tresti naprijed -nazad 30 sekundi. Da bi prošli ovaj test, vaši CubeSat i Arduino će morati biti u potpunosti funkcionalni nakon što se protrese.

Korak 8: Rezultati/Završena temperatura CubeSat

Rezultati/Završena temperatura CubeSat
Rezultati/Završena temperatura CubeSat
Rezultati/Završena temperatura CubeSat
Rezultati/Završena temperatura CubeSat
Rezultati/Završena temperatura CubeSat
Rezultati/Završena temperatura CubeSat

Na kraju, naš CubeSat uspio je uspješno zabilježiti temperaturu prolazeći svaki test. Podaci dosljedno očitavaju 26-30 stepeni Celzijusa u svakom testu. Ovo je isto što i 78-86 stepeni Fahrenheita. Međutim, na putu smo naišli na neke probleme. Na primjer, više puta kodiranje arduina nije radilo i čitalo je 126 stepeni Celzijusa. Bilo je potrebno više pokušaja da se postigne odgovarajuća temperatura. Neki savjet koji bih dao svima koji rade na ovom projektu bio bi da isprobaju više varijacija koda i ožičenja i da se uvjere da se vaš arduino dobro uklapa u CubeSat. Možda ćete morati zategnuti jaz unutar CubeSat -a kako biste bili sigurni da se arduino savršeno uklapa unutra. Imali smo problema s tim da je arduino previše labav u CubeSat -u.

U ovom projektu ćete također morati primijeniti svoje znanje iz fizike. Poznavanje tehnologije, energije i sile iz fizike morat će se primijeniti tokom cijelog projekta. Tokom cijelog projekta naučili smo više o Sunčevom sistemu i novim tehnologijama poput CubeSats -a. Naučili smo i o gravitacijskoj sili, te kako bi ta sila mogla utjecati na CubeSat. Jedna vrlo važna tema ovog projekta bila je kretanje satelita. Učili smo o kretanju satelita koristeći brzinu, neto silu i gravitaciju. To bi nam pomoglo da pronađemo projektile satelita.

Kada vaši CubeSat i arduino uspješno polože testove i rade ispravno, završili ste. Vaš CubeSat bi trebao preživjeti atmosferu Marsa. Uvjerite se da je senzor uspješno zabilježio i temperaturu tijekom svih testova. Vaš CubeSat je spreman za odlazak u svemir!

Preporučuje se: