רובוט נחש מודפס בתלת -ממד: 7 שלבים (עם תמונות)
רובוט נחש מודפס בתלת -ממד: 7 שלבים (עם תמונות)
Anonim
Image
Image
חלקים
חלקים

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

שלב 1: חלקים

חלקים
חלקים
חלקים
חלקים

להלן מה שנצטרך:

  • 8 מנועי מיקרו סרוו
  • כמה חלקים מודפסים בתלת מימד
  • ברגים
  • 3, סוללת Li-Po 7V
  • חלקים מסוימים לייצור PCB (atmega328 SMD, קבל 100nF, קבל 470μF, נגד 1, 2k, כמה סיכות זהב). חשוב מאוד לייצר PCB לפרויקט זה מכיוון שכאשר תחבר הכל על לוח הלוח הנחש שלך לא יוכל לזוז.

שלב 2: מודלים תלת מימד

דגמי תלת מימד
דגמי תלת מימד

למעלה אתה יכול לראות הדמיה של הנחש הזה. ניתן להוריד קבצים (.stl) כאן או ב- thingiverse שלי. קצת מידע על הגדרות הדפסה:

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

אתה צריך:

8x מגזר נחש

1x ראש נחש

1x נחש_ גב

שלב 3: PCB

PCB
PCB

להלן תוכל למצוא קבצי נשר (.sch ו-.brd) פשוט הורד אותם פתוחים ב- eagle עבור לתצוגת לוח לחץ על ctrl + p והדפס אותו. אם אתה לא יודע איך להכין PCB אתה יכול לקרוא על זה כאן:

www.instructables.com/id/PCB-making-guide/

על הסכימה כתוב כי מיקרו -בקר הוא atmega8 אבל הוא atmega328 יש לו אותו pinout אבל אין atmega328 בנשר.

שלב 4: הרכבה

הרכבה
הרכבה

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

שלב 5: חיבור

חיבור
חיבור

בתמונה למעלה אתה יכול לראות לאן ומה להתחבר. סימנתי גם היכן נמצא סיכת MISO, MOSI ו- SCK אתה צריך את הסיכה הזו כדי לצרוב אתחול האתחול. עוד על צריבת מטען אתחול אתה יכול לרד בדף הארדואינו הרשמי כאן:

www.arduino.cc/en/Tutorial/ArduinoToBreadboard

אתה צריך מתכנת או ארדואינו אחר כדי לשרוף אותו. לאחר הצריבה אתה יכול לתכנת אותו באמצעות ממיר USB-UART או אותו מתכנת בו אתה משתמש לצריבת מטען אתחול.

לאחר העלאת התוכנית תוכל לחבר סרוו ללוח. סרוו אחרון (בסוף הנחש) הוא סרוו 1 וסרוו 8 הוא הקרוב ביותר לראש הנחש.

אין לוח מייצב כלשהו על הלוח ולכן המתח המרבי שתוכל להתחבר אליו הוא 5V.

מנועי Atmega כמו גם סרוו יעבדו עם 3, 7V Li-Po ואני ממליץ להשתמש בו לפרויקט הזה מכיוון שהוא קטן מאוד וחזק מאוד. אתה יכול למצוא אותו בצעצוע RC ישן (מצאתי את שלי במסוק RC הישן).

הוספתי ללוח סיכות RX ו- TX לתכנות אך גם להרחבה עתידית, ניתן להתחבר לכאן חיישנים או למשל מודול בלוטות '.

שלב 6: תכנית

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

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

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

#לִכלוֹל

SoftwareServo servo1, servo2, servo3, servo4, servo5, servo6, servo7, servo8;

int b_pos, c_pos, d_pos, e_pos; פקודת מחרוזת; הפרש int = 30; int angle1 = 90; int angle2 = 150;

int ser1 = 30;

int ser2 = 70; int ser3 = 110; int ser4 = 150;

int מינימום = 40;

int מקסימום = 170;

bool increment_ser1 = true;

bool increment_ser2 = true; bool increment_ser3 = נכון; bool increment_ser4 = נכון;

bool increment_ser5 = true;

int ser5 = 90;

bool increment_ser6 = true;

int ser6 = 90;

הגדרת בטל () {

Serial.begin (9600); servo1.attach (3); servo2.attach (5); servo3.attach (6); servo4.attach (9); servo5.attach (10); servo6.attach (11); servo7.attach (12); servo8.attach (13);

servo1.write (90);

servo2.write (130); servo3.write (90); servo4.write (100); servo5.write (90); servo6.write (90); servo7.write (90); servo8.write (90);

}

לולאת חלל () {

קָדִימָה(); SoftwareServo:: refresh (); }

חלל קדימה () {

אם (increment_ser1) {

ser1 ++; } אחר {ser1--; }

אם (מקסימום ser1) {

increment_ser1 = false; }

servo1.write (ser1);

אם (increment_ser2) {

ser2 ++; } אחר {ser2--; }

אם (ser2 מקסימום) {

increment_ser2 = false; }

servo3.write (ser2);

אם (increment_ser3) {

ser3 ++; } אחר {ser3--; }

if (ser3 מקסימום) {

increment_ser3 = false; }

servo5.write (ser3);

אם (increment_ser4) {

ser4 ++; } אחר {ser4--; }

if (ser4 מקסימום) {

increment_ser4 = false; }

servo7.write (ser4);

עיכוב (6);

}

שלב 7: סיכום

סיכום
סיכום
סיכום
סיכום

אני חושב שהרובוט הזה נראה טוב מאוד. רציתי להכין רובוט נחש אבל בסופו של דבר הכנתי משהו שנראה דומה לתולעת. אבל עובד יפה מאוד. אם יש לך שאלות השאירו תגובה או כתבו לי: [email protected]

אתה יכול לקרוא גם על הרובוט הזה כאן באתר שלי (בפולנית):

nikodembartnik.pl/post.php?id=3

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

תחרות רובוטיקה 2016
תחרות רובוטיקה 2016
תחרות רובוטיקה 2016
תחרות רובוטיקה 2016

פרס שני בתחרות רובוטיקה 2016