From b94e1890e70d4feb5bbdb3cc3439e501e88a04c0 Mon Sep 17 00:00:00 2001 From: dmronga Date: Wed, 6 Mar 2024 14:23:01 +0000 Subject: [PATCH] deploy: a6297ceddea15fa2808c16f34903e3291445fd64 --- cart__pos__ctrl__dynamic_8cpp.html | 123 ++++++++++++++++++++++ dir_5d45abd4863d15c2c47de1951180b2a2.html | 2 + doxygen_crawl.html | 1 + files.html | 9 +- globals.html | 2 +- globals_func.html | 2 +- 6 files changed, 133 insertions(+), 6 deletions(-) create mode 100644 cart__pos__ctrl__dynamic_8cpp.html diff --git a/cart__pos__ctrl__dynamic_8cpp.html b/cart__pos__ctrl__dynamic_8cpp.html new file mode 100644 index 00000000..c0a23a85 --- /dev/null +++ b/cart__pos__ctrl__dynamic_8cpp.html @@ -0,0 +1,123 @@ + + + + + + + +wbc: tutorials/kuka_iiwa/cart_pos_ctrl_dynamic.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
wbc +
+
+
+ + + + + + + +
+
+ +
cart_pos_ctrl_dynamic.cpp File Reference
+
+
+ + + + +

+Functions

int main ()
 
+

Function Documentation

+ +

◆ main()

+ +
+
+ + + + + + + +
int main ()
+
+

Acceleration-based example, Cartesian position control of the KUKA iiwa robot (fixed base, no contacts). In the example the following problem is solved:

+\[ + \begin{array}{ccc} + minimize & \| \mathbf{J}\ddot{\mathbf{q}} - \dot{\mathbf{v}}_d + \dot{\mathbf{J}}\dot{\mathbf{q}}\|_2\\ + \mathbf{\ddot{q}},\mathbf{\tau} & & \\ + s.t. & \mathbf{H}\mathbf{\ddot{q}} - \mathbf{\tau} - \mathbf{J}_{c,i}^T\mathbf{f} = -\mathbf{h}, \, \forall i & \\ + & \mathbf{\tau}_m \leq \mathbf{\tau} \leq \mathbf{\tau}_M& \\ + \end{array} + \] +

+

where

+\[ + \dot{\mathbf{v}}_d = \dot{\mathbf{v}}_r + \mathbf{K}_d(\mathbf{v}_r-\mathbf{v}) + \mathbf{K}_p(\mathbf{x}_r-\mathbf{x}) + \] +

+

\(\ddot{\mathbf{q}}\) - Vector of robot joint accelerations
+ \(\dot{\mathbf{v}}_{d}\) - desired spatial acceleration / controller output
+ \(\mathbf{\tau}\) - actuation forces/torques
+ \(\mathbf{J}\) - task Jacobian
+ \(\mathbf{H}\) - Joint space inertia matrix
+ \(\mathbf{h}\) - bias forces/torques
+ \(\mathbf{\tau}_m,\mathbf{\tau}_M\) - Joint force/torque limits
+ \(\mathbf{x}_r, \mathbf{x}\) - Reference pose, actual pose
+ \(\mathbf{v}_r, \mathbf{v}\) - Reference spatial velocity, actual spatial velocity
+ \(\dot{\mathbf{v}}_r\) - Reference spatial acceleration (feed forward)
+ \(\mathbf{K}_p, \mathbf{K}_d\) - Proportional, derivative gain matrix
+

+

The end effector is supposed to follow a sinusoidal trajectory. The solver computes the joint accelerations and forces/torques required to generate the desired spatial accelerations given by the Cartesian controller.

+ +
+
+
+ + + + diff --git a/dir_5d45abd4863d15c2c47de1951180b2a2.html b/dir_5d45abd4863d15c2c47de1951180b2a2.html index 2a4dea35..9e5e29dc 100644 --- a/dir_5d45abd4863d15c2c47de1951180b2a2.html +++ b/dir_5d45abd4863d15c2c47de1951180b2a2.html @@ -57,6 +57,8 @@ + + diff --git a/doxygen_crawl.html b/doxygen_crawl.html index 1395d47b..23b284b3 100644 --- a/doxygen_crawl.html +++ b/doxygen_crawl.html @@ -212,6 +212,7 @@ + diff --git a/files.html b/files.html index e24a5c6a..fc4f9044 100644 --- a/files.html +++ b/files.html @@ -233,10 +233,11 @@ - - - - + + + + + diff --git a/globals.html b/globals.html index 6e0b5cfd..fad55f84 100644 --- a/globals.html +++ b/globals.html @@ -76,7 +76,7 @@

- j -

Files

 cart_pos_ctrl_dynamic.cpp
 
 cart_pos_ctrl_hls.cpp
 
 cart_pos_ctrl_hls_hierarchies.cpp
  tutorials
  kuka_iiwa
  rh5