|
@@ -987,6 +987,8 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
roadSum = gpsMapLine[PathPoint]->roadSum*3;
|
|
|
}
|
|
|
|
|
|
+ roadOri =0;
|
|
|
+ roadSum =2;
|
|
|
|
|
|
if(roadNowStart){
|
|
|
roadNow=roadOri;
|
|
@@ -1130,29 +1132,20 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
|
|
|
if(vehState==avoiding){
|
|
|
ServiceCarStatus.msysparam.vehWidth=2.1;
|
|
|
- controlAng=max(-150.0,controlAng);
|
|
|
- controlAng=min(150.0,controlAng);
|
|
|
+ controlAng=max(-35.0,controlAng);//150 zj-80
|
|
|
+ controlAng=min(35.0,controlAng);//150 zj-80
|
|
|
}
|
|
|
if(vehState==backOri){
|
|
|
- controlAng=max(-20.0,controlAng);//120 zj-80
|
|
|
- controlAng=min(20.0,controlAng);//120 zj-80
|
|
|
+ controlAng=max(-35.0,controlAng);//120 zj-80
|
|
|
+ controlAng=min(35.0,controlAng);//120 zj-80
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- givlog->debug("brain_decition","vehState: %d",
|
|
|
- vehState);
|
|
|
+ givlog->debug("brain_decition","vehState: %d,controlAng: %f",
|
|
|
+ vehState,controlAng);
|
|
|
|
|
|
- if(vehState==backOri){
|
|
|
- controlAng=max(-20.0,controlAng);//120 zj-80
|
|
|
- controlAng=min(20.0,controlAng);//120 zj-80
|
|
|
-
|
|
|
- givlog->debug("brain_decition","controlAng: %f",
|
|
|
- controlAng);
|
|
|
-
|
|
|
- }
|
|
|
|
|
|
//准备驻车
|
|
|
-
|
|
|
if (readyZhucheMode)
|
|
|
{
|
|
|
|
|
@@ -1355,16 +1348,16 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
|
|
|
dSpeed = min(doubledata[PathPoint][4],dSpeed);
|
|
|
|
|
|
- givlog->debug("brain_decition_speed","dspeed: %f",
|
|
|
- dSpeed);
|
|
|
-
|
|
|
if (gpsMapLine[PathPoint]->speed_mode == 2)
|
|
|
{
|
|
|
dSpeed = min(25.0,dSpeed);
|
|
|
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+ if((vehState==avoiding)||(vehState==backOri)||(roadNow != roadOri))
|
|
|
+ {
|
|
|
+ dSpeed = min(8.0,dSpeed);
|
|
|
+ }
|
|
|
|
|
|
if((gpsMapLine[PathPoint]->speed)>0.001)
|
|
|
{
|
|
@@ -1378,21 +1371,10 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
dSecSpeed = dSpeed / 3.6;
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- std::cout<<"juecesudu2="<<dSpeed<<std::endl;
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ givlog->debug("brain_decition_speed","dspeed: %f",
|
|
|
+ dSpeed);
|
|
|
|
|
|
|
|
|
if(vehState==changingRoad){
|
|
@@ -1416,8 +1398,7 @@ 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)
|
|
@@ -1462,8 +1443,6 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
obs_speed_for_avoid=secSpeed+obsSpeed;
|
|
|
|
|
|
|
|
@@ -1482,11 +1461,6 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
|
|
|
if (vehState == avoiding)
|
|
|
{
|
|
|
- cout<<"\n==================avoiding=================\n"<<endl;
|
|
|
- // vehState=normalRun; //1025
|
|
|
- if (dSpeed > 10) {
|
|
|
- dSpeed = 10;
|
|
|
- }
|
|
|
//若车辆到达变道后的路径,改变车辆状态,关闭frenet规划
|
|
|
if (useFrenet && abs(gpsTraceAim[0].x)<1.0) {
|
|
|
vehState = normalRun;
|
|
@@ -1518,12 +1492,6 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
|
|
|
if (vehState==backOri)
|
|
|
{
|
|
|
- cout<<"\n================backOri===========\n"<<endl;
|
|
|
- // vehState=normalRun; //1025
|
|
|
- if (dSpeed > 10) {
|
|
|
- dSpeed = 10;
|
|
|
- }
|
|
|
-
|
|
|
//若车辆到达变道后的路径,改变车辆状态,关闭frenet规划
|
|
|
if (useFrenet && abs(gpsTraceAim[0].x)<1.0) {
|
|
|
vehState = normalRun;
|
|
@@ -1551,9 +1519,6 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
|
|
|
if (roadNow!=roadOri)
|
|
|
{
|
|
|
- // useFrenet = true;
|
|
|
- // useOldAvoid = false;
|
|
|
-
|
|
|
if(useFrenet){
|
|
|
if ((GetDistance(now_gps_ins, startAvoidGpsInsVector[roadOri])>max(avoidMinDistanceVector[roadOri],30.0)))
|
|
|
{
|
|
@@ -1591,17 +1556,17 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
}
|
|
|
|
|
|
static bool avoid_speed_flag=false;
|
|
|
- if(obsDistance>0&& (obsDistance<ServiceCarStatus.aocfDis+10)&&(abs(realspeed)>0.5)&&
|
|
|
+ /*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))
|
|
|
{
|
|
|
minDecelerate=-0.4;
|
|
|
avoid_speed_flag=true;
|
|
|
- }
|
|
|
+ }*/
|
|
|
|
|
|
|
|
|
//shiyanbizhang 0929
|
|
|
- if(obsDistance>0&& (obsDistance<ServiceCarStatus.aocfDis)&& (avoid_speed_flag==true) //&&(obs_speed_for_avoid<0.6)
|
|
|
+ if(obsDistance>0&& (obsDistance<ServiceCarStatus.aocfDis)//&& (avoid_speed_flag==true) //&&(obs_speed_for_avoid<0.6)
|
|
|
&&(vehState==normalRun||vehState==backOri || vehState==avoiding) &&(ObsTimeStart==-1)
|
|
|
&& (gpsMapLine[PathPoint]->runMode==1)&&(gpsMapLine[PathPoint]->mode2!=3000)){
|
|
|
ObsTimeStart=GetTickCount();
|
|
@@ -1734,24 +1699,6 @@ iv::decition::Decition iv::decition::DecideGps00::getDecideFromGPS(GPS_INS now_g
|
|
|
//--------------------------------------------------------------------------------old_bz_end
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- //TOUCHEPINGBI
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
if (parkMode)
|
|
|
{
|
|
|
minDecelerate=-1.0;
|