|
@@ -40,59 +40,59 @@ iv::decition::Decition iv::decition::HunterAdapter::getAdapterDeciton(GPS_INS no
|
|
}
|
|
}
|
|
if (accAim < 0)
|
|
if (accAim < 0)
|
|
{
|
|
{
|
|
- controlSpeed=0;
|
|
|
|
- controlBrake=u; //102
|
|
|
|
-// if(obsDistance>0 && obsDistance<10)
|
|
|
|
- if(obsDistance>0 && obsDistance<6)
|
|
|
|
- {
|
|
|
|
- controlBrake= u*1.0; //1.5 zj-1.2
|
|
|
|
- controlSpeed=0;
|
|
|
|
- }
|
|
|
|
-// if(abs(dSpeed-realSpeed)<1 &&(obsDistance>40 || obsDistance<0)&&ttc>8 && dSpeed>0 && !turn_around)
|
|
|
|
- if(ttc<5)
|
|
|
|
- {
|
|
|
|
- controlBrake=0;
|
|
|
|
- controlSpeed=0;
|
|
|
|
-// controlSpeed=max(0.0,realSpeed-1.0);
|
|
|
|
- }
|
|
|
|
-// else if(abs(dSpeed-realSpeed)<3 &&(obsDistance>40 || obsDistance<0)&&ttc>8 && dSpeed>0 && turn_around
|
|
|
|
-// && dSpeed>0 && lastBrake==0)
|
|
|
|
- else if(ttc<10)
|
|
|
|
- {
|
|
|
|
- controlBrake=0;
|
|
|
|
- controlSpeed=max(0.0,realSpeed-2.0);
|
|
|
|
- }
|
|
|
|
-// else if(abs(realSpeed)<15 &&(obsDistance>40 || obsDistance<0)&&ttc>8 && dSpeed>0 && turn_around)
|
|
|
|
- else
|
|
|
|
- {
|
|
|
|
- controlBrake=0;
|
|
|
|
- controlSpeed=max(0.0,realSpeed-1.0);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
-// else if(abs(dSpeed-realSpeed)>=5 &&abs(dSpeed-realSpeed)<10&&(obsDistance>40 || obsDistance<0)&&ttc>8
|
|
|
|
-// && !turn_around )
|
|
|
|
|
|
+// controlSpeed=0;
|
|
|
|
+// controlBrake=u; //102
|
|
|
|
+//// if(obsDistance>0 && obsDistance<10)
|
|
|
|
+// if(obsDistance>0 && obsDistance<6)
|
|
// {
|
|
// {
|
|
-// controlBrake=min(controlBrake,0.3f);
|
|
|
|
|
|
+// controlBrake= u*1.0; //1.5 zj-1.2
|
|
// controlSpeed=0;
|
|
// controlSpeed=0;
|
|
// }
|
|
// }
|
|
-// else if(abs(dSpeed-realSpeed)>=10 &&abs(dSpeed-realSpeed)<15&&(obsDistance>40 || obsDistance<0)&&ttc>8
|
|
|
|
-// && dSpeed>0 && !turn_around )
|
|
|
|
|
|
+//// if(abs(dSpeed-realSpeed)<1 &&(obsDistance>40 || obsDistance<0)&&ttc>8 && dSpeed>0 && !turn_around)
|
|
|
|
+// if(ttc<5)
|
|
// {
|
|
// {
|
|
-// controlBrake=min(controlBrake,0.5f);
|
|
|
|
|
|
+// controlBrake=0;
|
|
// controlSpeed=0;
|
|
// controlSpeed=0;
|
|
|
|
+//// controlSpeed=max(0.0,realSpeed-1.0);
|
|
|
|
+// }
|
|
|
|
+//// else if(abs(dSpeed-realSpeed)<3 &&(obsDistance>40 || obsDistance<0)&&ttc>8 && dSpeed>0 && turn_around
|
|
|
|
+//// && dSpeed>0 && lastBrake==0)
|
|
|
|
+// else if(ttc<10)
|
|
|
|
+// {
|
|
|
|
+// controlBrake=0;
|
|
|
|
+// controlSpeed=max(0.0,realSpeed-2.0);
|
|
|
|
+// }
|
|
|
|
+//// else if(abs(realSpeed)<15 &&(obsDistance>40 || obsDistance<0)&&ttc>8 && dSpeed>0 && turn_around)
|
|
|
|
+// else
|
|
|
|
+// {
|
|
|
|
+// controlBrake=0;
|
|
|
|
+// controlSpeed=max(0.0,realSpeed-1.0);
|
|
// }
|
|
// }
|
|
|
|
|
|
|
|
+//// else if(abs(dSpeed-realSpeed)>=5 &&abs(dSpeed-realSpeed)<10&&(obsDistance>40 || obsDistance<0)&&ttc>8
|
|
|
|
+//// && !turn_around )
|
|
|
|
+//// {
|
|
|
|
+//// controlBrake=min(controlBrake,0.3f);
|
|
|
|
+//// controlSpeed=0;
|
|
|
|
+//// }
|
|
|
|
+//// else if(abs(dSpeed-realSpeed)>=10 &&abs(dSpeed-realSpeed)<15&&(obsDistance>40 || obsDistance<0)&&ttc>8
|
|
|
|
+//// && dSpeed>0 && !turn_around )
|
|
|
|
+//// {
|
|
|
|
+//// controlBrake=min(controlBrake,0.5f);
|
|
|
|
+//// controlSpeed=0;
|
|
|
|
+//// }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// //0110
|
|
|
|
+// if(changingDangWei){
|
|
|
|
+// controlBrake=max(0.5f,controlBrake);
|
|
|
|
+// }
|
|
|
|
|
|
- //0110
|
|
|
|
- if(changingDangWei){
|
|
|
|
- controlBrake=max(0.5f,controlBrake);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- //斜坡刹车加大 lsn 0217
|
|
|
|
- if (abs(now_gps_ins.ins_pitch_angle)>2.5 &&(controlBrake>0||dSpeed==0)){
|
|
|
|
- controlBrake=max(2.0f,controlBrake);
|
|
|
|
- }
|
|
|
|
- //斜坡刹车加大 end
|
|
|
|
|
|
+// //斜坡刹车加大 lsn 0217
|
|
|
|
+// if (abs(now_gps_ins.ins_pitch_angle)>2.5 &&(controlBrake>0||dSpeed==0)){
|
|
|
|
+// controlBrake=max(2.0f,controlBrake);
|
|
|
|
+// }
|
|
|
|
+// //斜坡刹车加大 end
|
|
}
|
|
}
|
|
else
|
|
else
|
|
{
|
|
{
|
|
@@ -107,7 +107,7 @@ iv::decition::Decition iv::decition::HunterAdapter::getAdapterDeciton(GPS_INS no
|
|
// controlSpeed = min(realSpeed+1,dSpeed);
|
|
// controlSpeed = min(realSpeed+1,dSpeed);
|
|
// }
|
|
// }
|
|
|
|
|
|
- controlSpeed= dSpeed;
|
|
|
|
|
|
+// controlSpeed= dSpeed;
|
|
|
|
|
|
// 斜坡加大油门 0217 lsn//斜坡的hunter 不考虑,20210913,cxw
|
|
// 斜坡加大油门 0217 lsn//斜坡的hunter 不考虑,20210913,cxw
|
|
|
|
|
|
@@ -129,9 +129,9 @@ iv::decition::Decition iv::decition::HunterAdapter::getAdapterDeciton(GPS_INS no
|
|
// if(controlSpeed>0){
|
|
// if(controlSpeed>0){
|
|
// controlSpeed=max(controlSpeed,4.6f);
|
|
// controlSpeed=max(controlSpeed,4.6f);
|
|
// }
|
|
// }
|
|
-
|
|
|
|
|
|
+ controlSpeed= dSpeed;
|
|
//0227 10m nei xianzhi shache
|
|
//0227 10m nei xianzhi shache
|
|
- if(obsDistance<5 &&obsDistance>0){
|
|
|
|
|
|
+ if(obsDistance<3 &&obsDistance>0){
|
|
controlSpeed=0;
|
|
controlSpeed=0;
|
|
controlBrake=max(controlBrake,0.6f);//0.8 zj-0.6
|
|
controlBrake=max(controlBrake,0.6f);//0.8 zj-0.6
|
|
}
|
|
}
|
|
@@ -141,9 +141,9 @@ iv::decition::Decition iv::decition::HunterAdapter::getAdapterDeciton(GPS_INS no
|
|
controlSpeed=0;
|
|
controlSpeed=0;
|
|
}
|
|
}
|
|
|
|
|
|
- if(DecideGps00::minDecelerate==-0.4){
|
|
|
|
- controlBrake =0.4;
|
|
|
|
- }
|
|
|
|
|
|
+// if(DecideGps00::minDecelerate==-0.4){
|
|
|
|
+// controlBrake =0.4;
|
|
|
|
+// }
|
|
|
|
|
|
controlBrake=limitBrake(realSpeed,controlBrake,dSpeed,obsDistance,ttc);
|
|
controlBrake=limitBrake(realSpeed,controlBrake,dSpeed,obsDistance,ttc);
|
|
controlSpeed = limitSpeed(realSpeed, controlBrake, dSpeed, controlSpeed);
|
|
controlSpeed = limitSpeed(realSpeed, controlBrake, dSpeed, controlSpeed);
|
|
@@ -157,7 +157,11 @@ iv::decition::Decition iv::decition::HunterAdapter::getAdapterDeciton(GPS_INS no
|
|
|
|
|
|
(*decition)->brake = controlBrake*9;//9 zj-6
|
|
(*decition)->brake = controlBrake*9;//9 zj-6
|
|
// (*decition)->torque=controlSpeed; //20210702,cxw,yika shi mubiaosudu kognzhi ,qie mubiaosudu yao pignhua
|
|
// (*decition)->torque=controlSpeed; //20210702,cxw,yika shi mubiaosudu kognzhi ,qie mubiaosudu yao pignhua
|
|
- (*decition)->torque = controlSpeed;//hunter目标速度大于0前进,小于0后退,hunter只有速度,角度和驻车控制
|
|
|
|
|
|
+ if(controlSpeed==0.0)
|
|
|
|
+ {
|
|
|
|
+ givlog->debug("brain_decition","controlSpeed: %f", controlSpeed);
|
|
|
|
+ }
|
|
|
|
+ (*decition)->torque =controlSpeed;//hunter目标速度大于0前进,小于0后退,hunter只有速度,角度和驻车控制
|
|
|
|
|
|
lastBrake= (*decition)->brake;
|
|
lastBrake= (*decition)->brake;
|
|
lastTorque=(*decition)->torque;
|
|
lastTorque=(*decition)->torque;
|