תוכן עניינים:
וִידֵאוֹ: רובוט איזון עצמי - אלגוריתם בקרת PID: 3 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:11
פרויקט זה נבנה מכיוון שהתעניינתי ללמוד עוד על אלגוריתמי בקרה וכיצד ליישם ביעילות לולאות PID פונקציונליות. הפרויקט עדיין נמצא בשלב הפיתוח שכן עדיין לא צריך להוסיף מודול Bluetooth שיאפשר שליטה על הרובוט מסמארטפון מופעל Bluetooth.
מנועי DC N20 שהיו בשימוש היו זולים יחסית, ולכן יש בהם לא מעט משחק. זה מוביל לכמות קטנה של טלטולים כשהמנועים מתגברים על ה'רפיון 'מכיוון שהוא מחיל מומנט על הגלגלים. מכאן שכמעט בלתי אפשרי להשיג תנועה חלקה לחלוטין. הקוד שכתבתי הוא פשוט למדי אך מדגים ביעילות את היכולות של אלגוריתם ה- PID.
סיכום הפרויקט:
מארז הרובוט מודפס בתלת מימד באמצעות מדפסת Ender 3 ומיועד להתאמה הדדית.
הרובוט נשלט על ידי Arduino Uno שלוקח נתוני חיישנים מ- MPU6050 ושולט על מנועי DC באמצעות נהג מנוע חיצוני. הוא פועל באמצעות סוללה של 7.4V, 1500mAh. נהג המנוע מווסת את זה ל- 5V כדי להפעיל את הארדואינו ומספק 7.4V למנועים.
התוכנה נכתבה מאפס בעזרת ספריות 'Arduino-KalmanFilter-master' ו- 'Arduino-MPU6050-master' מ- gitHub.
אספקה:
- חלקים מודפסים בתלת מימד
- ארדואינו UNO
- חיישן 6-צירים MPU6050
- נהג מנוע D. C
- מנועי N20 DC (x2)
- סוללה 9V
שלב 1: בניית רובוט
הדפסה והרכבה
כל המבנה צריך להיות מתאים לעיתונות, אך השתמשתי בדבק על כדי לאבטח את הרכיבים כדי להבטיח שהרובוט יהיה נוקשה לחלוטין בעת איזון.
תכננתי את החלקים ב- Fusion 360 וייעלתי כל חלק להדפסה ללא תומכים על מנת לאפשר סובלנות הדוקה יותר וגימור משטח נקי יותר.
ההגדרות שהיו בשימוש במדפסת Ender 3 היו: 0.16mm Layer Heights @ 40% מילוי לכל החלקים.
שלב 2: רובוט הדפסה תלת מימדית
מארז (x1)
גלגל שמאל (x2)
בית מנועים שמאלי (x2)
מארז ארדואינו (x1)
שלב 3: אלגוריתם בקרת PID
כתבתי אלגוריתם PID Control מאפס באמצעות ספריות 'Arduino-KalmanFilter-master' ו- 'Arduino-MPU6050-master' מ- gitHub.
הנחת היסוד של האלגוריתם היא כדלקמן:
- קרא נתונים גולמיים מ- MPU6050
- השתמש במסנן קלמן כדי לנתח נתונים מג'ירוסקופ וממד תאוצה גם כדי לבטל אי דיוקים בקריאות הג'ירוסקופ עקב האצת החיישן. זה מחזיר ערך מוחלק יחסית לגובה החיישן במעלות לשני מקומות עשרוניים.
- חישוב ה- E rror בזווית, כלומר: הזווית שבין החיישן לנקודת ההגדרה.
- חשב שגיאה פרופורציונלית כ (קבוע של מידתיות x שגיאה).
- חשב שגיאה אינטגרלית כסכום הפעולה של (קבוע של שילוב x שגיאה).
- חישוב שגיאה נגזרת קבועה כמו [(קבוע בידול) x (שינוי בטעות / שינוי בזמן)]
- סכום כל השגיאות על מנת לתת את מהירות הפלט שנשלחת למנועים.
- חשב לאיזה כיוון לסובב מנועים על סמך סימן זווית השגיאה.
- הלולאה תפעל ללא הגבלת זמן ותתבסס על הפלט כשהקלט משתנה. זוהי לולאת משוב, שמשתמשת בערכי הפלט כערכי הקלט החדשים לאיטרציה הבאה.
השלב האחרון הוא לכוונן את פרמטרי ה- Kp, Ki & Kd של לולאת ה- PID.
- נקודת התחלה טובה היא להגדיל לאט את ה- Kp עד שהרובוט ינוע סביב נקודת האיזון ויכול לתפוס נפילה.
- לאחר מכן, התחל את Kd בסביבות 1% מהערך של Kp והגדל לאט עד שהתנודות נעלמות והרובוט גולש בצורה חלקה בעת דחיפה.
- לבסוף, התחל עם Ki בסביבות 20% מהק"פ ושנה עד שהרובוט "יעלה על" נקודת ההתחלה לתפוס נפילה פעילה ולחזור לאנכי.
מוּמלָץ:
רובוט איזון עצמי ממג'יקביט: 6 שלבים
רובוט איזון עצמי ממג'יקביט: הדרכה זו מציגה כיצד להכין רובוט לאיזון עצמי באמצעות לוח מגביט dev. אנו משתמשים ב- magicbit כלוח הפיתוח בפרויקט זה המבוסס על ESP32. לכן ניתן להשתמש בכל לוח פיתוח ESP32 בפרויקט זה
כיצד ליצור רובוט מבודד מרחוק תלת-ממד עם איזון עצמי: 9 שלבים (עם תמונות)
כיצד ליצור רובוט מבודד מרחוק תלת-ממד המודפס באופן עצמאי: זוהי אבולוציה של הגרסה הקודמת של רובוט B. 100% מקור פתוח / רובוט ארדואינו. ה- CODE, חלקי התלת -ממד והאלקטרוניקה פתוחים, אז אל תהסס לשנות אותו או ליצור גרסה ענקית של הרובוט. אם יש לך ספקות, רעיונות או זקוק לעזרה, צור
רובוט איזון עצמי דו גלגלי: 4 שלבים
רובוט איזון עצמי דו גלגלי: לעניות דעתי אתה לא יוצר אמיתי, אלא אם אתה לא בונה רובוט איזון עצמי דו גלגלי משלך.:-) אז הנה … והכי חשוב, זה עובד !!! הפרויקט הזה נראה פשוט מאוד. במקום זאת, זה דורש רמה טובה של ידע
רובוט איזון / רובוט 3 גלגלים / רובוט STEM: 8 שלבים
רובוט איזון / רובוט 3 גלגלים / רובוט STEM: בנינו רובוט איזון משולב ושלושה גלגלים לשימוש חינוכי בבתי ספר ובתוכניות חינוכיות לאחר הלימודים. הרובוט מבוסס על Arduino Uno, מגן מותאם אישית (כל פרטי הבנייה מסופקים), חבילת סוללות לי יון (כל מבנה
Arduino - איזון - רובוט איזון - איך להכין ?: 6 שלבים (עם תמונות)
Arduino - איזון - רובוט איזון | איך להכין ?: במדריך זה נלמד כיצד להכין רובוט איזון (איזון) ארדואינו המאזן את עצמו. ראשית אתה יכול להסתכל על סרטון ההדרכה למעלה