ISAT User Guide Table of Contents

Revision as of 12:54, 12 February 2019 by Shawn Allen (Talk | contribs) (Free Motion Object)

Who should use this document

This document is for users learning to use the NADS Interactive Scenario Authoring Tool (ISAT) to create scenarios for simulation.

This user guide contains an introduction to the ISAT interface and how to use ISAT for various tasks during the creation of scenario files (also known as scenario authoring).

Examples are provided to help illustrate concepts and tasks.

Conventions Used in this Document

This section contains abbreviations and conventions used as a shortened description to make spelling out every step using text unnecessary.

  • BLI roadmap of the road network constructed using the Tile Mosaic Tool (TMT)
  • CTRL or Ctrl Press the Control (Ctrl) key
  • LMB Left mouse button
  • DblClk Double click LMB
  • MMB Middle mouse button (or scroll wheel as button)
  • RMB Right mouse button

Words or phrases separated by >> indicate the word or phrase after >> is a child of the word or phrase preceding these characters. For example, to describe inserting a Traffic Source in ISAT from the Insert menu:

LMB Insert >> Coordinators >> Source >> LMB
NOTE: LMB is assumed for all menu items and may not be explicitly included

ISAT Overview & Interface Basics

This section contains interface documentation.

What is ISAT?

ISAT is the NADS Interactive Scenario Authoring Tool. ISAT is used to create simulation scenarios:

  • 2D roadmap viewer
  • Native file format: SCN (scenario.scn)

Requires a roadmap (BLI)

ISAT is NOT:

ISAT is not an object editor for creating or modifying 3D model objects, signs or roads.

miniSim Scenario Components*

TBC insert graphic here

  • See the NADS miniSim user guide for miniSim simulator architecture details (needs hyperlink here)

What is a Scenario?

A scenario defines everything that happens to the driver during a simulation.

Uses Actions and events to control the scenario; i.e., familiarization or restart drive, hazard detection & recognition or obstacle avoidance.

  • Coupled to a roadmap (BLI)
  • Scenario behaviors run at 30Hz

Anatomy of a Scenario

Insert graphic here

Scenario files are text files

  • Can be edited by a text editor
  • Portions of a scenario file can be generated programmatically:
    • ISAT ISC
    • Python
    • Shell script

insert graphics here

Scenario Text File

Typically you can borrow elements from other scenario files

  • If editing text,always check your edits in ISAT!
  • Copy/Paste - delete paths from elements when the BLI is different between your source & destination BLI files:
ADO, roadpad, time to arrival, etc.

Traffic Source is not a portable element

Re-create it in ISAT or integrate it via text file

Text file is easy to examine in a command (shell) window.

Example search for time trigger in all scenario files: >grep TimeTrigger *.scn | grep ISAT | grep Name <Enter>

ISAT-Samples-Avoid.scn: Name "TimeTrigger1"
ISAT-Samples-Avoid.scn: Name "TimeTrigger2"
ISAT-Samples-Avoid.scn: Name "TimeTrigger3"
ISAT-Samples-Avoid.scn: Name "TimeTrigger1"

How to know what to look for in the scenario text file?

  • Create a new scenario
  • Create the scenario element you need or are looking for:
ADO, Trigger/Coordinator
Give the element a unique name that you can search for in the text file
  • Save the file, then edit the file in a text editor
Find the element name to see element syntax and parameters

TBC: Insert demonstration to find an expression trigger that relates to the speed of the ownship

What is a Scenario Event?

A scenario event is made from one or more actions created to present situational information to the external driver (research participant, trainee or simulation viewer) in some logical sequence;

force a vehicle to change speed
force a vehicle to brake, change lanes or turn
create or destroy scenario elements

Or:

change scenario elements:
initialize variables
change traffic signal state
etc.

Typical Events

  • When the external driver approaches a specified location, cause oncoming traffic to veer into the drivers' lane to force a driver response
  • As the external driver approaches a specified location, control ambient traffic to expose a vehicle stopped in the drivers' lane
  • When the Time to Arrival (to a specified location) is 4 seconds, change the traffic signal to yellow and activate traffic stopped at the intersection (aka red light runner)

What is an Action?

Actions are specific commands that happen intentionally during a simulation:

  • Time, situational, calculation or location based
  • Caused by the external driver or some other action, hardware configuration or calculation
can create or delete objects, including other scenario elements

Typically actions are linked with other actions to create a scenario event.

TBC: Insert Action graphic

Typical Actions

  • Activate a scenario element
  • Calculate something:
Time to arrival (TTA)
Time to collision (TTC)
headway
  • Check state of simulator or driver
  • Create something (any scenario element)
  • Destroy a scenario element
  • End simulation (terminates the current drive)
  • Play a sound
  • Set a variable
  • Set ADO vehicle speed (not the external driver)

ISAT Modes of Operation

TBC insert graphics

  • Edit
  • Rehearsal
  • DAQ playback
  • Monitor Currently not available

Edit & Rehearsal Modes

TBC insert graphics

  • Edit
Creation of scenario
Link to or import portions of other scenario elements
  • Rehearsal
Debug & test scenario
Simulates scenario using Behaviors and Vehicle Dynamics
Displays error messages from behaviors

NOTE: Rehearsal mode simulates the external driver; your simulation may not respond as expected:

i.e., if the driver was instructed to 'remain on the right lane', the simulated ownship may not
Some control of the simulated ownship is possible in ISAT using the Rehearsal Mode >> Advanced Options panel
speed, lane changes

Playback Mode

  • Playback mode will play back a DAQ file from a miniSim drive
  • Can search for specific conditions; i.e. CFS_Brake_Pedal_Force > 0.1
  • Display data streams
  • Graph collected data (limited to single cells)
  • Record a video file of the playback

TBC insert graphics

miniSim Scenario Components

TBC insert graphics

ISAT Workspace

TBC insert graphic

ISAT Workspace Accessing Elements

Accessing elements using the interface

TBC insert graphic

ISAT Workspace Status Bar

The status bar contains useful information to the scenario author:

  • position (location of the cursor)

When configured:

  • Name of scenario elements
  • Roadway information:
road name
default speed limit
surface material code for location under the cursor

TBC insert graphic

ISAT Workspace Status Bar

TBC insert graphic

Measuring Distance in ISAT

To measure between two locations in ISAT:

  • measurement is a linear measurement

Press & hold Ctrl and Shift keys, RMB on roadmap/BLI Position cursor over any other location

The measurement will update dynamically to reflect the distance from the cursor to the original 'pinned' location.

TBC link to video example

Scenario Authoring & miniSim Architecture Overview

This section contains scenario authoring documentation.

ISAT Basic Elements

  • ISAT object types
ISAT objects consist of two main types:

TBC insert graphic

1. Objects placed in ISAT

These are objects defined in the Scenario Object Library (SOL2) and can be placed onto a roadmap by the scenario author
  • ADO
  • DDO
  • DDDO
  • Static Object
  • Virtual Object
  • Trigger/Coordinator
NOTE: Virtual objects are defined in the scenario, not in the SOL2.

2. Scenario world objects

These are objects that exist in the roadmap and have not been added by the scenario author. These objects may be either authorable (can be changed by the scenario author) or not (the object cannot be selected or changed in ISAT).
  • Traffic Lights
Traffic lights are embedded into intersections for traffic control purposes.
The SOL2 contains a traffic light object that can be placed in ISAT; this is not a traffic light that controls traffic. It is a static object that only looks like a traffic light and can be controlled like any other static object.
There can be only one traffic light assigned to an intersection path. In some cases, i.e. on approach to a toll booth, multiple signals may be required visually.
  • World objects vs. Scenario objects
  • Coordinate systems
  • Scenario initial conditions

ISAT Elements

ADO Scenario Object

  • Vehicles that use vehicle dynamics and are AI controlled
Exceeding vehicle dynamics capability can cause issues
i.e., if ADO must exceed 10g's, the operation will likely fail
failure may cause ADO to disappear or be planted into the ground or fly into the air and freeze
  • ADOs are 'aware' of other simulation entities
ADOs will attempt to change lanes to go around slow moving objects if this functionality is not disabled by the scenario author
ADOs may halt if they cannot move around a slow moving object or change lanes
  • The scenario author sets default ADO behaviors; i.e.:
initial velocity
turn signals
headlights
lane changes, etc.
  • RMB on ADO to specify path

TBC insert RMB ADO menu graphic

  • Actions to modify ADO behavior
Set Dial
Set Button
instruct the ADO to maintain distance relative to the driver
maintain gap
cause the ADO to do something specific; i.e.:
enable brake light
accelerate or slow or stop
change lanes

DDO Scenario Object

  • DDOs are 'dumb' objects
Do not obey traffic rules
DDOs follow a path blindly; also known as 'path follower'
Are not 'aware' of other entities within the simulation
No collision detection between the DDO and other scenario elements
  • DDOs have two modes of operation:
  1. Follow a path using kinematics
  2. Free motion object
OpenDynamicsEngine library is used to model free motion objects dynamic behavior
bouncing/rolling ball
object falling off back of truck

DDDO Scenario Object

  • Includes a target that affects DDO velocity/position along path
  • DDDOs are 'dumb' objects
Do not obey traffic rules
DDDOs follow a path blindly; also known as 'path follower'
Are not 'aware' of other entities within the simulation
No collision detection between the DDO and other scenario elements

Free Motion Object

Free motion objects have 3 modes:

  1. coupled
  2. relative trajectory
  3. free motion
may require a mesh file to define a portion of the road surface to react against

Change object mode using Set Dial >> DDO >> Change Mode action TBC insert graphic

Scenario Authoring Concepts

This section contains scenario authoring information.

Terminology & Documentation

This section contains scenario authoring documentation.

Reporting ISAT & Scenario Issues

This section contains recommended procedures for reporting problems with ISAT or scenario authoring.

ISAT Reference Manual

TBC link to isat reference