Closed frkngltk closed 6 months ago
You likely need to tune DWB to get your desired behavior. There are many critic plugins and relative weights you can set to get the behavior that you want. Since DWB is a scoring-based local trajectory planner, fine tuning is required to balance the different objectives (and costmap settings).
Thanks @SteveMacenski. I fully understood the DWB structure and examined many structures on forum sites and this channel to see what each parameter does. OscillationCritic, BaseObstacleCritic, ObstacleFootprintCritic etc. I thought the structures would support this problem. In addition, structures such as cost_scaling_factor, which are among the local_costmap parameters, should affect the system. The main problem is that these parameters do not work in simulation environments such as Turtlebot, other than the ones I set myself. I think that in the NAV2 system, when an object or object moves close to the robot, it should slow down automatically due to the cost_map created. According to what you said, I understand that each parameter triggers this situation, is it true? Briefly, with which parameter or with what technique can I solve this problem? Shouldn't this situation be automatically active in the NAV2 system (since it is used with AMR devices)?
That is what the critic objective function are for, you can define that behavior. Different applications want different behaviors for different situations, MPPI, DWB, etc are built as general solutions that can be adapted to produce the behavior that you want :-)
I believe this was answered, can we close this out?
I can't say it's fully resolved, but I'm trying the parameters of your specification. I will also try the Collision monitor structure. Thank you.
Hello @SteveMacenski. I am trying the structures I mentioned. But I couldn't reach any conclusion. Here you can use critic plugins, cost_map settings, or Smoother Server, Collision Monitor, Velocity Smoother etc. in the Configuration Guide link. I used structures. According to my observation, there is no change. Frankly, when I run ROS1 with the same parameters on the same robot, I observe a speed slowdown in narrow areas, while the speed increases in wide areas. In the ROS2 nav2 system, there is no speed reduction in narrow or wide areas. I examined in detail the locations of the Critics parameters. I cannot observe any changes based on real-time observation as a result of the adjustment. Do you have any suggestions regarding this subject? I would be glad if you could help.
DWB and DWA from ROS 1 are not the same package, though they are related. Like I mentioned above, you will need to tune it to your application desires.
However, I might recommend trying out MPPI. I believe its a pretty big step function up in capabilities and I think it does more or less what you want out of the box how I tuned it.
Required Info:
Information about the problem
Hello, I wish everyone a good day. I have an AMR(differential drive) robot that I work with in real time. In accordance with the main system
<link>
: https://navigation.ros.org/configuration/packages/configuring-dwb-controller.html from this site and this parameter page<link>
: https://github.com/ros-planning/navigation2/blob/main/nav2_bringup/params/nav2_params.yaml I made adjustments according to my own robot. You can see my tuning file below.According to this file, the robot moves from point A to point B according to acceleration and deceleration data. My main question is this: When it encounters any obstacle on the way to the target I sent, it reaches the point by bypassing this obstacle, but no slowdown is observed. In short, even if the robot detects the costmaps formed next to it while it is moving, it does not reduce the max_vel_x value and goes to the target point at high speed. I also demonstrated this in the video below. I would appreciate it if you could help me with this problem.
https://github.com/ros-planning/navigation2/assets/46001550/9786787c-8f0d-45b7-8a27-3ac94608a734
Note
I have just started working on ROS2 and NAV2. I am trying to transfer the AMR robot from the ROS1 system to the ROS2 system.