MissionMetrics
- class suave_metrics.mission_metrics.MissionMetrics(node_name: str = 'suave_metrics', **kwargs)
ROS node used to save mission metrics.
ROS params: result_path, result_filename, adaptation_manager, mission_name.
- __init__(node_name: str = 'suave_metrics', **kwargs)
Initialize metric parameters, subscriptions, service, and output.
- append_csv(file_path: str, data: list[str | float | int]) None
Append array to .csv file.
- Parameters:
file_path – file path
data – data to be saved
- call_service(cli, request)
Call a ROS service and return its response within one second.
- check_altitude(diagnostic_status, time)
Detect an altitude mismatch for the measured water visibility.
- check_battery(diagnostic_status, time)
Track transitions below and above the configured battery limit.
- check_thrusther(diagnostic_status, time)
Record the first reported thruster failure.
- diagnostics_cb(msg)
Process quality and component diagnostic measurements.
- distance_inspected_cb(msg)
Update the latest inspected pipeline distance.
- gazebo_pos_cb(msg)
Record the vehicle’s initial Gazebo position.
- generate_recharge_path_transition_cb(msg)
Record reaction time when a recharge path becomes active.
- get_expected_spiral_altitude(measured_wv)
Map measured water visibility to the expected search altitude.
- get_spiral_altitude()
Return the current spiral-search altitude, if available.
- get_water_visibility_thresholds()
Return configured visibility thresholds with legacy-name support.
- maintain_motion_transition_cb(msg)
Record reaction time when motion recovers after thruster failure.
- param_change_cb(msg)
Record reaction time for a corrective search-altitude update.
- pipeline_detected_cb(msg)
Record the first successful pipeline detection time.
- pipeline_inspected_cb(msg)
Save mission results when pipeline inspection completes.
- save_metrics(path: str, filename: str, header: list[str], data: list[str | float | int]) None
Save data into a .csv file.
Create folder if result_path folder does not exist. Create file if result_file does not exist and insert header. Append data if result_file exist.
- Parameters:
data – array with data to be saved
- save_mission_results() None
Process mission data and save it into a .csv file.
- save_mission_results_cb(req: Empty_Request, res: Empty_Response) None
Save results on service request and stop metric subscriptions.
- status_cb(msg)
Record mission start when the vehicle enters guided mode.
Methods
__init__([node_name])Initialize metric parameters, subscriptions, service, and output.
append_csv(file_path, data)Append array to .csv file.
call_service(cli, request)Call a ROS service and return its response within one second.
check_altitude(diagnostic_status, time)Detect an altitude mismatch for the measured water visibility.
check_battery(diagnostic_status, time)Track transitions below and above the configured battery limit.
check_thrusther(diagnostic_status, time)Record the first reported thruster failure.
diagnostics_cb(msg)Process quality and component diagnostic measurements.
Update the latest inspected pipeline distance.
gazebo_pos_cb(msg)Record the vehicle's initial Gazebo position.
Record reaction time when a recharge path becomes active.
get_expected_spiral_altitude(measured_wv)Map measured water visibility to the expected search altitude.
Return the current spiral-search altitude, if available.
Return configured visibility thresholds with legacy-name support.
Record reaction time when motion recovers after thruster failure.
param_change_cb(msg)Record reaction time for a corrective search-altitude update.
pipeline_detected_cb(msg)Record the first successful pipeline detection time.
Save mission results when pipeline inspection completes.
save_metrics(path, filename, header, data)Save data into a .csv file.
Process mission data and save it into a .csv file.
save_mission_results_cb(req, res)Save results on service request and stop metric subscriptions.
status_cb(msg)Record mission start when the vehicle enters guided mode.
Attributes
result_pathpath where results must be saved
result_filenamefile name where results must be saved
adaptation_manageradaptation manager name, e.g., none, random, metacontrol