Hőmérséklet CubeSat Ben & Kaiti & Q óra 1: 8 lépés
Hőmérséklet CubeSat Ben & Kaiti & Q óra 1: 8 lépés
Anonim
Hőmérséklet CubeSat Ben & Kaiti & Q óra 1
Hőmérséklet CubeSat Ben & Kaiti & Q óra 1
Hőmérséklet CubeSat Ben & Kaiti & Q óra 1
Hőmérséklet CubeSat Ben & Kaiti & Q óra 1

Szerettél volna valaha olyat készíteni magadnak, amit el lehet küldeni az űrbe, és mérni egy másik bolygó hőmérsékletét? Gimnáziumi fizikaórán kirendeltünk egy CubeSat építését egy működő arduino -val, a fő kérdéssel: Hogyan tudjuk ezt működésre bírni a Marson? Úgy döntöttünk, hogy méri a hőmérsékletet a bolygón, mert ki ne szeretné tudni, milyen meleg a Mars? Azonban megfizethető, de tartós anyagból kellett készítenünk. Ezért a Legókat használtuk. Ezáltal a CubeSat tartós lett, és segített elérni a méretezési méreteket, még akkor is, ha az összes darab kissé bosszantó volt! Célunk az volt, hogy legyen egy teljesen működőképes érzékelő, amely képes mérni a környező terület hőmérsékletét, és egy védő CubeSat körülötte.

1. lépés: Anyagok összegyűjtése/a CubeSat felvázolása

Anyagok gyűjtése/a CubeSat vázlata
Anyagok gyűjtése/a CubeSat vázlata
Anyagok gyűjtése/a CubeSat vázlata
Anyagok gyűjtése/a CubeSat vázlata

A legelső dolog, amit meg akar tenni, a CubeSat felvázolása. Mielőtt megépítené, rendelkeznie kell egy elképzeléssel arról, hogy mit szeretne építeni. A fenti képek egyike az általunk készített CubeSat vázlatok. Ezután gyűjtse össze az anyagokat. Az általunk épített CubeSathez Legókat használunk. Azért választottuk a Legókat, mert könnyen össze- és összeszerelhetők, ugyanakkor tartósak és jól elvégzik a szükséges feladatokat. Szóval szerezned kell egy kis Legót. szerezzen pár széles alapdarabot, amelyek mérete 10 cm x 10 cm x 10 cm, vagy néhány alapdarabot össze lehet rakni 10 x 10 darabra. A CubeSat -hez több alapdarabot kellett beszereznünk, és össze kell raknunk, hogy 10 x 10 cm -es alapot kapjunk. Szüksége lesz a Lego -kra is, hogy azonos méretű tetődarabot készítsen. Miután megszerezte ezeket a Legókat, rengeteg kis Legót kell beszereznie a CubeSat falainak felépítéséhez. Győződjön meg arról, hogy ezek a Legók meglehetősen vékonyak, így nem foglalják el túlságosan a CubeSat belsejét.

2. lépés: A Cubesat építése

A Cubesat építése
A Cubesat építése
A Cubesat építése
A Cubesat építése
A Cubesat építése
A Cubesat építése

Először is elkészítettük ezt a 10x10x10 -es szépséget. Nagyon sokféle kialakításra volt szükség. Először egy polc volt a közepén, de később úgy döntöttünk, hogy felesleges. Ha úgy dönt, hogy a polc középen van, csak egy polcot javaslok, mert minden alkalommal szét kell szednie, amikor behelyezi és kiveszi az Arduino -t és az érzékelőt. Kis ablakokat adtunk hozzá, hogy gyorsan betekinthessünk a belsejébe, miközben a teteje zárva van, így láthatjuk, hogy minden zökkenőmentesen működik. A CubeSat stabilabbá tétele érdekében két réteg Legót rakunk össze alul. Minél stabilabb, annál jobb, mert ennek a CubeSatnek sokféle akadályt kell túlélnie.

3. lépés: Az Arduino bekötése és kódolása

Az Arduino bekötése és kódolása
Az Arduino bekötése és kódolása
Az Arduino bekötése és kódolása
Az Arduino bekötése és kódolása
Az Arduino bekötése és kódolása
Az Arduino bekötése és kódolása

Ennek a projektnek a második lépése az, hogy hol kell bekötni az arduinot. Ez a lépés nagyon fontos, mert ha ezt nem megfelelően hajtjuk végre, akkor a kocka nem képes leolvasni a hőmérsékletet. Az arduino bekötésének befejezéséhez néhány anyagra lesz szüksége. Ezek az anyagok az akkumulátor, az arduino, az SD -kártya, az áthidaló vezetékek, a kenyérlap, a hőmérséklet -érzékelő és a számítógép. A számítógépet használják annak ellenőrzésére, hogy a vezetékek megfelelően működnek -e. Itt van egy webhely, amely nagyon hasznos volt az arduino bekötésében:

create.arduino.cc/projecthub/TheGadgetBoy/…

A fenti képek és a frizura diagram is segíthet. Az arduino kódolását a számítógépen is tesztelni kell, hogy lássa, működik -e. Ha minden működik, akkor az arduino kivehető a számítógépről, és készen áll a használatra.

Kód:

// Az adatvezeték az Arduino 2 -es portjához van csatlakoztatva

#define ONE_WIRE_BUS 2

File sensorData;

// Állítson be egy OneWire példányt bármelyik OneWire eszközzel való kommunikációhoz (nem csak a Maxim/Dallas hőmérséklet IC -khez)

OneWire oneWire (ONE_WIRE_BUS);

// Tartalmazza a szükséges könyvtárakat

#befoglalni

#befoglalni

#befoglalni

// Add át a OneWire hivatkozást a dallasi hőmérsékletre.

DallasHőmérséklet -érzékelők (& oneWire);

// tömbök az eszköz címének megőrzésére

DeviceAddress insideThermometer;

/*

* Beállítás funkció. Itt elvégezzük az alapokat

*/

void setup (érvénytelen)

{

pinMode (10, KIMENET);

SD.kezdet (4);

// soros port indítása

Sorozat.kezdet (9600);

Serial.println ("Dallas Temperature IC Control Library Demo");

// eszközök keresése a buszon

Serial.print ("Eszközök keresése …");

szenzorok.begin ();

Serial.print ("Talált");

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

Serial.println ("eszközök");

// a parazita teljesítményigényének jelentése

Serial.print ("A parazita teljesítménye:");

if (sensors.isParasitePowerMode ()) Serial.println ("BE");

else Serial.println ("KI");

/*Cím manuális hozzárendelése. Az alábbi címeket módosítani kell

érvényes eszközcímekre a buszon. Az eszköz címe lekérhető

vagy a oneWire.search (deviceAddress) használatával, vagy egyenként keresztül

sensors.getAddress (deviceAddress, index) Ne feledje, hogy itt a saját címét kell használnia

belső hőmérő = {0x28, 0x1D, 0x39, 0x31, 0x2, 0x0, 0x0, 0xF0};

1. módszer:

Keressen eszközöket a buszon, és rendeljen hozzá index alapján. Ideális esetben, ezt megtenné, hogy először felfedezze a címeket a buszon, majd

használja ezeket a címeket, és manuálisan rendelje hozzá őket (lásd fent), amint tudja

a buszon lévő eszközöket (és feltételezve, hogy nem változnak).

*/ if (! sensors.getAddress (insideThermometer, 0)) Serial.println ("Nem található cím a 0 -ás eszközhöz");

// 2. módszer: keresés ()

// search () a következő eszközt keresi. 1 -et ad vissza, ha új cím lett megadva

// visszatért. A nulla azt jelentheti, hogy a busz rövidre zárva van, nincsenek eszközök, // vagy már letöltötte mindegyiket. Lehet, hogy jó ötlet lenne

// ellenőrizze a CRC -t, hogy megbizonyosodjon arról, hogy nem kapott szemetet. A sorrend az

// meghatározó. Mindig ugyanazokat az eszközöket kapja meg ugyanabban a sorrendben

//

// Fel kell hívni a keresés előtt ()

//oneWire.reset_search ();

// hozzárendeli az első talált címet a insideThermometer -hez

// if (! oneWire.search (insideThermometer)) Serial.println ("Nem található cím a beltéri hőmérőhöz");

// mutassa meg azokat a címeket, amelyeket a buszon találtunk

Serial.print ("Eszköz 0 címe:");

printAddress (insideThermometer);

Sorozat.println ();

// állítsa a felbontást 9 bitre (Minden Dallas/Maxim eszköz több különböző felbontásra képes)

sensors.setResolution (insideThermometer, 9);

Serial.print ("Eszköz 0 felbontása:");

Serial.print (sensors.getResolution (insideThermometer), DEC);

Sorozat.println ();

}

// funkció az eszköz hőmérsékletének nyomtatásához

void printTemperature (DeviceAddress deviceAddress)

{

// 1. módszer - lassabb

// Sorozat.nyomat ("Temp C: ");

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

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

//Serial.print(sensors.getTempF(deviceAddress)); // Második hívást kezdeményez a getTempC -re, majd Fahrenheit -re konvertál

// 2. módszer - gyorsabb

float tempC = sensors.getTempC (deviceAddress);

ha (tempC == DEVICE_DISCONNECTED_C)

{

Serial.println ("Hiba: Nem sikerült leolvasni a hőmérsékleti adatokat");

Visszatérés;

}

sensorData = SD.open ("log.txt", FILE_WRITE);

if (sensorData) {

Serial.print ("C hőmérséklet:");

Serial.print (tempC);

Serial.print ("Temp F:");

Serial.println (DallasTemperature:: toFahrenheit (tempC)); // A tempC -t Fahrenheit -fé konvertálja

sensorData.println (tempC);

sensorData.close ();

}

}

/*

* Fő funkció. Kérni fogja a tempC -t az érzékelőktől, és megjeleníti a soros megjelenítést.

*/

void loop (void)

{

// hívja a sensors.requestTemperatures () globális hőmérsékletet

// kérés a buszon lévő összes eszközhöz

Serial.print ("Kérési hőmérséklet …");

sensors.requestTemperatures (); // Küldje el a parancsot a hőmérséklet meghatározásához

Serial.println ("KÉSZ");

// Szinte azonnal válaszol. Nyomtassuk ki az adatokat

printTemperature (belülHőmérő); // Egy egyszerű funkcióval kinyomtathatja az adatokat

}

// eszközcím nyomtatására szolgáló funkció

void printAddress (DeviceAddress deviceAddress)

{

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

{

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

Serial.print (deviceAddress , HEX);

}

}

Válasz Előre

4. lépés: A Cubesat ellenőrzése

Ellenőrzés a Cubesat felett
Ellenőrzés a Cubesat felett
Ellenőrzés a Cubesat felett
Ellenőrzés a Cubesat felett

Most, hogy az Arduino CubeSat, kódja és kábelezése befejeződött, hamarosan teszteket fog futtatni. Ha ezek a tesztek sikertelenek, a CubeSat potenciálisan teljesen megsemmisülhet az Arduino -val együtt. Ezért meg kell győződnie arról, hogy az Arduino készen áll erre. Ez az a pont, ahol ez a lépés játszódik le, ellenőrizve a CubeSat -et. Először is biztonságosan kell elhelyeznie az Arduino -t a CubeSat belsejében, és ügyelnie kell arra, hogy ne mozogjon. Ezután meg kell győződnie arról, hogy a CubeSat minden része biztonságosan a helyén van. Nem lehetnek laza darabok, különben a CubeSat nagyobb valószínűséggel szétesik a tesztek során. Ha határozottan ellenőrzi a CubeSat készülékét, akkor könnyen át kell esnie a teszteken.

5. lépés: A CubeSat feltöltése

A CubeSat rögzítése
A CubeSat rögzítése

Ez a lépés a CubeSat első tesztjének előkészítése lesz. A teszt során a CubeSat gyors ütemben körbe lendül 30 másodpercig. Meg kell győződnie arról, hogy a CubeSat szorosan fel van fűzve, hogy ne szálljon le. 2 húrt teljesen a CubeSat köré kötöttünk, és szorosan megkötöttük. Ezután hozzáadtunk egy másik hosszú húrt, amely az első kettő körül volt kötve. Ezt a húrt többször csomóztuk felül és alul, hogy a lehető legbiztonságosabb legyen. Ez többszöri próbálkozást is igénybe vehet, mert tökéletesíteni szeretné a húrt, hogy ne lazuljon el repülés közben.

6. lépés: A lengés teszt

A lengés teszt
A lengés teszt

A biztonság érdekében ebben a lépésben feltétlenül viseljen védőszemüveget, hogy megvédje a szemét. Ebben a lépésben tesztelni fogja a CubeSat -ot, hogy megnézze, eléggé védi -e az Arduino -t ahhoz, hogy elvégezze a feladatát (hőmérséklet -megállapítás). Az első teszt az, amelyiknek szüksége van a karakterláncra. Ebben a tesztben az Arduino-t körbeforgatják (amint a fenti kép/videó mutatja)- (néha a videó betöltése problémás). A Mars modellt középre lehet helyezni. A teszt sikeres elvégzéséhez az Arduino -nak meg kell lengetnie magát anélkül, hogy kötetlenül jönne, ezért jól fel kell fűzni, és az Arduino -nak teljes mértékben működőképesnek kell lennie a teszt befejezése után. Ezért meg kell győződnie arról, hogy az Arduino jól rögzítve van a CubeSat -ben.

7. lépés: 2. teszt: a rázkódás teszt

2. teszt- a rázkódás teszt
2. teszt- a rázkódás teszt

Ebben a lépésben a CubeSat a 2. teszten megy keresztül. Ez a teszt a rázkódási teszt. Ebben a tesztben a CubeSat a fenti képen/videóban látható tartóba kerül (néha a videó betöltése problémás), és hevesen rázza előre -hátra 30 másodpercig. Annak érdekében, hogy sikeres legyen ez a teszt, a CubeSat és az Arduino készüléknek teljesen működőképesnek kell lennie, miután megrázta őket.

8. lépés: Eredmények/befejezett hőmérséklet CubeSat

Eredmények/Befejezett hőmérséklet CubeSat
Eredmények/Befejezett hőmérséklet CubeSat
Eredmények/Befejezett hőmérséklet CubeSat
Eredmények/Befejezett hőmérséklet CubeSat
Eredmények/Befejezett hőmérséklet CubeSat
Eredmények/Befejezett hőmérséklet CubeSat

Végül a CubeSat sikeresen rögzítette a hőmérsékletet, miközben minden teszten végigment. Az adatok minden vizsgálat során következetesen 26-30 Celsius fokot mutattak. Ez ugyanaz, mint a 78-86 Fahrenheit fok. Útközben azonban néhány problémába ütköztünk. Például az arduino kódolása többször nem működött, és 126 Celsius fokot mutatott. A megfelelő hőmérséklet eléréséhez több kísérletre volt szükség. Néhány tanácsot adnék mindenkinek, aki ezt a projektet végzi, hogy próbálja ki a kód és a vezetékek több változatát, és győződjön meg arról, hogy az arduino szorosan illeszkedik a CubeSat -hez. Lehet, hogy meg kell húznia a CubeSat belsejében lévő rést, hogy megbizonyosodjon arról, hogy az arduino tökéletesen illeszkedik a belsejébe. Volt egy kis gondunk azzal, hogy az arduino túl laza a CubeSat -ben.

Ebben a projektben a fizika ismereteit is alkalmaznia kell. A technológia, az energia és az erő fizikai ismereteit a projekt során alkalmazni kell. A projekt során többet megtudtunk a naprendszerről és az új technológiákról, mint például a CubeSats. Megismertük a gravitációs erőt is, és azt, hogy ez az erő hogyan hathat a CubeSat -ra. A projekt egyik nagyon fontos témája a műholdas mozgás volt. Megtanultuk a műhold mozgását a sebesség, a nettó erő és a gravitáció használatával. Ez segítene megtalálni a műholdak lövedékeit.

Miután a CubeSat és az arduino sikeresen átment a teszteken, és megfelelően működik, készen áll. A CubeSat -nek képesnek kell lennie túlélni a Mars légkörét. Győződjön meg arról, hogy az érzékelő a vizsgálatok során is sikeresen rögzítette a hőmérsékletet. A CubeSat készen áll az űrbe!

Ajánlott: