Cosmetic improvements to Actuation Model documentation.
PiperOrigin-RevId: 526659426 Change-Id: If0ca9a505bb77e496739938a946ead5780b93d0f
This commit is contained in:
committed by
Copybara-Service
parent
62a675ba28
commit
51126caf3f
+15
-3
@@ -258,7 +258,7 @@ actuator works. The user can set them independently for maximum flexibility, or
|
||||
.. _geTransmission:
|
||||
|
||||
Transmission
|
||||
~~~~~~~~~~~~
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Each actuator has a scalar length :math:`l_i(q)` defined by the type of transmission and its parameters. The gradient
|
||||
:math:`\nabla l_i` is an :math:`n_V`-dimensional vector of moment arms. It determines the mapping from scalar
|
||||
@@ -266,19 +266,23 @@ actuator force to joint force. The transmission properties are determined by the
|
||||
is attached; the possible attachment object types are :at:`joint`, :at:`tendon`, :at:`jointinparent`,
|
||||
:at:`slider-crank`, :at:`site`, and :at:`body`.
|
||||
|
||||
:at:`joint` and :at:`tendon`
|
||||
The :at:`joint` and :at:`tendon` transmission types act as expected and correspond to the actuator applying forces or
|
||||
torques to the target object. Ball joints are special, see the :at:`joint` documentation in
|
||||
:ref:`actuator<actuator-general>` reference for more details.
|
||||
torques to the target object. Ball joints are special, see the :ref:`actuator/general/joint<actuator-general-joint>`
|
||||
documentation for more details.
|
||||
|
||||
:at:`jointinparent`
|
||||
The :at:`jointinparent` transmission is unique to ball and free joint and asserts that rotation should be measured
|
||||
in the parent rather than child frame.
|
||||
|
||||
:at:`slider-crank`
|
||||
:at:`slider-crank` `transmissions <https://en.wikipedia.org/wiki/Slider-crank_linkage>`_ transform a linear force to
|
||||
a torque, as in a piston-driven combustion engine. `This model
|
||||
<https://github.com/deepmind/mujoco/tree/main/model/slider_crank>`_ contains pedagogical examples. Slider-cranks can
|
||||
also be modeled explicitly by creating MuJoCo bodies and coupling them with equality constraints to the rest of the
|
||||
system, but that would be less efficient.
|
||||
|
||||
:at:`site`
|
||||
:at:`site` transmission (without a :at:`refsite`, see below) and :at:`body` transmission targets have a fixed zero
|
||||
length :math:`l_i(q) = 0`. They can therefore not be used to maintain a desired length, but can be used to apply
|
||||
forces. Site transmissions correspond to applying a Cartsian force/torque at the site, and are useful for modeling
|
||||
@@ -292,7 +296,11 @@ is attached; the possible attachment object types are :at:`joint`, :at:`tendon`,
|
||||
be controlled with a :el:`position` actuator, enabling Cartesian end-effector control. See the :at:`refsite`
|
||||
documentation in :ref:`actuator<actuator-general>` reference for more details.
|
||||
|
||||
.. _geActivation:
|
||||
|
||||
Activation dynamics
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Some actuators such as pneumatic and hydraulic cylinders as well as biological muscles have an internal state called
|
||||
"activation". This is a true dynamic state, beyond the joint positions :math:`q` and velocities :math:`v`. Including
|
||||
such actuators in the model results in 3rd-order dynamics. We denote the vector of actuator activations :math:`w`.
|
||||
@@ -315,7 +323,11 @@ Activation dynamics
|
||||
be "none" which corresponds to a regular actuator with no activation state. The dimensionality of :math:`w` equals
|
||||
the number of actuators whose activation type is different from "none".
|
||||
|
||||
.. _geActuatorForce:
|
||||
|
||||
Force generation
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
Each actuator generates a scalar force :math:`p_i` which is some function
|
||||
|
||||
.. math::
|
||||
|
||||
Reference in New Issue
Block a user