תוכן עניינים:

כיצד לבנות קובאט עם ארדואינו ומד תאוצה: 5 שלבים
כיצד לבנות קובאט עם ארדואינו ומד תאוצה: 5 שלבים

וִידֵאוֹ: כיצד לבנות קובאט עם ארדואינו ומד תאוצה: 5 שלבים

וִידֵאוֹ: כיצד לבנות קובאט עם ארדואינו ומד תאוצה: 5 שלבים
וִידֵאוֹ: פרויקט ארדואינו קורונה רכב נשלט מסך מגע וחיישן תאוצה עם תקשורת אלחוטית HC11 2024, נוֹבֶמבֶּר
Anonim
כיצד לבנות קובסאט עם ארדואינו ומד תאוצה
כיצד לבנות קובסאט עם ארדואינו ומד תאוצה

השמות שלנו הם ברוק, אדי ודרו. המטרה העיקרית של כיתת הפיזיקה שלנו היא לנסוע מכדור הארץ למאדים תוך הדמיה של מסלול סביב מאדים באמצעות קוביית שבת ואיסוף נתונים. מטרת הקבוצות שלנו לפרויקט זה היא לאסוף נתונים באמצעות חיישן מד תאוצה שיוצמד לארדואינו בתוך קוביית שבת שתקיף את "מאדים" כדי למצוא את כוח הכבידה על הפלנטה ההיא. כמה אילוצים אפשריים למשימה ספציפית זו הם הקוד שלא פועל בצורה הנכונה, מד התאוצה לא אוסף נתונים והמגבלה ש- CubeSat יכול לשקול. למרות שיש הרבה אחרים שכל אדם יכול להיתקל בהם, אלה היו אלה שהקבוצה שלנו התמודדה איתם. סרטון של פרויקט הגמר והבדיקות שלנו ניתן למצוא כאן https://www.youtube.com/embed/u1_o38KSrEc -Eddie

שלב 1: רשימת חומרים

רשימת חומרים
רשימת חומרים
רשימת חומרים
רשימת חומרים
רשימת חומרים
רשימת חומרים

כל החומרים המופיעים נכנסים לקובסאט

1. כבל Arduino וכוח https://www.amazon.com/Elegoo-EL-CB-001-ATmega328…: arduino נועד להפוך את האלקטרוניקה לנגישה יותר לאמנים, מעצבים, חובבים וכל מי שמעוניין ליצור אובייקטים או סביבות אינטראקטיביות.

: אפשר חשמל מהארדואינו והמחשב שלך

2. לוח לחם

: לוח להכנת דגם ניסיוני של מעגל חשמלי

חומרים המחוברים ללוח שיזוף

1. מד תאוצה של Arduino

: מכשיר למדידת האצה או לאיתור ומדידה של תנודות

2. מודול כרטיס SD של Arduino

: זה מאפשר לך להוסיף אחסון המוני ורישום נתונים לפרויקט שלך

3. חוטי Arduino

: מעביר קוד ברחבי ארדואינו ולוח

4. אור LED

: LED הוא אור קטן (הוא מייצג "דיודה פולטת אור") שעובד עם מעט כוח יחסית

-צייר

שלב 2: כלים נחוצים ונהלי בטיחות

כלים נחוצים

1. סכין אקסקטו

- השתמשנו בסכין מדויקת כדי לחתוך ולאתר את צורת הארדואינו ולוח הלוח דרך הקלקר, כדי להגן על הארדואינו ולוח הלוח אם יש תאונות

2. אקדח דבק חם

- השתמשנו באקדח דבק חם כדי להדביק את הקלקר לדפנות ה- Cubesat שלנו כדי להבטיח שהארדואינו ולוח הלוח שלך מאובטחים.

3. קלקר

- השתמשנו בחתיכות של קלקר כדי להדק את הארדואינו ולוח הלחם לצידי הקובסט שלנו, גם כדי לאפשר כרית אם קובסאט נופל או מזועזע מסביב.

שיטות בטיחות

1. שיטת הבטיחות הראשונה שאכפנו הייתה לוודא שלא נגע במדפסת התלת -ממד בעת הדפסת ה- Cubesat. מדפסת התלת מימד תהיה חמה מאוד וחשוב לזכור לא לגעת בה.

2. כאשר השתמשנו בסכין המדויקת כדי לחתוך את נתחי הקלקר, היינו צריכים להניח מתחת לקרטון כדי להבטיח שהשולחנות לא ייפגעו. כמו כן, היינו צריכים להרכיב משקפי מגן כאשר השתמשנו בסכין, מכיוון שמשהו טס בפנים שלנו או סביב חלל העבודה שלנו.

3. בעת שימוש בכלים הדורשים עבודה קשה, הקפד להרכיב משקפי מגן לצורכי בטיחות.

4. לאחר שהצמדת את הקובסאט למסלול, הקפד להזהיר אנשים מסביב למסלול שתבדוק את הקובסט שלך ותרכיב משקפי מגן כדי להבטיח שכל חלקי הגוף והאנשים בטוחים.

-צייר

שלב 3: כיצד:

איך ל
איך ל
איך ל
איך ל
איך ל
איך ל

כיצד לבנות CubeSat

1. כדי להתחיל בתהליך בניית CubeSat, עליך לחפש מודלים של CubeSat שהם 10x10x10 ובעלי קובץ STL נוח.

2. כאשר מצאת דגם שיעבוד בהחזקת לוח לחם וארדואינו בבטחה, עליך להוריד את הקבצים בכונן הבזק כדי שתוכל לגשת לקבצים במדפסת התלת -ממד.

3. לאחר הורדת הקבצים הנכונים בכונן הבזק, תוכל לחבר את כונן הבזק למחשב המחובר למדפסת התלת -ממד.

4. בעת ההדפסה, הקפד לבחור את הקבצים הנכונים וכל החוטים, הקודים והתשומות מחוברים כהלכה בין המחשב למדפסת התלת -ממד. זה יבטיח שה- CubeSat יודפס כהלכה, והכל ילך לפי התוכנית.

5. הקצה לכל אחד מחברי הקבוצה זמן ייעודי לבדיקה יעילה של המדפסת והתקדמות CubeSat כדי להתמודד עם בעיות שאתה עלול להיתקל בהן. היכולת לגרום לחבר צוות לבדוק את ההתקדמות בערך כל 2-3 שעות, יספק מספיק סיוע כדי לתקן בעיות ולצפות בהתקדמות שתתבצע.

-אדי

הקוד:

#include #include #include #include

const int MPU = 0x68; int16_t AcX, AcY, AcZ, Tmp, GyX, GyY, GyZ; מגרש כפול, גליל;

נתוני קבצים;

הגדרת בטל () {

pinMode (10, OUTPUT); // חייב להגדיר את סיכה 10 לפלט גם אם לא משתמשים בה; // הגדרת סיכה 7 להדלקת LED SD.begin (4); // מתחיל כרטיס SD עם CS מוגדר לפין 4 Serial.begin (9600); Serial.println (F ("בדיקת BMP280")); Wire.begin (); שידור Wire.beginTransmission (MPU); Wire.write (0x6B); Wire.write (0); Wire.endTransmission (true); Serial.begin (9600); } לולאת חלל () {Wire.beginTransmission (MPU); Wire.write (0x3B); Wire.endTransmission (שקר); Wire.requestFrom (MPU, 14, true);

int AcXoff, AcYoff, AcZoff, GyXoff, GyYoff, GyZoff; int temp, toff; כפול t, tx, tf;

// תיקון נתוני האצה AcXoff = -950; AcYoff = -300; AcZoff = 0;

// תיקון טמפרטורה toff = -1600;

// תיקון ג'יירו GyXoff = 480; GyYoff = 170; GyZoff = 210;

// קראו נתוני אקסל AcX = (Wire.read () << 8 | Wire.read ()) + AcXoff; AcY = (Wire.read () << 8 | Wire.read ()) + AcYoff; AcZ = (Wire.read () << 8 | Wire.read ()) + AcYoff;

// לקרוא נתוני טמפרטורה temp = (Wire.read () << 8 | Wire.read ()) + toff; tx = טמפ '; t = tx/340 + 36.53; tf = (t * 9/5) + 32;

// קראו נתוני ג'יירו GyX = (Wire.read () << 8 | Wire.read ()) + GyXoff; GyY = (Wire.read () << 8 | Wire.read ()) + GyYoff; GyZ = (Wire.read () << 8 | Wire.read ()) + GyZoff;

Data = SD.open ("Log.txt", FILE_WRITE); // פותח קובץ בשם "יומן"

// get pitch/roll getAngle (AcX, AcY, AcZ);

// שלח את הנתונים מהיציאה הטורית Serial.print ("זווית:"); Serial.print ("Pitch ="); Serial.print (גובה); Serial.print ("| גליל ="); Serial.println (גליל);

Serial.print ("טמפ ':"); Serial.print ("טמפ '(F) ="); Serial.print (tf); Serial.print ("| טמפ '(C) ="); Serial.println (t);

Serial.print ("מד תאוצה:"); Serial.print ("X ="); Serial.print (AcX); Serial.print ("| Y ="); Serial.print (AcY); Serial.print ("| Z ="); Serial.println (AcZ);

Serial.print ("גירוסקופ:"); Serial.print ("X ="); Serial.print (GyX); Serial.print ("| Y ="); Serial.print (GyY); Serial.print ("| Z ="); Serial.println (GyZ); Serial.println ("");

Data.print (גובה); Data.println (גליל);

Data.print (tf); Data.println (t); Data.print (AcX); // כותב נתוני acel לקובץ Data.print (","); // מדפיס פסיק בקובץ Data.print (AcY); Data.print (","); Data.print (AcZ); Data.print (","); Data.print (GyX); Data.print (","); Data.print (GyY); Data.print (","); Data.println (GyZ);

עיכוב (1000); }

// להמיר את נתוני האקסל ל- pitch/roll void getAngle (int Vx, int Vy, int Vz) {כפול x = Vx; כפול y = Vy; כפול z = Vz;

}

}

הקוד (המשך):

זהו הקוד בו השתמשנו לאסוף נתונים ממד התאוצה ומכרטיס ה- SD.

לאחר שהחברנו את Arduino ו- Breadboard כך שייראו בתרשים המשולב, חיברנו את כרטיס ה- SD למודול מתאם כרטיס ה- SD והמשכנו להתכונן לבדיקות האחרונות שלנו.

היו לנו בעיות עם הקוד במשך זמן רב, אך הקוד שניתן למעלה הוא הקוד הסופי בו השתמשנו ונתן לנו את הנתונים בהם השתמשנו להצגה שלנו.

קוד זה אוסף את הנתונים ממד התאוצה ומעביר את המידע לכרטיס ה- SD.

-כרטיס ה- SD מחובר ל- USB ומחובר למחשב. משם המידע הוכנס למחשב שלנו.

-ברוק

חיבור הארדואינו:

- בזמן חיווט הארדואינו, נאבקנו עם חוטי קשקשים וארדואינים.

- היינו צריכים לתקן את החיווט של הארדואינו שלנו מספר פעמים בגלל חיווט לא נכון.

- על מנת להבטיח חיווט וקידוד נכונים, ודא שהחוטים שלך מאובטחים לחלוטין ותהליך הקוד שלך כראוי.

תרשים FRITZING:

- תרשים המרגש היה פשוט קדימה וקל לעקוב אחריו

- התמודדנו עם בעיות בתרשים כאשר מודול כרטיסי ה- SD לא היה חלק מתוכנית הפריצה. בגלל זה, היינו צריכים לחפש באינטרנט חלק שניתן להוריד אותו לתרשים

- השלמנו את התרשים על ידי הכללת החלקים והתכניות הנכונים בתרשים

-צייר

שלב 4: תוצאות/לקחים

התרשים שלנו מציג עלייה ברורה בטמפרטורה, ככל הנראה בגלל שהחימום לוקח זמן להגיע לטמפרטורה המרבית.

עבור פרויקט זה, הפיזיקה שנתקלנו בה הייתה הכוח הצנטריפטלי ששמר את CubeSat במסלולו.

-ברוק

מוּמלָץ: