123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- #ifndef PARAMETER_STATUS_H
- #define PARAMETER_STATUS_H
- #include <boost.h>
- #include <cstdint>
- #include <boost/serialization/singleton.hpp>
- #include <common/vv7.h>
- 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<iv::decition::ParameterStatus> ParameterStatusSingleton;
- }
- #define ServiceParameterStatus iv::decition::ParameterStatusSingleton::get_mutable_instance()
- }
- #endif // PARAMETER_STATUS_H
|