Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
drake-jenkins-bot committed Dec 29, 2024
1 parent e912e75 commit 2c2da90
Show file tree
Hide file tree
Showing 65 changed files with 613 additions and 471 deletions.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -172,8 +172,8 @@

<p>Implements a joint-space stiffness controller of the form. </p>
<pre>
τ_control = −τ_g(q) − τ_app + kp⊙(q_d − q) + kd⊙(v_d − v)
</pre><p> where <code>Kp</code> and <code>Kd</code> are the joint stiffness and damping coefficients, respectively, <code>τ_g(q)</code> is the vector of generalized forces due to gravity, and <code>τ_app</code> contains applied forces from force elements added to the multibody model (this can include damping, springs, etc. See MultibodyPlant::CalcForceElementsContribution()). <code>q_d</code> and <code>v_d</code> are the desired (setpoint) values for the multibody positions and velocities, respectively. <code>kd</code> and <code>kp</code> are taken as vectors, and ⊙ represents elementwise multiplication.</p>
τ_control = B⁻¹[−τ_g(q) − τ_app + kp⊙(q_d − q) + kd⊙(v_d − v)]
</pre><p> where <code>Kp</code> and <code>Kd</code> are the joint stiffness and damping coefficients, respectively, <code>τ_g(q)</code> is the vector of generalized forces due to gravity, and <code>τ_app</code> contains applied forces from force elements added to the multibody model (this can include damping, springs, etc. See MultibodyPlant::CalcForceElementsContribution()). B⁻¹ is the inverse of the actuation matrix. <code>q_d</code> and <code>v_d</code> are the desired (setpoint) values for the multibody positions and velocities, respectively. <code>kd</code> and <code>kp</code> are taken as vectors, and ⊙ represents elementwise multiplication.</p>
<p>The goal of this controller is to produce a closed-loop dynamics that resembles a spring-damper dynamics at the joints around the setpoint: </p><pre>
M(q)v̇ + C(q,v)v + kp⊙(q - q_d) + kd⊙(v - v_d) = τ_ext,
</pre><p> where <code>M(q)v̇ + C(q,v)v</code> are the original multibody mass and Coriolis terms, and <code>τ_ext</code> are any external generalized forces that can arise, e.g. from contact forces.</p>
Expand All @@ -188,7 +188,7 @@
</table>
</td><td align="center" style="border:solid;padding-left:20px;padding-right:20px;vertical-align:middle" bgcolor="#F0F0F0"><a class="el" href="classdrake_1_1systems_1_1controllers_1_1_joint_stiffness_controller.html" title="Implements a joint-space stiffness controller of the form.">JointStiffnessController</a></td><td style="vertical-align:middle"><table cellspacing="0" cellpadding="0">
<tr>
<td align="left" style="padding:5px 0px 5px 0px">&rarr; generalized_force</td></tr>
<td align="left" style="padding:5px 0px 5px 0px">&rarr; actuation</td></tr>
</table>
</td></tr>
</table>
Expand Down Expand Up @@ -225,6 +225,9 @@
<tr class="memitem:ae1296b665521a703cc08e6d98f5b6f64"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classdrake_1_1systems_1_1_output_port.html">OutputPort</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdrake_1_1systems_1_1controllers_1_1_joint_stiffness_controller.html#ae1296b665521a703cc08e6d98f5b6f64">get_output_port_generalized_force</a> () const</td></tr>
<tr class="memdesc:ae1296b665521a703cc08e6d98f5b6f64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the output port for the generalized forces implementing the control. <a href="#ae1296b665521a703cc08e6d98f5b6f64">More...</a><br /></td></tr>
<tr class="separator:ae1296b665521a703cc08e6d98f5b6f64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02ffa2d9b80c4b46003312db5e69e35c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classdrake_1_1systems_1_1_output_port.html">OutputPort</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdrake_1_1systems_1_1controllers_1_1_joint_stiffness_controller.html#a02ffa2d9b80c4b46003312db5e69e35c">get_output_port_actuation</a> () const</td></tr>
<tr class="memdesc:a02ffa2d9b80c4b46003312db5e69e35c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the output port implementing the control in the form (and order) expected for the plant's actuation input port. <a href="#a02ffa2d9b80c4b46003312db5e69e35c">More...</a><br /></td></tr>
<tr class="separator:a02ffa2d9b80c4b46003312db5e69e35c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f94d1c2b9f9f4bfba53ce45e3ec917e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classdrake_1_1multibody_1_1_multibody_plant.html">multibody::MultibodyPlant</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdrake_1_1systems_1_1controllers_1_1_joint_stiffness_controller.html#a1f94d1c2b9f9f4bfba53ce45e3ec917e">get_multibody_plant</a> () const</td></tr>
<tr class="memdesc:a1f94d1c2b9f9f4bfba53ce45e3ec917e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a constant pointer to the MultibodyPlant used for control. <a href="#a1f94d1c2b9f9f4bfba53ce45e3ec917e">More...</a><br /></td></tr>
<tr class="separator:a1f94d1c2b9f9f4bfba53ce45e3ec917e"><td class="memSeparator" colspan="2">&#160;</td></tr>
Expand Down Expand Up @@ -1548,6 +1551,25 @@ <h2 class="memtitle"><span class="permalink"><a href="#a1f94d1c2b9f9f4bfba53ce45

<p>Returns a constant pointer to the MultibodyPlant used for control. </p>

</div>
</div>
<a id="a02ffa2d9b80c4b46003312db5e69e35c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a02ffa2d9b80c4b46003312db5e69e35c">&#9670;&nbsp;</a></span>get_output_port_actuation()</h2>

<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classdrake_1_1systems_1_1_output_port.html">OutputPort</a>&lt;T&gt;&amp; get_output_port_actuation </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">

<p>Returns the output port implementing the control in the form (and order) expected for the plant's actuation input port. </p>

</div>
</div>
<a id="ae1296b665521a703cc08e6d98f5b6f64"></a>
Expand All @@ -1566,6 +1588,8 @@ <h2 class="memtitle"><span class="permalink"><a href="#ae1296b665521a703cc08e6d9
</div><div class="memdoc">

<p>Returns the output port for the generalized forces implementing the control. </p>
<p>(Deprecated.) </p><dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd>Use get_output_port_actuation() instead, which multiplies the generalized force by B⁻¹ to be consumed by MultibodyPlant's actuation input port. <br />
This will be removed from Drake on or after 2025-04-01.</dd></dl>

</div>
</div>
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -1521,7 +1521,7 @@ <h2 class="memtitle"><span class="permalink"><a href="#a705ec3567a892f2c558988b4
</div><div class="memdoc">

<p>(Deprecated.) </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd>Use default_color_render_camera().core().intrinsics() instead. <br />
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000007">Deprecated:</a></b></dt><dd>Use default_color_render_camera().core().intrinsics() instead. <br />
This will be removed from Drake on or after 2025-01-01.</dd></dl>

</div>
Expand Down Expand Up @@ -1561,7 +1561,7 @@ <h2 class="memtitle"><span class="permalink"><a href="#acaff289a0608d413a89eac13
</div><div class="memdoc">

<p>(Deprecated.) </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000008">Deprecated:</a></b></dt><dd>Use default_color_render_camera() instead. <br />
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000009">Deprecated:</a></b></dt><dd>Use default_color_render_camera() instead. <br />
This will be removed from Drake on or after 2025-01-01.</dd></dl>

</div>
Expand Down Expand Up @@ -1658,7 +1658,7 @@ <h2 class="memtitle"><span class="permalink"><a href="#a5b92b9d4b4aa8e028888b01f
</div><div class="memdoc">

<p>(Deprecated.) </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000007">Deprecated:</a></b></dt><dd>Use default_depth_render_camera().core().intrinsics() instead. <br />
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000008">Deprecated:</a></b></dt><dd>Use default_depth_render_camera().core().intrinsics() instead. <br />
This will be removed from Drake on or after 2025-01-01.</dd></dl>

</div>
Expand Down Expand Up @@ -1717,7 +1717,7 @@ <h2 class="memtitle"><span class="permalink"><a href="#a2b7e6767e2c01173872ad2b1
</div><div class="memdoc">

<p>(Deprecated.) </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000009">Deprecated:</a></b></dt><dd>Use default_depth_render_camera() instead. <br />
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000010">Deprecated:</a></b></dt><dd>Use default_depth_render_camera() instead. <br />
This will be removed from Drake on or after 2025-01-01.</dd></dl>

</div>
Expand Down Expand Up @@ -1909,7 +1909,7 @@ <h2 class="memtitle"><span class="permalink"><a href="#a22ff82441df0b9b743906c43
</div><div class="memdoc">

<p>(Deprecated.) </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000013">Deprecated:</a></b></dt><dd>Use default_parent_frame_id() instead. <br />
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000014">Deprecated:</a></b></dt><dd>Use default_parent_frame_id() instead. <br />
This will be removed from Drake on or after 2025-01-01.</dd></dl>

</div>
Expand Down Expand Up @@ -2149,7 +2149,7 @@ <h2 class="memtitle"><span class="permalink"><a href="#ab8817bc0f987f64e506b92be
</div><div class="memdoc">

<p>(Deprecated.) </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000011">Deprecated:</a></b></dt><dd>Use default_color_render_camera().core().sensor_pose_in_camera_body() instead. <br />
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000012">Deprecated:</a></b></dt><dd>Use default_color_render_camera().core().sensor_pose_in_camera_body() instead. <br />
This will be removed from Drake on or after 2025-01-01.</dd></dl>

</div>
Expand All @@ -2170,7 +2170,7 @@ <h2 class="memtitle"><span class="permalink"><a href="#ad83228b39a7566b1cf862392
</div><div class="memdoc">

<p>(Deprecated.) </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000012">Deprecated:</a></b></dt><dd>Use default_depth_render_camera().core().sensor_pose_in_camera_body() instead. <br />
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000013">Deprecated:</a></b></dt><dd>Use default_depth_render_camera().core().sensor_pose_in_camera_body() instead. <br />
This will be removed from Drake on or after 2025-01-01.</dd></dl>

</div>
Expand All @@ -2191,7 +2191,7 @@ <h2 class="memtitle"><span class="permalink"><a href="#acfe6bdbdc50d1b6bff27e133
</div><div class="memdoc">

<p>(Deprecated.) </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000010">Deprecated:</a></b></dt><dd>Use default_X_PB() instead. <br />
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000011">Deprecated:</a></b></dt><dd>Use default_X_PB() instead. <br />
This will be removed from Drake on or after 2025-01-01.</dd></dl>

</div>
Expand Down
19 changes: 11 additions & 8 deletions doxygen_cxx/deprecated.html
Original file line number Diff line number Diff line change
Expand Up @@ -175,32 +175,35 @@
<dt>Member <a class="el" href="namespacedrake_1_1symbolic.html#ad528f8f92173863f5029b979b9c5f36b">drake::symbolic::ExtractAndAppendVariablesFromExpression</a> (const <a class="el" href="classdrake_1_1symbolic_1_1_expression.html" title="Represents a symbolic form of an expression.">symbolic::Expression</a> &amp;e, VectorX&lt; Variable &gt; *vars, std::unordered_map&lt; symbolic::Variable::Id, int &gt; *map_var_to_index)</dt>
<dd><a class="anchor" id="_deprecated000001"></a>Use the overloaded function with std::vector&lt;Variable&gt; instead of VectorX&lt;Variable&gt; <br />
This will be removed from Drake on or after 2024-05-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1systems_1_1controllers_1_1_joint_stiffness_controller.html#ae1296b665521a703cc08e6d98f5b6f64">JointStiffnessController&lt; T &gt;::get_output_port_generalized_force</a> () const</dt>
<dd><a class="anchor" id="_deprecated000006"></a>Use get_output_port_actuation() instead, which multiplies the generalized force by B⁻¹ to be consumed by MultibodyPlant's actuation input port. <br />
This will be removed from Drake on or after 2025-04-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1geometry_1_1_mesh.html#a94c732bb0f167eab349228237a8fbe3c">Mesh::filename</a> () const</dt>
<dd><a class="anchor" id="_deprecated000004"></a>Meshes can be defined from a file path or in memory data. Use Mesh::source() to determine if a filename is available. <br />
This will be removed from Drake on or after 2025-04-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1systems_1_1sensors_1_1_rgbd_sensor.html#a705ec3567a892f2c558988b4ac3c351f">RgbdSensor::color_camera_info</a> () const</dt>
<dd><a class="anchor" id="_deprecated000006"></a>Use default_color_render_camera().core().intrinsics() instead. <br />
<dd><a class="anchor" id="_deprecated000007"></a>Use default_color_render_camera().core().intrinsics() instead. <br />
This will be removed from Drake on or after 2025-01-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1systems_1_1sensors_1_1_rgbd_sensor.html#acaff289a0608d413a89eac135a4c8790">RgbdSensor::color_render_camera</a> () const</dt>
<dd><a class="anchor" id="_deprecated000008"></a>Use default_color_render_camera() instead. <br />
<dd><a class="anchor" id="_deprecated000009"></a>Use default_color_render_camera() instead. <br />
This will be removed from Drake on or after 2025-01-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1systems_1_1sensors_1_1_rgbd_sensor.html#a5b92b9d4b4aa8e028888b01fd2f659dd">RgbdSensor::depth_camera_info</a> () const</dt>
<dd><a class="anchor" id="_deprecated000007"></a>Use default_depth_render_camera().core().intrinsics() instead. <br />
<dd><a class="anchor" id="_deprecated000008"></a>Use default_depth_render_camera().core().intrinsics() instead. <br />
This will be removed from Drake on or after 2025-01-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1systems_1_1sensors_1_1_rgbd_sensor.html#a2b7e6767e2c01173872ad2b1d0a0f9ca">RgbdSensor::depth_render_camera</a> () const</dt>
<dd><a class="anchor" id="_deprecated000009"></a>Use default_depth_render_camera() instead. <br />
<dd><a class="anchor" id="_deprecated000010"></a>Use default_depth_render_camera() instead. <br />
This will be removed from Drake on or after 2025-01-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1systems_1_1sensors_1_1_rgbd_sensor.html#a22ff82441df0b9b743906c4304135783">RgbdSensor::parent_frame_id</a> () const</dt>
<dd><a class="anchor" id="_deprecated000013"></a>Use default_parent_frame_id() instead. <br />
<dd><a class="anchor" id="_deprecated000014"></a>Use default_parent_frame_id() instead. <br />
This will be removed from Drake on or after 2025-01-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1systems_1_1sensors_1_1_rgbd_sensor.html#ab8817bc0f987f64e506b92be652d5644">RgbdSensor::X_BC</a> () const</dt>
<dd><a class="anchor" id="_deprecated000011"></a>Use default_color_render_camera().core().sensor_pose_in_camera_body() instead. <br />
<dd><a class="anchor" id="_deprecated000012"></a>Use default_color_render_camera().core().sensor_pose_in_camera_body() instead. <br />
This will be removed from Drake on or after 2025-01-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1systems_1_1sensors_1_1_rgbd_sensor.html#ad83228b39a7566b1cf862392f1e5e19a">RgbdSensor::X_BD</a> () const</dt>
<dd><a class="anchor" id="_deprecated000012"></a>Use default_depth_render_camera().core().sensor_pose_in_camera_body() instead. <br />
<dd><a class="anchor" id="_deprecated000013"></a>Use default_depth_render_camera().core().sensor_pose_in_camera_body() instead. <br />
This will be removed from Drake on or after 2025-01-01. </dd>
<dt>Member <a class="el" href="classdrake_1_1systems_1_1sensors_1_1_rgbd_sensor.html#acfe6bdbdc50d1b6bff27e133688a4230">RgbdSensor::X_PB</a> () const</dt>
<dd><a class="anchor" id="_deprecated000010"></a>Use default_X_PB() instead. <br />
<dd><a class="anchor" id="_deprecated000011"></a>Use default_X_PB() instead. <br />
This will be removed from Drake on or after 2025-01-01.</dd>
</dl>
</div></div><!-- PageDoc -->
Expand Down
Loading

0 comments on commit 2c2da90

Please sign in to comment.