תוכן עניינים:
- שלב 1: חומרים, כלים ומכונות הדרושים
- שלב 2: עיצוב דו מימד ותלת מימד
- שלב 3: הדפסה תלת מימדית
- שלב 4: דפוס ויציקה
- שלב 5: עיצוב וייצור אלקטרוניקה
- שלב 6: הרכבה
- שלב 7: תכנות
וִידֵאוֹ: זרוע תותבת בעבודה עם מיוסנסור: 8 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-31 10:19
פרויקט זה הוא פיתוח זרוע תותבת לאנשים קטיעה. מטרתו של פרויקט זה היא יצירת זרוע תותבת במחיר סביר לאנשים שאינם יכולים להרשות לעצמם מקצועית.
מכיוון שפרויקט זה עדיין נמצא בשלב אב טיפוס, הוא תמיד יכול להיות טוב יותר, כי בינתיים הוא יכול רק לפתוח ולסגור את כף היד בכדי לתפוס דברים! עם זאת, זוהי זרוע תותבת DIY שניתן לבצע בבית או במעבדת פאב מקומית.
שלב 1: חומרים, כלים ומכונות הדרושים
מכונות:
- מדפסת תלת מימד
- חותך לייזר
- מכונת CNC שולחנית
כלים:
- חוט דיג
- נימה 3 מ"מ
- תרגיל
- דבק מגע
- צבת חור
- מולטימטר
- תחנת הלחמה
- שעווה ניתנת לעיבוד
- תבניות סיליקון
חומרים:
- גיליון נחושת
- 1x ATMEGA328P-AU
- 1x 16MHz קריסטל
- נגד 10k
- 2 קבלים 22pF
- קבל 1x10uF
- 1x קבל 1uF
- קבל 0.1uF
- 1x Myosensor
- 5x מנועי מיקרו סרוו
- 1x ארדואינו UNO
תוֹכנָה:
- Arduino IDE
- Fusion360
- קורה
- נשר
- GIMP
שלב 2: עיצוב דו מימד ותלת מימד
עיצוב תלת מימד
הצעד הראשון היה לעצב את האצבעות, כף היד והאמה של זרוע התותבת תוך התחשבות באלקטרוניקה שתשתלב בזרוע התותבת. למען האמת, השתמשתי כבסיס בפרויקט ה- inmoov של קוד פתוח והתחלתי משם.
כף היד היא די קשה לעיצוב מכיוון שאצבעות האצבעות צריכות להיות ביניהן שונות. לכן:
אצבעות: הורדתי את האצבעות מפרויקט inmoov.
כַּף הַיָד:
- ראשית שרטטתי את פריסת כף היד והוצאתי אותו.
- אחר כך יצרתי חורים לחיבורי האצבע והאמה באמצעות סקיצות, פקודת החיתוך ופקודת הפילה.
- לאחר מכן, הייתי צריך ליצור צינורות על מנת שאוכל להעביר את חוטי הדיג פנימה כדי שאוכל לשלוט באצבעות באמצעות המנועים.
- לבסוף, יש להוסיף חורים בתוך כף היד כך שסגירת כף היד תתאפשר בעת משיכת חוט הדייג.
אַמָה:
- במישורים שונים, יצרתי שני סקיצות והשתמשתי בפקודת האליפסה. השתמשתי בפקודת לופט לאחר כדי ליצור את הצורה הרצויה.
- לאחר מכן, נעשה שימוש בפקודת הפגז כדי להפוך אותו לחלול ובפקודה המפוצלת לחתוך אותו לשניים כך שאוכל לתכנן בו ולגבי הנגישות הטובה ביותר כאשר אני מתקין את האלקטרוניקה שלי בפנים.
- סקיצה נעשתה גם ליד פרק כף היד, הוחצנה והתחברה עם האמה הראשית כך שתוכל להתחבר לכף היד.
- מכיוון שנראה לעצב בתוך האמה, יצרתי סקיצה בממדים של חמשת המנועים שבהם אשתמש, אחד לכל אצבע, וה- PCB שלי (מעגל מודפס) שבו אשתמש. לאחר מכן הרחצתי אותם עד שהגיעו לגובה הרצוי ומחקתי את החלקים המיותרים בחלק האחורי של הצילינדר באמצעות גב אחורי.
- לבסוף תוכננו פתחים לברגים, באופן שאינם נראים כל כך בעיצוב הכולל, כך שניתן יהיה לסגור את האמה באמצעות פקודות דומות כמו לעיל.
בסיום העיצוב בחרתי כל גוף והורדתי אותו כקובץ.stl והדפסתי אותו בנפרד בתלת מימד.
עיצוב דו מימד
מכיוון שרציתי להפריד את קווי הדיג בזמן שהם מופעלים על ידי המנועים, החלטתי לעשות להם חריצים מנחים. לשם כך לא ממש הייתי צריך לעצב שום דבר חדש אלא להשתמש באליפסה הקטנה יותר כאשר השתמשתי בפקודה לופט ליצירת האמה.
ייצאתי את הסקיצה שלו כקובץ.dxf לאחר שהשתמשתי בחותך הלייזר. לאחר שהייתה לי הצורה הרצויה, קידחתי חורים של 0.8 מ מ בתוך החריץ שמצאתי צורך.
שלב 3: הדפסה תלת מימדית
לאחר ייצוא כל קובץ stl, השתמשתי ב- Cura ליצירת ה-.gcode של חלקי האצבעות השונים, כף היד והאמה. ההגדרות המשמשות מאוירות בתמונות למעלה. החומר של החלקים המודפסים בתלת מימד הוא PLA.
שלב 4: דפוס ויציקה
מטרת הליהוק של כף היד היא שלזרוע התותבת תהיה אחיזה חזקה יותר מכיוון ש- PLA יכול להיות חלקלק.
עיצוב תלת מימד
- בעזרת הסקיצה הקיימת של כף היד ניסיתי לחקות את כף היד שלנו על ידי עיצוב עיגולים אליה באמצעות הפקודה arc.
- לאחר מכן, הרחצתי אותם בגבהים שונים והשתמשתי בפקודה פילה כדי להחליק את קצוות ה"עיגולים "הפנימיים.
- לאחר מכן, עיצבתי קופסה באותן מידות כמו השעווה שלי לעיבוד ושמתי את השלילי של העיצוב שלי שם באמצעות החיתוך בפקודת השילוב.
תהליך CAM
לאחר שהעיצוב מוכן לטחינה באמצעות מכונת ה- CNC השולחנית, נאלצתי לייצר את ה- gcode לשם כך. במקרה שלי, השתמשתי במכונת CNC של Roland MDX-40!
- ראשית, נכנסתי לסביבת ה- CAM של Fusion360.
- לאחר מכן, בחרתי "התקנה חדשה" בתפריט ההגדרות.
- בחרתי את הפרמטרים הנכונים (ראו תמונות) ולחצתי אישור.
- לאחר מכן, תחת תפריט התלת -ממד, בחרתי בסליקה אדפטיבית ובחרתי את הפרמטרים הנכונים לאחר הכנסת הכלי בו השתמשתי כפי שמוצג בתמונות.
- לבסוף, בחרתי בסליקה האדפטיבית ולחצתי על תהליך הפוסט. וודאתי שזה מכשיר mdx-40 של roland ולחצתי אישור על מנת לקבל את ה- gcode.
- לאחר מכן טחינתי את גוש השעווה לפי העיצוב שלי באמצעות המכונה.
יציקת הסיליקון
- ראשית, ערבבתי את שני פתרונות הסיליקון בזהירות כדי לא לגרום לבועות אוויר, בעקבות גליון הנתונים (הקישור המצוי על החומרים), תוך התחשבות ביחס הערבוב, אורך חיי הסיר וזמן העיצוב.
- לאחר מכן, שפכתי אותו לתבנית שלי מהנקודה הנמוכה ביותר וודא שנקודת המגע נשארת קבועה וקוטר הפתרון הנמזג דק ככל האפשר, על מנת להימנע מבועות אוויר.
- לאחר שזרקתי את הסיליקון לתבנית שלי, הייתי צריך לוודא שאין בועות אוויר בפנים, אז רעדתי מהתבנית בעזרת מקדחה עם מסמר אלכסוני.
- לבסוף, כששכחתי לעשות את זה בעיצוב שלי, חבטתי חורים בסיליקון שלי לאחר שהוא היה מוכן, בעזרת צבת החורים, באופן שיתאימו לחורים שעל פני כף היד.
שלב 5: עיצוב וייצור אלקטרוניקה
על מנת לעצב את הלוח שלי ולהבין מה קורה בפינים של המיקרו -בקר, הייתי צריך לקרוא את גליון הנתונים שלו. כ- PCB בסיסי, השתמשתי במיקרו satshakit ולאחר מכן שיניתי אותו בהתאם לצרכי המערכת שלי.
מכיוון שסאטשאקיט הוא לוח מבוסס ארדואינו DIY, אני יכול לשנות אותו בהתאם לחיפושים שלי אחר חיבורים של החלקים שלי עם הארדואינו. אז, myosensor מתחבר לארדואינו באמצעות סיכת GND אחת, סיכת VCC אחת וסיכה אנלוגית אחת. ואילו מנוע סרוו אחד משתמש בסיכת GND אחת, סיכת VCC אחת וסיכת PWM אחת. אז, הייתי צריך לחשוף בסך הכל שישה סיכות GND ו- VCC תוך התחשבות בהפעלת הלוח, אחד אנלוגי וחמישה סיכות PWM. כמו כן, הייתי צריך לקחת בחשבון את חשיפת הפינים לתכנות הלוח (שהם MISO, MOSI, SCK, RST, VCC ו- GND).
הצעדים שעשיתי היו:
- ראשית, הורדתי את קבצי הנשר של המיקרו-סאטשאקיט.
- לאחר מכן, שיניתי את המיקרו-סאטשאקיט בהתאם לצרכי באמצעות Eagle. ניתן למצוא כאן וכאן מדריך כיצד להשתמש ב- Eagle.
- לאחר השתרשות הלוח שלי, ייצאתי אותו כקובץ-p.webp" />
לאחר שיש לי את הנתיבים הפנימיים והחיצוניים של הלוח שלי כ- png, הגיע הזמן ליצור את ה- gcode של אותם בכדי להיות מסוגל לטחון אותו במכונת ה- cnc השולחנית roland mdx-40. לדור ה-.gcode השתמשתי במודולים fab. ההגדרות שצריכות להיות מוגדרות במודולים fab ותמצאו כאן.
לבסוף, הלחמתי את כל מה שהייתי צריך בהתאם ללוח הנשר שלי. ניתן למצוא את התמונה של הלוח הסכימטי והלוח מול.
הסיבה לייצור לוח PCB משלי במקום להשתמש ב- UNO של Arduino היא המקום שאני חוסך כשאני משתמש בלוח משלי.
שלב 6: הרכבה
אז, לאחר שהודפסו האצבעות:
- הייתי צריך לקדוח את החורים הפנימיים בעזרת מקדחה בקוטר 3.5 מ"מ ואת החורים החיצוניים עם מקדחה בקוטר 3 מ"מ. חורים פנימיים כלומר החלק שכאשר החלקים מחוברים זה מהחור הפנימי והחיצוני, החלק שכאשר הוא מחובר הוא מבחוץ.
- אחרי זה הייתי צריך להדביק על לראשונה עם האצבע השנייה והשלישי עם האחת הרביעית.
- לאחר מכן, חיברתי את החלקים 1+2 עם 3+4 עם 5 דרך החורים הקטנים באמצעות נימה בקוטר 3 מ"מ.
- לבסוף, האצבעות היו מוכנות להרכבה עם כף היד ולאחר מכן עם האמה.
אז הגיע הזמן להעביר את חוט הדייג באצבעות.
קו אחד עבר מהצד האחורי של האצבע דרך הצינור שעל מחבר כף היד לאצבע ועד האמה והקו השני עבר מהצד הקדמי של האצבע אל החור בחלק הפנימי של כף היד ולאמה
הערה מיוחדת היא להעביר את חוט הדייג דרך פיסת עץ שיש לה חור בקוטר שלה ולעשות קשר. אחרת כאשר הקו נמשך, הוא עלול לרדת באצבע, מה שקרה לי לא משנה כמה קשרים עשיתי.
- לאחר שעבר קו הדייג דרך האצבעות, יש לחבר את כף היד והאמה בכמה ברגי רובוט מודפסים בתלת -ממד,
- העברתי שוב את הקווים דרך חריץ החורים החתוכים בלייזר כדי להפריד ביניהם ואז חיברתי אותם למנועי הסרוו.
- הצמדת חוט הדייג למיקום הנכון של הסרוו מעט מאתגרת. אבל, מה שעשיתי היה לקחת את העמדות הקיצוניות של האצבע ולחבר אותה למצב הקיצוני של הסרוו.
- לאחר שמצאתי את המיקומים הנכונים, קידחתי חורים בחריצים המיוחדים עבור הסרווס והברגתי את הסרוואות למקומות הנכונים וודא ששניים מהסרווים מוגבהים מעט מהאחרים, אחרת הם יתנגשו במהלך פעולתם.
שלב 7: תכנות
לפני כתיבת התוכנית, הייתי צריך להפוך את המיקרו- satshakit המתוכנן להיות מתוכנת. לשם כך, הייתי צריך לבצע את השלבים הבאים:
- חבר את ה- Arduino Uno למחשב האישי.
- בחר את היציאה הנכונה ואת לוח Arduino Uno תחת כלים.
- תחת> קובץ> דוגמאות, מצא ופתח סקיצה "ArduinoISP".
- העלה את המערכון לארדואינו.
- נתק את ה- Arduino מהמחשב.
- חבר את הלוח עם הארדואינו לפי הסכימה שבתמונה.
- חבר את הארדואינו למחשב האישי.
- בחר בלוח "Arduino/Genuino Uno" ובתכנת "Arduino as ISP".
- לחץ על> כלים> צריבת אתחול.
- לאחר ביצוע מטען האתחול בהצלחה, נוכל לכתוב את התוכנית שלנו:
// כולל הספרייה שבה השתמשתי עבור מנועי הסרוו
#include #include SoftwareSerial mySerial (7, 8); #define MYO_PIN A0 int sensorValue; מתח צף; // למנות שם ל servo שלי VarSpeedServo servo1; VarSpeedServo servo2; VarSpeedServo servo3; VarSpeedServo servo4; VarSpeedServo servo5; #define PINKY 5 #define PINKY_PIN 10 #define RINGFINGER 4 #define RINGFINGER_PIN 9 #define MIDDLE 3 #define MIDDLE_PIN 3 #define INDEX 2 #define INDEX_PIN 5 #define THUMB 1 #define THUMB_); // הסיכה שחיברתי את servo1.attach המנוע שלי (THUMB_PIN); servo2.attach (INDEX_PIN); servo3.attach (MIDDLE_PIN); servo4.attach (RINGFINGER_PIN); servo5.attach (PINKY_PIN); defaultPosition (THUMB, 40); defaultPosition (INDEX, 40); defaultPosition (MIDDLE, 40); defaultPosition (RINGFINGER, 40); defaultPosition (PINKY, 40); mySerial.begin (9600); mySerial.print ("אתחול …"); } לולאת חלל () {sensorValue = analogRead (A0); מתח = חיישן ערך * (5.0 / 1023.0); mySerial.println (מתח); עיכוב (100); if (מתח> 1) {closePosition (PINKY, 60); closePosition (RINGFINGER, 60); closePosition (MIDDLE, 60); closePosition (INDEX, 60); closePosition (THUMB, 60); } else {openPosition (PINKY, 60); openPosition (RINGFIGER, 60); openPosition (MIDDLE, 60); openPosition (INDEX, 60); openPosition (THUMB, 60); }} void defaultPosition (uint8_t finger, uint8_t _speed) {if (finger == PINKY) servo5.write (90, _speed, true); אחרת אם (אצבע == RINGFINGER) servo4.write (70, _ speed, true); אחרת אם (אצבע == MIDDLE) servo3.write (20, _ speed, true); אחרת אם (אצבע == INDEX) servo2.write (20, _ speed, true); אחרת אם (אצבע == THUMB) servo1.write (20, _ speed, true); } void closePosition (uint8_t finger, uint8_t _speed) {if (finger == PINKY) servo5.write (180, _speed, true); אחרת אם (אצבע == RINGFINGER) servo4.write (180, _ speed, true); אחרת אם (אצבע == MIDDLE) servo3.write (180, _ speed, true); אחרת אם (אצבע == INDEX) servo2.write (180, _ speed, true); אחרת אם (אצבע == THUMB) servo1.attach (180, _ speed, true); } void openPosition (uint8_t finger, uint8_t _speed) {if (finger == PINKY) servo5.write (0, _speed, true); אחרת אם (אצבע == RINGFINGER) servo4.write (0, _ speed, true); אחרת אם (אצבע == MIDDLE) servo3.write (0, _ speed, true); אחרת אם (אצבע == INDEX) servo2.write (0, _ speed, true); אחרת אם (אצבע == THUMB) servo1.write (0, _ speed, true); } // לאחר כתיבת התוכנית אנו מעלים אותה ללוח על ידי> סקיצה> העלאה באמצעות מתכנת // כעת תוכל לנתק את המיקרו סאצאקיט שלך מהארדואינו ולהפעיל אותו דרך בנק הכוח // וואלה !! יש לך זרוע תותבת
מוּמלָץ:
צלצול פעמון דלתות וידאו בבריטניה בעבודה עם צלצול מכני: 6 שלבים (עם תמונות)
צלצול פעמון דלתות וידאו בבריטניה בעבודה עם צלצול מכני: ************************************** **************** שים לב ששיטה זו עובדת רק עם מתח AC כרגע אעדכן אם/כאשר אמצא פתרון לפעמוני דלתות באמצעות מתח DC בינתיים, אם יש לך מתח DC אספקה, לא תצטרך
מתנפח זרוע מתנפח זרוע מתנפח על ידי שולחן עבודה: 4 שלבים (עם תמונות)
שולחן עבודה Wacky Wave מתנפח זרוע מתנפח Tube Man: תמיד רציתי לבנות מחשב שולחני בגודל "Wacky Wave מתנפח זרוע מתנפח", הידוע גם בשם איש Tube, הידוע גם בשם Skydancer, רקדן אוויר … פרויקט זה התחיל בחזרה בשנת 2013, הצגתי את האב טיפוס הגס הראשון שנעשה
יד תותבת מודפסת בתלת מימד ב -4 שלבים !: 4 שלבים
יד תותבת מודפסת בתלת -ממד ב -4 שלבים !: הפרויקט הזה הוא יד תותבת שהודפס על ידי, אני מבקש לחקור עוד ידע על תותבות והדפסה תלת -ממדית. למרות שזה לא הפרויקט הטוב ביותר, זוהי דרך מצוינת להתנסות וללמוד כיצד ליצור
זרוע תותבת ארדואינו: 4 שלבים
זרוע תותבת Arduino: תוצרת ג'ואי פנג קיו מוי G & I1C זרוע זו מיועדת לאנשים בעלי תקציב אך עדיין רוצים זרוע תותבת עם פונקציות
כיצד להרכיב זרוע רובוט מעצימה (חלק 3: זרוע רובוט) - מבוססת על המיקרו: BITN: 8 שלבים
כיצד להרכיב זרוע רובוט מעצימה (חלק 3: זרוע רובוט) - מבוססת על המיקרו: BITN: תהליך ההתקנה הבא מבוסס על השלמת מצב המכשולים הימנעות. תהליך ההתקנה בחלק הקודם זהה לתהליך ההתקנה במצב מעקב אחר קווים. אז בואו נסתכל על הצורה הסופית של A