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

מדידת זווית באמצעות ג'ירו, מד תאוצה וארדואינו: 5 שלבים
מדידת זווית באמצעות ג'ירו, מד תאוצה וארדואינו: 5 שלבים

וִידֵאוֹ: מדידת זווית באמצעות ג'ירו, מד תאוצה וארדואינו: 5 שלבים

וִידֵאוֹ: מדידת זווית באמצעות ג'ירו, מד תאוצה וארדואינו: 5 שלבים
וִידֵאוֹ: מדידת זווית באמצעות מד זווית 2024, יולי
Anonim
מדידת זווית באמצעות ג'ירו, מד תאוצה וארדואינו
מדידת זווית באמצעות ג'ירו, מד תאוצה וארדואינו

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

שלב 1: מה שנצטרך:

מה שנצטרך
מה שנצטרך
מה שנצטרך
מה שנצטרך
מה שנצטרך
מה שנצטרך
מה שנצטרך
מה שנצטרך

ניתן להחליף חלק כלשהו, ויש לבצע שינויים בקוד כך שיתאימו לחומרה שלך. בפרויקט זה נשתמש:- לוח קרשים- מיקרו-בקר, השתמשתי ב- Arduinoboard- חוט- חוטי מגשר- ג'ירוסקופ XV-8100- Nunchuck Wii (עבור מד התאוצה)- מתאם Wii של Nunchuck עבור Arduino

שלב 2: בניית…

בִּניָן…
בִּניָן…
בִּניָן…
בִּניָן…
בִּניָן…
בִּניָן…

המעגל מורכב מג'ירוסקופ המחובר ישירות ליציאה 0 בארדואינו שלך ומחבר wii nunchuck ביציאת I2C. הרכבת הג'ירו: 1. - חבר את הג'ירו בלוח הלחם 2. - חוט דבר:- סיכת Vo מג'ירו מחוברת ליציאה אנלוגית 0 בארדואינו (חוט כתום בהיר)- פין G מג'ירו מחובר לקרקע (חוט לבן)- V+ סיכה מג'ירו מחובר ל- Vdd (3.3V) (חוט כתום) הרכבה מד התאוצה: 1. - חבר את המתאם ב Nunchuck2. - חבר את האגרוף לארדואינו באמצעות המתאם 3. - מקם את חיישן האקסל כמו התמונה למעלה

שלב 3: קצת מידע נוסף לפני שנמשיך

קצת מידע נוסף לפני שנמשיך
קצת מידע נוסף לפני שנמשיך
קצת מידע נוסף לפני שנמשיך
קצת מידע נוסף לפני שנמשיך
קצת מידע נוסף לפני שנמשיך
קצת מידע נוסף לפני שנמשיך

משני החיישנים אנו יכולים למדוד את הזווית אך באמצעות שתי טכניקות שונות. כדי למדוד את הזווית באמצעות הג'ירו עלינו לשלב את האות. אך מדוע עלינו לעשות זאת? מכיוון שהג'ירו נותן לנו את קצב הזווית, כך שדרך פשוטה להשיג את הזווית היא להכפיל את קצב הזווית בזמן [זווית = זווית + w * dt] כדי למדוד את הזווית באמצעות מד תאוצה עלינו לחוש את כוח הכבידה בכל ציר מד התאוצה, מה זה אומר, הקרנת האצת הכבידה בכל כיוון של החיישן נותנים לנו מושג לגבי הזווית. [angle_accel = arctg (Ay / sqrt (Ax^2 + Az^2))] אז למה שנשתמש בשני חיישן במקום אחד? כדי להפיק תועלת משני תכונות החיישן. אם אתה מסתכל על הגרפיקה גידול רציף של נתוני הג'ירו, זה נקרא סחף ונתוני מד התאוצה משתנים מאוד בזמן קטן. וכיצד למזג את שני האותות? נשתמש בטכניקה הנקראת מסנן משלים. אני לא יודע את התיאוריה המדויקת מאחורי זה, אבל זה עובד מצוין. יש קצת מידע באינטרנט, פשוט חפש בגוגל אם אתה צריך מידע נוסף. בקישור הזה יש הרבה מידע והוא יכול להיות שימושי. Filtered_angle = HPF*(filtered_angle + w*dt) + LPF*(angle_accel); כאשר HPF + LPF = 1 ניתן למצוא את הערכים של HPF ו- LPF בקישור הזה, בקובץ filter.pdf. תודה לכם מ- "ה- DIY Segway". רק לצורך הבדיקה נגדיר ערכים כאלה, HPF = 0.98 ו- LPF = 0.02.

שלב 4: קוד:

הקוד הוא הסתגלות מקוד שהשתמשתי בו בפרויקט אחר. כנראה שיש כמה משתנים שאינם בשימוש. השתמשתי בספרייה כדי לקרוא את נתוני nunchuck מתוך https://todbot.com/blog/. תודה טוד א. קורט. ההערות על קוד הן בפורטוגזית, ברגע שיהיה לי זמן פנוי, אני מתרגם אותו. פלט הקוד דרך השורה הסידרית כמה מספרים עם דפוס זה: dt: w: teta: pitch: filter_teta $ time: angular_velocity: gyro_angle: accel_angle: filtered_angle $ כך שתוכל לשמור ערכים אלה במסוף סדרתי ולשרטט גרפיקה או להשתמש בזווית לדברים אחרים. אם אתה זקוק להסבר כלשהו לגבי הקוד, אתה מוזמן לשאול. הקוד הוא רוכסן. פשוט פתח את הכניסה, פתח והעלה אותו לארדואינו שלך.

שלב 5: בדיקה ומסקנה

בדיקה ומסקנה
בדיקה ומסקנה
בדיקה ומסקנה
בדיקה ומסקנה

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

מוּמלָץ: