Eclipse SUMO - Simulation of Urban MObility
CC_VehicleVariables.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2001-2019 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v2.0
6 // which accompanies this distribution, and is available at
7 // http://www.eclipse.org/legal/epl-v20.html
8 // SPDX-License-Identifier: EPL-2.0
9 /****************************************************************************/
14 /****************************************************************************/
15 #ifndef CC_VEHICLEVARIABLES_H
16 #define CC_VEHICLEVARIABLES_H
17 
18 // ===========================================================================
19 // included modules
20 // ===========================================================================
21 #include <config.h>
22 
23 #include "CC_Const.h"
25 #include <utils/geom/Position.h>
26 #include <string.h>
27 #include <string>
28 #include <map>
29 
33 
35 public:
36 
54  double frontDistance;
55  double frontSpeed;
58  double leaderSpeed;
61  };
62 
66  const static int defaultL[MAX_N_CARS][MAX_N_CARS];
67 
71  const static double defaultK[MAX_N_CARS][MAX_N_CARS];
72 
76  const static double defaultB[];
77 
81  const static double defaultH[];
82 
85 
88 
90  double frontSpeed;
102  double frontAngle;
105 
107  bool autoFeed;
112 
115  double accLambda;
116 
121  double leaderSpeed;
133  double leaderAngle;
137 
138  //enable/disable the use of a constant, user defined acceleration instead of the one computed by the controller
140  //fixed acceleration to use
142 
143  //car collided in the last timestep
144  bool crashed;
145 
148  double ccKp;
151 
154 
160  double b[MAX_N_CARS];
162  double h[MAX_N_CARS];
163 
171  int position;
173  int nCars;
174 
176  double caccXi;
177  double caccOmegaN;
178  double caccC1;
181  double caccSpacing;
182  double engineTau;
184  double uMin, uMax;
185  double ploegH;
186  double ploegKp;
187  double ploegKd;
188  double flatbedKa;
189  double flatbedKv;
190  double flatbedKp;
191  double flatbedD;
192  double flatbedH;
193 
198 
201 
203  std::map<int, std::string> members;
204 
207 };
208 
209 #endif
CC_VehicleVariables::controllerAcceleration
double controllerAcceleration
acceleration as computed by the controller, to be sent to other vehicles
Definition: CC_VehicleVariables.h:87
CC_VehicleVariables::frontDataReadTime
double frontDataReadTime
when front vehicle data has been readed from GPS
Definition: CC_VehicleVariables.h:98
CC_VehicleVariables::K
double K[MAX_N_CARS][MAX_N_CARS]
K matrix.
Definition: CC_VehicleVariables.h:158
CC_VehicleVariables::accHeadwayTime
double accHeadwayTime
headway time for ACC
Definition: CC_VehicleVariables.h:114
CC_VehicleVariables::frontPosition
Position frontPosition
current front vehicle position
Definition: CC_VehicleVariables.h:96
CC_VehicleVariables::frontSpeed
double frontSpeed
current front vehicle speed
Definition: CC_VehicleVariables.h:90
CC_VehicleVariables::leaderAngle
double leaderAngle
platoon's leader angle in radians
Definition: CC_VehicleVariables.h:133
CC_VehicleVariables::useFixedAcceleration
int useFixedAcceleration
Definition: CC_VehicleVariables.h:139
CC_VehicleVariables::leaderInitialized
bool leaderInitialized
@did we receive at least one packet?
Definition: CC_VehicleVariables.h:135
CC_VehicleVariables::leaderPosition
Position leaderPosition
platoon's leader position
Definition: CC_VehicleVariables.h:127
RealisticEngineModel.h
CC_VehicleVariables::autoFeed
bool autoFeed
determines whether CACC should automatically fetch data about other vehicles
Definition: CC_VehicleVariables.h:107
CC_VehicleVariables::uMin
double uMin
limits for u
Definition: CC_VehicleVariables.h:184
CC_VehicleVariables::leaderDataReadTime
double leaderDataReadTime
when leader data has been readed from GPS
Definition: CC_VehicleVariables.h:129
CC_VehicleVariables::caccSpacing
double caccSpacing
fixed spacing for CACC
Definition: CC_VehicleVariables.h:181
CC_VehicleVariables::FAKE_CONTROLLER_DATA::frontDistance
double frontDistance
Definition: CC_VehicleVariables.h:54
CC_VehicleVariables::crashed
bool crashed
Definition: CC_VehicleVariables.h:144
CC_VehicleVariables::caccXi
double caccXi
controller related parameters
Definition: CC_VehicleVariables.h:176
CC_VehicleVariables::flatbedKp
double flatbedKp
Definition: CC_VehicleVariables.h:190
CC_VehicleVariables::FAKE_CONTROLLER_DATA::leaderSpeed
double leaderSpeed
Definition: CC_VehicleVariables.h:58
CC_VehicleVariables::frontInitialized
bool frontInitialized
@did we receive at least one packet?
Definition: CC_VehicleVariables.h:104
CC_VehicleVariables::defaultK
static const double defaultK[MAX_N_CARS][MAX_N_CARS]
Definition: CC_VehicleVariables.h:71
CC_VehicleVariables::FAKE_CONTROLLER_DATA::leaderControllerAcceleration
double leaderControllerAcceleration
Definition: CC_VehicleVariables.h:60
CC_VehicleVariables
Definition: CC_VehicleVariables.h:34
CC_VehicleVariables::flatbedH
double flatbedH
Definition: CC_VehicleVariables.h:192
CC_VehicleVariables::caccAlpha4
double caccAlpha4
Definition: CC_VehicleVariables.h:179
CC_VehicleVariables::flatbedKv
double flatbedKv
Definition: CC_VehicleVariables.h:189
CC_VehicleVariables::ploegH
double ploegH
Definition: CC_VehicleVariables.h:185
CC_VehicleVariables::frontAcceleration
double frontAcceleration
current front vehicle acceleration (used by CACC)
Definition: CC_VehicleVariables.h:92
CC_VehicleVariables::ccDesiredSpeed
double ccDesiredSpeed
CC desired speed.
Definition: CC_VehicleVariables.h:147
CC_VehicleVariables::nCars
int nCars
number of cars in the platoon
Definition: CC_VehicleVariables.h:173
CC_VehicleVariables::engine
GenericEngineModel * engine
engine model employed by this car
Definition: CC_VehicleVariables.h:195
CC_VehicleVariables::h
double h[MAX_N_CARS]
vector of time headways h
Definition: CC_VehicleVariables.h:162
CC_VehicleVariables::activeController
enum Plexe::ACTIVE_CONTROLLER activeController
currently active controller
Definition: CC_VehicleVariables.h:150
CC_VehicleVariables::caccOmegaN
double caccOmegaN
Definition: CC_VehicleVariables.h:177
CC_VehicleVariables::vehicles
struct Plexe::VEHICLE_DATA vehicles[MAX_N_CARS]
data about vehicles in the platoon
Definition: CC_VehicleVariables.h:165
CC_VehicleVariables::flatbedD
double flatbedD
Definition: CC_VehicleVariables.h:191
CC_VehicleVariables::ploegKp
double ploegKp
Definition: CC_VehicleVariables.h:186
CC_VehicleVariables::useControllerAcceleration
bool useControllerAcceleration
determines whether PATH's CACC should use the real vehicle acceleration or the controller computed on...
Definition: CC_VehicleVariables.h:119
CC_VehicleVariables::FAKE_CONTROLLER_DATA
represent the set of fake data which is sent to the controller in order to automatically make the car...
Definition: CC_VehicleVariables.h:53
CC_VehicleVariables::caccAlpha1
double caccAlpha1
Definition: CC_VehicleVariables.h:179
CC_VehicleVariables::fakeData
struct FAKE_CONTROLLER_DATA fakeData
fake controller data.
Definition: CC_VehicleVariables.h:153
CC_VehicleVariables::caccInitialized
bool caccInitialized
Definition: CC_VehicleVariables.h:136
CC_VehicleVariables::FAKE_CONTROLLER_DATA::frontControllerAcceleration
double frontControllerAcceleration
Definition: CC_VehicleVariables.h:57
CC_VehicleVariables::caccAlpha2
double caccAlpha2
Definition: CC_VehicleVariables.h:179
CC_VehicleVariables::frontAngle
double frontAngle
front vehicle angle in radians
Definition: CC_VehicleVariables.h:102
CC_VehicleVariables::accLambda
double accLambda
Definition: CC_VehicleVariables.h:115
CC_VehicleVariables::ccKp
double ccKp
Definition: CC_VehicleVariables.h:148
CC_VehicleVariables::position
int position
my position within the platoon (0 = first car)
Definition: CC_VehicleVariables.h:171
MAX_N_CARS
#define MAX_N_CARS
Definition: CC_Const.h:73
CC_VehicleVariables::uMax
double uMax
Definition: CC_VehicleVariables.h:184
CC_VehicleVariables::caccC1
double caccC1
Definition: CC_VehicleVariables.h:178
Plexe::VEHICLE_DATA
Definition: CC_Const.h:59
CC_VehicleVariables::initialized
bool initialized[MAX_N_CARS]
tells whether data about a certain vehicle has been initialized
Definition: CC_VehicleVariables.h:167
CC_VehicleVariables::defaultB
static const double defaultB[]
Definition: CC_VehicleVariables.h:76
Position
A point in 2D or 3D with translation and scaling methods.
Definition: Position.h:38
CC_VehicleVariables::frontVelocity
Position frontVelocity
front vehicle velocity vector
Definition: CC_VehicleVariables.h:100
CC_VehicleVariables::L
int L[MAX_N_CARS][MAX_N_CARS]
L matrix.
Definition: CC_VehicleVariables.h:156
CC_VehicleVariables::frontVehicle
MSVehicle * frontVehicle
front sumo id, used for auto feeding
Definition: CC_VehicleVariables.h:111
CC_VehicleVariables::engineTau
double engineTau
Definition: CC_VehicleVariables.h:182
CC_VehicleVariables::~CC_VehicleVariables
~CC_VehicleVariables()
Definition: CC_VehicleVariables.cpp:82
CC_VehicleVariables::FAKE_CONTROLLER_DATA::frontSpeed
double frontSpeed
Definition: CC_VehicleVariables.h:55
CC_VehicleVariables::b
double b[MAX_N_CARS]
vector of damping ratios b
Definition: CC_VehicleVariables.h:160
Position.h
MSCFModel::VehicleVariables
Definition: MSCFModel.h:60
CC_VehicleVariables::ploegKd
double ploegKd
Definition: CC_VehicleVariables.h:187
CC_VehicleVariables::autoLaneChange
bool autoLaneChange
automatic whole platoon lane change
Definition: CC_VehicleVariables.h:206
MSCFModel.h
CC_VehicleVariables::FAKE_CONTROLLER_DATA::leaderAcceleration
double leaderAcceleration
Definition: CC_VehicleVariables.h:59
CC_VehicleVariables::FAKE_CONTROLLER_DATA::frontAcceleration
double frontAcceleration
Definition: CC_VehicleVariables.h:56
CC_VehicleVariables::caccAlpha3
double caccAlpha3
Definition: CC_VehicleVariables.h:179
CC_VehicleVariables::caccAlpha5
double caccAlpha5
Definition: CC_VehicleVariables.h:179
GenericEngineModel
Definition: GenericEngineModel.h:29
CC_VehicleVariables::defaultH
static const double defaultH[]
Definition: CC_VehicleVariables.h:81
CC_VehicleVariables::leaderAcceleration
double leaderAcceleration
platoon's leader acceleration (used by CACC)
Definition: CC_VehicleVariables.h:123
CC_VehicleVariables::leaderVelocity
Position leaderVelocity
platoon's leader velocity vector
Definition: CC_VehicleVariables.h:131
config.h
CC_VehicleVariables::members
std::map< int, std::string > members
list of members belonging to my platoon
Definition: CC_VehicleVariables.h:203
Plexe::ACTIVE_CONTROLLER
ACTIVE_CONTROLLER
Determines the currently active controller, i.e., ACC, CACC, or the driver. In future we might need t...
Definition: CC_Const.h:45
CC_VehicleVariables::leaderControllerAcceleration
double leaderControllerAcceleration
platoon's leader controller acceleration (used by CACC)
Definition: CC_VehicleVariables.h:125
CC_VehicleVariables::defaultL
static const int defaultL[MAX_N_CARS][MAX_N_CARS]
Definition: CC_VehicleVariables.h:66
CC_VehicleVariables::engineModel
int engineModel
numeric value indicating the employed model
Definition: CC_VehicleVariables.h:197
CC_VehicleVariables::usePrediction
bool usePrediction
enable/disable data prediction (interpolation) for missing data
Definition: CC_VehicleVariables.h:200
CC_VehicleVariables::nInitialized
int nInitialized
count of initialized vehicles
Definition: CC_VehicleVariables.h:169
CC_VehicleVariables::frontControllerAcceleration
double frontControllerAcceleration
front vehicle controller acceleration (used by CACC)
Definition: CC_VehicleVariables.h:94
GenericEngineModel.h
CC_VehicleVariables::flatbedKa
double flatbedKa
Definition: CC_VehicleVariables.h:188
FirstOrderLagModel.h
CC_Const.h
CC_VehicleVariables::CC_VehicleVariables
CC_VehicleVariables()
Definition: CC_VehicleVariables.cpp:41
CC_VehicleVariables::fixedAcceleration
double fixedAcceleration
Definition: CC_VehicleVariables.h:141
CC_VehicleVariables::leaderSpeed
double leaderSpeed
platoon's leader speed (used by CACC)
Definition: CC_VehicleVariables.h:121
MSVehicle
Representation of a vehicle in the micro simulation.
Definition: MSVehicle.h:79
CC_VehicleVariables::leaderVehicle
MSVehicle * leaderVehicle
leader vehicle, used for auto feeding
Definition: CC_VehicleVariables.h:109