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

RoboGlove: 12 שלבים (עם תמונות)
RoboGlove: 12 שלבים (עם תמונות)

וִידֵאוֹ: RoboGlove: 12 שלבים (עם תמונות)

וִידֵאוֹ: RoboGlove: 12 שלבים (עם תמונות)
וִידֵאוֹ: "בלי פורטנייט - זה בלי חברים": מה קרה לילד שהתנתק מהמשחק? 2024, יולי
Anonim
RoboGlove
RoboGlove

אנו קבוצת סטודנטים של ULB, Université Libre de Bruxelles. הפרויקט שלנו כולל פיתוח כפפת רובוט המסוגלת ליצור כוח אחיזה המסייע לאנשים לתפוס דברים.

הכפפה

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

העיצוב

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

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

לאחר מכן יש לנו שתי טבעות מודפסות בתלת מימד, לכל אצבע, המהוות מדריך לחוטים. האגודל הוא האצבע היחידה שיש לה טבעות מודפסות אחת בלבד. יש חוט אחד לכל אצבע, מקופל לשניים בקצה האצבעות. שני החצאים עוברים בשני המדריכים של חלק הכפולה ובשתי הטבעות: הם מוכנסים ישר לחורים שיצרנו בצד החיצוני של הטבעות הללו. לאחר מכן הם מורכבים לגלגל המחובר ישירות למנוע. הגלגל מומש על מנת להיות מסוגל לעטוף את החוטים: מכיוון שהמנוע שלנו מסתובב לא מלא (נמוך מ -180 °) הבנו את הגלגל על מנת למשוך את החוט בפער של 6 סנטימטרים שזה המרחק צריך לסגור את היד לגמרי.

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

שלב 1: רשימת קניות

רשימת קניות
רשימת קניות
רשימת קניות
רשימת קניות
רשימת קניות
רשימת קניות

כפפה וחוטים:

כפפה אחת קיימת (חייבת להיות תפירה)

ג'ינס ישן או בד קשיח אחר

חוטי ניילון

צינורות פוליאתילן בצפיפות נמוכה (קוטר: 4 מ"מ עובי: 1 מ"מ)

מכשירי חשמל:

ארדואינו אונו

1 מחזיק סוללה 9V + 9V

מתג אלקטרוני אחד

Veroboard 1

3 מנועי סרוו (אחד לכל אצבע)

3 מדחפים (מסופקים עם סרוווס)

4 סוללות AA + 4 מחזיקי סוללות AA

3 חיישני לחץ (אחד לכל אצבע)

3 נגדים 330 אוהם (1 לכל אצבע)

6 חוטים חשמליים (2 לחיישנים)

ברגים, אגוזים וקיבעונים:

4 M3 באורך 10 מ מ (לתיקון הארדואינו)

2 מ '2.5 מ' באורך 12 מ מ (לתיקון מחזיק הסוללה 9V)

6 אגוזים תואמים

6 מ 'באורך 10 מ מ (2 לכל סרוו לתיקון הגלגלים לסרוואות)

12 קשרים קטנים (לתיקון הלוחות והמתג)

7 קשרים גדולים (2 למנועים ואחד ל -4 סוללות AA)

כלים משומשים:

מדפסת תלת מימד (Ultimaker 2)

חומר לתפירה

אקדח דבק חם

אופציונאלי: חותך לייזר

שלב 2: הכנת מבנה לביש

הכן מבנה לביש
הכן מבנה לביש

המבנה הלביש נעשה עם כמה בגדים: במקרה שלנו השתמשנו בכפפה רגילה לחשמלאי ובבד ג'ינס למבנה סביב פרק כף היד. הם נתפרו יחד.

המטרה היא שיהיה מבנה לביש גמיש.

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

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

כמה מקלות עץ נתפרו בפנים כדי להפוך את הג'ינס לנוקשה יותר.

שלב 3: הכינו את החלקים הפונקציונאליים

הכינו את החלקים הפונקציונאליים
הכינו את החלקים הפונקציונאליים

החלקים הנוקשים מתממשים באמצעות הדפסה תלת מימדית ב- PLA מתוך קבצי.stl בתיאור:

טבעת האצבע x5 (עם קשקשים שונים: 1x סולם 100%, 2x קנה מידה 110%, 2x קנה מידה 120%);

קיצוניות אצבע x3 (עם קשקשים שונים: 1x סולם 100%, 1x סולם 110%, 1x סולם 120%);

גלגל עבור מנוע x3

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

שלב 4: תקן את החיישנים לקיצוניות

תקן את החיישנים לקיצוניות
תקן את החיישנים לקיצוניות

חיישני הלחץ מולחמים לראשונה בחוטי כבלים.

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

שלב 5: תקן את החלקים המודפסים בתלת -ממד לכפפה

תקן את החלקים המודפסים בתלת -ממד לכפפה
תקן את החלקים המודפסים בתלת -ממד לכפפה

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

כדי למקם את הטבעות בצורה נכונה, תחילה ללבוש את הכפפה ולנסות לשים את הטבעות, אחת לכל פלנקס, מבלי שיגעו בהן במהלך סגירת היד. בערך, הטבעות באינדקס יהיו קבועות 5 מ"מ מעל בסיס האצבע ו 17 עד 20 מ"מ מעל הראשונה. לגבי האצבע האמצעית, הטבעת הראשונה תהיה בערך 8 עד 10 מ"מ מעל בסיס האצבע, והשנייה בסביבות 20 מ"מ מעל הראשונה. לגבי הנוגע לאגודל, הדיוק הדרוש הוא נמוך מאוד, מכיוון שאינו מסכן להפריע לטבעות האחרות. צלצול כך שתוכל לתפור אותו.

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

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

לאחר מכן יש לתקן גם את מדריכי הפוליאתילן על פי שלושה קריטריונים:

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

הסוף הדיסטלי חייב להיות מספיק רחוק כדי לא להפריע לסגירת היד (בסביבות 3 ס"מ מבסיס האצבע מספיק טוב, 4 עד 5 ס"מ לאגודל);

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

הם מתקנים על ידי תפירתם לכפפה ולפרק כף היד, באותה טכניקה כמו לעיל.

כדי להימנע מכל סיכון להחלקה בתפירה, הוסיף מעט דבק בין הצינורות לכפפות.

שלב 6: הכינו את הגלגלים לסרוווס

הכינו את הגלגלים לסרוווס
הכינו את הגלגלים לסרוווס

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

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

ניתן ליישם את 3 המדחפים על כל סרוו.

שלב 7: תקן את המנועים לזרוע

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

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

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

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

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

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

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

קוד על הארדואינו
קוד על הארדואינו

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

אנו יכולים לחלק את הקוד לשלושה חלקים:

חיישנים init:

קודם כל אתחלנו שלושה משתנים שלמים: קריאה 1, קריאה 2, קריאה 3 לכל חיישן. החיישנים הוכנסו לכניסות האנלוגיות A0, A2, A4. כל משתנה לקריאה מוגדר כך:

  • קריאה 1 היכן כתוב הערך הנקרא בכניסה A0,
  • קריאה 2 היכן כתוב הערך הנקרא בכניסה A2,
  • קריאה 3 היכן כתוב הערך הנקרא בקלט A4

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

מוטורי init:

שלושה משתנים char (save1, save2, save3), אחד לכל מנוע מאותחלים ב 0. ואז לתוך ההתקנה ציינו את הפינים שבהם אנו מחברים את המנועים בהתאמה: סיכה 9, סיכה 6 וסיכה 3 עבור servo1, servo2, servo3; הכל מאותחל בערך 0.

לאחר מכן מופעלים הסרבים באמצעות הפקודה servo.write () המסוגלת לתקן את הזווית המתקבלת כקלט על הסרוו. גם על ידי ניסויים וטעויות נמצאו שתי הזוויות הטובות, הדרושות לכופף את האצבע בשתי מצבים המתאימות לאחיזה קטנה ואחיזה גדולה.

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

קישור בין חיישנים ומנועים:

הבחירה של שמור 1, שמור 2, שמור 3 וקריאה 1, קריאה 2, קריאה 3 תלויה בהלחמה. אבל עבור כל אצבע, החיישן והמנוע הקשור חייב להיות בעל אותו מספר.

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

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

זה נעשה עבור כל מנוע.

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

כל התהליך עבור חיישן אחד מוצג בתרשים הזרימה כאן למעלה.

הקוד כולו

#כלול סרוו סרוו 1; סרוו סרוו 2; סרוו סרוו 3; int קריאה 1; int קריאה 2; int קריאה 3; char save1 = 0; // הסרוו מתחיל במצב 0, מצב שינה char save2 = 0; char save3 = 0; הגדרת void (void) {Serial.begin (9600); servo2.attach (9); // סרוו בפין דיגיטלי 9 servo2.write (160); // נקודה ראשונית עבור servo servo1.attach (6); // סרוו בפין דיגיטלי 6 servo1.write (0); // נקודה ראשונית עבור servo servo3.attach (3); // סרוו לפין דיגיטלי 3 servo3.write (0); // נקודה ראשונית עבור סרוו

}

לולאת void (void) {reading1 = analogRead (A0); // מצורף לאנלוגי 0 קריאה 2 = analogRead (A2); // מצורף לקריאה 2 אנלוגית 3 = analogRead (A4); // מצורף לאנלוגי 4

// if (reading2> = 0) {Serial.print ("ערך חיישן ="); // דוגמא לפקודה המשמשת לכיול ספי החיישן הראשון

// Serial.println (קריאה 2); } // else {Serial.print ("ערך חיישן ="); Serial.println (0); }

if (קריאה 1> 100 ושמירה 1 == 0) {// אם החיישן מקבל ערך גבוה ואינו במצב שינה שמור 1 = 2; } // עבור למצב 2 אחר אם (קריאה 1> 30 ושמירה 1 == 0) {// אם החיישן מקבל ערך בינוני ואינו במצב שינה save1 = 1; } // חייב לציין מצב 1 אחר אם (קריאה 1> 0) {// אם הערך אינו אפס ואף אחד מהתנאים הקודמים אינו מתוקן save1 = 0;} // עבור למצב שינה

if (save1 == 0) {servo1.write (160); } // שחרר אחר אם (save1 == 1) {servo1.write (120); } // זווית משיכה בינונית אחרת {servo1.write (90); } // זווית משיכה מקסימלית

אם (קריאה 2> 10 ושמירה 2 == 0) {// זהה לסרוו 1 שמור 2 = 2; } אחרת אם (קריאה 2> 5 ושמירה 2 == 0) {save2 = 1; } אחרת אם (קריאה 2> 0) {save2 = 0;}

if (save2 == 0) {servo2.write (0); } אחרת אם (save2 == 1) {servo2.write (40); } אחר {servo2.write (60); }

if (reading3> 30 ו- save3 == 0) {// זהה לסרוו 1 save3 = 2; } אחרת אם (קריאה 3> 10 ושמירה 3 == 0) {save3 = 1; } אחרת אם (קריאה 3> 0) {save3 = 0;}

if (save3 == 0) {servo3.write (0); } אחרת אם (save3 == 1) {servo3.write (40); } אחר {servo3.write (70); } עיכוב (1000); } // חכי שנייה

שלב 9: תקן את הארדואינו, הסוללות וה- Veroboard לזרוע

חברו את הארדואינו, הסוללות וה- Veroboard לזרוע
חברו את הארדואינו, הסוללות וה- Veroboard לזרוע
חבר את הארדואינו, הסוללות והוורובארד לזרוע
חבר את הארדואינו, הסוללות והוורובארד לזרוע

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

לצלחת יש את המידות: 100x145x5mm.

קיימים ארבעה חורים לבורג את הארדואינו ושניים לברג את מחזיק הסוללה 9V. נוצר חור במחזיק הסוללה של 6V ובצלחת כדי להשתמש בקשור בכבל כדי לתקן אותם יחד. קצת דבק נוסף כדי להבטיח את קיבוע המחזיק הזה. המתג קבוע בשני קשרים קטנים.

ישנם גם ארבעה חורים המשמשים לתיקון הצלחת על הג'ינס באמצעות קשרים.

לוח ה- veroboard מונח על הארדואינו כמו מגן.

שלב 10: חבר את האלקטרוניקה

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

המעגל מולחם על veroboard כפי שדווח בתוכנית לעיל.

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

כל חיישן מחובר בצד ב -5V של הארדואינו ובצד השני בנגד 330 אוהם המחובר לקרקע ולסיכות A0, A2 ו- A4 למדידת המתח.

שלב 11: הוסף את חוטי הניילון

הוסף את חוטי הניילון
הוסף את חוטי הניילון

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

הם קבועים על הגלגלים עם קשר החוצה דרך שני חורים קטנים הקיימים על קבצי ה-.stl ועם דבק חם לייצוב נוסף.

שלב 12: תהנה

זה עובד כצפוי.

בדחף הראשון הוא מכופף את האצבע ובשני הוא משחרר אותה.אין צורך בכוח כאשר האצבעות מכופפות.

עם זאת נותרו שלוש בעיות:

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

- חלקי הפלסטיק מעט מחליקים ולכן הוספנו קצת דבק חם בקצה כדי להוסיף חיכוך.

- אם עומס כבד על האצבע לחיישן יהיה כל הזמן ערך גדול ולכן הסרוו יסתובב ללא הרף.

מוּמלָץ: