הפואנטה של מערכות אל-כשל

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

חברת Alauda מנסה להמציא ספורט חדש: מירוץ של רחפנים גדולים, שבכל אחד מהם יושב טייס אנושי. הרחפן שהתרסק, Airspeeder MK II, היה למרבה המזל רק אבטיפוס בשליטה מרחוק, וקטן יותר מהדגמים המתוכננים: אורכו 3 מטרים ומשקלו 95 קילוגרמים "בלבד". דקה וקצת אחרי תחילת הטיסה, לעיני צופים ומצלמות רבות (כולל שתיים על הרחפן עצמו), הוא הפסיק להגיב לפקודות הטייס והתרומם עצמאית עד לגובה של כשני קילומטרים וחצי. בשלב זה הסוללות שלו התרוקנו משמעותית והוא החל לרדת, ואז לצלול תוך כדי התהפכות, עד שנחבט בקרקע. לא היו נפגעים ולא נגרם נזק – פרט לרחפן עצמו כמובן – אך זה היה יכול להסתיים הרבה יותר גרוע.

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

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

המונח "אל-כשל" כשלעצמו הוא מטעה: המערכות האלה לא נועדו למנוע כשלים (זה לא ממש ריאלי להאמין שאפשר למנוע את כל הכשלים). השם באנגלית, fail-safe, קצת יותר מדויק: כשל (fail) יקרה מתישהו, זה בלתי נמנע, אבל כשהוא יקרה המערכת עדיין תהיה safe, בטוחה – ואם לא לעצמה אז לפחות למי שנמצא בסביבה. כמובן, אף מערכת אינה יכולה להיות מוגנת באופן מושלם ומוחלט, אבל כן אפשר להתכונן לאירועים הסבירים ו/או המסוכנים יותר. לדוגמה, במעליות יש מערכת בלמים מיוחדת שמוחזקת במצב "פתוח" על ידי המתח המכני של הכבלים שמחזיקים את המעלית עצמה. אם כבל נקרע, הבלמים נסגרים אוטומטית ומונעים מהמעלית ליפול. תיאורטית יכול להיות מצב שמשהו בבלמים האלה לא יעבוד, אבל הם אמורים להיות פשוטים למדי (=פחות סיכוי לתקלות), ומצבים שבהם גם הבלמים כושלים וגם הכבלים נקרעים אמורים להיות נדירים מספיק כדי שנרגיש בטוחים. בהנחה שטכנאים רציניים מבצעים ביקורות סדירות, לא לשכוח.

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

איך תיראה מערכת fail-safe ברחפן נשלט מרחוק? האירוע שמדאיג אותנו הוא אובדן שליטה ברחפן, וזה יכול להיגרם ממספר סיבות. אם להקה של אווזי בר הסתבכה ברוטורים ושברה אותם, אין הרבה מה לעשות – אך אם הסיבה היא "רק" תקלה במערכת הרדיו, הרחפן יכול בעיקרון לבצע נחיתה איטית בכוחות עצמו, ואם הוא מספיק משוכלל, אפילו לחזור לבד לנקודת ההמראה או למיקום שהוגדר מראש כבטוח. בתסריט טיסת ההדגמה המקורי, ה-Airspeeder לא היה אמור להתרחק מאוד מנקודת ההמראה ומטווח רדיו, לא לטוס מעל אנשים, ובוודאי שלא להתרומם מעבר לכמה מטרים, ולכן המתכננים לא הוסיפו לו יכולות ניווט עצמאי. ה"אל-כשל" שלו היה פשוט ניתוק של המנועים מהחשמל. הרעיון עצמו לא נורא, רק המימוש שלו במערכת היה מזעזע.

מנגנון השליטה הראשי, שניזון מפקודות ברדיו ומיחידות ה-IMU, תוכנן כך שאם קשר הרדיו יתנתק, הרחפן ייצב את עצמו (הגיוני) וימשיך לבצע את הפקודה האחרונה שקיבל (?!) החשמל לכל מנגנון השליטה הזה עבר דרך ממסר, שנשלט על ידי מעגל נפרד לגמרי, עם אספקת חשמל נפרדת ועם מקלט רדיו משל עצמו בתדר אחר. זה היה מעגל ה-Kill Switch: כשהוא נכנס לפעולה, בעקבות פקודה מפורשת מהמפעיל, הוא פותח את הממסר, המנגנון הראשי כבה, ויחד איתו כבים גם בקרי ה-ESC שמנהלים את מנועי ה-DC של הרוטורים. כל זה אמור להסתיים בכיבוי המנועים ובנפילה חופשית של הרחפן.

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

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

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

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

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

להרשמה
הודע לי על
0 תגובות
מהכי חדשה
מהכי ישנה לפי הצבעות
Inline Feedbacks
הראה את כל התגובות