general openrave usage
Hey guys!
Im attempting to get an arm up and running with openrave (originally I was going to attempt to do it the ros manipulation pipeline way, which looked a bit like overkill to me). A friend introduced me to openrave, which looks faster and easier to setup. I have played around with basic python scripts (non ros) to control openrave, but I am some what confused to what the recommended way to use it with ROS is.
What is your guys general setup for using ROS together with Openrave?
My slight confusion begins with the different openrave_planning
sub packages:
openraveros
openrave_robot_control
openrave_actionlib
I think Im missing the overview of the above. How do they work together/can one combine them? What are the typical sorts of usecases for each? What are the other things I need to implement (and with which restrictions?)
As far as I understood, openraveros
is basically openrave running with its core functionality exposed to the ros network through services; and openrave_robot_control
a way to interface openrave directly with a robot? I see it has simulation server and TF sender too. I originally though that openrave_robot_control
was a more specific implementation of openraveros
, but its missing lots of the general openrave functionality (ie services) that openraveros
provides. Where does openrave_actionlib fit into place/integrate with the rest?
Whats the recommended way to actually move the arm? For now the python scripts I played with outputted a trajectory (time stamp + joint angles). Is it recommened I parse this and send the hardware these angles, or is there a better way?
What are your guys general setups?
Any hints, ideas, etc that you have learnt from experience, what do you recommend?
If you could start over, would you implement it the same way?
I realise I have many vague questions, I purposely left it rather general. I thought I (and anyone else about to dive into the world of ROS&OpenRave) would attempt to learn from your guys experience before I get started (would probably just go with openraveros and use it as I did with the non-ros python scripts).
Any comments appreciated, thanks!
Thanks! -Ollie
PS: I would add "openrave_robot_control" as a tag, but the length is limited to 20chars.