I may want to make a short presentation for Tuesday's ROS sig

33 views
Skip to first unread message

Michael Wimble

unread,
Jul 1, 2024, 12:34:03 PMJul 1
to 'Pito Salas' via HomeBrew Robotics Club
I’ve been reading the Nav2 stack code, especially as it relates to controllers (local path planners) and, if I attend the SIG on Tuesday night, I might like to make a 20 minute or so presentation about how the local planners work and how the various configuration parameters affect tuning of the stack.

James H Phelan

unread,
Jul 1, 2024, 3:26:51 PMJul 1
to hbrob...@googlegroups.com

I'd like that!

RoverDoc

James H Phelan
"Nihil est sine ratione cur potius sit quam non sit"
Leibniz

camp .

unread,
Jul 1, 2024, 5:50:39 PMJul 1
to 'Pito Salas' via HomeBrew Robotics Club
I might like to make a 20 minute or so presentation about how the local planners work and how the various configuration parameters affect tuning of the stack.

    This would be great, Mike!

- Camp

On Monday, July 1, 2024 at 12:34:02 PM EDT, Michael Wimble <mwi...@gmail.com> wrote:


I’ve been reading the Nav2 stack code, especially as it relates to controllers (local path planners) and, if I attend the SIG on Tuesday night, I might like to make a 20 minute or so presentation about how the local planners work and how the various configuration parameters affect tuning of the stack.

--
You received this message because you are subscribed to the Google Groups "HomeBrew Robotics Club" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hbrobotics+...@googlegroups.com.

Sergei Grichine

unread,
Jul 1, 2024, 6:31:50 PMJul 1
to hbrob...@googlegroups.com
Michael,

I am following Jim DiNunzio recommendations - setting up an outdoor robot with GPS localization.

The process is described here (thanks, Jim for the link!): https://docs.ros.org/en/melodic/api/robot_localization/html/integrating_gps.html

There is more that I found:

The idea there is to use two EKF filters, one with GPS, another without, publishing two odometry topics (Local and Global).

I am not sure if this is in any way relevant to your presentation about local planners tomorrow, but if you come across anything related - it will be interesting to know. Planning for the outdoors might have unexpected twists.



--
Best Regards,
-- Sergei

Chris Albertson

unread,
Jul 1, 2024, 8:16:37 PMJul 1
to hbrob...@googlegroups.com
>
> The idea there is to use two EKF filters, one with GPS, another without, publishing two odometry topics (Local and Global).

After reading the above, it just occurred to me that one could run perhaps a dozen EKF filters. You would ignore the output of all but one. Then after a test run, you could compare the results of all the filters and find which was best. Running a dozen at a time and comparing results would be a good way to test out ideas and verify tunning.

Before, it never occurred to me to run more than one.

Now the trouble is how do you know which was more accurate unless you have access to “truth”, perhaps some surveyed marks on the ground that the route goes over. In any case, before I figured you’d need to make 12 runs to evaluate 12 different filters.


Sergei Grichine

unread,
Jul 1, 2024, 9:54:00 PMJul 1
to hbrob...@googlegroups.com
Chris, PX4 does exactly that - running multiple EKF2 filters - when a robot has multiple magnetometers. It switches to the one which seems to deliver better results at the moment. Unfortunately, that switching by itself often causes undesirable effects - jerking, straight line deviation, altitude drops in drones etc.

As my lawnmower has a couple of mags, I used to let it run four EKF2's - but after looking at data I left only a single one, by disabling the less stable IMU9250 mag (leaving accel and gyro to work with an RM3100).

I'd guess, pluralism of opinions isn't always good when you want to just cut stripes on the lawn.

--
You received this message because you are subscribed to the Google Groups "HomeBrew Robotics Club" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hbrobotics+...@googlegroups.com.

Jim DiNunzio

unread,
Jul 1, 2024, 10:22:22 PMJul 1
to hbrob...@googlegroups.com

Hi All,

I’ll add that the documents below mention using the first EKF a.k.a. Robot Localization, for local, continuous sensors such as odometry and IMU and the second EKF with those plus GPS, an inherently a non-continuous or by the technical term, “jumping around” sensor. They recommend using the first EKF as input to the local planner where local cost map is used and the second one for the global planner where the global cost map is used. The first publishes on odom and the second on odom/global.

 

I have not fully tried this out with Nav2 running myself, being stuck trying to get the magnetometer output to not jump around by the time it gets through to odom/global orientation.

 

Jim

Chris Albertson

unread,
Jul 1, 2024, 10:33:27 PMJul 1
to hbrob...@googlegroups.com
My idea was to evaluate the filters after the robot runs a course using recorded data.  It was just a way to get in more test runs.

Conventional wisdom is that if you have multiple magnetometers they ALL should go to the same filter. If one sensor is not doing well and is erratic then very quickly, the fact that it does not tack all the other sensors will cause the errant sensors to be weighted very low. so it in effect is switched out.



Charles de Montaigu

unread,
Jul 2, 2024, 1:01:21 AMJul 2
to hbrob...@googlegroups.com

Michael, Camp

Can you record the presentation for us folks not in the same time zone

Thanks,
Chaz


camp .

unread,
Jul 2, 2024, 7:48:32 AMJul 2
to hbrob...@googlegroups.com
> Can you record the presentation for us folks not in the same time zone

camp .

unread,
Jul 3, 2024, 12:51:27 AMJul 3
to hbrob...@googlegroups.com
    Here's a link to Mr. Mike's presentation on ROS2 local planners and configuration parameters.

Mike Wimble's presentation on ROS local controllers

Enjoy,
Camp

Sergei Grichine

unread,
Jul 3, 2024, 5:53:55 PMJul 3
to hbrob...@googlegroups.com
I found a similar Nav2 configuration file in my fork from Articulated Robotics: https://github.com/slgrobotics/articubot_one/blob/main/config/nav2_params.yaml

One can easily track it down to the original repository, and might find some tips in Josh Newans'  Tutorials: https://articulatedrobotics.xyz/tutorials/

I haven't yet reached a point where I could use or troubleshoot it with ROS Humble.

Reply all
Reply to author
Forward
0 new messages