#ifndef PARAMETER_STATUS_H #define PARAMETER_STATUS_H #include #include #include #include namespace iv { namespace decition { class ParameterStatus : public boost::noncopyable { public: /***************** * **** speed control ***** * ***************/ float speed_kp=0.5; float speed_kd=0.3; float speed_ki=0; float speed_kp_t=10; float speed_kd_t=0; float speed_ki_t=0; float speed_increase_limite_switch=1; float speed_decline_limite_switch=1; float speed_max_increase=5; float speed_max_decline=10; /***************** * **** ttc control ***** * ***************/ float ttc_emc=0.8; float ttc_urgent=1.6; float ttc_early=10; float brakeIntMax_emc=10; float brakeIntMax_urgent=5; float brakeIntMax_early=3; /***************** * **** wheel control ***** * ***************/ float wheel_p_eang=14; float wheel_p_epos=10; float wheel_d_eang=5; float wheel_d_epos=5; float wheel_i_eang=0; float wheel_i_epos=0; float wheel_previewDistance_coefficient=0.6; float wheel_previewDistance_min=5; float wheel_change_limit_switch=0; float wheel_max_change=10; /***************** * **** path planning ***** * ***************/ float road_width = 3.5; //道路宽度 int now_road_num = 0; //车辆当前所在道路编号 /***************** * **** frenet path planning ***** * ***************/ double MAX_SPEED = 50.0 / 3.6; // 最大速度 [m/s] double MAX_ACCEL = 10; // 最大加速度[m/ss] double MAX_CURVATURE = 10; // 最大曲率 [1/m] double MIN_ROAD_OFFSET = -3.5; // 最小道路偏移度 [m]。可以为负数。 double MAX_ROAD_WIDTH = 3.5; // 最大道路宽度 [m]。过小可能不具有避障功能。 double D_ROAD_W = 3.5; // 道路宽度采样间隔 [m] double DT = 0.2; // Delta T [s]。总的预测时间的增量。 double MAXT = 4.0; // 最大预测时间 [s] double MINT = 2.0; // 最小预测时间 [s] double D_POINT_T = 0.04; // 时间增量 [s]。用于控制每条轨迹生成轨迹点的密度。 double TARGET_SPEED = 30.0 / 3.6; // 目标速度(即纵向的速度保持) [m/s] double D_T_S = 5.0 / 3.6; // 目标速度采样间隔 [m/s] double N_S_SAMPLE = 1; // sampling number of target speed double ROBOT_RADIUS = 2.0; // robot radius [m] // 损失函数权重 double KJ = 0.1; double KT = 0.1; double KD = 1.0; double KLAT = 1.0; double KLON = 1.0; }; typedef boost::serialization::singleton ParameterStatusSingleton; } #define ServiceParameterStatus iv::decition::ParameterStatusSingleton::get_mutable_instance() } #endif // PARAMETER_STATUS_H