MoveIt with OMPL for mobile platform naviagtion
I'm currently trying to solve the motion planning / navigation problem for my mobile robot. So far I have a working gazebo simulation where I can send manuallay steer / move the robot and it's manipulator. My robot does not fit the standart differential drive / Ackerman-drive / omni-drive kinematic models. I had a look at MoveIt and OMPL.
- Did I understand correctly that MoveIt just takes my urdf/sdf file (which I also use im my simulation) to generate the kinematic model ?
- And is it correct that I use OMPL as a plugin in MoveIt to generate a valid list of motion commands ?
- So I just (general speeking) need to input my SDF into moveit plugin OMPL and can navigate my movile platform ?
I don't want to reinvent the whell and write a motion-planner with the correct kinematic model from scratch. And in the near future we want to add other mobile platforms and we easy want to exchange the kinematic model. As for every project time is always an issue and befor I start wasting a lot of time to find out that this is not working I just wanted to ask the community :-)
re: SDF: MoveIt does not do anything with SDF, so you'll have to stick to urdf / xacro.
I have a urdf file of my robot, but it this the workflow of which I asked how it should be?
MoveIt can plan for other things than 'arms', but mobile platforms are typically 'approximated' with just a floating joint (ie: a 6dof floating frame). I doubt it will be able to take any sort of 'rolling' kinematics into account.
I take it you have looked at the 'traditional' ROS navigation packages. There are various different planners, and they target different platforms/types of vehicles. I have the impression that MoveIt will not be able to do what the navigation pkgs can do. It might be more efficient to try and ..
.. adapt the navigation stack to your kinematics than looking at MoveIt to avoid that.
But I'm not a navigation expert, so I might be wrong.
@gvdhoorn: FloatingJoint is meant for drones. Driving platforms should use PlanarJoint - with 3dof - instead. @Westranger: you will have to implement the kinematics yourself one way or another - especially if they are non-standard. We only support holonomic motions via the PlanarJoint at the moment.
you're correct (although there are more platforms that can use a floating joint), but my comment regarding MoveIt not being Navigation stands.
That being said, there was a lot of discussion at World MoveIt Day yesterday about the need and possibilities for mobile-base planning within MoveIt. So there clearly is interest in improving the current situation.