דלגו לתוכן

מה זה esmini?

esmini הוא נגן OpenSCENARIO קוד-פתוח שפותח על ידי קהילת ה-ADAS השוודית. הוא נגן מינימליסטי במכוון, נמצא בשימוש נרחב כייחוס קל-משקל ל-OpenSCENARIO 1.x — קטן מספיק לקריאה, מהיר מספיק להטמעה, וצפוי מספיק לשימוש כבדיקת תקינות.

esmini מנתח OpenSCENARIO 1.x ‎.xosc, טוען את רשת הכבישים OpenDRIVE ‎.xodr המוזכרת, ומריץ את ה-storyboard — נוהג עם יישויות לאורך מסלולים או בקרים ומזרים את המצב שנוצר.

זה לא סימולטור מלא מבוסס-פיזיקה כמו CARLA או LGSVL. המינימליות היא הנקודה: esmini הוא הבסיס “האם תרחיש זה ניתוח ורץ נכון?” בקוד-פתוח שרוב כלי OpenSCENARIO מתכוונים אליו.

מכיוון ש-esmini הוא הצרכן הנפוץ ביותר בקוד-פתוח של OpenSCENARIO 1.x, “האם הוא רץ ב-esmini?” היא בדיקת התקינות הסטנדרטית לכל צינור ייצוא OpenSCENARIO. רוב הכלים שמייצרים קבצי ASAM מאמתים מול esmini לפני שהם טוענים לתמיכה ב-OpenSCENARIO — כולל RoadRunner ורבים אחרים.

esmini דורש לפחות:

  • .xosc (תרחיש OpenSCENARIO).
  • .xodr (רשת כבישים OpenDRIVE) המוזכר מתוך ה-‎.xosc.
  • אופציונלית קובץ ‎.osgb לרינדור בצופה תלת-ממדי, או ספריית Models/ של נכסי רכב.

אריזת אלה יחד כ-zip מכיל-עצמי — לפעמים נקרא בלתי-רשמית “חבילת esmini” — הופכת תרחישים לניידים בין מכונות ו-CI.

drawtonomy יכול לייצא zip עם ‎.xosc, ‎.xodr וקריאת run.sh, ממוקד בהתקנת esmini סטנדרטית. לפי תיעוד המייצא של drawtonomy:

Terminal window
unzip <name>.zip
esmini --osc <name>/<name>.xosc --window 60 60 1024 768

דברים שכדאי לדעת:

  • המייצא מכסה תת-קבוצה של OpenSCENARIO 1.3 / OpenDRIVE 1.8 — סצנות פשוטות מופעלות; טריגרים מותנים, רוחב-פס פרמטרים, storyboardים מורכבים, וצמתי OpenDRIVE לא מיוצאים כיום.
  • נכסי רכב ברירת-מחדל הם המודלים המובנים של esmini, כך שלא נדרש ‎.osgb נוסף.
  • הפלט מיועד כנקודת התחלה — שימושי לסקיצה, הוראה, הדגמות ומקרים מינימליים לרבייה. לרוחבי-פס גדולים או לתרחישים פרמטרים, ערכו את ה-XML ידנית או צרו אותו מ-DSL.