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:
|
.. _geTransmission:
|
||||||
|
|
||||||
Transmission
|
Transmission
|
||||||
~~~~~~~~~~~~
|
^^^^^^^^^^^^
|
||||||
|
|
||||||
Each actuator has a scalar length :math:`l_i(q)` defined by the type of transmission and its parameters. The gradient
|
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
|
: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`,
|
is attached; the possible attachment object types are :at:`joint`, :at:`tendon`, :at:`jointinparent`,
|
||||||
:at:`slider-crank`, :at:`site`, and :at:`body`.
|
: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
|
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
|
torques to the target object. Ball joints are special, see the :ref:`actuator/general/joint<actuator-general-joint>`
|
||||||
:ref:`actuator<actuator-general>` reference for more details.
|
documentation for more details.
|
||||||
|
|
||||||
|
:at:`jointinparent`
|
||||||
The :at:`jointinparent` transmission is unique to ball and free joint and asserts that rotation should be measured
|
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.
|
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
|
: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
|
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
|
<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
|
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.
|
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
|
: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
|
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
|
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`
|
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.
|
documentation in :ref:`actuator<actuator-general>` reference for more details.
|
||||||
|
|
||||||
|
.. _geActivation:
|
||||||
|
|
||||||
Activation dynamics
|
Activation dynamics
|
||||||
|
^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
Some actuators such as pneumatic and hydraulic cylinders as well as biological muscles have an internal state called
|
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
|
"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`.
|
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
|
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".
|
the number of actuators whose activation type is different from "none".
|
||||||
|
|
||||||
|
.. _geActuatorForce:
|
||||||
|
|
||||||
Force generation
|
Force generation
|
||||||
|
^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
Each actuator generates a scalar force :math:`p_i` which is some function
|
Each actuator generates a scalar force :math:`p_i` which is some function
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|||||||
Reference in New Issue
Block a user