22 #include <adore/fun/nlpqlp_planner/planner_data.h>
67 k1 =
data.platoon_controller_kd;
68 k2 =
data.platoon_controller_kp;
69 kI =
data.platoon_controller_ki;
91 double vx = egoStates.
getvx();
100 double preceding_s_behind_bumper ;
101 double preceding_s_front_bumper ;
102 double leader_s_behind_bumper ;
103 double precedingPolicy_s;
125 double leaderPolicy_s = (
desiredTimeGap * preceding_v) + (preceding_s_front_bumper);
146 double _v = std::floor(v);
148 rem = (std::floor(rem*10.))/10.;
Definition: cooperativeusersprocess.h:27
bool precedingExists()
Definition: cooperativeusersprocess.h:68
double getEgoProgressFrontSide()
Definition: cooperativeusersprocess.h:75
CooperativeUser getLeader()
Definition: cooperativeusersprocess.h:66
bool leaderExists()
Definition: cooperativeusersprocess.h:69
CooperativeUser getPreceding()
Definition: cooperativeusersprocess.h:65
bool leaderIsPreceding()
Definition: cooperativeusersprocess.h:71
Definition: platoon_controller.h:42
adore::env::CooperativeUsersProcess * cup
Definition: platoon_controller.h:156
double v2
Definition: platoon_controller.h:167
double control_preceding
Definition: platoon_controller.h:49
double suggested_velocity
Definition: platoon_controller.h:173
double filter(double v)
Definition: platoon_controller.h:144
double error_I
Definition: platoon_controller.h:174
double previousErrorToLeader
Definition: platoon_controller.h:169
double velocity
Definition: platoon_controller.h:168
double v3
Definition: platoon_controller.h:167
double kI
Definition: platoon_controller.h:158
double kp
Definition: platoon_controller.h:159
double previousErrorToPrecedor
Definition: platoon_controller.h:171
double error_preceding
Definition: platoon_controller.h:47
~PlatoonController()
Definition: platoon_controller.h:83
void update(adore::fun::VehicleMotionState9d &egoStates)
Definition: platoon_controller.h:85
double correction
Definition: platoon_controller.h:155
Planner_data data
Definition: platoon_controller.h:52
double kl
Definition: platoon_controller.h:160
double currentTime
Definition: platoon_controller.h:51
double MAX_VELOCITY
Definition: platoon_controller.h:157
double k4
Definition: platoon_controller.h:166
double k3
Definition: platoon_controller.h:166
double timeDifference
Definition: platoon_controller.h:165
double k1
Definition: platoon_controller.h:166
double currentErrorToLeader
Definition: platoon_controller.h:170
double desiredTimeGap
Definition: platoon_controller.h:163
double pp
Definition: platoon_controller.h:162
double error_leader
Definition: platoon_controller.h:48
double control_leader
Definition: platoon_controller.h:50
double pl
Definition: platoon_controller.h:161
double getVelocity()
Definition: platoon_controller.h:143
PlatoonController(adore::env::CooperativeUsersProcess *cup, Planner_data data)
Definition: platoon_controller.h:61
double desiredTimeGapWithLeader
Definition: platoon_controller.h:164
double v1
Definition: platoon_controller.h:167
double k2
Definition: platoon_controller.h:166
double currentErrorToPrecedor
Definition: platoon_controller.h:172
adoreMatrix< T, N, M > max(adoreMatrix< T, N, M > a, const adoreMatrix< T, N, M > &b)
Definition: adoremath.h:686
Definition: areaofeffectconverter.h:20
std::vector< double > v
Definition: cooperativeusersprediction.h:39
struct adore::env::CooperativeUserPrediction::@0 currentTrajectory
CooperativeUserPrediction MCM
Definition: cooperativeusersprocess.h:33
double progress_front_side
Definition: cooperativeusersprocess.h:36
double progress_rear_side
Definition: cooperativeusersprocess.h:37
This struct holds the motion state of the vehicle in 9d.
Definition: vehiclemotionstate9d.h:39
double getvx() const
Get the longitudinal velocity.
Definition: vehiclemotionstate9d.h:78
double getTime() const
Get the time.
Definition: vehiclemotionstate9d.h:48