|
@@ -1538,9 +1538,10 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
|
|
|
//shiyanbizhang 0929
|
|
//shiyanbizhang 0929
|
|
if(obsDistance>0&& (obsDistance<ServiceCarStatus.aocfDis)&&(obs_speed_for_avoid>-8.0)&&(obs_speed_for_avoid<3.0)&&(realspeed>1)//&& (avoid_speed_flag==true) //
|
|
if(obsDistance>0&& (obsDistance<ServiceCarStatus.aocfDis)&&(obs_speed_for_avoid>-8.0)&&(obs_speed_for_avoid<3.0)&&(realspeed>1)//&& (avoid_speed_flag==true) //
|
|
- &&(vehState==normalRun||vehState==backOri || vehState==avoiding) &&(ObsTimeStart==-1)
|
|
|
|
- && (gpsMapLine[PathPoint]->runMode==1)&&(gpsMapLine[PathPoint]->mode2!=3000)&&(gpsMapLine[PathPoint+300]->mode2!=3000)&&(gpsMapLine[PathPoint+300]->mode2!=23)){
|
|
|
|
- ObsTimeStart=GetTickCount();
|
|
|
|
|
|
+ &&(vehState==normalRun||vehState==backOri || vehState==avoiding) //&&(ObsTimeStart==-1)
|
|
|
|
+ && (gpsMapLine[PathPoint]->runMode==1)&&(gpsMapLine[PathPoint]->mode2!=3000)&&(gpsMapLine[PathPoint+300]->mode2!=3000)&&(gpsMapLine[PathPoint+100]->mode2!=3000)&&(gpsMapLine[PathPoint+300]->mode2!=23)){
|
|
|
|
+// ObsTimeStart=GetTickCount();
|
|
|
|
+ ObsTimeEnd+=1.0;
|
|
//dSpeed = min(6.0,dSpeed);
|
|
//dSpeed = min(6.0,dSpeed);
|
|
cout<<"\n====================preAvoid time count start==================\n"<<endl;
|
|
cout<<"\n====================preAvoid time count start==================\n"<<endl;
|
|
}
|
|
}
|
|
@@ -1565,9 +1566,9 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- if((ObsTimeStart!=-1)&&(obs_speed_for_avoid>-8.0)&&(obs_speed_for_avoid<3.0)){
|
|
|
|
- ObsTimeEnd+=1.0;
|
|
|
|
- }
|
|
|
|
|
|
+// if((ObsTimeStart!=-1)&&(obs_speed_for_avoid>-8.0)&&(obs_speed_for_avoid<3.0)){
|
|
|
|
+// ObsTimeEnd+=1.0;
|
|
|
|
+// }
|
|
|
|
|
|
if(ObsTimeEnd>ObsTimeWidth &&(obsDistance>1.5||obsDistance<0) && (gpsMapLine[PathPoint]->runMode==1)){ //1026
|
|
if(ObsTimeEnd>ObsTimeWidth &&(obsDistance>1.5||obsDistance<0) && (gpsMapLine[PathPoint]->runMode==1)){ //1026
|
|
vehState=avoidObs;
|
|
vehState=avoidObs;
|
|
@@ -1927,8 +1928,8 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
phaseSpeedDecition(gps_decition, secSpeed, obsDistance, obsSpeed,now_gps_ins);
|
|
phaseSpeedDecition(gps_decition, secSpeed, obsDistance, obsSpeed,now_gps_ins);
|
|
|
|
|
|
|
|
|
|
- givlog->debug("decition_brain","vehState: %d,PathPoint: %d,dSpeed: %f,obsDistance: %f,obsSpeed: %f,realspeed: %f,minDecelerate: %f,torque: %f,brake: %f,wheel_angle: %f,obs_speed_for_avoid: %f",
|
|
|
|
- vehState,PathPoint,dSpeed,obsDistance,obsSpeed,realspeed,minDecelerate,gps_decition->torque,gps_decition->brake,gps_decition->wheel_angle,obs_speed_for_avoid);
|
|
|
|
|
|
+ givlog->debug("decition_brain","vehState: %d,PathPoint: %d,dSpeed: %f,obsDistance: %f,obsSpeed: %f,realspeed: %f,minDecelerate: %f,torque: %f,brake: %f,wheel_angle: %f,obs_speed_for_avoid: %f,mode2: %d",
|
|
|
|
+ vehState,PathPoint,dSpeed,obsDistance,obsSpeed,realspeed,minDecelerate,gps_decition->torque,gps_decition->brake,gps_decition->wheel_angle,obs_speed_for_avoid,gpsMapLine[PathPoint]->mode2);
|
|
|
|
|
|
if(ServiceCarStatus.txt_log_on==true){
|
|
if(ServiceCarStatus.txt_log_on==true){
|
|
QDateTime dt = QDateTime::currentDateTime();
|
|
QDateTime dt = QDateTime::currentDateTime();
|
|
@@ -3725,15 +3726,15 @@ void iv::decition::DecideGps00::transferGpsMode2( const std::vector<GPSData> gps
|
|
static bool lock_flag=false;
|
|
static bool lock_flag=false;
|
|
|
|
|
|
if( gpsMapLine[PathPoint]->mode2==3000){
|
|
if( gpsMapLine[PathPoint]->mode2==3000){
|
|
- if(obsDistance>7){ //7 zj-5
|
|
|
|
|
|
+ if(obsDistance>4){ //7 zj-5
|
|
obsDistance=200;
|
|
obsDistance=200;
|
|
}else{
|
|
}else{
|
|
lock_flag=false;
|
|
lock_flag=false;
|
|
}
|
|
}
|
|
- if((realspeed>5)&&(lock_flag==false)){
|
|
|
|
|
|
+ if((realspeed>3)&&(lock_flag==false)){
|
|
minDecelerate=-0.5;
|
|
minDecelerate=-0.5;
|
|
}else{
|
|
}else{
|
|
- dSpeed=min(dSpeed,5.0);
|
|
|
|
|
|
+ dSpeed=min(dSpeed,3.0);
|
|
lock_flag=true;
|
|
lock_flag=true;
|
|
}
|
|
}
|
|
}
|
|
}
|