Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Questions about trying to apply MPPI to robot navigating function #56

Open
doyeon-danny opened this issue Apr 25, 2024 · 1 comment
Open

Comments

@doyeon-danny
Copy link

doyeon-danny commented Apr 25, 2024

Hi, thank you for sharing your nice work about MPPI in Isaac Gym.
I want to develop your MPPI system for path planning.
To achieve it, I have several questions. I hope you check my questions.

  1. Questions about robot settings.
    I succeeded to load Waffle(Turtlebot3) robot in Isaac Gym from Gazebo.
    When I tune parameters, I find that there are several value differences.

Jackal, for example, the values of max,min velocity and etc are slightly different.
If you bring robot's information from Gazebo, do you have any reasons to change parameters?
image
[Your Jackal params]

image
[Gazebo Jackal params]

My goal was to load Waffle robot(Turtlebot3) from Gazebo.
I made it and when I set same parameters from Gazebo, Waffle didn't move.
If I set higher values, it moved.
Screenshot from 2024-04-25 11-25-23
[Gazebo Waffle params]

We had same robot specification and loaded same robot based on same urdf file but robot's move was different.
I am wondering if you know why these gap between Gazebo and Isaac Gym made.
(Because of friction...?)

  1. Setting MPPI for robot navigation.
    You used MPPI for moving or picking obstacles.

I find that you also have a system for robot navigation which name is "point_robot_with_obstacle.py".
Its cost function used distance between robot and goal, and contact value from IsaacGym's contact related function.
And you used Pybullet to constuct it.
But when I used them to Isaac Gym, robot didn't avoid obstacle.
I don't know why.

  1. Using your system, if I make new MPPI with new cost functions for robot navigation, Can it be my contribution?
    I am trying to get master's degree and I want to develop MPPI based on your great work.

I would be so glad if you let me know about what the problems are.
Thank you.

@cpezzato
Copy link
Contributor

Hi @doyeon-danny, thanks for the questions. Here is some explanation:

  1. If you bring the robot's information from Gazebo, do you have any reasons to change parameters? Well, the two simulators are definitely different, and so are the internal low-level controllers for velocity and position reference. We never really attempted to match the tuning. You can tune your simulator to match your actual system, we did not do it because we had many different robots. The config relates to the sampling and not so much on the physical limits of the robot. This is a little trick to explore a little more in the short horizon allowed. The actual velocities on the robot will be lower and you can cap or scale them for obvious safety when you go on the real robot (in vel control.)
  2. You mean the cost function did not produce the behavior you wanted? Indexes might be different in pybullet and isaacgym. Start with a simple environment with just a goal, then add an obstacle once you can reach the goal in free space. If you still have problems, open a separate issue with more details, please ;)
  3. This is up to your supervisor I'd say, and it depends on the requirements of your university. Designing a cost function would have little theoretical implications unless you start doing something more fancy like a NN for the cost in hard cases or so. You can show the limitations of the way we do it and improve with your thesis

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants