Re: [ros-users] using ROS with a new 7-DOF arm hardware

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: User discussions
Date:  
To: User discussions
Subject: Re: [ros-users] using ROS with a new 7-DOF arm hardware
I now found out a bit more. I now realize that by setting the
commanded_effort_ of a JointState is the way commands are sent (not via
messages or other). I also see that Gazebo is has a plugin to
replicate the controller_manager, that uses the URDF description to set
up a robot model and simulation joint motions. So, at the VERY least,
if I want to use Gazebo, I'll need to make sure that I load a
pr2_mechansim_model of the Robot that is consistent with the model used
by Gazebo.
Does this sound correct?


to have it's own ros_controller_manager that does the same for Gazebo.
So, my intuition is that if I write


On 06/14/2011 10:53 AM, Patrick Beeson wrote:
> Great. I look froward to trying this out once it's released.
>
> One or two quick questions that are not at all clear.   Will (in the 
> new tool chain) my custom JointTrajectoryAction controller also need 
> to be a pr2_controller in order to use my URDF model with Gazebo?  I 
> was going to make a joint_trajectory_action_node that communicated 
> directly with my hard in soft real-time to start.   This wasn't going 
> to be a pr2_controller at all.   But I will want to be able to use the 
> urdf model to control the arm in Gazebo.   My understanding is that 
> right now, somewhere, something allows controllers to run in 
> simulation instead of on the ethercat hardware.  I can't seem to find 
> a good example that shows where exactly the line in drawn between sim 
> and real, but it looks like the default Gazebo pr2 sim AND the pr2 arm 
> hardware  both use 
> robot_mechanism_controllers/src/joint_trajectory_action_controller.cpp.   
> Examining that controller, I find it VERY difficult to understand how 
> the low-level joint commands are being set (they seem to be copied 
> into a RealTimeBox that is never intialized, so I don't know where 
> they go from there).    So is the sim joint communication happening 
> below this?  Do I need to do something special to talk to simulated 
> joints in Gazebo versus on my hardware?  Another way of asking, if I 
> write a joint_trajectory_action_controller to talk to my specific 
> hardware, will I need to write another to talk to Gazebo?   And Do 
> these need to be pr2_controllers?

>
>