diff --git a/docs/use_case/planning_control.en.md b/docs/use_case/planning_control.en.md index 98d731be..7f4c4008 100644 --- a/docs/use_case/planning_control.en.md +++ b/docs/use_case/planning_control.en.md @@ -1,26 +1,27 @@ # Evaluate Planning Control -Evaluate whether Planning / Control metrics are output at specified times and conditions +Evaluate Metrics are output at specified times and conditions ## Evaluation Method Launching the file executes the following steps: 1. Execute launch of evaluation node (`planning_control_evaluator_node`), `logging_simulator.launch` file and `ros2 bag play` command -2. Autoware receives sensor data output from input rosbag and the perception module performs recognition. -3. Using the results of perception, Autoware output Metrics to `/planning/planning_evaluator/metrics` for planning and `/control/control_evaluator/metrics` for control. -4. The evaluation node subscribes to the topic and evaluates data. The result is dumped into a file. -5. When the playback of the rosbag is finished, Autoware's launch is automatically terminated, and the evaluation is completed. +2. Autoware receives sensor data output from bag and publishes a metrics type message +3. The evaluation node subscribes to the topic and evaluates data. The result is dumped into a file. +4. When the playback of the rosbag is finished, Autoware's launch is automatically terminated, and the evaluation is completed. ## Evaluation Result -It is evaluated when status[0].name of the topic matches the module name specified in the scenario and status[0].value[0].key is a decision. -If a lane condition is described in the scenario, it is evaluated when the lane condition is also satisfied. +This node uses `/control/autonomous_emergency_braking/metrics` and `/control/control_evaluator/metrics`. +Evaluate if `/control/autonomous_emergency_braking/metrics` is the value specified in the scenario. +If a lane condition is described in the scenario, it is evaluated when a lane that can be obtained from `/control/control_evaluator/metrics` satisfies the condition. If the conditions for evaluation are not met, no log is output. ### Normal -Normal if status[0].values[0].value matches the decision in the scenario. +Normal if the value in `/control/control_evaluator/metrics` matches the value specified in the scenario. +Though, if `none` is specified, it is judged as `none` if the metric_array of topic is an empty array. If kinematic_condition is specified, additionally, kinematic_state must meet the condition. ### Error @@ -31,10 +32,10 @@ When the normal condition is not met Subscribed topics: -| Topic name | Data type | -| ------------------------------------ | ------------------------------------- | -| /control/control_evaluator/metrics | diagnostic_msgs::msg::DiagnosticArray | -| /planning/planning_evaluator/metrics | diagnostic_msgs::msg::DiagnosticArray | +| Topic name | Data type | +| --------------------------------------------- | -------------------------------------- | +| /control/control_evaluator/metrics | tier4_metric_msg::msg::MetricArray | +| /control/autonomous_emergency_braking/metrics | tier4_metric_msg::msg::DiagnosticArray | Published topics: diff --git a/docs/use_case/planning_control.ja.md b/docs/use_case/planning_control.ja.md index e0fe527b..5602fecd 100644 --- a/docs/use_case/planning_control.ja.md +++ b/docs/use_case/planning_control.ja.md @@ -1,26 +1,27 @@ # Planning Controlの評価 -Planning / ControlのMetricsが指定の条件で出力されているか評価する +Metricsが指定の条件で出力されているか評価する ## 評価方法 launch を立ち上げると以下のことが実行され、評価される。 1. launch で評価ノード(`planning_control_evaluator_node`)と `logging_simulator.launch`、`ros2 bag play`コマンドを立ち上げる -2. bag から出力されたセンサーデータを autoware が受け取って、perception モジュールが認識を行う -3. perceptionの結果を使って、planningは `/planning/planning_evaluator/metrics` に controlは `/control/control_evaluator/metrics`にMetricsを出力する -4. 評価ノードが topic を subscribe して、各基準を満たしているかを判定して結果をファイルに記録する -5. bag の再生が終了すると自動で launch が終了して評価が終了する +2. bag から出力されたセンサーデータを autoware が受け取って、metrics型のメッセージを出力する +3. 評価ノードが topic を subscribe して、各基準を満たしているかを判定して結果をファイルに記録する +4. bag の再生が終了すると自動で launch が終了して評価が終了する ## 評価結果 -topicのstatus[0].nameがシナリオで指定したモジュール名と一致し、且つ、status[0].value[0].keyがdecisionの場合に評価される。 -また、シナリオでレーン条件を記述した場合は、レーン条件も満たした場合に評価される。 +`/control/autonomous_emergency_braking/metrics`と`/control/control_evaluator/metrics`を利用する。 +`/control/autonomous_emergency_braking/metrics`がシナリオで指定されたvalueになっているかを評価する。 +シナリオでレーン条件を記述した場合は、`/control/control_evaluator/metrics`から取得できるレーンが条件を満たした場合に評価される。 評価の条件を満たさない場合は、ログも出力されない。 ### 正常 -status[0].values[0].valueがシナリオのdecisionと一致した場合に正常となる。 +`/control/control_evaluator/metrics`のvalueがシナリオ指定の値と一致した場合に正常となる。 +ただし、`none`が指定された場合は、topicのmetric_arrayが空配列の場合にnoneと判断する。 kinematic_conditionを指定した場合は追加で、kinematic_stateが条件を満たしている必要がある。 ### 異常 @@ -31,10 +32,10 @@ kinematic_conditionを指定した場合は追加で、kinematic_stateが条件 Subscribed topics: -| Topic name | Data type | -| ------------------------------------ | ------------------------------------- | -| /control/control_evaluator/metrics | diagnostic_msgs::msg::DiagnosticArray | -| /planning/planning_evaluator/metrics | diagnostic_msgs::msg::DiagnosticArray | +| Topic name | Data type | +| --------------------------------------------- | -------------------------------------- | +| /control/control_evaluator/metrics | tier4_metric_msg::msg::MetricArray | +| /control/autonomous_emergency_braking/metrics | tier4_metric_msg::msg::DiagnosticArray | Published topics: