Агуулгын хүснэгт:

Температур CubeSat Ben & Kaiti & Q Hour 1: 8 алхам
Температур CubeSat Ben & Kaiti & Q Hour 1: 8 алхам

Видео: Температур CubeSat Ben & Kaiti & Q Hour 1: 8 алхам

Видео: Температур CubeSat Ben & Kaiti & Q Hour 1: 8 алхам
Видео: Cubesat 101: Why go to space? | BinarX 2024, Арваннэгдүгээр
Anonim
Температур CubeSat Ben & Kaiti & Q Hour 1
Температур CubeSat Ben & Kaiti & Q Hour 1
Температур CubeSat Ben & Kaiti & Q Hour 1
Температур CubeSat Ben & Kaiti & Q Hour 1

Та сансарт илгээгдэж, өөр гаригийн температурыг хэмжих боломжтой зүйлийг өөрөө хийхийг хүсч байсан уу? Манай ахлах сургуулийн физикийн ангид бид ангараг гариг дээр үүнийг хэрхэн яаж ажиллуулах вэ гэсэн гол асуулттай ажилладаг Arduino бүхий CubeSat бүтээх даалгавар өгсөн. Бид гариг дээрх температурыг хэмжихээр шийдсэн, учир нь Марс хэр халуун болохыг хэн мэдэхийг хүсэхгүй байна вэ? Гэсэн хэдий ч бид үүнийг хямд, гэхдээ бас удаан эдэлгээтэй зүйлээр хийх хэрэгтэй байв. Тиймээс бид Legos -ийг ашигласан. Энэ нь CubeSat-ийг удаан эдэлгээтэй болгож, бүх хэсэг нь жаахан эвгүй байсан ч гэсэн хэмжээсийн хэмжээг хялбархан олж авахад тусалсан юм! Бидний зорилго бол хүрээлэн буй орчны температурыг хэмжих бүрэн боломжтой мэдрэгч, түүний эргэн тойронд хамгаалалтын CubeSat байх явдал байв.

Алхам 1: Материал цуглуулах/CubeSat -ийн ноорог

Материал цуглуулах/CubeSat -ийн тойм зураг
Материал цуглуулах/CubeSat -ийн тойм зураг
Материал цуглуулах/CubeSat -ийн тойм зураг
Материал цуглуулах/CubeSat -ийн тойм зураг

Таны хийхийг хүсч буй хамгийн эхний зүйл бол CubeSat -ийн зургийг зурах явдал юм. Та бүтээхээсээ өмнө юу бүтээхийг хүсч байгаагаа ойлгох хэрэгтэй. Дээрх зургуудын нэг бол бидний хийсэн CubeSat зургууд юм. Дараа нь материалаа цуглуул. Бидний барьж буй CubeSat -ийн хувьд бид Legos ашиглаж байна. Бид Legos -ийг сонгосон, учир нь тэдгээрийг нэгтгэх, нэгтгэхэд хялбар байдаг бөгөөд тэдгээр нь удаан эдэлгээтэй бөгөөд шаардлагатай ажлуудыг сайн гүйцэтгэдэг. Тиймээс та Legos авах шаардлагатай болно. 10см х 10 см х 10 см хэмжээтэй хэд хэдэн өргөн суурийг эсвэл 10 -аас 10 ширхэг болгон нийлүүлж болох хэд хэдэн үндсэн хэсгүүдийг аваарай. Манай CubeSat -ийн хувьд бид 10 см -ээс 10 см -ийн суурийг гаргахын тулд олон тооны суурь хэсгүүдийг авч, тэдгээрийг нэгтгэх шаардлагатай болсон. Дээврийн дээврийг ижил хэмжээтэй болгохын тулд та Legos -ийг авах шаардлагатай болно. Та эдгээр Legos -ийг авсны дараа CubeSat -ийн ханыг босгохын тулд нэг тонн бяцхан Legos авах шаардлагатай болно. Эдгээр Legos нь нэлээд туранхай байгаа эсэхийг шалгаарай, ингэснээр тэд CubeSat -ийн дотоод хэсгийг хэт их эзэлдэггүй.

Алхам 2: Cubesat бүтээх

Cubesat бүтээх
Cubesat бүтээх
Cubesat бүтээх
Cubesat бүтээх
Cubesat бүтээх
Cubesat бүтээх

Нэгдүгээрт, бид энэ 10х10х10 хэмжээтэй гоо үзэсгэлэнг бүтээсэн. Үүнд маш олон янзын загвар шаардлагатай байсан. Эхлээд бид дунд тавиуртай байсан боловч дараа нь үүнийг хийх шаардлагагүй гэж шийдсэн. Хэрэв та голд нь тавиур байрлуулахаар шийдсэн бол зөвхөн нэг тавиурыг санал болгож байна, учир нь та Arduino болон мэдрэгчээ тавих бүрдээ салгаж авах хэрэгтэй болно. Бид жижигхэн цонх нэмж өгсөн бөгөөд ингэснээр дотор нь хурдан харах боломжтой бөгөөд дээд тал нь хаалттай байгаа тул бүх зүйл жигд ажиллаж байгааг харж болно. CubeSat -ийг илүү тогтвортой болгохын тулд бид доод хэсэгт Lego -ийн хоёр давхаргыг тавьдаг. Илүү тогтвортой байх тусмаа сайн, учир нь энэ CubeSat нь олон янзын саад бэрхшээлийг даван туулах чадвартай байх болно.

Алхам 3: Arduino -г холбох, кодлох

Arduino -ийг холбох, кодлох
Arduino -ийг холбох, кодлох
Arduino -г холбох, кодлох
Arduino -г холбох, кодлох
Arduino -ийг холбох, кодлох
Arduino -ийг холбох, кодлох

Энэ төслийн хоёрдахь алхам бол та arduino -г утсаар холбох хэрэгтэй болно. Энэ алхам нь маш чухал, учир нь хэрэв энэ нь зөв хийгдээгүй бол шоо нь температурыг уншиж чадахгүй болно. Arduino -ийн утсыг дуусгахын тулд танд зарим материал хэрэгтэй болно. Эдгээр материалууд нь зай, arduino, SD карт, холбогч утас, талх, температур мэдрэгч, компьютер юм. Утас зөв ажиллаж байгаа эсэхийг шалгахын тулд компьютерийг ашиглана. Ардуиног хэрхэн холбох талаар бидэнд заавар өгөхөд маш их тус болсон вэбсайт энд байна.

create.arduino.cc/projecthub/TheGadgetBoy/…

Дээрх зургууд болон fritzing диаграм нь танд туслах болно. Arduino -ийн кодчилол нь ажиллаж байгаа эсэхийг шалгахын тулд компьютер дээр шалгадаг. Хэрэв бүх зүйл ажиллаж байгаа бол arduino -г компьютерээс гаргаж аваад явахад бэлэн боллоо.

Код:

// Мэдээллийн утсыг Arduino дээрх 2 -р порт руу залгасан болно

#ONE_WIRE_BUS -ийг тодорхойлох 2

Файл мэдрэгч өгөгдөл;

// OneWire -ийн аль ч төхөөрөмжийг OneWire төхөөрөмжтэй холбохын тулд тохируулна уу (зөвхөн Максим/Далласын температурын IC биш)

OneWire oneWire (ONE_WIRE_BUS);

// Бидэнд хэрэгтэй номын сангуудыг оруулна уу

#оруулах

#оруулах

#оруулах

// Далласын температурын талаархи манай OneWire лавлагааг дамжуулаарай.

DallasTemperature sensor (& oneWire);

// төхөөрөмжийн хаягийг хадгалах массивууд

Төхөөрөмжийн хаяг Термометр;

/*

* Тохируулах функц. Энд бид үндсэн зүйлийг хийдэг

*/

хоосон тохиргоо (хүчингүй)

{

pinMode (10, OUTPUT);

SD.begin (4);

// цуваа портыг эхлүүлэх

Цуваа эхлэх (9600);

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

// автобусны төхөөрөмжүүдийг олох

Serial.print ("Төхөөрөмжийн байршлыг тогтоох …");

мэдрэгч.begin ();

Serial.print ("Олсон");

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

Serial.println ("төхөөрөмжүүд.");

// паразитын эрчим хүчний шаардлагыг тайлагнах

Serial.print ("Шимэгчдийн хүч бол:");

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

else Serial.println ("OFF");

/*Хаягийг гараар оноох. Доорх хаягийг өөрчлөх шаардлагатай болно

Таны автобусанд байгаа төхөөрөмжийн хаягийг хүчинтэй болгох. Төхөөрөмжийн хаягийг сэргээх боломжтой

oneWire.search (deviceAddress) эсвэл дангаар нь ашиглан

sensors.getAddress (deviceAddress, index) Та эндээс тодорхой хаягаа ашиглах шаардлагатай болно гэдгийг анхаарна уу

дотор Термометр = {0x28, 0x1D, 0x39, 0x31, 0x2, 0x0, 0x0, 0xF0};

Арга 1:

Автобусанд байгаа төхөөрөмжүүдийг хайж индекс дээр үндэслэн оноож өгнө үү. Хамгийн тохиромжтой нь

Та эхлээд автобусанд байгаа хаягийг олж мэдэхийн тулд үүнийг хийх болно

эдгээр хаягийг ашиглаж, мэдсэнийхээ дараа гараар зааж өгөөрэй (дээрээс үзнэ үү)

Таны автобусанд байгаа төхөөрөмжүүд (мөн тэд өөрчлөгддөггүй гэж бодъё).

*/ if (! sensors.getAddress (дотор Термометр, 0)) Serial.println ("Төхөөрөмжийн 0 хаягийг олж чадсангүй");

// арга 2: хайх ()

// search () нь дараагийн төхөөрөмжийг хайх болно. Хэрэв шинэ хаяг байсан бол 1 -ийг буцаана

// буцаж ирэв. Тэг гэдэг нь автобус богино байна, ямар ч төхөөрөмж байхгүй, // эсвэл та бүгдийг нь аль хэдийн авсан байна. Үүнийг хийх нь сайн санаа байж магадгүй юм

// хог авч чадаагүй эсэхийг шалгахын тулд ХХЗХ -ийг шалгана уу. Захиалга нь

// детерминист. Та үргэлж ижил төхөөрөмжүүдийг ижил дарааллаар авах болно

//

// Хайлт хийхээс өмнө дуудах ёстой ()

//oneWire.reset_search ();

// доторх Термометрт олдсон анхны хаягийг өгдөг

// if (! oneWire.search (insideThermometer)) Serial.println ("InnerThermometer хаягийг олж чадсангүй");

// автобуснаас олсон хаягийг харуул

Serial.print ("Төхөөрөмж 0 хаяг:");

printAddress (дотор термометр);

Serial.println ();

// нарийвчлалыг 9 бит болгон тохируулна уу (Даллас/Максим төхөөрөмж бүр хэд хэдэн өөр нарийвчлалтай байх боломжтой)

мэдрэгч тохируулах Шийдэл (дотор термометр, 9);

Serial.print ("Төхөөрөмж 0 шийдэл:");

Цуваа.хэвлэх (мэдрэгч.getResolution (дотор термометр), DEC);

Serial.println ();

}

// төхөөрөмжийн температурыг хэвлэх функц

хүчингүй хэвлэх Температур (DeviceAddress deviceAddress)

{

// арга 1 - удаан

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

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

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

//Serial.print(sensors.getTempF(deviceAddress)); // getTempC руу хоёр дахь дуудлага хийж, дараа нь Фаренгейт рүү хөрвүүлнэ

// арга 2 - илүү хурдан

float tempC = sensors.getTempC (deviceAddress);

хэрэв (tempC == DEVICE_DISCONNECTED_C)

{

Serial.println ("Алдаа: Температурын өгөгдлийг уншиж чадсангүй");

буцах;

}

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

if (sensorData) {

Serial.print ("Temp C:");

Цуваа.хэвлэх (tempC);

Serial.print ("Temp F:");

Serial.println (DallasTemperature:: toFahrenheit (tempC)); // tempC -ийг Фаренгейт болгон хөрвүүлнэ

sensorData.println (tempC);

sensorData.close ();

}

}

/*

* Үндсэн функц. Энэ нь мэдрэгчээс tempC хүсэх ба Цуваа дээр харуулна.

*/

хоосон тойрог (хоосон)

{

// дэлхийн температурыг гаргахын тулд sensors.requestTemperatures () руу залгаарай

// автобусны бүх төхөөрөмжид хүсэлт гаргах

Serial.print ("Температурыг шаардаж байна …");

sensors.requestTemperatures (); // Температурыг авахын тулд командыг илгээнэ үү

Serial.println ("ДУУСГАА");

// Энэ нь бараг тэр даруй хариу өгдөг. Өгөгдлийг хэвлэж авцгаая

хэвлэх Температур (дотор термометр); // Өгөгдлийг хэвлэхийн тулд энгийн функцийг ашиглана уу

}

// төхөөрөмжийн хаягийг хэвлэх функц

void printAddress (DeviceAddress deviceAddress)

{

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

{

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

Serial.print (deviceAddress , HEX);

}

}

Хариулах Урагшаа

Алхам 4: Cubesat -ийг шалгаж байна

Cubesat -ийг шалгаж байна
Cubesat -ийг шалгаж байна
Cubesat -ийг шалгаж байна
Cubesat -ийг шалгаж байна

CubeSat, код, Arduino -ийн утас дууссан бол та удахгүй туршилтаа явуулах болно. Хэрэв эдгээр туршилт амжилтгүй болбол таны CubeSat -ийг Arduino -той хамт бүрэн устгах боломжтой. Тиймээс, таны Arduino үүнд бэлэн байгаа эсэхийг шалгаарай. Энэ алхам бол CubeSat -ийг шалгаж үзэх явдал юм. Нэгдүгээрт, та Arduino -г CubeSat дотор найдвартай байрлуулах хэрэгтэй бөгөөд энэ нь эргэн тойронд жиргэхгүй байх ёстой. Дараа нь та CubeSat -ийн бүх хэсгүүд найдвартай бэхлэгдсэн эсэхийг шалгах хэрэгтэй болно. Сул хэсгүүд байж болохгүй, эсвэл туршилтын явцад CubeSat салах магадлал өндөр болно. Хэрэв та CubeSat -ийг сайтар шалгаж үзвэл түүний дамжуулсан тестийг амархан давах ёстой.

Алхам 5: CubeSat -ийг дээшлүүлэх

CubeSat -ийг дээшлүүлж байна
CubeSat -ийг дээшлүүлж байна

Энэ алхам нь CubeSat дамжих анхны туршилтанд бэлтгэх болно. Туршилтанд CubeSat -ийг тойрог хэлбэрээр 30 секундын турш хурдан эргүүлэх болно. CubeSat нь чангарсан эсэхийг шалгах хэрэгтэй бөгөөд ингэснээр нисэхгүй байх болно. Бид 2 мөрийг CubeSat -ийн эргэн тойронд бүрэн уяж, нягт уяв. Дараа нь бид эхний хоёрыг нь уясан өөр урт утсыг нэмж оруулав. Бид энэ мөрийг дээд ба доод хэсэгт хэд хэдэн удаа зангидсан тул аль болох найдвартай хамгаалагдсан байв. Нислэгийн үеэр утас сулрахгүйн тулд утсыг төгс болгохыг хүсч байгаа тул үүнд олон оролдлого хийх шаардлагатай болно.

Алхам 6: Савлуур тест

Савлуурын тест
Савлуурын тест

Энэ алхамын аюулгүй байдлыг хангах үүднээс нүдний шил зүүхээ мартуузай. Энэ алхам дээр та CubeSat -ийг Arduino -ийг үүргээ гүйцэтгэхэд хангалттай сайн хамгаалж байгаа эсэхийг шалгахын тулд туршилтыг ажиллуулах болно (температурыг олох). Эхний шалгалт нь уях шаардлагатай тест юм. Энэ туршилтанд Arduino-ийг эргүүлэх болно (дээрх зураг/видеонд үзүүлсэн шиг)- (заримдаа видеог ачаалахад асуудал гардаг). Ангараг гаригийн загварыг дунд нь байрлуулж болно. Энэхүү туршилтыг амжилттай дуусгахын тулд Arduino -ийг эргэж харалгүйгээр эргүүлэх шаардлагатай бөгөөд ингэснээр түүнийг сайн бэхлэх хэрэгтэй бөгөөд туршилт дууссаны дараа Arduino -ийг бүрэн ажиллуулах шаардлагатай болно. Тиймээс та Arduino CubeSat дээр сайн бэхлэгдсэн эсэхийг шалгах хэрэгтэй.

Алхам 7: Тест #2- Чичиргээний туршилт

Тест #2- Чичиргээний туршилт
Тест #2- Чичиргээний туршилт

Энэ үе шатанд таны CubeSat No2 тестийг давах болно. Энэ туршилт нь сэгсрэх туршилт юм. Энэхүү туршилтаар CubeSat -ийг дээрх зураг/видео дээр харуулсны дагуу эзэмшигчид байрлуулах болно (заримдаа видеог ачаалахад асуудал гардаг) бөгөөд 30 секундын турш хүчтэй нааш цааш нь сэгсрэх болно. Энэхүү туршилтыг давахын тулд CubeSat болон Arduino -ийг сэгсэрсний дараа бүрэн ажиллагаатай байх шаардлагатай болно.

Алхам 8: Үр дүн/дууссан температур CubeSat

Үр дүн/дууссан температур CubeSat
Үр дүн/дууссан температур CubeSat
Үр дүн/дууссан температур CubeSat
Үр дүн/дууссан температур CubeSat
Үр дүн/дууссан температур CubeSat
Үр дүн/дууссан температур CubeSat

Эцэст нь манай CubeSat нь туршилт бүрийг даван туулж байхдаа температурыг амжилттай бүртгэж чадсан. Өгөгдөл нь туршилт бүрт Цельсийн 26-30 хэмийг тогтмол уншдаг. Энэ нь Фаренгейтийн 78-86 градусын температуртай ижил байна. Гэсэн хэдий ч бид зам дээр зарим бэрхшээлтэй тулгарсан. Жишээлбэл, arduino -ийн кодчилол олон удаа ажиллаагүй бөгөөд Цельсийн 126 градусыг уншсан. Зөв температурт хүрэхийн тулд олон удаа оролдсон. Энэхүү төслийг хэрэгжүүлж буй хэн бүхэнд өгөх хэдэн зөвлөгөө бол код, утаснуудын олон хувилбарыг туршиж үзэх, мөн таны arduino CubeSat -т маш сайн нийцэж байгаа эсэхийг шалгах явдал юм. Ардуино дотор нь бүрэн нийцэж байгаа эсэхийг шалгахын тулд CubeSat доторх цоорхойг чангалах шаардлагатай болж магадгүй юм. CubeSat дээр arduino хэт сул байгаа нь бидэнд ямар нэгэн асуудалтай байсан.

Энэхүү төсөлд та физикийн мэдлэгээ хэрэгжүүлэх шаардлагатай болно. Төслийн туршид технологи, энерги, хүчний талаархи физикийн мэдлэгийг ашиглах шаардлагатай болно. Төслийн туршид бид нарны систем, CubeSats гэх мэт шинэ технологийн талаар илүү ихийг олж мэдсэн. Бид таталцлын хүч, энэ хүч CubeSat -д хэрхэн нөлөөлж болохыг олж мэдсэн. Энэхүү төслийн нэг чухал сэдэв бол хиймэл дагуулын хөдөлгөөн байв. Бид хиймэл дагуулын хөдөлгөөний талаар хурд, цэвэр хүч, таталцлыг ашиглан олж мэдсэн. Энэ нь хиймэл дагуулын сумыг олоход бидэнд туслах болно.

Таны CubeSat болон arduino тестүүдийг амжилттай давж, зөв ажиллавал та дууссан болно. Таны CubeSat Ангараг гаригийн агаар мандалд амьд үлдэх чадвартай байх ёстой. Туршилтын явцад мэдрэгч температурыг амжилттай бүртгэсэн эсэхийг шалгаарай. Таны CubeSat сансарт нисэхэд бэлэн боллоо!

Зөвлөмж болгож буй: