Browse Source

modify decide ...

HAPO-9# 3 years ago
parent
commit
425006fe7e
1 changed files with 6 additions and 1 deletions
  1. 6 1
      src/decition/decition_brain_sf/decition/decide_gps_00.cpp

+ 6 - 1
src/decition/decition_brain_sf/decition/decide_gps_00.cpp

@@ -3706,6 +3706,7 @@ float iv::decition::DecideGps00::computeTrafficSpeedLimt(float trafficDis){
 void iv::decition::DecideGps00::transferGpsMode2( const std::vector<GPSData> gpsMapLine){
     static int obstacle_disable=0;
     static int speed_slowdown_flag=0;
+    static bool lock_flag=false;
 
     if(  gpsMapLine[PathPoint]->mode2==3000){
         if(obsDistance>7){       //7   zj-5
@@ -3728,6 +3729,7 @@ void iv::decition::DecideGps00::transferGpsMode2( const std::vector<GPSData> gps
         ServiceCarStatus.msysparam.vehWidth=5.6;
     }else if(gpsMapLine[PathPoint]->mode2==5000){
             speed_slowdown_flag=1;
+            lock_flag=false;
     }else if(gpsMapLine[PathPoint]->mode2==5001){
             speed_slowdown_flag=0;
     }
@@ -3735,12 +3737,15 @@ void iv::decition::DecideGps00::transferGpsMode2( const std::vector<GPSData> gps
     if(obstacle_disable==1){
             obsDistance=200;
     }
+
+
     if(speed_slowdown_flag==1)
     {
-            if(realspeed>ServiceCarStatus.mroadmode_vel.mfmode18){
+            if((realspeed>ServiceCarStatus.mroadmode_vel.mfmode18)&&(lock_flag==false)){
                 minDecelerate=-0.5;
             }else{
                 dSpeed=min(dSpeed,ServiceCarStatus.mroadmode_vel.mfmode18);
+                lock_flag=true;
             }
     }
 }