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 /****************************************************************************/
15 /****************************************************************************/
16 #ifndef CC_VEHICLEVARIABLES_H
17 #define CC_VEHICLEVARIABLES_H
18 
19 // ===========================================================================
20 // included modules
21 // ===========================================================================
22 #include <config.h>
23 
24 #include "CC_Const.h"
26 #include <utils/geom/Position.h>
27 #include <string.h>
28 #include <string>
29 #include <map>
30 
34 
36 public:
37 
55  double frontDistance;
56  double frontSpeed;
59  double leaderSpeed;
62  };
63 
67  const static int defaultL[MAX_N_CARS][MAX_N_CARS];
68 
72  const static double defaultK[MAX_N_CARS][MAX_N_CARS];
73 
77  const static double defaultB[];
78 
82  const static double defaultH[];
83 
86 
89 
91  double frontSpeed;
103  double frontAngle;
106 
108  bool autoFeed;
113 
116  double accLambda;
117 
122  double leaderSpeed;
134  double leaderAngle;
138 
139  //enable/disable the use of a constant, user defined acceleration instead of the one computed by the controller
141  //fixed acceleration to use
143 
144  //car collided in the last timestep
145  bool crashed;
146 
149  double ccKp;
152 
155 
161  double b[MAX_N_CARS];
163  double h[MAX_N_CARS];
164 
172  int position;
174  int nCars;
175 
177  double caccXi;
178  double caccOmegaN;
179  double caccC1;
182  double caccSpacing;
183  double engineTau;
185  double uMin, uMax;
186  double ploegH;
187  double ploegKp;
188  double ploegKd;
189  double flatbedKa;
190  double flatbedKv;
191  double flatbedKp;
192  double flatbedD;
193  double flatbedH;
194 
199 
202 
204  std::map<int, std::string> members;
205 
208 };
209 
210 #endif
CC_VehicleVariables::controllerAcceleration
double controllerAcceleration
acceleration as computed by the controller, to be sent to other vehicles
Definition: CC_VehicleVariables.h:88
CC_VehicleVariables::frontDataReadTime
double frontDataReadTime
when front vehicle data has been readed from GPS
Definition: CC_VehicleVariables.h:99
CC_VehicleVariables::K
double K[MAX_N_CARS][MAX_N_CARS]
K matrix.
Definition: CC_VehicleVariables.h:159
CC_VehicleVariables::accHeadwayTime
double accHeadwayTime
headway time for ACC
Definition: CC_VehicleVariables.h:115
CC_VehicleVariables::frontPosition
Position frontPosition
current front vehicle position
Definition: CC_VehicleVariables.h:97
CC_VehicleVariables::frontSpeed
double frontSpeed
current front vehicle speed
Definition: CC_VehicleVariables.h:91
CC_VehicleVariables::leaderAngle
double leaderAngle
platoon's leader angle in radians
Definition: CC_VehicleVariables.h:134
CC_VehicleVariables::useFixedAcceleration
int useFixedAcceleration
Definition: CC_VehicleVariables.h:140
CC_VehicleVariables::leaderInitialized
bool leaderInitialized
@did we receive at least one packet?
Definition: CC_VehicleVariables.h:136
CC_VehicleVariables::leaderPosition
Position leaderPosition
platoon's leader position
Definition: CC_VehicleVariables.h:128
RealisticEngineModel.h
CC_VehicleVariables::autoFeed
bool autoFeed
determines whether CACC should automatically fetch data about other vehicles
Definition: CC_VehicleVariables.h:108
CC_VehicleVariables::uMin
double uMin
limits for u
Definition: CC_VehicleVariables.h:185
CC_VehicleVariables::leaderDataReadTime
double leaderDataReadTime
when leader data has been readed from GPS
Definition: CC_VehicleVariables.h:130
CC_VehicleVariables::caccSpacing
double caccSpacing
fixed spacing for CACC
Definition: CC_VehicleVariables.h:182
CC_VehicleVariables::FAKE_CONTROLLER_DATA::frontDistance
double frontDistance
Definition: CC_VehicleVariables.h:55
CC_VehicleVariables::crashed
bool crashed
Definition: CC_VehicleVariables.h:145
CC_VehicleVariables::caccXi
double caccXi
controller related parameters
Definition: CC_VehicleVariables.h:177
CC_VehicleVariables::flatbedKp
double flatbedKp
Definition: CC_VehicleVariables.h:191
CC_VehicleVariables::FAKE_CONTROLLER_DATA::leaderSpeed
double leaderSpeed
Definition: CC_VehicleVariables.h:59
CC_VehicleVariables::frontInitialized
bool frontInitialized
@did we receive at least one packet?
Definition: CC_VehicleVariables.h:105
CC_VehicleVariables::defaultK
const static double defaultK[MAX_N_CARS][MAX_N_CARS]
Definition: CC_VehicleVariables.h:72
CC_VehicleVariables::FAKE_CONTROLLER_DATA::leaderControllerAcceleration
double leaderControllerAcceleration
Definition: CC_VehicleVariables.h:61
CC_VehicleVariables
Definition: CC_VehicleVariables.h:35
CC_VehicleVariables::flatbedH
double flatbedH
Definition: CC_VehicleVariables.h:193
CC_VehicleVariables::caccAlpha4
double caccAlpha4
Definition: CC_VehicleVariables.h:180
CC_VehicleVariables::flatbedKv
double flatbedKv
Definition: CC_VehicleVariables.h:190
CC_VehicleVariables::ploegH
double ploegH
Definition: CC_VehicleVariables.h:186
CC_VehicleVariables::frontAcceleration
double frontAcceleration
current front vehicle acceleration (used by CACC)
Definition: CC_VehicleVariables.h:93
CC_VehicleVariables::ccDesiredSpeed
double ccDesiredSpeed
CC desired speed.
Definition: CC_VehicleVariables.h:148
CC_VehicleVariables::nCars
int nCars
number of cars in the platoon
Definition: CC_VehicleVariables.h:174
CC_VehicleVariables::engine
GenericEngineModel * engine
engine model employed by this car
Definition: CC_VehicleVariables.h:196
CC_VehicleVariables::h
double h[MAX_N_CARS]
vector of time headways h
Definition: CC_VehicleVariables.h:163
CC_VehicleVariables::activeController
enum Plexe::ACTIVE_CONTROLLER activeController
currently active controller
Definition: CC_VehicleVariables.h:151
CC_VehicleVariables::caccOmegaN
double caccOmegaN
Definition: CC_VehicleVariables.h:178
CC_VehicleVariables::vehicles
struct Plexe::VEHICLE_DATA vehicles[MAX_N_CARS]
data about vehicles in the platoon
Definition: CC_VehicleVariables.h:166
CC_VehicleVariables::flatbedD
double flatbedD
Definition: CC_VehicleVariables.h:192
CC_VehicleVariables::ploegKp
double ploegKp
Definition: CC_VehicleVariables.h:187
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:120
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:54
CC_VehicleVariables::caccAlpha1
double caccAlpha1
Definition: CC_VehicleVariables.h:180
CC_VehicleVariables::fakeData
struct FAKE_CONTROLLER_DATA fakeData
fake controller data.
Definition: CC_VehicleVariables.h:154
CC_VehicleVariables::caccInitialized
bool caccInitialized
Definition: CC_VehicleVariables.h:137
CC_VehicleVariables::FAKE_CONTROLLER_DATA::frontControllerAcceleration
double frontControllerAcceleration
Definition: CC_VehicleVariables.h:58
CC_VehicleVariables::caccAlpha2
double caccAlpha2
Definition: CC_VehicleVariables.h:180
CC_VehicleVariables::frontAngle
double frontAngle
front vehicle angle in radians
Definition: CC_VehicleVariables.h:103
CC_VehicleVariables::accLambda
double accLambda
Definition: CC_VehicleVariables.h:116
CC_VehicleVariables::ccKp
double ccKp
Definition: CC_VehicleVariables.h:149
CC_VehicleVariables::position
int position
my position within the platoon (0 = first car)
Definition: CC_VehicleVariables.h:172
MAX_N_CARS
#define MAX_N_CARS
Definition: CC_Const.h:74
CC_VehicleVariables::uMax
double uMax
Definition: CC_VehicleVariables.h:185
CC_VehicleVariables::caccC1
double caccC1
Definition: CC_VehicleVariables.h:179
Plexe::VEHICLE_DATA
Definition: CC_Const.h:60
CC_VehicleVariables::initialized
bool initialized[MAX_N_CARS]
tells whether data about a certain vehicle has been initialized
Definition: CC_VehicleVariables.h:168
CC_VehicleVariables::defaultB
const static double defaultB[]
Definition: CC_VehicleVariables.h:77
Position
A point in 2D or 3D with translation and scaling methods.
Definition: Position.h:39
CC_VehicleVariables::frontVelocity
Position frontVelocity
front vehicle velocity vector
Definition: CC_VehicleVariables.h:101
CC_VehicleVariables::L
int L[MAX_N_CARS][MAX_N_CARS]
L matrix.
Definition: CC_VehicleVariables.h:157
CC_VehicleVariables::frontVehicle
MSVehicle * frontVehicle
front sumo id, used for auto feeding
Definition: CC_VehicleVariables.h:112
CC_VehicleVariables::engineTau
double engineTau
Definition: CC_VehicleVariables.h:183
CC_VehicleVariables::~CC_VehicleVariables
~CC_VehicleVariables()
Definition: CC_VehicleVariables.cpp:83
CC_VehicleVariables::FAKE_CONTROLLER_DATA::frontSpeed
double frontSpeed
Definition: CC_VehicleVariables.h:56
CC_VehicleVariables::b
double b[MAX_N_CARS]
vector of damping ratios b
Definition: CC_VehicleVariables.h:161
Position.h
MSCFModel::VehicleVariables
Definition: MSCFModel.h:61
CC_VehicleVariables::ploegKd
double ploegKd
Definition: CC_VehicleVariables.h:188
CC_VehicleVariables::autoLaneChange
bool autoLaneChange
automatic whole platoon lane change
Definition: CC_VehicleVariables.h:207
MSCFModel.h
CC_VehicleVariables::FAKE_CONTROLLER_DATA::leaderAcceleration
double leaderAcceleration
Definition: CC_VehicleVariables.h:60
CC_VehicleVariables::FAKE_CONTROLLER_DATA::frontAcceleration
double frontAcceleration
Definition: CC_VehicleVariables.h:57
CC_VehicleVariables::caccAlpha3
double caccAlpha3
Definition: CC_VehicleVariables.h:180
CC_VehicleVariables::caccAlpha5
double caccAlpha5
Definition: CC_VehicleVariables.h:180
GenericEngineModel
Definition: GenericEngineModel.h:30
CC_VehicleVariables::defaultH
const static double defaultH[]
Definition: CC_VehicleVariables.h:82
CC_VehicleVariables::leaderAcceleration
double leaderAcceleration
platoon's leader acceleration (used by CACC)
Definition: CC_VehicleVariables.h:124
CC_VehicleVariables::leaderVelocity
Position leaderVelocity
platoon's leader velocity vector
Definition: CC_VehicleVariables.h:132
config.h
CC_VehicleVariables::members
std::map< int, std::string > members
list of members belonging to my platoon
Definition: CC_VehicleVariables.h:204
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:126
CC_VehicleVariables::defaultL
const static int defaultL[MAX_N_CARS][MAX_N_CARS]
Definition: CC_VehicleVariables.h:67
CC_VehicleVariables::engineModel
int engineModel
numeric value indicating the employed model
Definition: CC_VehicleVariables.h:198
CC_VehicleVariables::usePrediction
bool usePrediction
enable/disable data prediction (interpolation) for missing data
Definition: CC_VehicleVariables.h:201
CC_VehicleVariables::nInitialized
int nInitialized
count of initialized vehicles
Definition: CC_VehicleVariables.h:170
CC_VehicleVariables::frontControllerAcceleration
double frontControllerAcceleration
front vehicle controller acceleration (used by CACC)
Definition: CC_VehicleVariables.h:95
GenericEngineModel.h
CC_VehicleVariables::flatbedKa
double flatbedKa
Definition: CC_VehicleVariables.h:189
FirstOrderLagModel.h
CC_Const.h
CC_VehicleVariables::CC_VehicleVariables
CC_VehicleVariables()
Definition: CC_VehicleVariables.cpp:42
CC_VehicleVariables::fixedAcceleration
double fixedAcceleration
Definition: CC_VehicleVariables.h:142
CC_VehicleVariables::leaderSpeed
double leaderSpeed
platoon's leader speed (used by CACC)
Definition: CC_VehicleVariables.h:122
MSVehicle
Representation of a vehicle in the micro simulation.
Definition: MSVehicle.h:80
CC_VehicleVariables::leaderVehicle
MSVehicle * leaderVehicle
leader vehicle, used for auto feeding
Definition: CC_VehicleVariables.h:110