Using MoveIt programmatically and integrating with ros_control
I have a question about using moveit for my custom 6 dof manipulator robot. I am pretty new to ROS, and I really hope to learn from the community.
Basically I want to go from a URDF file to actually programmatically sending commands to my robot after planning trajectories using moveit.
From the various tutorials, I have figured that this is what i have to do
- Generate the URDF from the CAD model using the Solidworks plugin.
- Use the URDF to generate a MoveIt package using the MoveIt setup assistant.
- Now if I wanted to use the GUI, I could import my model into RViz and manually execute the planning, but that's not what I want, I want to do so programmatically(ideally through python/rospy, but C++ is also OK)
- Use ROS control to write a driver interface for communicating to the actual hardware.
I have questions about Step 3 and 4.
How do I programmatically control my own robot?
The MoveIt MoveGroup tutorial here has an example of the API but critical things(like, how do I use my robot's files?) are not clear here. How do I import my robots files(or direct MoveIt to it) in the script to ensure the calculations are done properly? I understand MoveIt commander is the python interface, but is there any example using the MoveIt Commander and a description of its API? Could somebody link to Open source code for open robots that I can see and learn.
Can you link me to any code which runs on a robot other than the PR2, that I can run and test on my system?
Also, How do I connect Ros_control and MoveIt? I have looked into the ros control boilerplate repository which has some pointers on writing the driver, but I cant find any documentation on the interface between the two.
I want to use MoveIt for my custom robotic arm and have reached the stereotypical cliff that occurs after reading through and doing the common tasks in the various tutorials and videos on ROS.
Thanks!