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

רובוט מתחנן עם מעקב ובקרה על ידי בקר Xbox - Arduino: 9 שלבים (עם תמונות)
רובוט מתחנן עם מעקב ובקרה על ידי בקר Xbox - Arduino: 9 שלבים (עם תמונות)

וִידֵאוֹ: רובוט מתחנן עם מעקב ובקרה על ידי בקר Xbox - Arduino: 9 שלבים (עם תמונות)

וִידֵאוֹ: רובוט מתחנן עם מעקב ובקרה על ידי בקר Xbox - Arduino: 9 שלבים (עם תמונות)
וִידֵאוֹ: הרצאה 5 - מבוא למערכות מידע - קבוצת 9:55 - 15.8.2023 - ERP,CRM,GIS,CAD 2024, יולי
Anonim
Image
Image
התקנה ותצורה של OpenCV ו- C ++
התקנה ותצורה של OpenCV ו- C ++

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

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

חומרה אלקטרונית

  • Arduino NANO או UNO
  • מצלמת USB 2.0
  • כבלי מגשר (זכר ונקבה)
  • 2 x סרוו - כללי (גודל תת מיקרו)
  • 2 x LED - RGB CATHODE 5 מ"מ
  • לייזרים 2 x 5mW
  • 1 x LED אדום 5 מ"מ
  • 1 x לוח לחם
  • נגד 4 x 220Ω
  • 1 x 1KΩ נגד
  • 1 x protoboard
  • 1 x חיישן סונאר 4 פינים
  • בקר Xbox

חומרה אנלוגית

  • קופסת עץ (15 x 15 x 7 ס"מ)
  • דֶבֶק
  • קלטת חשמל

תוֹכנָה

  • Arduino IDE
  • סטודיו חזותי 2017
  • תלת מימד מקסימלי (או כל תוכנת תלת מימד אחרת)
  • טופס 2.14.0 ואילך
  • OpenCV 3.4.0 ואילך

כלים

  • ציוד הלחמה
  • מסור וקידוח
  • קאטר

שלב 2: התקנה ותצורה של OpenCV ו- C ++

התקנה ותצורה של OpenCV ו- C ++
התקנה ותצורה של OpenCV ו- C ++

שלב 2.1: השגת התוכנה

Visual studio 2017: הורד Visual studio Comunity 2017openCV 3.4.0 חבילת Win: עבור לדף ההורדות הרשמי

שלב 2.2: התקנת OpenCV2.2.1: חלץ את ה- zipfile לכונן Windows (: C).2.2.2: עבור להגדרות המערכת המתקדמות שלך. ניתן למצוא זאת בפונקציית החיפוש win10.2.3.3: עלינו להגדיר משתנים סביבתיים חדשים. אתר את הסביבה "נתיב" ולחץ על ערוך.2.2.4: כעת עלינו להוסיף את המיקום של "מפת הפחים" למשתנה חדש ב- Path enviromental. אם התקנת את openCV בכונן C שלך, הנתיב יכול ללכת כך: C: / opencv / build / x64 / vc14 / bin הדבק את הנתיב ולחץ על "אישור" בכל החלונות שפתחת במהלך תהליך זה.

שלב 2.3: הגדרת סטודיו C ++ Visual Studio 2.3.1: בנה פרויקט C ++ חזותי חדש. הפוך אותו לפרויקט ריק יישום מסוף win32.2.2.2: בכרטיסיה קבצי המקור, לחץ לחיצה ימנית והוסף קובץ C ++ חדש (.cpp) ושם אותו "main.cpp".2.3.3: קליק ימני על הפרויקט- שם ב סייר הפתרונות ובחר מאפיינים 2.3.4: עלינו להוסיף עוד כלול ספריות. ניתן למצוא זאת בכרטיסייה C/C ++ באופן כללי. העתק את הנתיב הבא: C: / opencv / build / include והדבק אותו מאחורי "AID" ולחץ על Apply.2.3.5: באותו חלון עלינו בחר בכרטיסייה "לינקר". באופן כללי עלינו ליצור מדריכי ליבר נוספים. הדבק את הנתיב הבא מאחורי הכרטיס "AID" C: / opencv / build / x64 / vc14 / lib ולחץ על Apply שוב 2.3.6: תחת אותה כרטיסייה Linker בחר בכרטיסייה 'קלט'. ולחץ על "תלות נוספת> ערוך" והדבק את הקובץ הבא opencv_world320d.lib ו- xinput.lib (לבקר) ולחץ על Apply שוב. סגור את החלון. כעת קובץ C ++ שלך מוכן לעבודה.

שלב 3: הגדרת הארדואינו

הגדרת הארדואינו
הגדרת הארדואינו
הגדרת הארדואינו
הגדרת הארדואינו
הגדרת הארדואינו
הגדרת הארדואינו
הגדרת הארדואינו
הגדרת הארדואינו

פגישה עם הסרוו: הסרבים מסוגלים להסתובב ~ 160 °. הם צריכים להיות בין 4, 8 ל -6, 0 וולט כדי לפעול כרגיל. לסרוו יש 3 סיכות: קרקע, 4, 8 - 6, סיכת 0 וולט ונתונים פִּין. לפרויקט שלנו אנו הולכים להגדיר את סיכות הנתונים עבור סרוווס ב- DigitalPin 9 ו- 10.

מפגש עם נוריות ה- RGB: לדורות ה- RGB יש 4 סיכות. סיכה אדומה, ירוקה, כחולה וטחונה. על מנת לחסוך קצת מקום בארדואינו, אנו יכולים לחבר את שתי נוריות ה- RGB יחד. אז רק נשתמש ב -3 סיכות. נוכל לחבר ולהלחים את תאי ה- RGB על לוח לוח כמו בתמונה. סיכה אדומה => DigitalPin 3 (PWM) פין ירוק => DigitalPin 4Blue pin => DigitalPin 7

מפגש עם זמזם הפיז'ו: הרובוט הקטן שלנו הולך לעשות רעש. על מנת לעשות זאת עלינו לתת לו קול! אנחנו יכולים לבחור לגרום לו להיות רם באמת. או שנוכל לשים נגד 220Ω לפני זמזם הפיצו כדי להפוך אותו לקצת פחות מגוחך. אנו משאירים את זמזם הפיזו על לוח הלחם. אז אין צורך בהלחמה. אנו מחברים את סיכת הנתונים (+) ל- DigitalPin 2 ואת סיכת הקרקע לקרקע על לוח הלחם.

מפגש הסונאר: כדי למנוע מהרובוט לנסות לכוון לאדם שנמצא 10 מטרים משם. אנו יכולים לתת לרובוט טווח מרחק מהמקום שבו הוא יוכל לכוון לאנשים. אנו עושים זאת באמצעות חיישן סונאר. PVC => 5 וולט טריג => DigitalPin 6 Echo => DigitalPin 5GND => קרקע

פגישה עם גלאי המטבעות: אנחנו הולכים להכין גלאי מטבעות. גלאי המטבעות יפעל על ידי זיהוי אם המעגל סגור או שבור. זה כמעט יעבוד כמו מתג. אבל אנחנו צריכים להיות זהירים. אם נעשה את זה לא נכון, זה יעלה לנו arduino. ראשית: חבר את AnalogPin A0 לכבל 5 וולט. אך הקפד לשים נגדו 1KΩ. שנית: חבר חוט לאדמה. אנו יכולים להלחם מיד את החוטים והנגד לאותו פרוטובורד של נוריות ה- RGB. עכשיו אם נגע בשני החוטים כדי שהארדואינו יזהה מעגל סגור. זה אומר שיש מטבע! לפגוש את לייזרי האבדון. הרובוט צריך את הנשק שלו כדי לירות! כדי לחסוך מקום, הלחמתי יחד את שני הלייזרים, שיתאימו בצורה מושלמת למסגרת המצלמה. חבר אותם ל- DigitalPin 11 ואל הקרקע. הרחיק את הבחור הקטן!

גימיק אופציונלי.אנחנו יכולים לשים נורית אדומה מתחת לחריץ המטבעות. זה יהיה גימיק קטן ומהנה כאשר יהיה חשוך. חבר חוט ל- DigitalPin 8 והנח נגד 220Ω בין הלד לחוט כדי למנוע ממנו להתפוצץ. חבר את הסיכה הקצרה של ה- LED לקרקע.

שלב 4: קוד C ++

שלב 4.1: הגדרת קוד main.cpp 4.1.1: הורד "main.cpp" והעתק את הקוד main.cpp.4.1.2 משלך: בשורה 14 שנה את "com" ל- com בו משתמש arduino. "\. / COM (שנה זאת)" 4.1.3: בשורה 21 ו -22 הגדר את הנתיב הנכון לקבצים "haarcascade_frontalface_alt.xml" ו- "haarcascade_eye_tree_eyeglasses.xml" אם מותקן openCV בכונן C, ניתן לאתר את הקבצים האלה כאן: "C: / opencv / build / etc / haarcascades \" שמור על החתך הכפול או הוסף אחד כאשר יש רק אחד.

שלב 4.2: הוסף tserial.h ו- Tserial.cpp 2 הקבצים האלה ידאגו לתקשורת בין הארדואינו למחשב. מַדרִיך. בסייר הפתרונות לחץ באמצעות לחצן העכבר הימני על הפרויקט ובחר הוסף> פריט קיים. בחלון המוקפץ בחר את שני הקבצים שיש להוסיף.

שלב 4.2: הוסף CXBOXController.h ו- CXBOXController.h קבצים אלה יתפסו את חלק הבקר בפרויקט 4.2.1: בסייר הפתרונות לחץ לחיצה ימנית על הפרויקט ובחר הוסף> פריט קיים. בחלון המוקפץ בחר את שני הקבצים שיש להוסיף. קבצי C ++ מוגדרים.

שלב 5: קוד הארדואינו

שלב 5.1: ספריית NewPing 5.1.1: הורד את ArduinoCode.ino ופתח אותו ב- arduino IDE.5.1.2: עבור אל "Sketch> Include libary> Manage libaries".5.1.3: חפש בתיבת הסינון אל "NewPing" והתקן את הספרייה הזו.

שלב 5.2: ספריית המגרשים 5.2.1: הורד pitches.txt והעתק את התוכן של pitches.txt.5.2.2: ב- Arduino IDE הקש CTRL+Shift+N כדי לפתוח כרטיסייה חדשה 5.2.3: הדבק את הקוד מה- pitches.txt בכרטיסייה החדשה ושמור אותה כ- "pitches.h". קוד Arduino הוגדר

שלב 6: הדפסה תלת מימדית וחידוד ההדפסה

הדפסה תלת מימדית וחידוד ההדפסה
הדפסה תלת מימדית וחידוד ההדפסה
הדפסה תלת מימדית וחידוד ההדפסה
הדפסה תלת מימדית וחידוד ההדפסה

שלב 6.1: הדפס את קובץ התלת -ממד פתח את הדפוס printfile.form ובדוק אם הכל בסדר. אם הכל נראה בסדר, שלח את עבודת ההדפסה למדפסת. אם נראה משהו או שאתה רוצה לשנות את הדגם. כללתי את קבצי 3Ds Max וקבצי OBJ שתוכל לערוך.

שלב 6.2: שפר את הדגם 6.2.1: לאחר סיום ההדפסה יש להשרות את שני הדגמים בכ -70% אלכוהול בכדי להסיר כל הדפסה מחדש 6.2.2: לאחר ההדפסה להניח את הדגם בשמש למשך מספר שעות בכדי לאפשר לאור האור להקשיח את הדגם. או שאתה יכול להשתמש במנורת UV להקשיח את הדגם. זה צריך להיעשות כי המודל יהיה דביק.

6.2.3: הסר את מסגרת התמיכה. ניתן לעשות זאת בעזרת חותך תיל. או כל כלי אחר שיכול לחתוך פלסטיק 6.2.2: חלקים מסוימים מההדפסה התלת -ממדית עדיין יכולים להיות רכים. גם אם הדגם היה בהרבה אור UV. החלקים שיכולים להיות רכים, הם החלקים שהיו קרובים למסגרות התמיכה. הניחו את הדגם בשמש יותר של אור UV כדי להתקשות. 6.2.5: בעזרת "דרמל" תוכלו לשייף את כל הבליטות הקטנות שנעשו על ידי המסגרת. אתה יכול לנסות להתאים את סרוו למסגרת. אם הם לא יתאימו, תוכל להשתמש ב- Dremel כדי לשייף חומרים. לגרום לזה להתאים.

שלב 7: בניית הקופסה

בונים את הקופסה
בונים את הקופסה
בונים את הקופסה
בונים את הקופסה

שלב 7.1: יצירת החורים כללתי שרטוט של הקופסה המדוברת. התוכנית אינה בקנה מידה, אך כל הגדלים נכונים.7.1.1: התחל בסימון כל החורים במיקומים הנכונים.7.1.2: קידוח כל החורים. ניתן ליצור את החורים הגדולים יותר בגודל בעזרת Dremel. 7.1.3: ניתן לקדוח גם את החורים המרובעים. אבל כדי להפוך אותם מרובעים אתה יכול להתאים את Dremel עם קובץ קטן ולהוציא פינות חדות 7.1.4: נסה להתאים את כל הרכיבים. אם הם מתאימים, אתה מוכן ללכת! 7.1.5: היזהר מרסיסי עץ. השתמש בנייר חול כדי להיפטר מהם.

שלב 7.2: ציור 7.2.1: התחל בשיוף המכסה. אנחנו צריכים שהצבע יידבק.7.2.2: קח מטלית והניח עליה מעט טרפנטין כדי לנקות את הקופסה.7.2.3: כעת תוכל לרסס את הקופסה בכל צבע שתרצה.

שלב 8: סיום

מסיים
מסיים
מסיים
מסיים
מסיים
מסיים

עכשיו עלינו לשים הכל במקום ולתת לו לעשות את זה. שלב 8.1: גלאי המטבעות 8.1.1: הדבק כמה פלטות מתכת לגלאי המטבעות.8.1.2: הלחם כל חוט מהמחבר לסד.8.1.3: בדוק את החיבור בעזרת מטבע. אם אין מעגל סגור, הלחם את החוטים יותר לקצה שלב 8.2: לוח ה- protoboard ו- RGB8.2.1: הנח את לוח ה- protoboard בפינה הימנית העליונה והדבק אותו למטה! 8.2.2: חבר את תאי ה- RGB עם החוטים. מהפרוטובארד! 8.2.3: חבר את כל החוטים מהפרוטובארד אל הארדואינו. 8.3.28.3.2: חותכים כמה חוטי זכר ונקבה לשניים ומלחימים יחד את החוטים הזכרים והזכריים ליצירת כבל יחיד בו נוכל לחבר את החיישן לארדואינו.8.3.3: חבר את החיישן לארדואינו

שלב 8.4: לייזרים ומצלמה 8.4.1: הדבק את המסגרת הקטנה למצלמה. וודא שהוא זקוף.8.4.2: הכנס את הלייזרים גם למסגרת. הדביקו אותם כדי שהאויב לא יגנוב אותם!

שלב 8.5: סרווס והדפסה תלת -ממדית 8.5.1: הדבק את הסרוו בחור המכסה 8.5.2: העלה את קובץ הארדואינו לארדואינו (הדבר גורם לסרוווס לעמוד במיקום הנכון) 8.5.3: עם הסרוו הגיע רמה עגולה קטנה. הניחו את זה על הסרוו במכסה.8.5.4: הניחו את ההדפס התלת -ממדי הגדול על הסרוו והרמה והברגו אותם היטב בעזרת בורג.8.5.5: הניחו את הסרוו השני על ההדפס התלת -ממדי הקטן והדביקו אותם. 8.5.6: שימו את המצלמה במקום וכל דבר מוכן לצאת לדרך!

שלב 9: הפעל את התוכנית

כדי להפעיל את הרובוט פתח את קובץ C ++ ב- Visual studio. וודא שאתה נמצא במצב "באגים" העלה את קובץ הארדואינו לארדואינו. לאחר העלאת העיתונות, הפעל באולפן ויזואלי. והרובוט יורה ויאסוף את כל המטבעות בעולם !!!

מוּמלָץ: