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

רובוט לאיזון עצמי: 6 שלבים (עם תמונות)
רובוט לאיזון עצמי: 6 שלבים (עם תמונות)

וִידֵאוֹ: רובוט לאיזון עצמי: 6 שלבים (עם תמונות)

וִידֵאוֹ: רובוט לאיזון עצמי: 6 שלבים (עם תמונות)
וִידֵאוֹ: עשר הנשים הכי גבוהות בעולם┃טופטן 2024, נוֹבֶמבֶּר
Anonim
רובוט לאיזון עצמי
רובוט לאיזון עצמי

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

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

שלב 1: דרישות

דרישות
דרישות
דרישות
דרישות
דרישות
דרישות

הרובוט מבוסס על לוח בקר ג'ימבל נטול מברשות. יש כמה וריאציות קלות ללוח זה, אבל כל עוד יש לך אחת עם שבב ATmega328 ובקרי מנוע L6234 אתה אמור להיות בסדר. אם תחפש "לוח מרטינז" בתמונות Google, תראה שיש כמה לוחות עם מחבר קל לשבב ה- IMU ו/או הסוללה, במקום כותרות סיכה או חורים. במקרה האחרון, זה יהיה שימושי אם תזמין חבילה של סיכות כותרת, שתוכל להלחם לתוך החורים.

רשימת חלקים

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

  • בקר: Martinez BoardDX.com (מגיע גם עם ה- IMU וכמה סיכות כותרת).
  • IMU: MPU6050
  • סוללה (סוללת 450 mAh 3S LiPo) הערה: תזדקק גם למטען 3S LiPo eBay.com
  • מנוע 2x: מנוע ללא מברשות 2208, KV100DX.com
  • גלגלים (אתה יכול להשיג אותם מצעצועים קיימים או מלגו)
  • 6x בורג M2 5 מ"מ
  • 8x בורג M3 (אורך תלוי בחומר החיצוני שלך, אחד צריך להיות ארוך במיוחד)
  • שבב בלוטות 'HC-05 (הקפד להשיג אחד עם לוח ממשק טורי מצורף, לא רק שבב חשוף) חשוב: ודא שבשבב יש סיכה המסומנת KEY.
  • חוטים: DuPont נקבה לנקבה קניית חבילה של 20 חוטים תהיה מספיקה
  • סרט וולקרו
  • כבל USB לחיבור בקר למחשב
  • אופציונלי: כותרת pinsDX.com (ניתן לחתוך או לשבור אותן לאורך הרצוי)
  • מכונות כביסה ומרווחי פלסטיק

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

שלב 2: תצורת שבב Bluetooth

תצורת שבב Bluetooth
תצורת שבב Bluetooth

לאחר שתשיג את כל החלקים, הגיע הזמן לתצורת שבב ה- Bluetooth. תזדקק לכבל USB כדי לחבר את לוח הבקר למחשב שלך וכן את Arduino IDE כדי לתקשר עם הרכיבים.

לשם כך, עליך להוריד את הקובץ:

HC-05_Serial_Interface.ino

לאחר מכן בצע את השלבים הבאים:

  1. חבר את הבקר למחשב באמצעות כבל USB.
  2. פתח את קובץ.ino עם ה- Arduino IDE.
  3. ב- IDE, עבור אל כלים, לוח וודא שהוא מוגדר ל- Arduino/Genuino Uno.
  4. כעת עבור אל כלים, יציאה והגדר אותו ליציאת ה- COM שאליה מחובר הבקר. בדרך כלל יש רק יציאה אחת. אם יש מספר, בדוק את מנהל ההתקנים (ב- Windows) כדי לברר איזה מהם הוא הבקר.
  5. כעת, לחץ על כפתור העלאה ב- IDE והמתן עד להעלאת ההעלאה. לאחר מכן, נתק את כבל ה- USB מהמחשב או מהבקר.

לאחר שתעשה זאת, חבר את HC-05 באמצעות כבלי DuPont כדלקמן:

בקר HC-05

מפתח +5V GND GND TXD RX RXD TX

כעת חבר שוב את כבל ה- USB, ולאחר מכן חבר את סיכת ה- VCC של HC-05 לעוד 5V בבקר. הנורית צריכה להבהב עם מרווח של ~ 1 שנייה.

ב- IDE Arduino, בחר את יציאת ה- COM הנכונה, ולאחר מכן עבור אל כלים, צג סידורי.

הגדר את האפשרות Ending line in the Monitor Serial ל- הן NL & CR. הגדר את קצב השידור ל- 38400. כעת תוכל להשתמש במסך הסידורי כדי לשלוח פקודות התקנה לשבב ה- Bluetooth. אלה הפקודות:

AT בדוק את החיבור

AT+NAME קבל/הגדר שם תצוגת Bluetooth AT+UART קבל/קבע קצב שידור AT+ORGL אפס את ברירות המחדל של היצרן AT+PSWD קבל/הגדר סיסמת Bluetooth

כדי לשנות את השם, הסיסמה וקצב השידור של מכשיר ה- Bluetooth, שלח את הפקודות הבאות:

AT+NAME = "שם דוגמה"

AT+PSWD = "PassWord123" AT+UART = "230400, 1, 0"

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

שלב 3: חיבור הגלגלים למנועים

חיבור הגלגלים למנועים
חיבור הגלגלים למנועים
חיבור הגלגלים למנועים
חיבור הגלגלים למנועים

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

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

שלב 4: יצירת החיצוני

יצירת החוץ
יצירת החוץ

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

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

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

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

חשוב לעבוד כמה שיותר מדויק כדי ליצור חיצוני סימטרי מושלם (כמעט)

שלב 5: התאמת הרכיבים

התאמת הרכיבים
התאמת הרכיבים

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

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

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

שבב בלוטות '

חבר את סיכת ה- VCC של שבב Bluetooth ל- +5V בבקר ואת ה- GND Bluetooth ל- GND של הבקר. סיכת TXD של הבקר עוברת ל- Bluetooth RX וסיכת RXD בבקר עוברת אל סיכת ה- Bluetooth TX. לאחר מכן פשוט הדביקו את שבב ה- Bluetooth איפשהו בלוח העץ באמצעות סרט סקוטש.

שבב תנועה

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

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

מתג הפעלה

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

חיבור הצדדים

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

כעת אתה מוכן להעלות את הקוד ולכוון את הבקר.

שלב 6: העלאת והתאמת הקוד

כדי להעלות את הקוד, אתה צריך מחשב עם Arduino IDE. הורד את קובץ ה-.ino למטה ופתח אותו באמצעות Arduino IDE. העלאתו לבקר מתבצעת באותו אופן כפי שעשית עם הקוד מהגדרת ה- Bluetooth.

כדי לגרום לרובוט לעבוד, עליך להוריד את האפליקציה 'Joystick bluetooth Commander' מחנות Play. הפעל את כוח הרובוט והנח אותו על הרצפה, בחלקו הקדמי או האחורי. הפעל את האפליקציה והתחבר לשבב ה- Bluetooth. Datafield 1 יעבור מ- XXX ל- READY לאחר שהרובוט יכייל את עצמו (5 שניות למקם אותו על צדו, ואחריו 10 שניות כיול). אתה יכול להפעיל את הרובוט על ידי החלפת כפתור 1 באפליקציה. כעת הניח את הרובוט אנכית על הקרקע והרפה ברגע שאתה מרגיש שהמנועים פועלים. זה הרגע בו הרובוט מתחיל לאזן את עצמו.

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

כוונון הבקר

אי שם בקוד תמצא 4 משתנים, המתחילים ב- k. אלה הם kp, kd, kc ו- kv. התחל בהגדרת כל הערכים לאפס. הערך הראשון שצריך להגדיר הוא kp. ערך ברירת המחדל של kp הוא 0.17. נסה להגדיר אותו למשהו הרבה יותר נמוך כמו 0.05. כבה את הרובוט, העלה את הקוד וראה כיצד הוא מנסה לאזן. אם זה נופל קדימה, הגדל את הערך. הדרך החכמה ביותר לעשות זאת היא באמצעות אינטרפולציה:

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

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

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

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

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

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

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

הערה חשובה לגבי סוללות LiPo

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

מוּמלָץ: