Understanding Li, Li_dot and grad_Li

Discussion in 'Modeling' started by Eugene Valassakis, Oct 9, 2019.

  1. Hello,

    I am trying to better understand the actuation model in Mujoco, and I am specifically referring to this section of the documentation:
    upload_2019-10-9_15-15-47.png

    Apologies if I am missing something obvious, but I have some trouble understanding Li, grad_Li and Li_dot (what they mean, and the difference between them).

    Here is my understanding/ confusion regarding those quantities:
    1) Li is the length or position of the actuator (from http://www.mujoco.org/forum/index.php?threads/simple-position-servo.3389/#post-4715) : What does this mean? What is the difference from say the joint position qpos for instance? I am confused because in the XML we do not define a position for the actuator, so what does position mean here?
    2) Li_dot is the velocity of the actuator? Again not sure what this means here? So if we just create a velocity actuator this will be a propositional controller in velocity with gain k_v?
    3) Grad_Li(q) is a scalar that will scale the actuator force pi of actuator i to give a force applied to the joint q, and which depends on the geometric properties of your model: Is that correct?

    I would appreciate any help with this very much, and please let me know if I am mistaken in some of my understanding above!

    Thanks!
     
    Last edited: Oct 10, 2019
  2. Digging a bit more, I believe that li is stored in actuator_length in mj_data , li_dot is stored in actuator_velocity and li_grad in actuator_moment.

    I have still a bit of trouble understanding what is the difference between say the actuator velocity and the associated joint velocity and why are they different?

    I am thinking about this in the context of the velocity servo: If I want to use a joint velocity proportional controller, what I care about is that my control command will be matched by the joint velocity over time through the velocity error and the gain value. In the velocity actuator however, the command seems to correspond the the actuator velocity which is then not the same as the joint velocity?