ממשקי חומרה רבים מאוד, שנוצרו עבור
התומכים וגם עבור אנשי הפיתוח. מעבר
, פלטפורמת
Linux
למערכת ההפעלה
הכטב"ם מתאימה לטווח רחב מאוד של
יישומים בגמישות רבה יותר, בזכות יכולת
התכנות והרב תכליתיות שלה. כאחת מבין
מערכות ההפעלה החזקות ביותר הניתנות
מאפשרת
Linux
לתכנות על ידי המשתמש,
לצוות שלנו להתאים באופן אישי את
המערכת, על מנת שתתאים בדיוק לצרכים
שלנו.
השלמנו את בדיקת הטיסה במסגרת
DJI
F
550
המטוס המסחרית מהמדף
ואנחנו מתכננים לבדוק את בקר הטיסה
Zynq
שלנו, המבוסס על מערכת על שבב
עם מסגרות מטוס נוספות. בקרוב נוציא
את הפלטפורמה הזו כחלק מהפלטפורמה
.)
OcPoC
(
Octagonal Pilot on Chip
שלנו,
מאמץ שאפתני
היצירה ממש מההתחלה של פלטפורמת
בקרת טיסה מותאמת אישית היא מאמץ
שאפתני, אשר להשלמתו נדרש צוות
מושלם של מהנדסים וכמות רבה של
לימוד. כשמתחילים מאפס יש צורך לקבל
החלטות רבות לגבי המערכת. על מנת
להפעיל תוכנית בקרת טיסה יש צורך
להשתמש במערכת הפעלה. מערכת הפעלה
«
«
תהיה פלטפורמת בקרת הטיסה,
OcPoC
המערכת
.2
איור
הראשונה הזמינה מבחינה מסחרית, שמופעלת באמצעות
Zynq
המערכת על שבב
מתוכננת כתיבה מוכנה לטיסה משולבת
OcPoC
.3
איור
עם יציאות וכניסות
GPS-
ו
IMU
בחישני
רב תכליתיות, על מנת להתחבר בממשק להתקנים חיצוניים
) מעבדת את הנתונים
RTOS
לזמן אמת (
מיד, עם היקלטותם בה, והתוצאה היא
השהייה זניחה בזמן האחזור. לכן מערכת
הפעלה לזמן אמת היא פתרון מצוין לביצוע
משימות בעלות רגישות מבחינת הזמן,
כמו למשל בבקרת טיסה. החיסרון בכך
הוא שקשה להתחבר בממשק למערכות
בשל הצורך לממש
ArduPilot
מסוג זה עם
מחדש חלק ממשימות עיבוד הנתונים בתוך
מערכת ההפעלה עצמה.
לכן, בחרנו במקום זאת במערכת ההפעלה
, שאינה מערכת הפעלה לזמן אמת,
Linux
אבל קלה יותר בהרבה למימוש בתכנון
משותף של חומרה ותוכנה. בכך הגדלנו
למקסימום את התכונה של רב תכליתיות
מספקת מערכת הפעלה
Xilinx
של המערכת.
,
PetaLinux
משובצת רבת יכולת המכונה
Zynq
שהיא תואמת למערכת על שבב
.
Xilinix
ולהתקנים נוספים של
מפת הדרכים שאמורה להקים את
המערכת הזו ולהביא אותה למצב פעיל
נראתה מסובכת, והיינו צריכים להתגבר
על אתגרים קשים רבים. התהליך החל
בתכנון המערכת עם תוכנת פיתוח בהתקני
ובכתיבה ויצירה של נכסי קניין
FPGA
) עבור ממשקי דרייברים. הליבות
IP
רוחני (
היו תהליכים משובצים ברמת החומרה
שעיבדו נתונים במהירויות גבוהות ביותר.
לאחר מכן, היה צורך לפרוש את מערכת
באמצעות תכנון
PetaLinux
ההפעלה
המערכת בהתאמה אישית. לבסוף ביצענו
הידור (קומפילציה) ושינינו את המערכת
PetaLinux
כדי שתוכל לפעול ב-
ArduPilot
ובפלטפורמה החדשה.
ניגשנו לפתור את הבעיה בשלבים, על מנת
להשיג הוכחה למימוש העיקרון. הצוות
שלנו החל לפעול על מנת לקלוט (ראשית)
ולגלות (לאחר מכן) אות בקרה באותות
רדיו, ולאחר מכן להפעיל מנוע יחיד. אחרי
לבסוף הדגמנו את מימוש העיקרון הזה,
התקדמנו להרחבת הממשק בין טייס
לבין החיישנים שעליהם מסתמכת
OcPoC
כדי שתוכל לפעול. הכתיבה של
ArduPilot
הדרייברים שלנו מההתחלה הייתה מאמץ
רב למדי. בין החיישנים שהיו בעלי חשיבות
גדולה ביותר להשגת טיסה מוצלחת, נכללו
מדי תאוצה, ג'ירוסקופים וברומטר. מאחר
שכלי טייס בעלי רוטורים מרובים מטבעם
אינם יציבים, מדידת ההתמדה (אינרציה)
וגובה הטיסה של המסגרת הופכים להיות
חיוניים ביותר. את הקונפיגורציה של כל
אלה היה צורך להגדיר בתכנון חומרת
עם פרוטוקול תקשורת
FPGA
התקני
מתאים, ובסופו של דבר, היא נכללה
שלנו.
PetaLinux
במערכת ההפעלה
מורכב מיותר
ArduPilot
בסיס קוד
New-Tech Magazine l 92