From 430bd98fbe8294766e3f3bc0a648f48b900f666d Mon Sep 17 00:00:00 2001 From: yuki-takagi-66 Date: Fri, 29 Nov 2024 13:21:10 +0900 Subject: [PATCH 1/2] copy diag Signed-off-by: yuki-takagi-66 --- autoware_launch/launch/autoware.launch.xml | 2 +- .../launch/components/tier4_system_component.launch.xml | 4 ++-- autoware_launch/launch/e2e_simulator.launch.xml | 2 +- autoware_launch/launch/logging_simulator.launch.xml | 2 +- autoware_launch/launch/planning_simulator.launch.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/autoware_launch/launch/autoware.launch.xml b/autoware_launch/launch/autoware.launch.xml index 4bf18af889..e22cd542f7 100644 --- a/autoware_launch/launch/autoware.launch.xml +++ b/autoware_launch/launch/autoware.launch.xml @@ -37,7 +37,7 @@ - + diff --git a/autoware_launch/launch/components/tier4_system_component.launch.xml b/autoware_launch/launch/components/tier4_system_component.launch.xml index e729fef464..a94960d8bf 100644 --- a/autoware_launch/launch/components/tier4_system_component.launch.xml +++ b/autoware_launch/launch/components/tier4_system_component.launch.xml @@ -1,7 +1,7 @@ - + @@ -14,7 +14,7 @@ - + diff --git a/autoware_launch/launch/e2e_simulator.launch.xml b/autoware_launch/launch/e2e_simulator.launch.xml index c4fd15b41c..03044cf090 100644 --- a/autoware_launch/launch/e2e_simulator.launch.xml +++ b/autoware_launch/launch/e2e_simulator.launch.xml @@ -71,7 +71,7 @@ - + diff --git a/autoware_launch/launch/logging_simulator.launch.xml b/autoware_launch/launch/logging_simulator.launch.xml index 123bd01ed3..ad11e90bdf 100644 --- a/autoware_launch/launch/logging_simulator.launch.xml +++ b/autoware_launch/launch/logging_simulator.launch.xml @@ -65,7 +65,7 @@ - + diff --git a/autoware_launch/launch/planning_simulator.launch.xml b/autoware_launch/launch/planning_simulator.launch.xml index 3c56e11412..3e0ed8d20c 100644 --- a/autoware_launch/launch/planning_simulator.launch.xml +++ b/autoware_launch/launch/planning_simulator.launch.xml @@ -70,7 +70,7 @@ - + From 9db6becbb56aba216669bb24555e7cd41a968ece Mon Sep 17 00:00:00 2001 From: yuki-takagi-66 Date: Fri, 29 Nov 2024 13:27:42 +0900 Subject: [PATCH 2/2] add Signed-off-by: yuki-takagi-66 --- .../tier4_diagnostics/autoware-awsim.yaml | 5 + .../tier4_diagnostics/autoware-main.yaml | 70 ++++++++++ .../system/tier4_diagnostics/control.yaml | 74 +++++++++++ .../dummy_diag_publisher.param.yaml | 36 ++++++ .../system/tier4_diagnostics/hardware.yaml | 121 ++++++++++++++++++ .../tier4_diagnostics/localization.yaml | 43 +++++++ .../config/system/tier4_diagnostics/map.yaml | 16 +++ .../system/tier4_diagnostics/perception.yaml | 16 +++ .../system/tier4_diagnostics/planning.yaml | 90 +++++++++++++ .../system/tier4_diagnostics/system.yaml | 27 ++++ .../system/tier4_diagnostics/vehicle.yaml | 16 +++ 11 files changed, 514 insertions(+) create mode 100644 autoware_launch/config/system/tier4_diagnostics/autoware-awsim.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/autoware-main.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/control.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/dummy_diag_publisher.param.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/hardware.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/localization.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/map.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/perception.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/planning.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/system.yaml create mode 100644 autoware_launch/config/system/tier4_diagnostics/vehicle.yaml diff --git a/autoware_launch/config/system/tier4_diagnostics/autoware-awsim.yaml b/autoware_launch/config/system/tier4_diagnostics/autoware-awsim.yaml new file mode 100644 index 0000000000..4abae34a31 --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/autoware-awsim.yaml @@ -0,0 +1,5 @@ +files: + - { path: $(dirname)/autoware-main.yaml } + +edits: + - { type: remove, path: /autoware/system/duplicated_node_checker } diff --git a/autoware_launch/config/system/tier4_diagnostics/autoware-main.yaml b/autoware_launch/config/system/tier4_diagnostics/autoware-main.yaml new file mode 100644 index 0000000000..fbbfe384f2 --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/autoware-main.yaml @@ -0,0 +1,70 @@ +files: + - { path: $(dirname)/control.yaml } + - { path: $(dirname)/localization.yaml } + - { path: $(dirname)/map.yaml } + - { path: $(dirname)/perception.yaml } + - { path: $(dirname)/planning.yaml } + - { path: $(dirname)/system.yaml } + - { path: $(dirname)/vehicle.yaml } + +units: + - path: /autoware/modes/local + type: and + list: + - { type: link, link: /autoware/vehicle } + - { type: link, link: /autoware/system } + - { type: link, link: /autoware/control/local } + + - path: /autoware/modes/remote + type: and + list: + - { type: link, link: /autoware/vehicle } + - { type: link, link: /autoware/system } + - { type: link, link: /autoware/control/remote } + + - path: /autoware/modes/stop + type: ok + + - path: /autoware/modes/autonomous + type: and + list: + - { type: link, link: /autoware/map } + - { type: link, link: /autoware/localization } + - { type: link, link: /autoware/planning } + - { type: link, link: /autoware/perception } + - { type: link, link: /autoware/control } + - { type: link, link: /autoware/vehicle } + - { type: link, link: /autoware/system } + + - path: /autoware/modes/pull_over + type: and + list: + - { type: link, link: /autoware/map } + - { type: link, link: /autoware/localization } + - { type: link, link: /autoware/planning } + - { type: link, link: /autoware/perception } + - { type: link, link: /autoware/control } + - { type: link, link: /autoware/vehicle } + - { type: link, link: /autoware/system } + + - path: /autoware/modes/comfortable_stop + type: and + list: + - { type: link, link: /autoware/map } + - { type: link, link: /autoware/localization } + - { type: link, link: /autoware/planning } + - { type: link, link: /autoware/perception } + - { type: link, link: /autoware/control } + - { type: link, link: /autoware/vehicle } + - { type: link, link: /autoware/system } + + - path: /autoware/modes/emergency_stop + type: and + list: + - { type: link, link: /autoware/vehicle } + - { type: link, link: /autoware/system } + + - path: /autoware/debug/tools + type: and + list: + - { type: link, link: /autoware/system/service_log_checker } diff --git a/autoware_launch/config/system/tier4_diagnostics/control.yaml b/autoware_launch/config/system/tier4_diagnostics/control.yaml new file mode 100644 index 0000000000..6a04ed6714 --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/control.yaml @@ -0,0 +1,74 @@ +units: + - path: /autoware/control + type: and + list: + - { type: link, link: /autoware/control/topic_rate_check/trajectory_follower } + - { type: link, link: /autoware/control/topic_rate_check/control_command } + - { type: link, link: /autoware/control/node_alive_monitoring/vehicle_cmd_gate } + - { type: link, link: /autoware/control/emergency_braking } + - { type: link, link: /autoware/control/performance_monitoring/lane_departure } + - { type: link, link: /autoware/control/performance_monitoring/trajectory_deviation } + - { type: link, link: /autoware/control/performance_monitoring/control_state } + - { type: link, link: /autoware/control/collision_detector } + + - path: /autoware/control/local + type: and + list: + - { type: link, link: /autoware/control/topic_rate_check/external_cmd_selector } + - { type: link, link: /autoware/control/topic_rate_check/external_cmd_converter } + + - path: /autoware/control/remote + type: and + list: + - { type: link, link: /autoware/control/topic_rate_check/external_cmd_selector } + - { type: link, link: /autoware/control/topic_rate_check/external_cmd_converter } + + - path: /autoware/control/topic_rate_check/trajectory_follower + type: diag + node: topic_state_monitor_trajectory_follower_control_cmd + name: control_topic_status + + - path: /autoware/control/topic_rate_check/control_command + type: diag + node: topic_state_monitor_control_command_control_cmd + name: control_topic_status + + - path: /autoware/control/node_alive_monitoring/vehicle_cmd_gate + type: diag + node: vehicle_cmd_gate + name: heartbeat + + - path: /autoware/control/emergency_braking + type: diag + node: autonomous_emergency_braking + name: aeb_emergency_stop + + - path: /autoware/control/performance_monitoring/lane_departure + type: diag + node: lane_departure_checker_node + name: lane_departure + + - path: /autoware/control/performance_monitoring/trajectory_deviation + type: diag + node: lane_departure_checker_node + name: trajectory_deviation + + - path: /autoware/control/performance_monitoring/control_state + type: diag + node: controller_node_exe + name: control_state + + - path: /autoware/control/topic_rate_check/external_cmd_selector + type: diag + node: external_cmd_selector + name: heartbeat + + - path: /autoware/control/topic_rate_check/external_cmd_converter + type: diag + node: external_cmd_converter + name: remote_control_topic_status + + - path: /autoware/control/collision_detector + type: diag + node: collision_detector + name: collision_detect diff --git a/autoware_launch/config/system/tier4_diagnostics/dummy_diag_publisher.param.yaml b/autoware_launch/config/system/tier4_diagnostics/dummy_diag_publisher.param.yaml new file mode 100644 index 0000000000..0ed824d3c8 --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/dummy_diag_publisher.param.yaml @@ -0,0 +1,36 @@ +# Description: +# required_diags: +# : {is_active: , status: } +# name: diag name +# is_active: Force update or not +# status: diag status set by dummy diag publisher "OK, Warn, Error, Stale" +# +# Note: +# +# default values are: +# is_active: "true" +# status: "OK" +--- +/**: + ros__parameters: + required_diags: + # map + ## /autoware/map/topic_rate_check/pointcloud_map + "topic_state_monitor_pointcloud_map: map_topic_status": default + + # localization + ## /autoware/localization/scan_matching_status + "ndt_scan_matcher: scan_matching_status": default + + ## /autoware/localization/accuracy + "localization_error_monitor: ellipse_error_status": default + + ## /autoware/localization/sensor_fusion_status + "localization: ekf_localizer": default + + ## /autoware/localization/topic_rate_check/pose_twist_fusion + "topic_state_monitor_pose_twist_fusion_filter_pose: localization_topic_status": default + + # perception + ## /autoware/perception/topic_rate_check/pointcloud + "topic_state_monitor_obstacle_segmentation_pointcloud: perception_topic_status": default diff --git a/autoware_launch/config/system/tier4_diagnostics/hardware.yaml b/autoware_launch/config/system/tier4_diagnostics/hardware.yaml new file mode 100644 index 0000000000..d73f723670 --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/hardware.yaml @@ -0,0 +1,121 @@ +# TODO(Takagi, Isamu): This file is under construction. +units: + - path: /autoware/system/resources/clock/offset + diag: ": NTP Offset" + timeout: 10.0 + + - path: /autoware/system/resources/cpu/offset + diag: ": CPU Temperature" + timeout: 3.0 + + - path: /autoware/system/resources/cpu/usage + diag: ": CPU Usage" + timeout: 3.0 + + - path: /autoware/system/resources/cpu/thermal_throttling + diag: ": CPU Thermal Throttling" + timeout: 3.0 + + - path: /autoware/system/resources/cpu/frequency + diag: ": CPU Frequency" + timeout: 3.0 + + - path: /autoware/system/resources/cpu/load_average + diag: ": CPU Load Average" + timeout: 3.0 + + - path: /autoware/system/resources/gpu/temperature + diag: ": GPU Temperature" + timeout: 3.0 + + - path: /autoware/system/resources/gpu/usage + diag: ": GPU Usage" + timeout: 3.0 + + - path: /autoware/system/resources/gpu/memory_usage + diag: ": GPU Memory Usage" + timeout: 3.0 + + - path: /autoware/system/resources/gpu/thermal_throttling + diag: ": GPU Thermal Throttling" + timeout: 3.0 + + - path: /autoware/system/resources/gpu/frequency + diag: ": GPU Frequency" + timeout: 3.0 + + - path: /autoware/system/resources/memory/usage + diag: ": Memory Usage" + timeout: 3.0 + + - path: /autoware/system/resources/network/usage + diag: ": Network Usage" + timeout: 3.0 + + - path: /autoware/system/resources/network/traffic + diag: ": Network Traffic" + timeout: 3.0 + + - path: /autoware/system/resources/network/crc + diag: ": Network CRC Error" + timeout: 3.0 + + - path: /autoware/system/resources/network/packet_reassembles + diag: ": IP Packet Reassembles Failed" + timeout: 3.0 + + - path: /autoware/system/resources/storage/temperature + diag: ": HDD Temperature" + timeout: 3.0 + + - path: /autoware/system/resources/storage/recovered_error + diag: ": HDD RecoveredError" + timeout: 3.0 + + - path: /autoware/system/resources/storage/read_data_rate + diag: ": HDD ReadDataRate" + timeout: 3.0 + + - path: /autoware/system/resources/storage/write_data_rate + diag: ": HDD WriteDataRate" + timeout: 3.0 + + - path: /autoware/system/resources/storage/read_iops + diag: ": HDD ReadIOPS" + timeout: 3.0 + + - path: /autoware/system/resources/storage/write_iops + diag: ": HDD WriteIOPS" + timeout: 3.0 + + - path: /autoware/system/resources/storage/usage + diag: ": HDD Usage" + timeout: 3.0 + + - path: /autoware/system/resources/storage/power_on_hours + diag: ": HDD PowerOnHours" + timeout: 3.0 + + - path: /autoware/system/resources/storage/total_data_written + diag: ": HDD TotalDataWritten" + timeout: 3.0 + + - path: /autoware/system/resources/storage/connection + diag: ": HDD Connection" + timeout: 3.0 + + - path: /autoware/system/resources/process/high_load + diag: ": High-load" + timeout: 3.0 + + - path: /autoware/system/resources/process/high_mem + diag: ": High-mem" + timeout: 3.0 + + - path: /autoware/system/resources/process/tasks_summary + diag: ": Tasks Summary" + timeout: 3.0 + + - path: /autoware/system/resources/voltage/battery + diag: ": CMOS Battery Status" + timeout: 3.0 diff --git a/autoware_launch/config/system/tier4_diagnostics/localization.yaml b/autoware_launch/config/system/tier4_diagnostics/localization.yaml new file mode 100644 index 0000000000..1100f2edac --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/localization.yaml @@ -0,0 +1,43 @@ +units: + - path: /autoware/localization + type: short-circuit-and + list: + - type: link + link: /autoware/localization/state + - type: and + list: + - { type: link, link: /autoware/localization/topic_rate_check/transform } + - { type: link, link: /autoware/localization/topic_rate_check/pose_twist_fusion } + - { type: link, link: /autoware/localization/scan_matching_status } + - { type: link, link: /autoware/localization/accuracy } + - { type: link, link: /autoware/localization/sensor_fusion_status } + + - path: /autoware/localization/state + type: diag + node: component_state_diagnostics + name: localization_state + + - path: /autoware/localization/topic_rate_check/transform + type: diag + node: topic_state_monitor_transform_map_to_base_link + name: localization_topic_status + + - path: /autoware/localization/topic_rate_check/pose_twist_fusion + type: diag + node: topic_state_monitor_pose_twist_fusion_filter_pose + name: localization_topic_status + + - path: /autoware/localization/scan_matching_status + type: diag + node: ndt_scan_matcher + name: scan_matching_status + + - path: /autoware/localization/accuracy + type: diag + node: localization_error_monitor + name: ellipse_error_status + + - path: /autoware/localization/sensor_fusion_status + type: diag + node: localization + name: ekf_localizer diff --git a/autoware_launch/config/system/tier4_diagnostics/map.yaml b/autoware_launch/config/system/tier4_diagnostics/map.yaml new file mode 100644 index 0000000000..231ac6eb5f --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/map.yaml @@ -0,0 +1,16 @@ +units: + - path: /autoware/map + type: and + list: + - { type: link, link: /autoware/map/topic_rate_check/vector_map } + - { type: link, link: /autoware/map/topic_rate_check/pointcloud_map } + + - path: /autoware/map/topic_rate_check/vector_map + type: diag + node: topic_state_monitor_vector_map + name: map_topic_status + + - path: /autoware/map/topic_rate_check/pointcloud_map + type: diag + node: topic_state_monitor_pointcloud_map + name: map_topic_status diff --git a/autoware_launch/config/system/tier4_diagnostics/perception.yaml b/autoware_launch/config/system/tier4_diagnostics/perception.yaml new file mode 100644 index 0000000000..24e3c4eed5 --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/perception.yaml @@ -0,0 +1,16 @@ +units: + - path: /autoware/perception + type: and + list: + - { type: link, link: /autoware/perception/topic_rate_check/objects } + - { type: link, link: /autoware/perception/topic_rate_check/pointcloud } + + - path: /autoware/perception/topic_rate_check/objects + type: diag + node: topic_state_monitor_object_recognition_objects + name: perception_topic_status + + - path: /autoware/perception/topic_rate_check/pointcloud + type: diag + node: topic_state_monitor_obstacle_segmentation_pointcloud + name: perception_topic_status diff --git a/autoware_launch/config/system/tier4_diagnostics/planning.yaml b/autoware_launch/config/system/tier4_diagnostics/planning.yaml new file mode 100644 index 0000000000..c403fec237 --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/planning.yaml @@ -0,0 +1,90 @@ +units: + - path: /autoware/planning + type: short-circuit-and + list: + - type: link + link: /autoware/planning/routing/state + - type: and + list: + - { type: link, link: /autoware/planning/topic_rate_check/route } + - { type: link, link: /autoware/planning/topic_rate_check/trajectory } + - { type: link, link: /autoware/planning/trajectory_validation } + + - path: /autoware/planning/trajectory_validation + type: and + list: + - { type: link, link: /autoware/planning/trajectory_validation/finite } + - { type: link, link: /autoware/planning/trajectory_validation/interval } + - { type: link, link: /autoware/planning/trajectory_validation/curvature } + - { type: link, link: /autoware/planning/trajectory_validation/angle } + - { type: link, link: /autoware/planning/trajectory_validation/lateral_acceleration } + - { type: link, link: /autoware/planning/trajectory_validation/acceleration } + - { type: link, link: /autoware/planning/trajectory_validation/deceleration } + - { type: link, link: /autoware/planning/trajectory_validation/steering } + - { type: link, link: /autoware/planning/trajectory_validation/steering_rate } + - { type: link, link: /autoware/planning/trajectory_validation/velocity_deviation } + + - path: /autoware/planning/routing/state + type: diag + node: component_state_diagnostics + name: route_state + + - path: /autoware/planning/topic_rate_check/route + type: diag + node: topic_state_monitor_mission_planning_route + name: planning_topic_status + + - path: /autoware/planning/topic_rate_check/trajectory + type: diag + node: topic_state_monitor_scenario_planning_trajectory + name: planning_topic_status + + - path: /autoware/planning/trajectory_validation/finite + type: diag + node: planning_validator + name: trajectory_validation_finite + + - path: /autoware/planning/trajectory_validation/interval + type: diag + node: planning_validator + name: trajectory_validation_interval + + - path: /autoware/planning/trajectory_validation/curvature + type: diag + node: planning_validator + name: trajectory_validation_curvature + + - path: /autoware/planning/trajectory_validation/angle + type: diag + node: planning_validator + name: trajectory_validation_relative_angle + + - path: /autoware/planning/trajectory_validation/lateral_acceleration + type: diag + node: planning_validator + name: trajectory_validation_lateral_acceleration + + - path: /autoware/planning/trajectory_validation/acceleration + type: diag + node: planning_validator + name: trajectory_validation_acceleration + + - path: /autoware/planning/trajectory_validation/deceleration + type: diag + node: planning_validator + name: trajectory_validation_deceleration + + - path: /autoware/planning/trajectory_validation/steering + type: diag + node: planning_validator + name: trajectory_validation_steering + + - path: /autoware/planning/trajectory_validation/steering_rate + type: diag + node: planning_validator + name: trajectory_validation_steering_rate + + - path: /autoware/planning/trajectory_validation/velocity_deviation + type: diag + node: planning_validator + name: trajectory_validation_velocity_deviation diff --git a/autoware_launch/config/system/tier4_diagnostics/system.yaml b/autoware_launch/config/system/tier4_diagnostics/system.yaml new file mode 100644 index 0000000000..cb96c2cd7f --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/system.yaml @@ -0,0 +1,27 @@ +units: + - path: /autoware/system + type: and + list: + - { type: link, link: /autoware/system/duplicated_node_checker } + - { type: link, link: /autoware/system/topic_rate_check/emergency_control_command } + - { type: link, link: /autoware/system/emergency_stop_operation } + + - path: /autoware/system/duplicated_node_checker + type: diag + node: duplicated_node_checker + name: duplicated_node_checker + + - path: /autoware/system/service_log_checker + type: diag + node: service_log_checker + name: response_status + + - path: /autoware/system/topic_rate_check/emergency_control_command + type: diag + node: topic_state_monitor_system_emergency_control_cmd + name: system_topic_status + + - path: /autoware/system/emergency_stop_operation + type: diag + node: vehicle_cmd_gate + name: emergency_stop_operation diff --git a/autoware_launch/config/system/tier4_diagnostics/vehicle.yaml b/autoware_launch/config/system/tier4_diagnostics/vehicle.yaml new file mode 100644 index 0000000000..e040e3c3c3 --- /dev/null +++ b/autoware_launch/config/system/tier4_diagnostics/vehicle.yaml @@ -0,0 +1,16 @@ +units: + - path: /autoware/vehicle + type: and + list: + - { type: link, link: /autoware/vehicle/topic_rate_check/velocity } + - { type: link, link: /autoware/vehicle/topic_rate_check/steering } + + - path: /autoware/vehicle/topic_rate_check/velocity + type: diag + node: topic_state_monitor_vehicle_status_velocity_status + name: vehicle_topic_status + + - path: /autoware/vehicle/topic_rate_check/steering + type: diag + node: topic_state_monitor_vehicle_status_steering_status + name: vehicle_topic_status