|
@@ -412,6 +412,40 @@ void iv::decition::BrainDecition::run() {
|
|
|
decitionGps00->mstopbrake = fabs(xp.GetParam("stopbrake",0.6));
|
|
|
if(decitionGps00->mstopbrake < 0.1)decitionGps00->mstopbrake = 0.1;
|
|
|
|
|
|
+
|
|
|
+// bool mbUseDynamics = true;
|
|
|
+// bool mbLimitSpeed = true;
|
|
|
+// double mfMaxAcc = 3.0;
|
|
|
+// double mfChassisMaxBrake = 6.0; //Chassis Limit Max Brake
|
|
|
+// double mfPerceptionMax = 40.0; // Max 40 meters Obs
|
|
|
+// double mfMaxSpeed = 80.0; //Max Speed is calculate, mfMaxSpeed = sqrt(2.0 * mfChassisMaxBrake * (mfPerceptionMax - 5.0)) * 3.6;
|
|
|
+
|
|
|
+ ServiceCarStatus.mbUseDynamics = xp.GetParam("UseDynamics",true);
|
|
|
+ if(ServiceCarStatus.msysparam.mvehtype=="shenlan")
|
|
|
+ ServiceCarStatus.mbLimitSpeed = xp.GetParam("LimitSpeed",true);
|
|
|
+ else
|
|
|
+ ServiceCarStatus.mbLimitSpeed = xp.GetParam("LimitSpeed",false);
|
|
|
+ ServiceCarStatus.mfMaxAcc = xp.GetParam("MaxAcc",3.0);
|
|
|
+ if(ServiceCarStatus.mfMaxAcc<0.0)ServiceCarStatus.mfMaxAcc = 0.1;
|
|
|
+ ServiceCarStatus.mfChassisMaxBrake = xp.GetParam("ChassisMaxBrake",6.0);
|
|
|
+ if(ServiceCarStatus.msysparam.mvehtype=="shenlan")
|
|
|
+ ServiceCarStatus.mfChassisMaxBrake = xp.GetParam("ChassisMaxBrake",1.5);
|
|
|
+ ServiceCarStatus.mfPerceptionMax = xp.GetParam("PerceptionMax",40);
|
|
|
+ if(ServiceCarStatus.mfPerceptionMax <= 6.0)ServiceCarStatus.mfPerceptionMax = 6.0;
|
|
|
+ if(ServiceCarStatus.mfChassisMaxBrake < 0.1)ServiceCarStatus.mfChassisMaxBrake = 0.1;
|
|
|
+ ServiceCarStatus.mfMaxSpeed = sqrt(2.0 * ServiceCarStatus.mfChassisMaxBrake * (ServiceCarStatus.mfPerceptionMax - 5.0)) * 3.6;
|
|
|
+
|
|
|
+ if((ServiceCarStatus.msysparam.mvehtype=="shenlan") &&(ServiceCarStatus.mbLimitSpeed))
|
|
|
+
|
|
|
+
|
|
|
+ if(ServiceCarStatus.msysparam.mvehtype=="hunter")
|
|
|
+ {
|
|
|
+ ServiceCarStatus.mfMaxSpeed = 5.0;
|
|
|
+ }
|
|
|
+
|
|
|
+ std::cout<<" Max Acc: "<<ServiceCarStatus.mfMaxAcc<<" PerceptionMax: "<<ServiceCarStatus.mfPerceptionMax
|
|
|
+ <<" Chassis Max Brake: "<<ServiceCarStatus.mfChassisMaxBrake<<" Max Speed: "<<ServiceCarStatus.mfMaxSpeed<<std::endl;
|
|
|
+
|
|
|
mstrmemmap_index = xp.GetParam("msg_mapindex","map_index");
|
|
|
|
|
|
|