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

פרוייקט BricKuber - רובוט לפתרון קוביות פטל רוביקס פטל: 5 שלבים (עם תמונות)
פרוייקט BricKuber - רובוט לפתרון קוביות פטל רוביקס פטל: 5 שלבים (עם תמונות)

וִידֵאוֹ: פרוייקט BricKuber - רובוט לפתרון קוביות פטל רוביקס פטל: 5 שלבים (עם תמונות)

וִידֵאוֹ: פרוייקט BricKuber - רובוט לפתרון קוביות פטל רוביקס פטל: 5 שלבים (עם תמונות)
וִידֵאוֹ: פרוייקט הצוענים - מחרוזת שקטים 2024, יוני
Anonim
Image
Image

ה- BricKuber יכול לפתור קוביית רוביק תוך פחות מ -2 דקות.

ה- BricKuber הוא רובוט לפתרון הקוביות של רוביק בקוד פתוח שתוכל לבנות בעצמך

רצינו לבנות רובוט לפתרון קוביות רוביקס עם ה- Raspberry Pi. במקום ללכת על מהירות, הלכנו בפשטות: אם יש לך ערפל פטל, ערכת BrickPi וערכת סטנדרטית של LEGO Mindstorms EV3 או NXT, אתה אמור להיות מסוגל ללכת בקלות בעקבותינו. התוכנה כתובה בשפת התכנות של פייתון. אתה יכול לראות את כל קוד המקור ב- Github כאן.

רקע הקובייה של רוביק החלה לאחרונה לחזור. הוא הומצא בשנת 1974, והוא הצעצוע הנמכר ביותר בעולם. אבל כדי לפתור אותם צריך מחשבה, מאמץ ומיומנות… אז למה לא לתת לרובוט לעשות את זה? בפרויקט זה, אנו לוקחים פיי פטל, BrickPi וסט של LEGO Mindstorms ובונים רובוט לפתרון קוביות של רוביק. כל שעליך לעשות הוא להניח קוביית רוביק שלא נפתרה בתוך הפותר, להפעיל את תוכנית הפיתון והקובייה של רוביק שלך תיפתר! הפרויקט משתמש בפי כדי לפתור ישירות את הקוביה של רוביק. ה- BrickPi3 לוקח את קוביית רוביק הבלתי פתורה וה- Raspberry Pi מצלם כל צד של הקובייה של Rubik עם מצלמת ה- Raspberry Pi. ה- Pi יוצר מפת טקסט של ריבועי הצבעים המראה היכן הם ממוקמים בקובייה. כאשר הוא מיפה את הקובייה במלואה, ה- Pi משתמש בספריית הפיתון "קוסימבה" כדי למפות את המהלכים הדרושים לפתרון קוביית רוביק. מידע זה נלקח על ידי ה- Pi ו- BrickPi3 לפתרון קוביית רוביק באמצעות מנועי LEGO. התוצאה: קוביית רוביק שנפתרה.

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

לבנות את זה
לבנות את זה
  • BrickPi3 - נשתמש ב- BrickPi לשליטה במנועי LEGO הפותרים את פותר הקוביות של רוביק.
  • Raspberry Pi - ה- Pi יבצע את העיבוד, יצלם תמונות ויפקד על ה- BrickPi.
  • מצלמת Raspberry Pi - מצלמת ה- Pi תצלם את קוביית רוביקס הלא פתורה.
  • כבל אתרנט - תצטרך שהמכונה שלך תהיה מחוברת לאינטרנט. אם אתה רוצה לעשות זאת באמצעות wifi, זה גם בסדר!
  • כרטיס SD Raspbian for Robots - התוכנה שמפעילה את ה- Raspberry Pi. זה מגיע עם רוב התוכנות הדרושות להדרכה זו. אתה יכול גם להוריד את התוכנה בחינם.
  • ערכת LEGO Mindstorms EV3 (31313) - תזדקק לערימה של לגו ושני מנועים גדולים, ומנוע סרוו אחד, וחיישן אולטרסאונד.
  • קוביית רוביק - מצאנו אחד שמסתובב די חופשי כאן. אתה יכול להשתמש כמעט בכל קוביית 9x9x9 של רוביק.

שלב 2: בנה אותו

לבנות את זה
לבנות את זה
לבנות את זה
לבנות את זה

בניית הפותר

עיצוב זה היה בהשראת עיצוב MindCub3r עבור LEGO EV3. כדי לבנות את ה- BricKuber, התחל בבניית ה- MindCub3r. ניתן למצוא כאן הוראות בנייה מלאות של LEGO.

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

לבסוף, אנו מוסיפים זרוע מצלמה. בעיצוב המקורי של MindCubr, זה החזיק את חיישן הצבע EV3 מעל הקובייה של רוביק. בעיצוב השונה שלנו, היא מחזיקה מצלמת פטל פטל מעל קוביית רוביק. אנו משתמשים בשני מנועים של LEGO Mindstorms כדי לתפעל את הקוביה: הראשון יושב מתחת לעריסה כדי לסובב את הקוביה, והשני מניע את זרוע הדשדוש כדי לסובב את הקובייה על ציר נגדי.

הרכיבו את ה- BrickPi3

תוכל למצוא כאן הוראות הרכבה ל- BrickPi3. נצטרך להרכיב את המארז, לצרף את ה- BrickPi3, ה- Raspberry Pi, מצלמת ה- Raspberry Pi, להוסיף כרטיס SD ולהוסיף סוללות. כדי להקל על ההתקנה של התוכנה, Raspbian for Robots מגיע עם רוב התוכנות שתזדקק להן כבר להתקנה. תזדקק לכרטיס SD של 8 GB לפחות, ותרצה להרחיב את הדיסק כך שיתאים לגודל המלא של כרטיס ה- SD.

צרף את ה- BrickPi3

אנו מוסיפים את ה- BrickPi3 להרכבת LEGO. השתמשנו ב"כנפיים "של LEGO EV3 כדי לתמוך ב- BrickPi3 ולהפוך אותו לישיר עם גוף BricKuber. זהו צעד טוב להוספת סוללות 8XAA לחבילת החשמל ולחבר את ערכת הכוח BrickPi3 למכלול LEGO. לתכנות אתה יכול להפעיל את ה- BrickPi3 באמצעות כוח USB ל- Raspberry Pi, אולם כדי להזיז את המנועים תצטרך לספק כוח עם ה- Power Pack.

חבר את המנועים ל- BrickPi3

חבר את מנוע ה- Shuffler ליציאת המנוע "MD". חבר את מנוע העריסה ליציאת "MA" ב- BrickPi3. חבר את מנוע חיישן המצלמה ליציאת "MC" (זהו המנוע הקטן יותר דמוי סרוו). למרות שלא נזיז את המצלמה, ייתכן שתרצה להתאים את המיקום של המצלמה באמצעות המנועים.

חבר את מצלמת ה- Raspberry Pi

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

raspistill -o cam.jpg

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

שלב 3: הכנת התוכנה

אתה יכול להשתמש בכל גרסה של Raspbian או Raspbian for Robots, התמונה המותאמת אישית שלנו שמגיעה עם ה- BrickPi3 כבר מותקן. אם אתה משתמש בגרסה רגילה של Raspbian, תוכל להתקין את ספריות BrickPi3 באמצעות הפקודה

sudo curl -kL dexterindustries.com/update_brickpi3 | לַחֲבוֹט

שלב זה יתקין את כל הספריות הדרושות להפעלת ה- BrickPi3 בתמונת ה- Raspbian שלך. דלג על שלב זה אם אתה משתמש ב- Raspbian for Robots: ה- BrickPi3 כבר מותקן.

לבסוף, התקן את כל התלות בפרויקט באמצעות הפקודה:

sudo curl https://raw.githubusercontent.com/DexterInd/Brick… | לַחֲבוֹט

עבור שלב זה BrickPi3 שלך יצטרך להיות מחובר לאינטרנט. ישנן מספר ספריות שהפרויקט תלוי בהן, כולל כמה ספריות מכריעות של דניאל וולטון (@dwalton76) ב- Github, המשמשות לפתרון קוביית רוביק.

שלב 4: פתור קוביית רוביק

לפתור קוביית רוביק
לפתור קוביית רוביק
לפתור קוביית רוביק
לפתור קוביית רוביק
פתרו קוביית רוביק
פתרו קוביית רוביק

מניחים קוביית רוביק לא פתורה בעריסה. הפעל את הפקודה

sudo python ~/Dexter/BrickPi3/Projects/BricKuber/BricKuber.py

הרובוט יפנה את הקוביה לכל פנים והמצלמה תצלם 6 תמונות, אחת מכל צד של הקובייה. ה- Raspberry Pi יקבע את תצורת הקוביה מתוך שש התמונות. תצורת הקוביה תועבר לספריית python של kociemba כדי למצוא פתרון יעיל. לבסוף, הרובוט יבצע את המהלכים לפתרון קוביית רוביק!

שלב 5: קוד המקור

ניתן למצוא את כל קוד המקור של BricKuber במאגר ה- github הקוד הפתוח שלנו כאן.

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

מוּמלָץ: