Closed marcusvinicius178 closed 3 years ago
@marcusvinicius178 Hi,Can you use the lattice planner successfully now? And if you know how to use lattice planner, could you please tell me how to use it ? Of course I know I should first change the line 18 of the file planning_config.pb.txt : ROAD_PUBLIC to LATTICE Thanks a lot for your help!
Hi @blacksheep0303 yes! I also thought it was necessary more changes. But just change this line is enough to change the planner. I believed I was not having success because the Lattice planner never started. But then I tried it without using the LGSVL simulator, I have just used the simulation on SIM_CONTROL mode (You can activate this mode in Panel Tasks. Then the simulation will happen just on Dreamview...and the lattice planner will probably work
This happened to me because I do not have a powerful machine, and the Lattice planner requires more RAM memory or GPU (or both), then it escaped from my computer capability run the Lattice planner and the simulator simultaneously. This is why it seems don't be working...but just change this line you said me is enough!!!
Hi @blacksheep0303 Ifigured out how to make the lattice planner work!
It is not the more correct way but let's go!
You need to activate your simulation using the standard Apollo planner: PUBLIC_ROAD on planning_config.pb.txt Then this planner will work (draw the grenn/blue planner line calculating the path).
If you just switch the PUBLIC_ROAD planner to the LATTICE on planning_config.pb.txt before starting your simulation this planner won't work!!!! I believe the Apollo team used some trick on their standard planner (Public_Road) that it triggers some special condition for the CPU usage. The Lattice Planner does not activate this "special performance CPU condition" and therefore the CPU will never look , never try to calculate this planner, and will choose other processes to take care....
Because then if you now switch the planner on plannning_config.pb.txt During the simulation, the Lattice planner will work!!!!
So my recommendation is just use the Public_Road for the first sending routing and do not activate the control tab, then change this planner on planning_config.pb.txt to the LATTICE, save the script, deactivate the planning tab, activate it again and then finally the new routing calculated is the one that LATTICE Calculated, and now you can activate the control Tab for your car start driving over the Lattice trajectory
@marcusvinicius178 Thanks a lot for your help.Your help is very useful.I try to use the simulation on SIM_CONTROL mode and LGSVL without other obstacles, and the lattice planner worked.
However , if there are other obstacles , the lattice planner progress will die when the planned path intersects the predicted trajectory of the obstacle. The error is "st_boundary.cc:374] Check failed: !lowerpoints.empty() StBoundary has zero points".
So,briefly speaking,I can only run the lattice planner when there are no obstacles. Have you ever met this problem ?
By the way,I think the path generated by PUBLIC_ROAD planner is better than lattice planner ,so I haven't debugged lattice planner recently.
The LATTICE works also on simulation mode....you just need to switch to it after begin using the Road Public planner. But don't restart the simulation... I still didn't try Lattice with obstacles.
Hi I am below my System Information:
Steps to reproduce the issue:
The first steps to reproduce the error is following the tutorial link above. 1 - Start the docker image: ./docker/scripts/dev_start.sh 2 - Enter the docker image: ./docker/scripts/dev_into.sh
Before build the workspace I tried to modify some files to switch the standard ROAD_PUBLIC planner to use the LATTICE planner for a simple evasive maneuver against a static obstacle. To achieve that I have changed the line 18 of the file planning_config.pb.txt:
Afterwards I change the the line 30 of on_lane_planner_dispatcher.cc:
3 - Then finally I have built the workspace: ./apollo.sh build_opt_gpu 4 - runned the bootstrap to activate the dreamview monitor: ./scripts/bootstrap_lgsvl.sh 5 - runned the cyber_bridge: ./scripts/bridge.sh
Unfortunately the planning tab on Dreamview is disabled automaticall when I turn it on, as you can check on this video:
https://youtu.be/wn6f2mhT8vY
I have done a lot of attempts: https://youtu.be/DXmFH81SCps
If I access the Tasks panel on Dreamview
The planning module is bolded in red with the Console error: "Raw IMU Message Delay: IMU message is 23949 cycle 24980 sec behind current time "Raw GPS Message Delay GPS message is 23850 cycle 23805 behind current time". Etc...
Accesing the Cyber_Monitor, I can check the planning module is not working (it is bolded in red too):
Entering the planning module channel I get:
"No Message Came"
Then If I press the planning tab again on Dreamview to activate the planning module, and look into the planning channel on cyber_monitor I get the message:
"Cannot Generate Message by Message Type"
Then I decided to look into the log files to comprehend the error. And I get the following output:
Also from the planning_config.proto I have noticed that the Planners PUBLIC_ROAD and NAVI have their configuration defined into this file. However the LATTICE has not:
Must I add a line of code: " message PlannerLatticeConfig {} in this file ? If yes which parameters are required to define this planner?
I would like to know how to Use the LATTICE planner in Apollo 6.0. What are the steps needed?
I also tried to use the planner in Apollo 3.0 however it was not possible to use this software alongside SVl simulator: https://github.com/lgsvl/simulator/issues/1475
Someone know a tutorial how to set the rosbridge properly for Apollo 3.0 withing SVL simulator? Thanks very much in advance