logger: add separate profile for vision/avoidance

Keeps things more modular.
This commit is contained in:
Beat Küng
2018-12-07 11:51:59 +01:00
parent fced1ce33b
commit dc49e259b3
4 changed files with 22 additions and 8 deletions
+2
View File
@@ -147,6 +147,8 @@ then
param set RTL_LAND_DELAY 5 param set RTL_LAND_DELAY 5
param set RTL_RETURN_ALT 30 param set RTL_RETURN_ALT 30
# enable default, estimator replay and vision/avoidance logging profiles
param set SDLOG_PROFILE 131
param set SDLOG_DIRS_MAX 7 param set SDLOG_DIRS_MAX 7
param set SENS_BOARD_ROT 0 param set SENS_BOARD_ROT 0
param set SENS_BOARD_X_OFF 0.000001 param set SENS_BOARD_X_OFF 0.000001
+14 -6
View File
@@ -622,7 +622,6 @@ void Logger::add_default_topics()
add_topic("battery_status", 500); add_topic("battery_status", 500);
add_topic("camera_capture"); add_topic("camera_capture");
add_topic("camera_trigger"); add_topic("camera_trigger");
add_topic("collision_constraints");
add_topic("cpuload"); add_topic("cpuload");
add_topic("distance_sensor", 100); add_topic("distance_sensor", 100);
add_topic("ekf2_innovations", 200); add_topic("ekf2_innovations", 200);
@@ -634,7 +633,6 @@ void Logger::add_default_topics()
add_topic("manual_control_setpoint", 200); add_topic("manual_control_setpoint", 200);
add_topic("mission"); add_topic("mission");
add_topic("mission_result"); add_topic("mission_result");
add_topic("obstacle_distance");
add_topic("optical_flow", 50); add_topic("optical_flow", 50);
add_topic("position_setpoint_triplet", 200); add_topic("position_setpoint_triplet", 200);
add_topic("radio_status"); add_topic("radio_status");
@@ -655,13 +653,9 @@ void Logger::add_default_topics()
add_topic("vehicle_local_position", 100); add_topic("vehicle_local_position", 100);
add_topic("vehicle_local_position_setpoint", 100); add_topic("vehicle_local_position_setpoint", 100);
add_topic("vehicle_magnetometer", 200); add_topic("vehicle_magnetometer", 200);
add_topic("vehicle_mocap_odometry", 30);
add_topic("vehicle_rates_setpoint", 30); add_topic("vehicle_rates_setpoint", 30);
add_topic("vehicle_status", 200); add_topic("vehicle_status", 200);
add_topic("vehicle_status_flags"); add_topic("vehicle_status_flags");
add_topic("vehicle_trajectory_waypoint", 200);
add_topic("vehicle_trajectory_waypoint_desired", 200);
add_topic("vehicle_visual_odometry", 30);
add_topic("vtol_vehicle_status", 200); add_topic("vtol_vehicle_status", 200);
add_topic("wind_estimate", 200); add_topic("wind_estimate", 200);
@@ -737,6 +731,16 @@ void Logger::add_sensor_comparison_topics()
add_topic("sensor_mag", 100); add_topic("sensor_mag", 100);
} }
void Logger::add_vision_and_avoidance_topics()
{
add_topic("collision_constraints");
add_topic("obstacle_distance");
add_topic("vehicle_mocap_odometry", 30);
add_topic("vehicle_trajectory_waypoint", 200);
add_topic("vehicle_trajectory_waypoint_desired", 200);
add_topic("vehicle_visual_odometry", 30);
}
void Logger::add_system_identification_topics() void Logger::add_system_identification_topics()
{ {
// for system id need to log imu and controls at full rate // for system id need to log imu and controls at full rate
@@ -867,6 +871,10 @@ void Logger::initialize_configured_topics()
if (sdlog_profile & SDLogProfileMask::SENSOR_COMPARISON) { if (sdlog_profile & SDLogProfileMask::SENSOR_COMPARISON) {
add_sensor_comparison_topics(); add_sensor_comparison_topics();
} }
if (sdlog_profile & SDLogProfileMask::VISION_AND_AVOIDANCE) {
add_vision_and_avoidance_topics();
}
} }
+3 -1
View File
@@ -64,7 +64,8 @@ enum class SDLogProfileMask : int32_t {
SYSTEM_IDENTIFICATION = 1 << 3, SYSTEM_IDENTIFICATION = 1 << 3,
HIGH_RATE = 1 << 4, HIGH_RATE = 1 << 4,
DEBUG_TOPICS = 1 << 5, DEBUG_TOPICS = 1 << 5,
SENSOR_COMPARISON = 1 << 6 SENSOR_COMPARISON = 1 << 6,
VISION_AND_AVOIDANCE = 1 << 7
}; };
enum class MissionLogType : int32_t { enum class MissionLogType : int32_t {
@@ -332,6 +333,7 @@ private:
void add_high_rate_topics(); void add_high_rate_topics();
void add_debug_topics(); void add_debug_topics();
void add_sensor_comparison_topics(); void add_sensor_comparison_topics();
void add_vision_and_avoidance_topics();
/** /**
* check current arming state and start/stop logging if state changed and according to configured params. * check current arming state and start/stop logging if state changed and according to configured params.
+3 -1
View File
@@ -105,9 +105,10 @@ PARAM_DEFINE_INT32(SDLOG_MISSION, 1);
* 4 : Full rates for analysis of fast maneuvers (RC, attitude, rates and actuators) * 4 : Full rates for analysis of fast maneuvers (RC, attitude, rates and actuators)
* 5 : Debugging topics (debug_*.msg topics, for custom code) * 5 : Debugging topics (debug_*.msg topics, for custom code)
* 6 : Topics for sensor comparison (low rate raw IMU, Baro and Magnetomer data) * 6 : Topics for sensor comparison (low rate raw IMU, Baro and Magnetomer data)
* 7 : Topics for computer vision and collision avoidance
* *
* @min 0 * @min 0
* @max 127 * @max 255
* @bit 0 Default set (general log analysis) * @bit 0 Default set (general log analysis)
* @bit 1 Estimator replay (EKF2) * @bit 1 Estimator replay (EKF2)
* @bit 2 Thermal calibration * @bit 2 Thermal calibration
@@ -115,6 +116,7 @@ PARAM_DEFINE_INT32(SDLOG_MISSION, 1);
* @bit 4 High rate * @bit 4 High rate
* @bit 5 Debug * @bit 5 Debug
* @bit 6 Sensor comparison * @bit 6 Sensor comparison
* @bit 7 Computer Vision and Avoidance
* @reboot_required true * @reboot_required true
* @group SD Logging * @group SD Logging
*/ */