21 #ifndef YAW_CALIBRATION_H 22 #define YAW_CALIBRATION_H 24 #include "laser_calibration.h" 35 std::string config_path);
40 float get_new_yaw(
float current_cost,
float last_yaw);
Laser360Interface Fawkes BlackBoard Interface.
std::uniform_real_distribution< float > random_float_dist_
The distribution used to compute the random reset probability.
Abstract base class for laser calibration.
const float init_step_
The initial step size.
float min_cost_yaw_
A yaw configuration with the minimal cost.
Calibrate the yaw angle of the back laser using the front laser.
float get_new_yaw(float current_cost, float last_yaw)
Compute the new yaw.
float step_
The current step size.
std::map< float, float > costs_
A map of yaw config values to costs.
float min_cost_
The minimal cost.
YawCalibration(LaserInterface *laser, LaserInterface *front_laser, fawkes::tf::Transformer *tf_transformer, fawkes::NetworkConfiguration *config, std::string config_path)
Constructor.
float get_current_cost(float *new_yaw)
Get the cost of the current configuration.
std::mt19937 random_generator_
Random number generator used to compute the random reset probability.
LaserInterface * front_laser_
The laser interface used to read the front laser data from.
virtual void calibrate()
The actual calibration.
Remote configuration via Fawkes net.