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

גמר כיתת אוטו DIY: 4 שלבים
גמר כיתת אוטו DIY: 4 שלבים

וִידֵאוֹ: גמר כיתת אוטו DIY: 4 שלבים

וִידֵאוֹ: גמר כיתת אוטו DIY: 4 שלבים
וִידֵאוֹ: ככה זה כשיש לך חברה רוסיה 2024, נוֹבֶמבֶּר
Anonim
גמר כיתת DIY של אוטו
גמר כיתת DIY של אוטו

פרויקט זה התאפשר על ידי אוטו והמכללה הטכנית של אתונה.

כדי להתחיל, עליך לרכוש תחילה את הערכה מ:

לאחר מכן בצע את השלבים בכתובת:

שלב 1: שלב ראשון: הרכבת רובוט מתוך הוראות

שלב ראשון: הרכבת רובוט מתוך הוראות
שלב ראשון: הרכבת רובוט מתוך הוראות
שלב ראשון: הרכבת רובוט מתוך הוראות
שלב ראשון: הרכבת רובוט מתוך הוראות

wikifactory.com/+OttoDIY/otto-diy

אתר זה הוא המקום בו תוכלו למצוא הוראות הרכבה וקוד עבור רובוט אוטוטו שלכם.

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

הרמקול שלי מותקן בחזית לשמיעה קלה וחרב מחוברת לצד ימין לקישוט.

שלב 2: שלב שני: חבר וקוד

שלב שני: חבר וקוד
שלב שני: חבר וקוד

לאחר הרכבת הרובוט שלך, טען את Arduino IDE במחשב שלך וחבר את הרובוט.

בשלב זה עליך להוריד את קבצי אוטו. ייצא אותם ישירות לתיקיית ספריות ה- Arduino שלך.

זה יאפשר לך להשתמש בקוד שנתן לך אוטו.

שלב 3: שלב שלישי: סיים את הקידוד

שלב שלישי: סיים את הקידוד
שלב שלישי: סיים את הקידוד

לאחר חילוץ הספריות שלך, יהיה עליך להיכנס ל- Arduino IDE ולוודא שמטעינת האתחול שלך מעודכנים.

הגדר את הלוח שלך ל- Arduino Nano, המעבד שלך ל- ATmega328P (Old Bootloader) ואת ה- COM לאיזה יציאה שחיברת את הרובוט אליה.

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

שלב 4: שלב רביעי: צפה

צפו במהלכים החולים של הרובוט שלכם ובקול השירה המלטף.

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

פרויקט זה נכתב עם קוד ההימנעות:

// ------------------------------------------------ -------------------------------------------------- -------------------------------------------------- ----------------- // רישום לדוגמא של Otto_avoid // -------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------- //-קושחת האפליקציות Otto DIY PLUS גירסה 9 (V9) //-Otto DIY משקיעה זמן ומשאבים במתן קוד פתוח וחומרה, אנא תמכו ברכישת ערכות מאת (https://www.ottodiy.com) // ------------ -------------------------------------------------- --- //-אם ברצונך להשתמש בתוכנה זו תחת רישוי קוד פתוח, עליך לתרום את כל קוד המקור שלך לקהילה וכל הטקסט לעיל חייב להיכלל בכל הפצה מחדש //-בהתאם לגרסת GPL 2 כאשר הבקשה שלך מופצת. ראה https://www.gnu.org/copyleft/gpl.html // -------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------------------- #include //-אוטו ספריית גרסה 9 Otto9 Otto; // זהו אוטו!

//---------------------------------------------------------

//-שלב ראשון: הגדר את הסיכות שבהן המחוברים סרוו /* --------------- | O O | | --------------- | YR 3 ==> | | ----- ------ <== RL 4 | ----- ------ | */// PINs של SERVO ////////////////////////////// ////////////////////////////////////// // סרוו [1] רגל ימין #הגדרת PIN_RL 4 // סרוו [2] רגל שמאל #הגדרת PIN_RR 5 // סרוו [3] רגל ימין // קודים אולטרה -סופיים ////////////// ////////////////////////////////////////// ///////// #הגדרת PIN_Trigger 8 // סיכה טריגר (8) #הגדרת PIN_Echo 9 // סיכת ECHO (9) // PIN BUZZER /////////////// ////////////////////////////////////////// ///////////// #הגדרת PIN_Buzzer 13 // סיכת BUZZER (13) // PIN PIN SERVO ASSEMBLY /////////////////////// ////////////////////////////////////////// לסייע בהרכבת כפות רגליו ורגליו - קישור תיל בין סיכה 7 ל- GND #הגדר PIN_ASSEMBLY 7 // סיכה הרכבה (7) LOW = הרכבה גבוהה = פעולה רגילה ///////////////// ////////////////////////////////////////// //-- משתנים גלובליים -------------------------------------------/ //////////////////////////////////////////////////////////////////////////// //////////////////// מרחק int; // משתנה לאחסון מרחק קריאה ממודול מאתר טווח קולי bool obstacleDetected = false; // מצב היגיון כאשר אובייקט אובייקט נמצא במרחק שהגדרנו ////////////////////////// /////////////////////////////// //-- להכין -------------- ---------------------------------------- // //////// ////////////////////////////////////////// ///////// void setup () {Otto.init (PIN_YL, PIN_YR, PIN_RL, PIN_RR, true, A6, PIN_Buzzer, PIN_Trigger, PIN_Echo); // הגדר את סיכות סרוו וסיכות אולטרסאונד ו- pinMode pin Buzzer (PIN_ASSEMBLY, INPUT_PULLUP); // - סיכת הרכבה קלה - LOW הוא מצב הרכבה // אוטו תתעורר! Otto.sing (S_connection); // אוטו משמיע קול Otto.home (); // אוטו עובר לעיכוב המיקום המוכן שלו (500); // המתן ל -500 אלפיות השנייה כדי לאפשר לאוטוטו לעצור // אם סיכה 7 נמוכה, הצב את סרווו של OTTO במצב ביתי כדי לאפשר הרכבה קלה, // לאחר שסיימת להרכיב את אוטו, הסר את הקישור בין סיכה 7 ל- GND בזמן (digitalRead (PIN_ASSEMBLY) == LOW) {Otto.home (); // Otto עובר למיקום מוכן Otto.sing (S_happy_short); // לשיר כל 5 שניות כדי שנדע ש- OTTO עדיין עובד בעיכוב (5000); // המתן 5 שניות}

}

////////////////////////////////////////// ///////////////////// //-לולאה ראשית --------------------------- ------------------ // //////////////////////////////// //////////////////////////// יש אובייקט קרוב יותר מ 15 ס"מ ואז אנו עושים את הפעולה הבאה של Otto.sing (S_surprise); // נשמע הפתעה Otto.jump (5, 500); // אוטו קופץ Otto.sing (S_cuddly); // צליל א // אוטו לוקח שלושה צעדים אחורה עבור (int i = 0; i <3; i ++) Otto.walk (1, 1300, -1); // חזור שלוש פעמים על עיכוב הפקודה חזרה (500); // עיכוב קטן של 1/2 שניות כדי לאפשר לאוטו להתיישב // אוטו פונה שמאלה 3 שלבים עבור (int i = 0; i <3; i ++) {// חזור שלוש פעמים Otto.turn (1, 1000, 1); // עיכוב הפקודה ללכת שמאלה (500); // עיכוב קטן של 1/2 שניות כדי לאפשר לאוטטו להתיישב}} אחר {// אם שום דבר מלפנים אז ללכת קדימה Otto.walk (1, 1000, 1); // אוטוטו ללכת מכשול מדויק (); // התקשר לפונקציה כדי לבדוק את מאתר הטווח הקולי לאובייקט הקרוב יותר מ 15 ס"מ}} /////////////////////////////// /////////////////////////////// ----------------------------------------- // /////// ////////////////////////////////////////// /////////

/- פונקציה לקריאת חיישן מרחק ולממש מכשול משתנה מזוהה

void obstacleDetector () {int distance = Otto.getDistance (); // קבל את המרחק ממוצא הטווח הקולי אם (מרחק <15) obstacleDetected = true; // בדוק אם המרחק הזה קרוב יותר מ -15 ס"מ, נכון אם הוא מכשול אחר. מכשול = שקר; // שקר אם לא}

מוּמלָץ: