|
1 | 1 | /**:
|
2 | 2 | ros__parameters:
|
3 | 3 | # -- system --
|
4 |
| - traj_resample_dist: 0.1 # path resampling interval [m] |
5 |
| - use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) |
6 |
| - admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value |
7 |
| - admissible_yaw_error_rad: 1.57 # stop mpc calculation when error is larger than the following value |
| 4 | + traj_resample_dist: 0.1 # path resampling interval [m] |
| 5 | + use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) |
| 6 | + admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value |
| 7 | + admissible_yaw_error_rad: 1.57 # stop mpc calculation when error is larger than the following value |
8 | 8 |
|
9 | 9 | # -- path smoothing --
|
10 |
| - enable_path_smoothing: false # flag for path smoothing |
| 10 | + enable_path_smoothing: false # flag for path smoothing |
11 | 11 | path_filter_moving_ave_num: 25 # param of moving average filter for path smoothing
|
12 |
| - curvature_smoothing_num_traj: 15 # point-to-point index distance used in curvature calculation (for trajectory): curvature is calculated from three points p(i-num), p(i), p(i+num) |
13 |
| - curvature_smoothing_num_ref_steer: 15 # point-to-point index distance used in curvature calculation (for steer command reference): curvature is calculated from three points p(i-num), p(i), p(i+num) |
| 12 | + curvature_smoothing_num_traj: 15 # point-to-point index distance used in curvature calculation (for trajectory): curvature is calculated from three points p(i-num), p(i), p(i+num) |
| 13 | + curvature_smoothing_num_ref_steer: 15 # point-to-point index distance used in curvature calculation (for steer command reference): curvature is calculated from three points p(i-num), p(i), p(i+num) |
14 | 14 |
|
15 | 15 | # -- trajectory extending --
|
16 |
| - extend_trajectory_for_end_yaw_control: true # flag of trajectory extending for terminal yaw control |
| 16 | + extend_trajectory_for_end_yaw_control: false # flag of trajectory extending for terminal yaw control |
17 | 17 |
|
18 | 18 | # -- mpc optimization --
|
19 |
| - qp_solver_type: "osqp" # optimization solver option (unconstraint_fast or osqp) |
20 |
| - mpc_prediction_horizon: 50 # prediction horizon step |
21 |
| - mpc_prediction_dt: 0.1 # prediction horizon period [s] |
22 |
| - mpc_weight_lat_error: 0.1 # lateral error weight in matrix Q |
23 |
| - mpc_weight_heading_error: 0.0 # heading error weight in matrix Q |
24 |
| - mpc_weight_heading_error_squared_vel: 0.3 # heading error * velocity weight in matrix Q |
25 |
| - mpc_weight_steering_input: 1.0 # steering error weight in matrix R |
26 |
| - mpc_weight_steering_input_squared_vel: 0.25 # steering error * velocity weight in matrix R |
27 |
| - mpc_weight_lat_jerk: 0.0 # lateral jerk weight in matrix R |
28 |
| - mpc_weight_steer_rate: 0.0 # steering rate weight in matrix R |
29 |
| - mpc_weight_steer_acc: 0.000001 # steering angular acceleration weight in matrix R |
30 |
| - mpc_low_curvature_weight_lat_error: 0.1 # lateral error weight in matrix Q in low curvature point |
31 |
| - mpc_low_curvature_weight_heading_error: 0.0 # heading error weight in matrix Q in low curvature point |
32 |
| - mpc_low_curvature_weight_heading_error_squared_vel: 0.3 # heading error * velocity weight in matrix Q in low curvature point |
33 |
| - mpc_low_curvature_weight_steering_input: 1.0 # steering error weight in matrix R in low curvature point |
34 |
| - mpc_low_curvature_weight_steering_input_squared_vel: 0.25 # steering error * velocity weight in matrix R in low curvature point |
35 |
| - mpc_low_curvature_weight_lat_jerk: 0.0 # lateral jerk weight in matrix R in low curvature point |
36 |
| - mpc_low_curvature_weight_steer_rate: 0.0 # steering rate weight in matrix R in low curvature point |
37 |
| - mpc_low_curvature_weight_steer_acc: 0.000001 # steering angular acceleration weight in matrix R in low curvature point |
38 |
| - mpc_low_curvature_thresh_curvature: 0.0 # threshold of curvature to use "low_curvature" parameter (recommend: 0.01~0.03) |
39 |
| - mpc_weight_terminal_lat_error: 1.0 # terminal lateral error weight in matrix Q to improve mpc stability |
40 |
| - mpc_weight_terminal_heading_error: 0.1 # terminal heading error weight in matrix Q to improve mpc stability |
41 |
| - mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero |
42 |
| - mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration |
43 |
| - mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing |
44 |
| - mpc_min_prediction_length: 5.0 # minimum prediction length |
| 19 | + qp_solver_type: "osqp" # optimization solver option (unconstraint_fast or osqp) |
| 20 | + mpc_prediction_horizon: 50 # prediction horizon step |
| 21 | + mpc_prediction_dt: 0.1 # prediction horizon period [s] |
| 22 | + mpc_weight_lat_error: 1.0 # lateral error weight in matrix Q |
| 23 | + mpc_weight_heading_error: 0.0 # heading error weight in matrix Q |
| 24 | + mpc_weight_heading_error_squared_vel: 0.3 # heading error * velocity weight in matrix Q |
| 25 | + mpc_weight_steering_input: 1.0 # steering error weight in matrix R |
| 26 | + mpc_weight_steering_input_squared_vel: 0.25 # steering error * velocity weight in matrix R |
| 27 | + mpc_weight_lat_jerk: 0.1 # lateral jerk weight in matrix R |
| 28 | + mpc_weight_steer_rate: 0.0 # steering rate weight in matrix R |
| 29 | + mpc_weight_steer_acc: 0.000001 # steering angular acceleration weight in matrix R |
| 30 | + mpc_low_curvature_weight_lat_error: 0.1 # lateral error weight in matrix Q in low curvature point |
| 31 | + mpc_low_curvature_weight_heading_error: 0.0 # heading error weight in matrix Q in low curvature point |
| 32 | + mpc_low_curvature_weight_heading_error_squared_vel: 0.3 # heading error * velocity weight in matrix Q in low curvature point |
| 33 | + mpc_low_curvature_weight_steering_input: 1.0 # steering error weight in matrix R in low curvature point |
| 34 | + mpc_low_curvature_weight_steering_input_squared_vel: 0.25 # steering error * velocity weight in matrix R in low curvature point |
| 35 | + mpc_low_curvature_weight_lat_jerk: 0.0 # lateral jerk weight in matrix R in low curvature point |
| 36 | + mpc_low_curvature_weight_steer_rate: 0.0 # steering rate weight in matrix R in low curvature point |
| 37 | + mpc_low_curvature_weight_steer_acc: 0.000001 # steering angular acceleration weight in matrix R in low curvature point |
| 38 | + mpc_low_curvature_thresh_curvature: 0.0 # threshold of curvature to use "low_curvature" parameter (recommend: 0.01~0.03) |
| 39 | + mpc_weight_terminal_lat_error: 1.0 # terminal lateral error weight in matrix Q to improve mpc stability |
| 40 | + mpc_weight_terminal_heading_error: 0.1 # terminal heading error weight in matrix Q to improve mpc stability |
| 41 | + mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero |
| 42 | + mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration |
| 43 | + mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing |
| 44 | + mpc_min_prediction_length: 5.0 # minimum prediction length |
45 | 45 |
|
46 | 46 | # -- vehicle model --
|
47 | 47 | vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics
|
48 |
| - input_delay: 0.24 # steering input delay time for delay compensation |
49 |
| - vehicle_model_steer_tau: 0.3 # steering dynamics time constant (1d approximation) [s] |
50 |
| - steer_rate_lim_dps_list_by_curvature: [10.0, 20.0, 30.0] # steering angle rate limit list depending on curvature [deg/s] |
| 48 | + input_delay: 0.24 # steering input delay time for delay compensation |
| 49 | + vehicle_model_steer_tau: 0.3 # steering dynamics time constant (1d approximation) [s] |
| 50 | + steer_rate_lim_dps_list_by_curvature: [40.0, 50.0, 60.0] # steering angle rate limit list depending on curvature [deg/s] |
51 | 51 | curvature_list_for_steer_rate_lim: [0.001, 0.002, 0.01] # curvature list for steering angle rate limit interpolation in ascending order [/m]
|
52 |
| - steer_rate_lim_dps_list_by_velocity: [40.0, 30.0, 20.0] # steering angle rate limit list depending on velocity [deg/s] |
| 52 | + steer_rate_lim_dps_list_by_velocity: [60.0, 50.0, 40.0] # steering angle rate limit list depending on velocity [deg/s] |
53 | 53 | velocity_list_for_steer_rate_lim: [10.0, 15.0, 20.0] # velocity list for steering angle rate limit interpolation in ascending order [m/s]
|
54 |
| - acceleration_limit: 2.0 # acceleration limit for trajectory velocity modification [m/ss] |
55 |
| - velocity_time_constant: 0.3 # velocity dynamics time constant for trajectory velocity modification [s] |
| 54 | + acceleration_limit: 2.0 # acceleration limit for trajectory velocity modification [m/ss] |
| 55 | + velocity_time_constant: 0.3 # velocity dynamics time constant for trajectory velocity modification [s] |
56 | 56 |
|
57 | 57 | # -- lowpass filter for noise reduction --
|
58 | 58 | steering_lpf_cutoff_hz: 3.0 # cutoff frequency of lowpass filter for steering command [Hz]
|
|
65 | 65 | keep_steer_control_until_converged: true
|
66 | 66 | new_traj_duration_time: 1.0
|
67 | 67 | new_traj_end_dist: 0.3
|
68 |
| - mpc_converged_threshold_rps: 0.01 # threshold of mpc convergence check [rad/s] |
| 68 | + mpc_converged_threshold_rps: 0.01 # threshold of mpc convergence check [rad/s] |
69 | 69 |
|
70 | 70 | # steer offset
|
71 | 71 | steering_offset:
|
|
0 commit comments