PDA

צפייה בגרסה מלאה : איזה כיף לגלות את הפורום הזה + בקשת עזרה



endrew
18-02-2011, 00:20:23
אני משתמש בג'יירואים של invensense על הרחפן שלי, וגיליתי שהקריאות מהג'יירואים מאוד רועשות עקב ויברציות במנוע. אני מצרף כאן גרף של הקריאות.

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

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

Arman
18-02-2011, 04:14:04
צריך לשים על ספוגים מיוחדים את הג'ירואים על מנת לשכך את הויברציות.
ניסית לשים ספוגים שנועדו לג'רואים של מסוקים?
האם יש לך פילטר לIMU בחלק אנלוגי ודיגיטלי?
מה יחידות של ציר הזמן בגרף?
יש לך סרטוט של המעגל?
רצוי לממש פילטר קלמן (Kalman Filter ).
אפשר גם לממש LPF דיגיטלי רגיל בנוסף לאנלוגי, אבל פילטר קלמן יתן ביצועים טובים יותר.

ZvikaF
18-02-2011, 06:40:34
מה קצב הדגימה?, אני מניח שאלו קריאות RAW , האם יש LP פילטר בכניסה האנלוגית ?
להקטנת ויברציות רצוי להדביק את הגיירואים על דבק דו צידי עם ספוג באמצע.

erazz
18-02-2011, 06:59:27
ברוך הבא.

אמרתי לך ששווה לבקר כאן :)


בינתיים ערכתי בדיקה של הג'ירו אצלי וגיליתי שיש לו יכולות פילטור לא רעים בכלל. כרגע אני מריץ פילטר HP וגם LP ועושה רושם שאני מקבל אות מאוד נקי. אנסה להוציא גרף היום.


ברוך הבא :)

איציק רונן
18-02-2011, 09:02:49
ראשית ברוך הבא. כמו שכתבתי לארז, אנשים טובים מושכים אנשים טובים.

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

רצ"ב תמונה.

ויבריציק

endrew
18-02-2011, 15:14:47
צריך לשים על ספוגים מיוחדים את הג'ירואים על מנת לשכך את הויברציות.
ניסית לשים ספוגים שנועדו לג'רואים של מסוקים?
האם יש לך פילטר לIMU בחלק אנלוגי ודיגיטלי?
מה יחידות של ציר הזמן בגרף?
יש לך סרטוט של המעגל?
רצוי לממש פילטר קלמן (Kalman Filter ).
אפשר גם לממש LPF דיגיטלי רגיל בנוסף לאנלוגי, אבל פילטר קלמן יתן ביצועים טובים יותר.

יש ספוגים מיוחדים לג'יירואים של מסוקים? הם לא משתמשים בסתם סרט הדבקה דו צדדי?

אין לי אפשרות לפלטר אנלוגית מכיוון שהתקשורת עם הג'יירואים היא דיגיטלית. LPF יכול לעזור אבל הוא יכניס השהיות למדידה ולכן אני מנסה להימנע מזה.

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

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

endrew
18-02-2011, 15:24:12
ראשית ברוך הבא. כמו שכתבתי לארז, אנשים טובים מושכים אנשים טובים.

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

רצ"ב תמונה.

ויבריציק



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

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

תדר הדגימה הוא כ 100 הרץ.


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

dror
18-02-2011, 17:37:09
ייתכן מאד שתדר הדגימה שלך נמוך מדי והרעש שאתה רואה הוא בתדר גבוה בהרבה. בקוואד הישן שלי היו לי בעיות עם רעשים בתדרים גבוהים יחסית, פתרתי על ידי דגימה ב-1000 הרץ (בערך) וסינון LPF דיגיטלי.
אני מבין שהג'יירו שלך דיגיטלי, מן הסתם יש לו תדר דגימה פנימי מסויים וסינון LPF פנימי, לא? נסה לראות אם אפשר לשחק עם הפרמטרים האלו.

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

דרור

Arman
18-02-2011, 17:52:55
יש ספוגים מיוחדים לג'יירואים של מסוקים? הם לא משתמשים בסתם סרט הדבקה דו צדדי?

אין לי אפשרות לפלטר אנלוגית מכיוון שהתקשורת עם הג'יירואים היא דיגיטלית. LPF יכול לעזור אבל הוא יכניס השהיות למדידה ולכן אני מנסה להימנע מזה.

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

בהקשר של IMU יש אנשים שמנוונים את המסנן ומשתמשים בו רק כדי לשלב מידע מחיישנים, וללא מודל מתמטי, אבל זה כבר לא באמת קלמן פילטר. בנוסף, מכייון שאנחנו לא באמת עוסקים ברעש לבן (התוחלת של הרעש מהג'יירואים שונה מאפס) ומכיוון שאנחנו לא באמת ממדלים את הרעש בצורה מדויקת המסנן כבר לא אופטימלי. מה שקורה בפועל הוא שמכיילים ידנית את דרגות החופש - שהם הנתונים של הרעש עד שמשיגים ביצועים טובים לפי העין, או פרמטר אחר. בקיצור זו שיטה שלדעתי מסובכת מאוד וללא ייתרון על שיטות אחרות.
המדבקות של ג'ירויאם זה לא סתם דבק דו צדדי! אתה צריך משהו דומה בלינק.
http://cgi.ebay.com/Futaba-Gyro-Foam-Mounting-Pads-30x30mm-3-FUTFSH58-/360312996815?pt=Radio_Control_Parts_Accessories&hash=item53e45403cf

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

ZvikaF
18-02-2011, 18:07:03
Aliasing ?

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

dror
18-02-2011, 19:11:55
Aliasing ?

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

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

דרור

Arman
18-02-2011, 22:45:50
כמובן, אבל צריך antialiasing filter לפני שדוגמים, אחרת לא עשינו כלום. הוא לא חייב להיות (רק) אנלוגי, אפשר לדגום בקצב גבוה, לפלטר ואז לעבד בקצב נמוך. זה מה שהזכרתי למעלה.

דרור

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

dror
19-02-2011, 09:37:24
תמיד חובה לשים פילטר אנלוגי והוא צריך לסנן כל מה שמעל תדר דגימה, זה מה שנקרא antialiasing פילטר. כאשר אין ברירה אז שיטת דגימה בתדר גבוה ומיצוע תעזור אך עדיין נחוץ פילטר אנלוגי המתאים לתדר הגבוה.
הבעיה עם רכיבים בעלי יציאה דיגיטלית בלבד היא שהפילטר האנלוגי שלהם הוא פנימי, וייתכן והוא לא מתאים לקצב דגימה נמוך. לכן צריך לדגום בקצב גבוה מספיק, ולפלטר הלאה אם צריך בצורה דיגיטלית.

endrew
19-02-2011, 11:35:31
טוב, דבר ראשון אני לא יודע למה לא חשבתי על זה קודם אבל הרעיון של שימוש בשיטות לשיכוך ג'יירואים של מסוקים הוא מעולה, תודה רבה לכם.

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

dror
19-02-2011, 12:09:47
אני לא חושב שיש קשר לנושא הרעש, למרות שברור שהעלאת תדר הדגימה יעזור מאוד (יהיה אפשר להשתמש ב LPF להנחתת הרעשים ללא השהיות גדולות) הבעיה היא שזה לא תמיד אפשרי - מגבלות מעבד...
אפשר בקלות לדגום בקצב גבוה יחסית גם עם מעבד חלש, בתנאי שאתה עושה דברים פשוטים. ראה לדוגמה את הקוד כאן: http://code.google.com/p/caspiquad/source/browse/trunk/CaspiQuad/adc.cpp

endrew
19-02-2011, 12:23:09
הבעיה היא כשהמעבד צריך לעשות עוד דברים - לקרוא מהאקסלרומטרים, לשערך את הזויות, לקרוא מהGPS לקרוא מהמגנטומטר, ולחשב את אותות הבקרה המתאימים... מהר מאוד אתה מגיע למצב שמעבד 8 ביט פשוט לא עומד בעומס...

dror
19-02-2011, 12:28:07
אני מסכים שזו פינה שמראש לא כדאי להגיע אליה. הקוד למעלה הוא למעבד 8 ביט ועד כמה שאני זוכר לא מעמיס אותו מי-יודע-מה. אני הרצתי את כל מה שכתבת למעט GPS.

endrew
19-02-2011, 12:39:37
ולאיזה תדר עבודה הגעת?

dror
19-02-2011, 12:53:18
100 הרץ, ויכולתי להגיע ל-200 בלי בעיות (יש לי מדידה של כמה זמן לוקח כל loop) אבל לא ניסיתי. מה שכן יש לי הרבה תרגילים כדי לחסוך חישובי floating point.