Joints Ros-Gazebo
Hello,
I want to know how the joints work with gazebo. My problem is that I don't know what kind of physics laws are used for gazebo.
I am using one plugin for control the wheels on (4 wheel) differential car. I am using one class in the pkg pr2_controller/manager and one of my question is the next:
In this plugin, there are 3 states, star, update and stop. I configure update to 50 Hz. Every time to run this state, I send efforts to joints by this way:
std::string joint_blw;
if (!n.getParam("joint_blw", joint_blw))
{
ROS_ERROR("No joint BLW given in namespace: '%s')",
n.getNamespace().c_str());
return false;
}
joint_state_blw_ = robot->getJointState(joint_blw);
if (!joint_state_blw_)
{
ROS_ERROR("summit_xl_ctrl could not find joint named '%s'",
joint_blw.c_str());
return false;
}
ROS_DEBUG("summit_xl_ctrl found joint named '%s'", joint_blw.c_str());
...
...
joint_state_blw_->commanded_effort_ = ...
This joint is continuous and has this urdf:
.. ..
<joint name="joint_back_left_wheel" type="continuous">
<parent link="base_link"/>
<child link="back_left_wheel"/>
<origin xyz="-0.223 0.154 0" rpy="0 0 0" />
<axis xyz="0 1 0" rpy="0 0 0" />
<limit effort="100" velocity="100"/>
<joint_properties damping="0.0" friction="0.0"/>
</joint>
<transmission name="joint_blw_trans" type="pr2_mechanism_model/SimpleTransmission">
<actuator name="joint_blw_motor" />
<joint name="joint_back_left_wheel" />
<mechanicalReduction>1</mechanicalReduction>
<motorTorqueConstant>1</motorTorqueConstant>
</transmission>
Finally, I don't know where is this effort apply and what is the performance of this effort, like I send torque to make par or whatever in N or Nm?. Where can I find any documentation or tutorial about this?
By the Way this is for the Uc3m University