Სარჩევი:

ტემპერატურის კუბი სატ ბენ და კაიტი და Q საათი 1: 8 ნაბიჯი
ტემპერატურის კუბი სატ ბენ და კაიტი და Q საათი 1: 8 ნაბიჯი

ვიდეო: ტემპერატურის კუბი სატ ბენ და კაიტი და Q საათი 1: 8 ნაბიჯი

ვიდეო: ტემპერატურის კუბი სატ ბენ და კაიტი და Q საათი 1: 8 ნაბიჯი
ვიდეო: რუსული ენა დამაბნეველია ხოლმე? 2024, ნოემბერი
Anonim
ტემპერატურის კუბი სატ ბენ და კაიტი და Q საათი 1
ტემპერატურის კუბი სატ ბენ და კაიტი და Q საათი 1
ტემპერატურის კუბი სატ ბენ და კაიტი და Q საათი 1
ტემპერატურის კუბი სატ ბენ და კაიტი და Q საათი 1

ოდესმე გსურდათ საკუთარი თავისთვის ისეთი რამის შექმნა, რაც კოსმოსში გაგზავნილია და სხვა პლანეტის ტემპერატურის გაზომვისთვის? ჩვენი საშუალო სკოლის ფიზიკის კლასში, ჩვენ დაგვნიშნეს ავაშენოთ CubeSat ფუნქციონალური არდუინოთი, მთავარი კითხვით როგორ შეგვიძლია ეს მარსზე დავიწყოთ? ჩვენ გადავწყვიტეთ გაგვეზომა ტემპერატურა პლანეტაზე, რადგან ვის არ სურს იცოდეს რამდენად ცხელია მარსი? თუმცა, ჩვენ გვჭირდებოდა მისი დამზადება რაღაც ხელმისაწვდომი, მაგრამ ასევე გამძლე. ამიტომ, ჩვენ გამოვიყენეთ ლეგო. ამან CubeSat გამძლე გახადა და დაგვეხმარა ზომების მიღწევაში საკმაოდ მარტივად-თუნდაც ყველა ნაჭერი ცოტა შემაწუხებელი იყოს! ჩვენი მიზანი იყო გვქონოდა სრულად მოქმედი სენსორი, რომელსაც შეუძლია ტემპერატურის გაზომვა მიმდებარე ტერიტორიაზე და დამცავი CubeSat მის გარშემო.

ნაბიჯი 1: მასალების შეგროვება/CubeSat- ის ესკიზირება

მასალების შეგროვება/CubeSat- ის ესკიზება
მასალების შეგროვება/CubeSat- ის ესკიზება
მასალების შეგროვება/CubeSat- ის ესკიზება
მასალების შეგროვება/CubeSat- ის ესკიზება

პირველი რაც თქვენ გსურთ გააკეთოთ არის ესკიზის CubeSat. თქვენ უნდა გქონდეთ წარმოდგენა რისი აშენება გსურთ მის აშენებამდე. ერთ -ერთი სურათი ზემოთ არის CubeSat- ის ესკიზები, რომლებიც ჩვენ გავაკეთეთ. შემდეგი, შეაგროვეთ თქვენი მასალები. CubeSat– ისთვის, რომელსაც ჩვენ ვაშენებთ, ჩვენ ვიყენებთ Legos– ს. ჩვენ ავირჩიეთ ლეგოები, რადგან მათი შედგენა და შეკრება ადვილია და ამავე დროს გამძლეა და საჭირო დავალებებს კარგად შეასრულებს. ასე რომ, თქვენ უნდა მიიღოთ რამდენიმე ლეგო. მიიღეთ რამოდენიმე ფართო ფუძის ნაჭერი, ეს არის 10 სმ X 10 სმ X 10 სმ, ან რამდენიმე ფუძე, რომელიც შეიძლება გაერთიანდეს 10 10 ცალი. ჩვენი CubeSat– ისთვის, ჩვენ უნდა მივიღოთ მრავალჯერადი საბაზისო ნაჭერი და დავაყენოთ ისინი ერთად, რათა გავაკეთოთ 10 სმ 10 სმ – ის ფუძე. თქვენ ასევე დაგჭირდებათ ლეგოს მიღება სახურავის ნაჭერი იმავე ზომის შესაქმნელად. მას შემდეგ რაც ამ ლეგოს მიიღებთ, თქვენ დაგჭირდებათ ტონა პატარა ლეგოს მიღება CubeSat– ის კედლების ასაშენებლად. დარწმუნდით, რომ ეს ლეგოები საკმაოდ გამხდარია, ასე რომ ისინი არ იკავებენ ძალიან ბევრ CubeSat- ის ინტერიერს.

ნაბიჯი 2: კუბესატის მშენებლობა

კუბესატის მშენებლობა
კუბესატის მშენებლობა
კუბესატის მშენებლობა
კუბესატის მშენებლობა
კუბესატის მშენებლობა
კუბესატის მშენებლობა

პირველ რიგში, ჩვენ ავაშენეთ ეს 10x10x10 სილამაზე. დასჭირდა ბევრი განსხვავებული დიზაინი. თავიდან თარო შუაში გვქონდა, მაგრამ მოგვიანებით გადავწყვიტეთ, რომ ეს ზედმეტი იყო. თუ თქვენ აირჩევთ თაროს შუაში, მე გირჩევთ მხოლოდ ერთ თაროს, რადგან თქვენ მოგიწევთ მისი გაყოფა ყოველ ჯერზე ჩადებისას და თქვენი არდუინოს და სენსორის ამოღებისას. ჩვენ დავამატეთ პატარა ფანჯრები, ასე რომ ჩვენ შეგვიძლია შევხედოთ შიგნით, სანამ ზედა დახურულია, ასე რომ ჩვენ ვხედავთ, რომ ყველაფერი შეუფერხებლად მუშაობს. იმისათვის, რომ CubeSat უფრო სტაბილური იყოს, ჩვენ ლეგოს ორ ფენას ვათავსებთ ბოლოში. რაც უფრო სტაბილურია, მით უკეთესი, რადგან ამ CubeSat- ს დასჭირდება სხვადასხვა დაბრკოლებების გადალახვა.

ნაბიჯი 3: გაყვანილობა და კოდირება Arduino

არდუინოს გაყვანილობა და კოდირება
არდუინოს გაყვანილობა და კოდირება
არდუინოს გაყვანილობა და კოდირება
არდუინოს გაყვანილობა და კოდირება
არდუინოს გაყვანილობა და კოდირება
არდუინოს გაყვანილობა და კოდირება

ამ პროექტის მეორე ნაბიჯი არის ის, სადაც დაგჭირდებათ არდუინოს მიერთება. ეს ნაბიჯი ძალიან მნიშვნელოვანია, რადგან, თუ ეს სწორად არ გაკეთებულა, მაშინ კუბური ვერ იკითხავს ტემპერატურას. არდუინოს გაყვანილობის დასასრულებლად დაგჭირდებათ რამდენიმე მასალა. ეს მასალებია ბატარეა, არდუინო, SD ბარათი, ჯუმბერის მავთულები, პურის დაფა, ტემპერატურის სენსორი და კომპიუტერი. კომპიუტერი გამოყენებული იქნება იმის დასადგენად, მუშაობს თუ არა გაყვანილობა სწორად. აქ არის ვებსაიტი, რომელიც ძალიან დაგვეხმარა არდუინოს მავთულხლართების გაძღოლაში:

create.arduino.cc/projecthub/TheGadgetBoy/…

ზემოთ მოყვანილი სურათები და დიაგრამა ასევე დაგეხმარებათ. არდუინოს კოდირება ასევე კომპიუტერზე იქნება გამოცდილი თუ არა მუშაობს. თუ ყველაფერი მუშაობს, მაშინ არდუინოს ამოღება შესაძლებელია კომპიუტერიდან და მზად არის წასასვლელად.

კოდი:

// მონაცემთა მავთული ჩართულია პორტში 2 არდუინოში

#განსაზღვრეთ ONE_WIRE_BUS 2

ფაილის სენსორი მონაცემები;

// დააყენეთ oneWire მაგალითი ნებისმიერ OneWire მოწყობილობასთან (არა მხოლოდ Maxim/Dallas ტემპერატურის IC)

OneWire oneWire (ONE_WIRE_BUS);

// ჩართეთ საჭირო ბიბლიოთეკები

#ჩართეთ

#ჩართეთ

#ჩართეთ

// გადაიტანეთ ჩვენი oneWire მითითება დალასის ტემპერატურაზე.

DallasTemperature სენსორები (& oneWire);

// მასივები მოწყობილობის მისამართის შესანახად

მოწყობილობა მისამართი თერმომეტრი შიგნით;

/*

* დაყენების ფუნქცია. აქ ჩვენ ვაკეთებთ საფუძვლებს

*/

ბათილი დაყენება (ბათილია)

{

pinMode (10, OUTPUT);

SD. დასაწყისი (4);

// სერიული პორტის დაწყება

სერიული.დაწყება (9600);

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

// მოწყობილობების განთავსება ავტობუსში

Serial.print ("მოწყობილობების განთავსება …");

სენსორები.დაწყება ();

Serial.print ("ნაპოვნია");

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

Serial.println ("მოწყობილობები");

// ანგარიში პარაზიტული ენერგიის მოთხოვნების შესახებ

Serial.print ("პარაზიტული ძალა არის:");

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

სხვაგან Serial.println ("OFF");

/*მიუთითეთ მისამართი ხელით. ქვემოთ მითითებული მისამართები შეიცვლება

თქვენს ავტობუსში მოწყობილობის მოქმედი მისამართებისთვის. მოწყობილობის მისამართის მოძიება შესაძლებელია

გამოყენებით oneWire.search (deviceAddress) ან ინდივიდუალურად მეშვეობით

sensors.getAddress (deviceAddress, index) გაითვალისწინეთ, რომ აქ დაგჭირდებათ თქვენი კონკრეტული მისამართის გამოყენება

შიგნით თერმომეტრი = {0x28, 0x1D, 0x39, 0x31, 0x2, 0x0, 0x0, 0xF0};

მეთოდი 1:

მოძებნეთ მოწყობილობები ავტობუსში და დანიშნეთ ინდექსის საფუძველზე. იდეალურ შემთხვევაში, თქვენ ამას გააკეთებთ, რომ თავდაპირველად აღმოაჩინოთ მისამართები ავტობუსში და შემდეგ

გამოიყენეთ ეს მისამართები და ხელით მიანიჭეთ ისინი (იხ. ზემოთ) მას შემდეგ რაც იცით

მოწყობილობები თქვენს ავტობუსში (და ვთქვათ, რომ ისინი არ იცვლება).

*/ if (! sensors.getAddress (insideThermometer, 0)) Serial.println ("მოწყობილობის მისამართის პოვნა 0 შეუძლებელია");

// მეთოდი 2: ძებნა ()

// search () ეძებს შემდეგ მოწყობილობას. აბრუნებს 1 -ს, თუ ახალი მისამართი იყო

// დაბრუნდა. ნული შეიძლება ნიშნავდეს, რომ ავტობუსი მოკლეა, არ არის მოწყობილობები, // ან თქვენ უკვე მიიღეთ ყველა მათგანი. ეს შეიძლება იყოს კარგი იდეა

// შეამოწმეთ CRC, რომ დარწმუნდეთ, რომ არ მიიღეთ ნაგავი. ბრძანება არის

// დეტერმინისტული. თქვენ ყოველთვის მიიღებთ ერთსა და იმავე მოწყობილობებს იმავე თანმიმდევრობით

//

// უნდა დარეკო ძებნის წინ ()

//oneWire.reset_search ();

// მიანიჭებს თერმომეტრის შიგნით ნაპოვნი პირველ მისამართს

// if (! oneWire.search (insideThermometer)) Serial.println ("შიდა თერმომეტრის მისამართის პოვნა შეუძლებელია");

// ავტობუსში ნაპოვნი მისამართების ჩვენება

Serial.print ("მოწყობილობა 0 მისამართი:");

printAddress (შიგნით თერმომეტრი);

Serial.println ();

// დააყენეთ რეზოლუცია 9 ბიტზე (თითოეულ დალას/მაქსიმ მოწყობილობას შეუძლია რამდენიმე განსხვავებული გარჩევადობა)

sensors.setResolution (შიგნით თერმომეტრი, 9);

Serial.print ("მოწყობილობა 0 რეზოლუცია:");

Serial.print (sensors.getResolution (შიგნით თერმომეტრი), DEC);

Serial.println ();

}

// ფუნქცია მოწყობილობის ტემპერატურის დასაბეჭდად

void printTemperature (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);

თუ (sensorData) {

Serial.print ("Temp C:");

Serial.print (tempC);

Serial.print ("Temp F:");

Serial.println (DallasTemperature:: toFahrenheit (tempC)); // გარდაქმნის tempC ფარენჰაიტს

sensorData.println (tempC);

sensorData.close ();

}

}

/*

* Მთავარი ფუნქცია. ის ითხოვს tempC სენსორებისგან და აჩვენებს სერიალზე.

*/

ბათილი მარყუჟი (ბათილია)

{

// დარეკეთ სენსორებზე. requestTemperatures () გლობალური ტემპერატურის გასაცემად

// ავტობუსში მყოფი ყველა მოწყობილობის მოთხოვნა

Serial.print ("ითხოვს ტემპერატურას …");

სენსორები. მოითხოვეთ ტემპერატურა (); // გაგზავნეთ ბრძანება ტემპერატურის მისაღებად

Serial.println ("შესრულებულია");

// ის რეაგირებს თითქმის მაშინვე. მოდით ამობეჭდოთ მონაცემები

printTemperature (შიგნით თერმომეტრი); // გამოიყენეთ მარტივი ფუნქცია მონაცემების დასაბეჭდად

}

// ფუნქცია მოწყობილობის მისამართის დასაბეჭდად

void printAddress (DeviceAddress deviceAddress)

{

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

{

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

Serial.print (deviceAddress , HEX);

}

}

პასუხი წინ

ნაბიჯი 4: შემოწმება კუბურ სადგურზე

შემოწმება კუბურ სადგურზე
შემოწმება კუბურ სადგურზე
შემოწმება კუბურ სადგურზე
შემოწმება კუბურ სადგურზე

ახლა, როდესაც Arduino– ს CubeSat, კოდი და გაყვანილობა დასრულებულია, თქვენ მალე ჩაატარებთ ტესტებს. თუ ეს ტესტები წარუმატებელია, თქვენი CubeSat შესაძლოა მთლიანად განადგურდეს, თქვენს არდუინოსთან ერთად. ამიტომ, თქვენ უნდა დარწმუნდეთ, რომ თქვენი Arduino მზად არის ამისათვის. ეს არის ის, სადაც ეს ნაბიჯი იწყება სათამაშოდ, CubeSat– ის შემოწმებით. პირველ რიგში, თქვენ უნდა განათავსოთ თქვენი Arduino უსაფრთხოდ CubeSat– ში და დარწმუნდით, რომ ის არ ირხევა გარშემო. შემდეგ, თქვენ უნდა დარწმუნდეთ, რომ CubeSat– ის ყველა ნაწილი უსაფრთხოდ არის ადგილზე. არ შეიძლება იყოს ფხვიერი ნაჭრები, წინააღმდეგ შემთხვევაში CubeSat უფრო სავარაუდოა, რომ დაიშლება ტესტების დროს. თუ თქვენ მტკიცედ ამოწმებთ თქვენს CubeSat– ს, მაშინ ტესტები, რომელსაც ის გადის, ადვილად უნდა გაიაროთ.

ნაბიჯი 5: შეავსეთ CubeSat

Stringing Up CubeSat
Stringing Up CubeSat

ეს ნაბიჯი იქნება პირველი გამოცდისთვის მოსამზადებლად, რომელსაც CubeSat გაივლის. ტესტში, CubeSat 30 წამის განმავლობაში წრიულად შემოტრიალდება წრეში. თქვენ უნდა დარწმუნდეთ, რომ CubeSat მჭიდროდ არის მიბმული ისე, რომ არ გაფრინდეს. ჩვენ დავუკავშირეთ 2 სტრიქონი მთლიანად CubeSat– ს გარშემო და მჭიდროდ დავუკავშირეთ. შემდეგ, ჩვენ დავამატეთ კიდევ ერთი გრძელი სტრიქონი, რომელიც შეკრული იყო პირველი ორის გარშემო. ჩვენ ეს სტრიქონი რამდენჯერმე დავაკაკუნეთ ზედა და ქვედა ნაწილში, რათა ის მაქსიმალურად დაცული იყოს. ამას შეიძლება მრავალი მცდელობა დასჭირდეს, რადგან გსურთ სტრიქონი სრულყოფილი გახადოთ, ასე რომ ის არ დაიკარგოს ფრენის დროს.

ნაბიჯი 6: სვინგის ტესტი

სვინგის ტესტი
სვინგის ტესტი

ამ ნაბიჯის უსაფრთხოების უზრუნველსაყოფად, დარწმუნდით, რომ აცვიათ სათვალე თქვენი თვალების დასაცავად. ამ ნაბიჯში თქვენ ჩაატარებთ CubeSat– ს ტესტის საშუალებით, რათა დაინახოთ, იცავს თუ არა ის საკმარისად კარგად Arduino– ს თავისი ამოცანის შესასრულებლად (ტემპერატურის პოვნა). პირველი ტესტი არის ის, რომელსაც სჭირდება სიმები. ამ ტესტში არდუინო შემოტრიალდება (როგორც ეს ნაჩვენებია სურათზე/ვიდეოზე ზემოთ)- (ზოგჯერ ვიდეოს ჩატვირთვა უჭირს). მოდელი მარსი შეიძლება განთავსდეს შუაში. ამ ტესტის წარმატებით დასრულების მიზნით, არდუინოს მოუწევს შემოტრიალება შემოუერთებლად, რის გამოც ის კარგად უნდა იყოს დახვეული და ტესტის დასრულების შემდეგ მათ სჭირდებათ სრულყოფილად ფუნქციონირება. სწორედ ამიტომ თქვენ უნდა დარწმუნდეთ, რომ Arduino კარგად არის დაცული CubeSat– ში.

ნაბიჯი 7: ტესტი #2- შერყევის ტესტი

ტესტი #2- შერყევის ტესტი
ტესტი #2- შერყევის ტესტი

ამ ეტაპზე თქვენი CubeSat გადის გამოცდას #2. ეს ტესტი არის შერყევის ტესტი. ამ ტესტისას, CubeSat მოთავსდება დამჭერში, როგორც ეს ნაჩვენებია სურათზე/ვიდეოში (ზოგჯერ ვიდეოს ატვირთვა უჭირს) ზემოთ და ძალადობრივად შეირყევა წინ და უკან 30 წამის განმავლობაში. ამ გამოცდის ჩაბარების მიზნით, თქვენი CubeSat და Arduino კვლავ უნდა იყოს სრულად ფუნქციონირება მათი შერყევის შემდეგ.

ნაბიჯი 8: შედეგები/დასრულებული ტემპერატურის CubeSat

შედეგები/დასრულებული ტემპერატურა CubeSat
შედეგები/დასრულებული ტემპერატურა CubeSat
შედეგები/დასრულებული ტემპერატურა CubeSat
შედეგები/დასრულებული ტემპერატურა CubeSat
შედეგები/დასრულებული ტემპერატურა CubeSat
შედეგები/დასრულებული ტემპერატურა CubeSat

საბოლოოდ, ჩვენმა CubeSat- მა შეძლო წარმატებით ჩაეწერა ტემპერატურა ყოველი გამოცდის გავლისას. მონაცემები თანმიმდევრულად იკითხება 26-30 გრადუსი ცელსიუსით ყოველ ტესტში. ეს იგივეა, რაც 78-86 გრადუსი ფარენჰეიტი. თუმცა, გზად ჩვენ შევხვდით გარკვეულ პრობლემებს. მაგალითად, რამდენჯერმე არდუინოს კოდირება არ მუშაობს და იკითხება 126 გრადუსი ცელსიუსით. საჭირო იყო მრავალი მცდელობა სწორი ტემპერატურის მისაღწევად. რჩევა, რომელსაც მე მივცემ ყველას, ვინც ამ პროექტს ახორციელებს, იქნება სცადოს კოდისა და გაყვანილობის მრავალი ვარიაცია და დარწმუნდეს, რომ თქვენი არდუინო მჭიდროდ ჯდება CubeSat– ში. შეიძლება დაგჭირდეთ CubeSat- ის შიგნით არსებული უფსკრული, რათა დარწმუნდეთ, რომ arduino შესანიშნავად ჯდება შიგნით. ჩვენ გვქონდა პრობლემა, რომ არდუინო ძალიან ფხვიერი იყო CubeSat– ში.

ამ პროექტში თქვენ ასევე უნდა გამოიყენოთ თქვენი ცოდნა ფიზიკაში. ტექნოლოგიის, ენერგიისა და ძალის ფიზიკის ცოდნა უნდა იქნას გამოყენებული მთელი პროექტის განმავლობაში. პროექტის განმავლობაში ჩვენ უფრო მეტი გავიგეთ მზის სისტემის შესახებ და ახალი ტექნოლოგიები, როგორიცაა CubeSats. ჩვენ ასევე ვისწავლეთ გრავიტაციული ძალის შესახებ და როგორ მოქმედებს ეს ძალა CubeSat– ზე. ამ პროექტის ერთ -ერთი ძალიან მნიშვნელოვანი თემა იყო სატელიტური მოძრაობა. ჩვენ ვისწავლეთ თანამგზავრის მოძრაობა სიჩქარის, წმინდა ძალისა და გრავიტაციის გამოყენებით. ეს დაგვეხმარება თანამგზავრების ჭურვების პოვნაში.

მას შემდეგ რაც თქვენმა CubeSat- მა და arduino– მ წარმატებით ჩააბარეს ტესტები და იმუშავეს სწორად, თქვენ დაასრულეთ. თქვენს CubeSat- ს უნდა შეეძლოს მარსის ატმოსფეროს გადარჩენა. დარწმუნდით, რომ სენსორმა წარმატებით ჩაწერა ტემპერატურა ტესტების განმავლობაშიც. თქვენი CubeSat მზად არის კოსმოსში წასასვლელად!

გირჩევთ: