コンテンツにスキップ

はじめてのシナリオ — レーン変更を一から作図する

このチュートリアルでは、空のキャンバスから完全なシナリオを構築します。車両が 2 本のレーンの道路を走行し、加速してから右側のレーンに変更し、実行結果は PASS で終わります。

すべてがブラウザで完結します。drawtonomy.com を開いて、一緒に進めてください。

空のキャンバスから実行中のレーン変更まで — 道路を描き、アクターを追加し、2 つのイベントを構築して再生ボタンを押します。

シーン モードから始めます。ここに描画ツールがあります。

  1. N キーで Lane ツールを起動します。
  2. キャンバスの左側をクリックして最初の中央線ポイントを打ち、右側の遠くをクリックし、Enter キーを押します。

レーンを長く描いてください — 中央線を表示画面より広く引きます。車両が道路の終端に達したら、そこで停止します。実行中にそれが起きたら、道路を延ばして再度再生してください。

次に、2 番目のレーンを追加します。

  1. V キーで Select ツールを起動し、描いたレーンをクリックします。
  2. 属性パネルで RIGHT LANE セクションを見つけ、Create をクリックします。

Create は新しい隣接レーンを生成します。Set は既に存在するレーンを指します。詳細は レーン接続の管理 を参照してください。

2. シナリオモードに切り替える

Section titled “2. シナリオモードに切り替える”

左上の ハンバーガーメニュー を開きます。EDITING 見出しの下で Scenario をクリックします。

描画ツールバーは短いものに置き換わり — Undo、Redo、Hand、Select、Add actor、Path — LOGIC カードが画面下部にドックされます。

  1. ツールバーの Add actor をクリックします。
  2. 配置パネルが TEMPLATECOLOR 行を表示します。6 つのテンプレートが表示され、More… をクリックするとすべて 48 個のテンプレートが展開されます(セダン、トラック、バス、オートバイ、自転車、歩行者など)。
  3. Set initial speed をオンにして SPEED8.33 m/s のままにすると、車両は t=0 から走行開始します。
  4. 左側のレーンの開始付近をクリックします。

車両が ACTORS の下に Vehicle1 として表示されます。この名前がエクスポートされた .xosc に含まれるエンティティ名になるので、必要に応じてここで名前を変更してください。

パネルの上には Edit roads ボタンもあります — 道路を変更する必要があればシーンモードへ戻るショートカットです。

+ Phase をクリックします。

LOGIC パネル — フェーズカード、イベントカード、+ Event、および END CONDITIONS ノード

1 クリックで多くが得られます。drawtonomy は次を作成します。

  • Phase 1VEHICLE1 の行を含む)
  • その中の Event_1(デフォルトの Change Speed アクション 8.33 m/s over time 2.00 s を既に含む)
  • デフォルトの TRIGGERSimulation time 0.00 s
  • イベントエディタが右に開かれます

つまり、最初のイベントは追加するのではなく、編集するものです。

イベントエディタ — ACTOR、TRIGGER、ACTION、および ADVANCED セクション

5. 最初のイベントで t = 2 秒に加速させる

Section titled “5. 最初のイベントで t = 2 秒に加速させる”

イベントエディタで:

  1. TRIGGER の下、デフォルトは Simulation time です。SECONDS2.00 に設定します。
  2. ACTION の下、デフォルトは Change Speed です。RELATIVE TOFixed のままにして、SPEED8.33 m/s に設定し、DYNAMICSover timeVALUE2.00 s のままにします。

Change Speed フォーム — RELATIVE TO、SPEED、DYNAMICS、VALUE

1 つの文として読みます:「実行開始から 2 秒後に、Vehicle1 が 8.33 m/s に到達し、そこに到達するのに 2 秒かかります。」

グラフのイベントカードは 8.3 m/s · over 2 s と要約されます。

6. 車線変更イベントを追加する

Section titled “6. 車線変更イベントを追加する”

VEHICLE1 の行の + Event をクリックします。Event_2Event_1 と同じデフォルトで表示されます — 0.00 s での発火を含めて。

それを車線変更に変更します。

  1. TRIGGERSECONDS5.00 に設定します。これを最初に行ってください。両方が 0.00 s で発火するイベントは同時に発火し、通常それは望みません。
  2. ACTION ドロップダウンを開き、COMMON グループから Change Lane を選びます。

Change LaneTARGETSame lane に、REFERENCE がアクター自身に設定された状態で開始されるため、エディタはすぐに警告します:

⚠ Change Lane target is the actor’s own current lane — no lateral movement will occur.

この警告は予想されたものです。それを修正します:

  1. TARGETRight に設定します。NUMBER OF LANES フィールドが表示されます — これは LeftRight のときだけ存在します。それを 1 に設定します。
  2. REFERENCEVehicle1 のままにします。Right は参照アクターの現在のレーンからの相対的な位置なので、自身を参照するということは「自分の右にあるレーン」を意味します。
  3. DYNAMICSover distanceVALUE30.00 m のままにします。

Change Lane フォーム — TARGET、REFERENCE、NUMBER OF LANES、DYNAMICS、VALUE

警告が消え、カードが 1 → · over 30 m と要約されます。

LOGIC カード左の ボタンを押します。

再生タイムライン実行中 — プレイヘッド、イベントマーカー、アクタータイムラインブロック

実行中:

  • verdict バッジIDLE から RUN に変わり、シナリオが fail 条件を発火させずに完了すれば PASS になります。
  • 時刻表示がカウントアップし、タイムラインがアクターごとに 1 ブロックずつ埋まり、各イベント開始位置にマーカーが表示されます。
  • Follow: Off がデフォルトカメラです。車両が画面外に出たら、Follow: Vehicle1 に切り替えてください。

t=2 秒付近で車両が加速します。t=5 秒付近で右レーンに 30 m かけてスライドします。END CONDITIONS ノードが Automatic に設定されているため、すべてのイベントが完了すると実行が停止します。

間違えましたか?Ctrl+Z、またはツールバーの ↶ ボタンで、ロジックグラフへの編集を元に戻します — 削除されたフェーズも含めて。

「保存」を押す必要がありませんでした。drawtonomy は作業中にシーン、シナリオ、インポートした OpenDRIVE マップをブラウザに保持し、次にタブを開いたときにそれらを復元します。セッションを復元するときは、Restored previous session バナーが表示されます — Start fresh をクリックして空のキャンバスから始めてください。

これはブラウザに存在するため、シナリオの共有やアーカイブ方法ではありません。そのためには、以下の .xosc.xodr をエクスポートしてください。

ハンバーガーメニュー → Export

  • OpenSCENARIO (.xosc)… — 今構築したシナリオ。
  • .xodr (OpenDRIVE) — 走行する道路。.xosc はこれなしでは再生不可能です。
  • Export video… — 実行を動画ファイルとして記録します。

エクスポートされたペアは esmini および他の OpenSCENARIO 1.x ツールで開けます。OpenDRIVE + OpenSCENARIO をエクスポート を参照してください。

エクスポートした .xosc + .xodr が native esmini で無修正で実行される — ワンテイク:描いて、esmini zip をエクスポートして、esmini 自身で再度実行。
  • 道路とアクターは シーン モードに、動作は シナリオ モードに属します。
  • + Phase で、1 クリックでフェーズ、最初のイベント、デフォルトアクション、デフォルトトリガーが作成されます。
  • イベントは 1 つの TRIGGER と 1 つ以上の ACTIONS です。
  • Change Lane が何かを移動する前に、TARGETLeft または Right に設定する必要があります。