ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

Control loop missed its desired rate

asked 2015-09-18 02:38:12 -0500

kevin.kuei.0321@gmail.com gravatar image

updated 2015-09-19 01:10:28 -0500

I tried to run move_base navigation to a goal on Odroid C1+ board. But the result is bad, the robot didn't move smoothly. Here is the result screen recording:

https://www.youtube.com/watch?v=vyD-r...

And this is my move_base parameter files:

https://github.com/wennycooper/learni...

The strange thing is, if I run the same code on my desktop PC. The result is pretty smooth.

I found the difference is, on my PC, the control loop frequency can reach to 2.5Hz as specified, but it can only reach to ~2.2Hz on Odroid C1+. I even tried the same test on Raspberry Pi 2, the result is even worse...

Any idea to make it better??

edit retag flag offensive close merge delete

Comments

I also tried XU3, the control loop rate can reach >=3 and the result is much better.

kevin.kuei.0321@gmail.com gravatar image kevin.kuei.0321@gmail.com  ( 2015-09-19 01:00:49 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted
3

answered 2015-09-21 02:58:08 -0500

Akif gravatar image

The problem is with the cpu and the processing power. As @makokal said I do not think it is related with move_base.

Maybe you should try lowering the costmap resolution, and/or costmap sizes etc. Therefore your navigation stack will require less processing power and memory. However your navigation performance may degrade as a result.

edit flag offensive delete link more

Comments

Thanks for your reply. I tried modify the (both global & local) costmap resolution to 1.0 and local map width x height to 1.0x1.0. The control rate did slightly increased to 2.45... but it's still not good enough. Any more recommendation??

kevin.kuei.0321@gmail.com gravatar image kevin.kuei.0321@gmail.com  ( 2015-09-21 05:33:00 -0500 )edit

You may try increasing sim_time, sim_granularity and angular_sim_granularity a bit.

Akif gravatar image Akif  ( 2015-09-21 06:55:57 -0500 )edit

BTW, I found the system is not very busy in overall. It's a quad-cores CPU and only one core is almost 100% when running move_base.

kevin.kuei.0321@gmail.com gravatar image kevin.kuei.0321@gmail.com  ( 2015-09-21 07:09:14 -0500 )edit

Yes, I tried increasing sim_time=1, sim_granularity=0.5 and angular_sim_granularity=0.5, the result is still not god. Now I'm afraid that Odroid C1+ is just not powerful enough for move_base....

kevin.kuei.0321@gmail.com gravatar image kevin.kuei.0321@gmail.com  ( 2015-09-22 04:34:41 -0500 )edit
1

answered 2015-09-18 18:31:00 -0500

makokal gravatar image

Usually control loop missing its desired means that something is taking longer that you anticipated. I have no experience with Odroid C1+, how do the specs compare your PC? I think the issue has nothing to do with move_base in this case

edit flag offensive delete link more

Question Tools

2 followers

Stats

Asked: 2015-09-18 02:38:12 -0500

Seen: 3,053 times

Last updated: Sep 21 '15