mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-11-05 05:51:35 +08:00
logger: add separate profile for vision/avoidance
Keeps things more modular.
This commit is contained in:
@@ -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
|
||||||
|
|||||||
@@ -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();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -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.
|
||||||
|
|||||||
@@ -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
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user