ソースを参照

add distance to trafficlight stopline in xml

liyupeng 1 年間 前
コミット
1bb051e482

+ 1 - 0
src/decition/common/common/car_status.h

@@ -291,6 +291,7 @@ namespace iv {
         float objectCon=0.85;
         float objectCon=0.85;
         float objectWidth =20;
         float objectWidth =20;
 
 
+        double tlStopDis = 5.0;
 
 
     };
     };
     typedef boost::serialization::singleton<iv::CarStatus> CarStatusSingleton;//非线程安全,注意多线程加锁,单例模式
     typedef boost::serialization::singleton<iv::CarStatus> CarStatusSingleton;//非线程安全,注意多线程加锁,单例模式

+ 5 - 5
src/decition/decition_brain_sf_changan_shenlan/ADS_decision.xml

@@ -7,7 +7,7 @@
 		<param name="port" value="5600" />
 		<param name="port" value="5600" />
 		<param name="id" value="1" />
 		<param name="id" value="1" />
 		<param name="group" value="true1" />
 		<param name="group" value="true1" />
-                <param name="speed" value="false" />
+        <param name="speed" value="false" />
 
 
 		<param name="roadmode0" value="10" />
 		<param name="roadmode0" value="10" />
 		<param name="roadmode5" value="6" />
 		<param name="roadmode5" value="6" />
@@ -20,9 +20,9 @@
 		<param name="roadmode18" value="8" />
 		<param name="roadmode18" value="8" />
 		<param name="zhuchetime" value="10" />
 		<param name="zhuchetime" value="10" />
 		<param name="epsoff" value="0" />
 		<param name="epsoff" value="0" />
-                <param name="parklat" value="39.1364494" />
-                <param name="parklng" value="117.0868970" />
-                <param name="parkheading" value="347.6" />
+        <param name="parklat" value="39.1364494" />
+        <param name="parklng" value="117.0868970" />
+        <param name="parkheading" value="347.6" />
 		<param name="parktype" value="0" />
 		<param name="parktype" value="0" />
 		<param name="lightlon" value="118.0866011"/>
 		<param name="lightlon" value="118.0866011"/>
 		<param name="lightlat" value="39.1362522" />
 		<param name="lightlat" value="39.1362522" />
@@ -37,7 +37,7 @@
 		<param name="socfDis" value="15" />
 		<param name="socfDis" value="15" />
 		<param name="aocfDis" value="25" />
 		<param name="aocfDis" value="25" />
 		<param name="aocfTimes" value="3" />
 		<param name="aocfTimes" value="3" />
-		<param name="camera_x_adjust" value="-0.4" />
+		<param name="camera_x_adjust" value="0" />
 		<param name="camera_y_adjust" value="6.8" />
 		<param name="camera_y_adjust" value="6.8" />
 		<param name="laneline_speed" value="7" />
 		<param name="laneline_speed" value="7" />
 
 

+ 7 - 0
src/decition/decition_brain_sf_changan_shenlan/decition/brain.cpp

@@ -448,6 +448,13 @@ void iv::decition::BrainDecition::run() {
         ServiceCarStatus.mfMaxSpeed = 5.0;
         ServiceCarStatus.mfMaxSpeed = 5.0;
     }
     }
 
 
+    //add by lyp, for setting distance to trafficlight stopline 
+    std::string tlStopDis = xp.GetParam("tlStopDis","5");
+    ServiceCarStatus.tlStopDis = atof(tlStopDis.data());
+    //max tlStopDis is 10
+    if(ServiceCarStatus.tlStopDis > 10)
+        ServiceCarStatus.tlStopDis = 10;
+
     std::cout<<" Max Acc: "<<ServiceCarStatus.mfMaxAcc<<" PerceptionMax: "<<ServiceCarStatus.mfPerceptionMax
     std::cout<<" Max Acc: "<<ServiceCarStatus.mfMaxAcc<<" PerceptionMax: "<<ServiceCarStatus.mfPerceptionMax
             <<" Chassis Max Brake: "<<ServiceCarStatus.mfChassisMaxBrake<<" Max Speed: "<<ServiceCarStatus.mfMaxSpeed<<std::endl;
             <<" Chassis Max Brake: "<<ServiceCarStatus.mfChassisMaxBrake<<" Max Speed: "<<ServiceCarStatus.mfMaxSpeed<<std::endl;
 
 

+ 2 - 10
src/decition/decition_brain_sf_changan_shenlan/decition/decide_gps_00.cpp

@@ -4608,7 +4608,7 @@ float  iv::decition::DecideGps00:: ComputeTrafficLightSpeed(int traffic_light_co
 //        traffic_speed=0;
 //        traffic_speed=0;
 //    }
 //    }
 
 
-    if(traffic_light_color==2 && traffic_dis<10){  //cxw,1xhonglvdeng gaibian
+    if(traffic_light_color==2 && traffic_dis<ServiceCarStatus.tlStopDis){  //cxw,1xhonglvdeng gaibian
         traffic_speed=0;
         traffic_speed=0;
 //        return  traffic_speed;
 //        return  traffic_speed;
 //        if(traffic_dis>3.0)
 //        if(traffic_dis>3.0)
@@ -4666,16 +4666,8 @@ float  iv::decition::DecideGps00:: ComputeTrafficLightSpeed(int traffic_light_co
     }
     }
 
 
     if(!passEnable){
     if(!passEnable){
-        if(traffic_dis<5){
+        if(traffic_dis<ServiceCarStatus.tlStopDis){
             traffic_speed=0;
             traffic_speed=0;
-        }else if(traffic_dis<10){
-            traffic_speed=5;
-        }else if(traffic_dis<20){
-            traffic_speed=15;
-        }else if(traffic_dis<30){
-            traffic_speed=25;
-        }else if(traffic_dis<50){
-            traffic_speed=30;
         }
         }
     }
     }
     return traffic_speed;
     return traffic_speed;