본문 바로가기
임베디드/Intern

ASAM OpenSCENARIO: User Guide | 1. Introduction

by 코곰_ 2024. 3. 8.
인턴하면서 새로 다루게 된 OpenSCENARIO에 대해 정리해보겠습니다!
해당 튜토리얼 참고하여 작성했습니다.
https://www.asam.net/index.php?eID=dumpFile&t=f&f=4092&token=d3b6a55e911b22179e3c0895fe2caae8f5492467




1. Introduction

1.2 Overview

1.2.1 What is a Scenario?

how the view of the world changes with time, usually from a specific perspective

  1. static environment: e.g. logical road network, physical/geometric road/environment
  2. dynamic content

 

 

 

1.2.2 What is OpenSCENARIO?

OpenSCENARIO는 운전 및 교통 시뮬레이터는 물론 자동차 가상 개발, 테스트 및 검증에 사용되는 시나리오 설명을 위한 데이터 모델 및 파생 파일 형식을 정의한다.

주요 사용 사례는 차량, 보행자, 기타 교통 참여자와 같은 여러 개체가 관련된 복잡하고 동기화된 조작을 설명하는 것이다.

표준은 시나리오, 해당 속성 및 관계가 구성되는 계층적 요소를 정의하여 시나리오에 대한 설명 방법을 제공한다.

  • 스토리보드, 즉 스토리보드와 스토리를 사용하는 것입니다. 각 이야기는 하나 이상의 act와 maneuvers으로 구성됩니다.
  • 조건이 true로 평가되면 트리거에 의해 이벤트가 트리거됩니다. 이벤트는 작업 실행을 유발합니다.
  • 논리적 도로망 설명에 대한 참조입니다.
  • 도로 안팎에서 활동하는 차량, 보행자 등의 개체를 인스턴스화합니다.
  • 카탈로그와 매개변수 선언은 시나리오의 여러 측면을 재사용하는 메커니즘을 제공합니다.

ego vehicle, 운전자 모습, 보행자, 교통 및 환경 상황 등 기타 콘텐츠도 표준에 포함됩니다.

OpenSCENARIO의 시나리오 설명은 계층 구조로 구성되며 파일 확장자가 .xosc인 XML 파일 형식으로 직렬화됩니다.

OpenSCENARIO는 (시뮬레이션된) 세계의 동적 콘텐츠(예: 교통 참가자의 행동)를 정의합니다. 도로망과 같은 정적 구성요소는 OpenSCENARIO의 일부가 아니지만 형식으로 참조할 수 있습니다.

what is not part of OpenSCENARIO → Test configuration description / Test case language / Test evaluation / Driver model / Vehicle dynamics / Environmental models

 

 

 

1.2.3 Deliverables of OpenSCENARIO

  • XML schema file
  • Model documentation (html)
  • User Guide
  • Examples
  • Migration scripts and schemas
  • UML model
  • Modelling guidelines

 

 

 

1.4 Conventions

Units(SI units) / Data types

 

 

 

1.4.5 Naming conventions for OpenSCENARIO references

  • Name lookup은 참조 요소에서 시작하지만 시나리오 계층의 모든 계층 수준에 있는 모든 요소를 구성해야 합니다.
  • 각 level의 요소 이름은 해당 수준에서 고유해야 합니다. 동일한 level(직접 둘러싸는 동일한 요소 내)에는 동일한 이름을 가진 요소가 두 개 이상 있어서는 안 됩니다. 예를 들어, 하나의 Story 내의 모든 Act항목은 고유한 이름("MyStory1": "MyAct1", "MyAct2"…)을 사용하지만, Act의 이름은 다른 Story("MyStory2": "MyAct1", ")에서 재사용될 수 있습니다. MyAct2"…).
  • 참조된 이름이 전역적으로 고유하다면, 참조의 유일한 부분으로 직접 사용할 수 있습니다. 참조된 이름이 전역적으로 고유하지 않은 경우 이름 접두사를 사용하여 이름을 고유하게 만들어야 합니다.
  • 이름 접두사는 직접 둘러싸는 요소의 이름으로 구성되며, 구분 기호 '::'를 사용하여 이름 앞에 접두사를 붙여 새로운 이름 참조를 형성합니다. 즉, '::'를 이름 자체에 사용해서는 안 된다는 뜻입니다. 이름은 직접 둘러싸는 요소 이름을 지정하는 '::'로 구분됩니다.
  • 전역적으로 고유한 참조 이름이 설정될 때까지, 루트 요소 이름까지 하위 요소를 둘러싸는 접두사를 여러 개 지정할 수 있습니다.
  • 예를 들어 이름 접두사가 너무 적게 지정된 경우와 같이, 참조를 고유하게 확인할 수 없는 경우 조회(lookup) 결과가 정의되지 않습니다.