kjyv / FloBaRoID

Framework for dynamical system identification of floating-base rigid body tree structures
GNU Lesser General Public License v3.0
61 stars 26 forks source link

Does FloBaRoID platform allow frictional (coulomb/viscous) parameters? #3

Closed mouhyemen closed 5 years ago

mouhyemen commented 6 years ago

I am finally able to run the trajectory script. Thanks on that end!

I know that URDF provides a way to handle frictional coefficients.

  <!-- Second segment of the arm. Joint along z-axis -->
  <joint name="lwr_0_joint" type="revolute">
    <origin rpy="0 0 0" xyz="0 0 0.11"/>
    <axis xyz="0 0 1"/>
    <limit effort="176" lower="-2.96705972839" upper="2.96705972839" velocity="1.91986217719"/>
    <dynamics damping="1.0" friction="0.0"/>
    <parent link="lwr_base_link"/>
    <child link="lwr_1_link"/>
  </joint>

Does FloBaRoID account for friction while computing optimal trajectories? Specifically, to handle rotor inertias, coulomb/viscous frictions? If not the URDF, are there other config files where we can tweak these values?

kjyv commented 6 years ago

The simulation for the optimization is done with iDynTree or optionally RBDL which both do not use these values. However if you set the option identifyFriction, simple friction terms are added afterwards. C.f. https://github.com/kjyv/FloBaRoID/blob/master/identification/model.py#L335 For identification purposes, these values should suffice if you measure the joint torque after the actuator (i.e. you don't need to simulate rotor inertia).

kjyv commented 5 years ago

I guess your question was answered, so closing this.