משמעויות מתמטיות של מסנן קלמן למהנדסי עיבוד אותות

על מסנן קלמן הסברנו במאמר היתוך נתונים באמצעות מסנן קלמן ושיטות מתקדמות אחרות. הפעם נתאר אותו באמצעות תורת עיבוד האותות.
מהנדסי עיבוד אותות מתמודדים עם אתגר משמעותי בתכנון מערכות ניווט עבור רחפנים שדורשות היתוך נתונים בין חיישנים בעלי תכונות שונות. מערכת הניווט משלבת נתונים מהירים שנוטים לסחיפה מרכיבי IMU, יחד עם נתונים אטיים ומדויקים יותר שתנאי סביבה משפיעים עליהם, דוגמת מקלטי GNSS וברומטרים. שילוב חיישני LiDAR למדידת מרחק ישיר ורכיבי Optical Flow שמעריכים מהירות יחסית מתוך רצף תמונות יוצר מערכת עיבוד אותות מתקדמת ועשירה. וקטור המצב במערכת כזו מכיל מיקום תלת ממדי, מהירות קווית, זוויות גלגול, עלרוד וסבסוב, יחד עם שגיאות הטיה שמאפיינות רכיבי IMU. אופן עבודת האלגוריתם משתנה מהותית בין מודלים ליניאריים למודלים לא ליניאריים בהתאם לאופי הדינמי שמאפיין את הטיסה.
מומחי עיבוד אותות מיישמים את מנגנון Kalman Filter כמשערך נתונים סטטיסטי אופטימלי שממזער את שגיאת הריבועים הפחותים עבור מערכות שמכילות רעש לבן גאוסי. המסנן פועל בצורה רקורסיבית ודורש רק משתני מצב שמייצגים את זמן ההווה ואת מטריצת השונות המשותפת P שמייצגת את אי הוודאות, גישה שחוסכת עיבוד חלונות זמן שלמים של אותות היסטוריים. הפעולה מפצלת את התהליך לשני שלבי חישוב עוקבים שכוללים חיזוי ועדכון. בשלב החיזוי, בקר הטיסה של הרחפן מנצל מודל פיזיקלי לינארי כדי לקדם את משתני המצב x צעד אחד קדימה בזמן. אם נבחן לדוגמה תהליך שערוך גובה פשוט, המעבד לוקח מהירות אנכית ומייצר תחזית עתידית של גובה על סמך משוואות קינמטיקה, תוך שהוא מגדיל את אי הוודאות הכללית בעזרת המשוואה P = F P Fᵀ + Q שכן מודל פיזיקלי מכיל אי דיוקים שמטריצה Q מכמתת. בשלב העדכון, החיישן מספק נתון חדש z, כמו קריאת לחץ אוויר שמגיעה מחיישן Barometer. המסנן מחשב כעת גורם שקלול K שמכונה Kalman Gain, גורם שמאזן במדויק בין רמת ביטחון שמשויכת לתחזית פיזיקלית לבין רמת אמון שמשויכת לרעש המדידה של החיישן. הבקר מכפיל את שגיאת התחזית באותו גורם שקלול ומוסיף את התוצאה אל מצב שקדם לו בעזרת הביטוי x = x + K(z − H x), פעולה שמעדכנת את הערכת הגובה ומקטינה את מטריצת השונות המשותפת של המערכת.
מסנן Kalman Filter מציע מענה מצוין לתרחישים שבהם הרחפן מרחף במקום או מתקדם בקו ישר במהירות ובגובה קבועים. במצבים אלו אנו מזהים קשר ליניארי לחלוטין בין התאוצה והמהירות הזוויתית שרכיב IMU קורא לבין שינויי מיקום וגובה שחיישני GNSS ו-Barometer מספקים. מבחינת מהנדס עיבוד האותות, המסנן פועל כמערכת אדפטיבית שממזערת שגיאת MMSE בלולאה בת שני שלבים. בשלב הראשון המסנן חוזה וקטור מצב x_pred בעזרת מטריצת דינמיקה A ומטריצת בקרה B לפי המשוואה x_pred = A x + B u כאשר משתנה u משקף פקודות מנוע. במקביל מטריצת השונות המשותפת P שמתארת אי ודאות במערכת גדלה עקב רעש תהליך Q שמייצג הפרעות סביבתיות אקראיות כמו משבי רוח. המערכת מחשבת גדילה זו לפי הנוסחה P_pred = A P Aᵀ + Q כאשר Aᵀ מסמלת שחלוף של מטריצה A. בשלב העדכון המערכת קולטת מדידות בפועל ומחשבת שארית מדידה y לפי הנוסחה y = z − H x_pred. וקטור z מרכז נתוני חיישנים ומטריצת מדידה H ממפה מצב למרחב מדידה. האלגוריתם מחשב את הגבר קלמן K לפי המשוואה K = P_pred Hᵀ inv(H P_pred Hᵀ + R) כאשר מטריצה R מגדירה רעש מדידה של חיישנים. כאשר הרחפן טס בתוך מבנה סגור שחוסם קליטת לוויינים, אנו נראה זינוק לאינסוף בערכי רעש במטריצה R ששייכים למקלט GNSS. תגובה זו מאפסת רכיבי הגבר תואמים ומובילה את המסנן להתעלם מנתונים אלו ולהישען באופן בלעדי על נתוני LiDAR יחד עם Barometer ו-Optical Flow. בסוף התהליך המערכת מעדכנת מצב לפי x_new = x_pred + K y ומקטינה את מטריצת אי הוודאות לפי P_new = (I − K H) P_pred כאשר משתנה I מהווה מטריצת יחידה.
כאשר מפתחים עוברים מעולם של תנועות ישרות למערכות ניווט אמיתיות שפועלות במרחב תלת ממדי, הם פוגשים קינמטיקה בעלת אופי לא לינארי מובהק. תהליכי עיבוד אותות שמשלבים נתונים מחיישני IMU וממקלטי GNSS מחייבים שימוש בפונקציות מעבר f ופונקציות מדידה h שכוללות מכפלות זוויתיות ופעולות טריגונומטריות מורכבות שמכשילות את הפעולה של מסנן קלמן הרגיל. בקר הטיסה דוגם נתוני IMU במערכת צירים מקומית של הרחפן ונעזר במטריצות סיבוב שמכילות פונקציות טריגונומטריות מורכבות כדי להשליך מדידות על מערכת צירים גלובלית. בנוסף, המרת מהירות זוויתית שחיישן Optical Flow מפיק למהירות קווית במטרים לשנייה דורשת הכפלה ישירה בגובה שחיישן LiDAR מספק. שילובים אלו יוצרים קשרים לא ליניאריים מובהקים בין משתני המצב השונים.
כדי לפתור מכשול מתמטי זה, מהנדסים משתמשים באלגוריתם Extended Kalman Filter שמבצע לינאריזציה מקומית של המערכת סביב נקודת עבודה רגעית. במקום לעבוד עם מטריצות קבועות, מעבד האותות מחשב בכל צעד זמן מחדש את מטריצת Jacobian שמכילה נגזרות חלקיות של פונקציות המערכת, לדוגמה H = ∂h/∂x. המערכת מקדמת מצב פיזיקלי דרך פונקציות לא ליניאריות מקוריות כדי לשמור על דיוק, אך מחשבת התפשטות שונות סטטיסטית ואת הגבר קלמן בעזרת מטריצות Jacobian. למרות שגישה זו נפוצה מאוד בתעשייה, היא מסתמכת על פיתוח טור Taylor מסדר ראשון בלבד ומוחקת מידע סטטיסטי רב ברגע שפונקציה מציגה שינויים חריפים. אובדן מידע כזה גורם לעיוותים בהתפלגות שגיאה כאשר הרחפן חווה סחיפה אינרציאלית משמעותית או מבצע תמרוני טיסה חדים, ותמרונים אלו גורמים לא פעם למסנן לספק תחזיות שגויות ומובילים להתבדרות מהירה של הניווט.
מערכות ניווט מתקדמות שדורשות היתוך נתונים הדוק ממצלמות Optical Flow ומחיישני LiDAR יחד עם מדידות אינרציאליות מייצרות משוואות מדידה בעלות רמת אי לינאריות חריפה ביותר שגורמת למטריצות נגזרות של אלגוריתם EKF לאבד משמעות פיזיקלית. מומחי בקרה משתמשים במקרים אלו באלגוריתם Unscented Kalman Filter שמציע גישה מתקדמת לפתרון בעיית האי ליניאריות ופועל ללא צורך בחישוב נגזרות או מטריצות Jacobian. הגישה נשענת על תובנה סטטיסטית שקובעת שקל הרבה יותר לקרב ולייצג התפלגות הסתברותית מאשר לנסות לקרב פונקציה מתמטית מסובכת. במקום חישובי נגזרות, מעבד המערכת מייצר סט דגימות דטרמיניסטי שמהנדסים מכנים בשם מערך Sigma Points. עבור מערכת שכוללת n משתני מצב, הבקר מייצר מערך של 2n+1 נקודות וממקם אותן במרחב סביב ממוצע מצב רגע הווה של הרחפן, תוך שהוא מחשב רדיוס פיזור בעזרת פעולות מתמטיות על שורש מטריצה של אי ודאות כדוגמת הפעולה x ± √(cP) שבה קבוע c שולט במרחק הדגימות.
מעבד המערכת מעביר כל נקודת דגימה בנפרד ישירות דרך משוואות לא ליניאריות שלמות, בדיוק כפי שהן מופיעות במודל פיזיקלי מקורי. שלב זה כולל העברה של כל תרחישי הזוויות והמהירויות יחד עם הכפלה לא ליניארית בין נתוני Optical Flow לבין גובה LiDAR. לבסוף, המסנן אוסף נקודות שחזרו מהפונקציה ומחשב מחדש ממוצע ושונות משותפת בעזרת סכום שמשקלל תוצאות דרך משקולות מתאימות. תהליך אלגנטי זה מצליח ללכוד התפלגות עדכנית ברמת דיוק שמשתווה לפיתוח טור Taylor מסדר שני או שלישי, ומשמר פונקציית צפיפות מקורית של האותות. טכניקה זו מייצרת מערכת ניווט יציבה במיוחד שמעניקה לרחפן יכולת לשמור על ניווט חלק, וכן להעריך מצב מערכת בצורה אמינה גם תחת תנאי טיסה שכוללים תמרונים אקרובטיים, האצות חזקות או שינויי גובה פתאומיים.

איך זה קשור אלינו במתמטיקאי מחקר ופיתוח בע"מ? אנחנו מקימים בימים האלה ארגון שנותן מענה הוליסטי מבוסס רחפנים מאיסוף הנתונים השיטתי ועד לתובנות ולפתרונות ולתוצרים עבור לקוחות מענפי התכנון, הבנייה, האכיפה, החקלאות והתשתיות.
אם אתם זקוקים לשותף טכנולוגי עתיר ניסיון שיודע לספק שירותי מחקר ופיתוח Hands-on, מארגוני אנטרפרייז ועד סטארט-אפים, ממשרדי תכנון ועד למפעלי אנרגיה, על מנת להוציא חזון אלגוריתמי שלכם מהכוח אל הפועל? הבה נדבר!
שלמה יונה,
מייסד ומדען ראשי,
מתמטיקאי מחקר ופיתוח בע"מ
053-7326360
פודקאסט על החברה ועליי, שלמה יונה, ואופן העבודה שלנו ואיתנו:

.png)
Comments