איתור רובוט עם MegaTag
אם תנוחת הרובוט של ה-Limelight שלך הוגדרה בממשק המשתמש באינטרנט, ומפת השדה הועלתה דרך ממשק המשתמש באינטרנט, אז מיקום הרובוט במרחב השדה יהיה זמין דרך getBotpose() ומערך ה-"botpose" ב-networktables (x,y,z במטרים, roll, pitch, yaw במעלות).
אלגוריתם איתור הרוב וט שלנו נקרא MegaTag. אם יותר מתג אחד נראה, הוא עמיד בפני עמימויות של תגים בודדים ורעש בתמונה. אם כל נקודות המפתח הן במישור אחד, עדיין קיים סיכון מסוים להיפוך עמימות.
- גליל ירוק: תנוחת רובוט לכל תג בנפרד
- גליל כחול: תנוחת רובוט ישנה
- גליל לבן: תנוחת רובוט MegaTag
שימו לב לעמימות התנוחה הברורה כאן:
שימו לב כיצד תנוחת הרובוט החדשה (גליל לבן) יציבה מאוד בהשוואה לתנוחת הרובוט הישנה (גליל כחול). אתם יכולים לצפות גם בערכי tx ו-ty.
זה לא מוגבל לתגים מישוריים. זה מתרחב לכל מספר של תגים בתלת-ממד מלא ובכל כיוון. תגי רצפה ותגי תקרה עובדים בצורה מושלמת.
הנה תרשים המדגים היבט אחד של איך זה עובד במקרה מישורי פשוט. התוצאות למעשה טובות יותר ממה שמוצג, כיוון שה-MegaTag המוצג יש שגיאה משמעותית המוחלת על שלוש נקודות במקום על נקודה אחת. ככל שה-MegaTag התלת-ממדי המשולב גדל בגודל ובמספר נקודות המפתח, היציבות שלו עולה.