|
@@ -1416,11 +1416,8 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
if(!ServiceCarStatus.daocheMode){
|
|
|
computeObsOnRoad(lidarGridPtr, gpsTraceNow, roadNow,gpsMapLine,lidar_per);
|
|
|
|
|
|
-
|
|
|
//givlog->debug("brain_decition","obsDistance: %f,obsSpeed: %f",
|
|
|
//obsDistance,obsSpeed);
|
|
|
-
|
|
|
-
|
|
|
if(obs_filter_flag==0)
|
|
|
{
|
|
|
if(obsDistance>0&&obsDistance<60)
|
|
@@ -1464,10 +1461,11 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
obs_speed_for_avoid=secSpeed+obsSpeed;
|
|
|
|
|
|
- //givlog->debug("brain_decition","obsDistance: %f,obsSpeedforAvoid: %f",
|
|
|
- //obsDistance,obs_speed_for_avoid);
|
|
|
|
|
|
}else{
|
|
|
gpsTraceRear.clear();
|
|
@@ -1480,10 +1478,6 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
computeObsOnRoad(lidarGridPtr, gpsTraceNow, roadNow,gpsMapLine,lidar_per);
|
|
|
// obsDistance=-1; //1227
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
//old_bz--------------------------------------------------------------------------------------------------
|
|
|
|
|
|
if (vehState == avoiding)
|
|
@@ -1553,17 +1547,6 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
}
|
|
|
|
|
|
std::cout<<"\n原始RoadOri:%d\n"<<roadOri<<endl;
|
|
|
-
|
|
|
- cout<<"\n当前RoadNum:%d\n"<<roadNow<<endl;
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
// 计算回归原始路线
|
|
|
|
|
|
if (roadNow!=roadOri)
|
|
@@ -1607,42 +1590,11 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- static int obstacle_flag=0,obs_times=0;
|
|
|
- static double obs_memory=obsDistance;
|
|
|
- /*if(obstacle_flag==1)
|
|
|
- {
|
|
|
- if((obsDistance<0)|| (obsDistance>ServiceCarStatus.aocfDis+15))
|
|
|
- {
|
|
|
- obsDistance=obs_memory;
|
|
|
- obs_times++;
|
|
|
- if(obs_times>300)
|
|
|
- {
|
|
|
- obs_times=0;
|
|
|
- obstacle_flag=0;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- }*/
|
|
|
static bool avoid_speed_flag=false;
|
|
|
if(obsDistance>0&& (obsDistance<ServiceCarStatus.aocfDis+10)&&(abs(realspeed)>0.5)&&
|
|
|
(vehState==normalRun) &&(ObsTimeStart==-1)//&&(obs_speed_for_avoid<0.6)
|
|
|
&& (gpsMapLine[PathPoint]->runMode==1)&&(gpsMapLine[PathPoint]->mode2!=3000))
|
|
|
{
|
|
|
-
|
|
|
- /*if(obsDistance<ServiceCarStatus.aocfDis+5)
|
|
|
- {
|
|
|
- dSpeed = min(6.0,dSpeed);
|
|
|
- }else if(obsDistance<ServiceCarStatus.aocfDis+8){
|
|
|
- dSpeed = min(8.0 ,dSpeed);
|
|
|
- }else if(obsDistance<ServiceCarStatus.aocfDis+11){
|
|
|
- dSpeed = min(10.0 ,dSpeed);
|
|
|
- }else if(obsDistance<ServiceCarStatus.aocfDis+13){
|
|
|
- dSpeed = min(12.0 ,dSpeed);
|
|
|
- }else{
|
|
|
- dSpeed = min(14.0 ,dSpeed);
|
|
|
- }*/
|
|
|
-
|
|
|
minDecelerate=-0.4;
|
|
|
avoid_speed_flag=true;
|
|
|
}
|