diff --git a/stewart-architecture.html b/stewart-architecture.html index 2818386..db59585 100644 --- a/stewart-architecture.html +++ b/stewart-architecture.html @@ -4,7 +4,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Stewart Platform - Definition of the Architecture @@ -268,93 +268,93 @@ for the JavaScript code in this tag.

Table of Contents

-
-

Compute the orientation of the Joints

-
+
+

Compute the orientation of the Joints

+
stewart.FRa = zeros(3,3,6);
 stewart.MRb = zeros(3,3,6);
@@ -1011,11 +1011,11 @@ stewart.MRb = zeros(3,3,6);
 
-
-

5.4 initializeStewartPose: Determine the initial stroke in each leg to have the wanted pose

+
+

5.4 initializeStewartPose: Determine the initial stroke in each leg to have the wanted pose

- +

@@ -1023,9 +1023,9 @@ This Matlab function is accessible here

-
-

Function description

-
+
+

Function description

+
function [stewart] = initializeStewartPose(stewart, args)
 % initializeStewartPose - Determine the initial stroke in each leg to have the wanted pose
@@ -1049,9 +1049,9 @@ This Matlab function is accessible here
 
-
-

Optional Parameters

-
+
+

Optional Parameters

+
arguments
     stewart
@@ -1063,9 +1063,9 @@ This Matlab function is accessible here
 
-
-

Use the Inverse Kinematic function

-
+
+

Use the Inverse Kinematic function

+
[Li, dLi] = inverseKinematics(stewart, 'AP', args.AP, 'ARB', args.ARB);
 
@@ -1076,11 +1076,11 @@ stewart.dLi = dLi;
 
-
-

5.5 initializeCylindricalPlatforms: Initialize the geometry of the Fixed and Mobile Platforms

+
+

5.5 initializeCylindricalPlatforms: Initialize the geometry of the Fixed and Mobile Platforms

- +

@@ -1088,9 +1088,9 @@ This Matlab function is accessible -

Function description

-
+
+

Function description

+
function [stewart] = initializeCylindricalPlatforms(stewart, args)
 % initializeCylindricalPlatforms - Initialize the geometry of the Fixed and Mobile Platforms
@@ -1122,9 +1122,9 @@ This Matlab function is accessible 
-

Optional Parameters

-
+
+

Optional Parameters

+
arguments
     stewart
@@ -1140,9 +1140,9 @@ This Matlab function is accessible 
-

Create the platforms struct

-
+
+

Create the platforms struct

+
platforms = struct();
 
@@ -1164,9 +1164,9 @@ platforms.Mpi = diag([1/12 
 
-
-

Save the platforms struct

-
+
+

Save the platforms struct

+
stewart.platforms = platforms;
 
@@ -1175,11 +1175,11 @@ platforms.Mpi = diag([1/12
-
-

5.6 initializeCylindricalStruts: Define the inertia of cylindrical struts

+
+

5.6 initializeCylindricalStruts: Define the inertia of cylindrical struts

- +

@@ -1187,9 +1187,9 @@ This Matlab function is accessible h

-
-

Function description

-
+
+

Function description

+
-
-

Optional Parameters

-
+
+

Optional Parameters

+
-
-

Create the struts structure

-
+
+

Create the struts structure

+
struts = struct();
 
@@ -1274,11 +1274,11 @@ struts.Msi = zeros(3, 3, 6);
 
-
-

5.7 initializeStrutDynamics: Add Stiffness and Damping properties of each strut

+
+

5.7 initializeStrutDynamics: Add Stiffness and Damping properties of each strut

- +

@@ -1286,9 +1286,9 @@ This Matlab function is accessible here<

-
-

Function description

-
+
+

Function description

+
-
-

Optional Parameters

-
+
+

Optional Parameters

+
-
-

Add Stiffness and Damping properties of each strut

-
+
+

Add Stiffness and Damping properties of each strut

+
stewart.Ki = args.Ki;
 stewart.Ci = args.Ci;
@@ -1335,11 +1335,11 @@ stewart.Ci = args.Ci;
 
-
-

5.8 initializeJointDynamics: Add Stiffness and Damping properties for spherical joints

+
+

5.8 initializeJointDynamics: Add Stiffness and Damping properties for spherical joints

- +

@@ -1347,9 +1347,9 @@ This Matlab function is accessible here<

-
-

Function description

-
+
+

Function description

+
-
-

Optional Parameters

-
+
+

Optional Parameters

+
-
-

Add Stiffness and Damping properties of each strut

-
+
+

Add Stiffness and Damping properties of each strut

+

Author: Dehaeze Thomas

-

Created: 2020-02-06 jeu. 17:25

+

Created: 2020-02-06 jeu. 18:23

diff --git a/stewart-architecture.org b/stewart-architecture.org index d657f53..86d8eae 100644 --- a/stewart-architecture.org +++ b/stewart-architecture.org @@ -302,100 +302,6 @@ This Matlab function is accessible [[file:src/initializeFramesPositions.m][here] stewart.FO_A = stewart.MO_B + stewart.FO_M; % Position of {A} with respect to {F} [m] #+end_src -** =generateCubicConfiguration=: Generate a Cubic Configuration -:PROPERTIES: -:header-args:matlab+: :tangle src/generateCubicConfiguration.m -:header-args:matlab+: :comments none :mkdirp yes :eval no -:END: -<> - -This Matlab function is accessible [[file:src/generateCubicConfiguration.m][here]]. - -*** Function description -:PROPERTIES: -:UNNUMBERED: t -:END: -#+begin_src matlab - function [stewart] = generateCubicConfiguration(stewart, args) - % generateCubicConfiguration - Generate a Cubic Configuration - % - % Syntax: [stewart] = generateCubicConfiguration(stewart, args) - % - % Inputs: - % - stewart - A structure with the following fields - % - H [1x1] - Total height of the platform [m] - % - args - Can have the following fields: - % - Hc [1x1] - Height of the "useful" part of the cube [m] - % - FOc [1x1] - Height of the center of the cube with respect to {F} [m] - % - FHa [1x1] - Height of the plane joining the points ai with respect to the frame {F} [m] - % - MHb [1x1] - Height of the plane joining the points bi with respect to the frame {M} [m] - % - % Outputs: - % - stewart - updated Stewart structure with the added fields: - % - Fa [3x6] - Its i'th column is the position vector of joint ai with respect to {F} - % - Mb [3x6] - Its i'th column is the position vector of joint bi with respect to {M} -#+end_src - -*** Documentation -:PROPERTIES: -:UNNUMBERED: t -:END: -#+name: fig:cubic-configuration-definition -#+caption: Cubic Configuration -[[file:figs/cubic-configuration-definition.png]] - -*** Optional Parameters -:PROPERTIES: -:UNNUMBERED: t -:END: -#+begin_src matlab - arguments - stewart - args.Hc (1,1) double {mustBeNumeric, mustBePositive} = 60e-3 - args.FOc (1,1) double {mustBeNumeric} = 50e-3 - args.FHa (1,1) double {mustBeNumeric, mustBePositive} = 15e-3 - args.MHb (1,1) double {mustBeNumeric, mustBePositive} = 15e-3 - end -#+end_src - -*** Position of the Cube -:PROPERTIES: -:UNNUMBERED: t -:END: -We define the useful points of the cube with respect to the Cube's center. -${}^{C}C$ are the 6 vertices of the cubes expressed in a frame {C} which is -located at the center of the cube and aligned with {F} and {M}. - -#+begin_src matlab - sx = [ 2; -1; -1]; - sy = [ 0; 1; -1]; - sz = [ 1; 1; 1]; - - R = [sx, sy, sz]./vecnorm([sx, sy, sz]); - - L = args.Hc*sqrt(3); - - Cc = R'*[[0;0;L],[L;0;L],[L;0;0],[L;L;0],[0;L;0],[0;L;L]] - [0;0;1.5*args.Hc]; - - CCf = [Cc(:,1), Cc(:,3), Cc(:,3), Cc(:,5), Cc(:,5), Cc(:,1)]; % CCf(:,i) corresponds to the bottom cube's vertice corresponding to the i'th leg - CCm = [Cc(:,2), Cc(:,2), Cc(:,4), Cc(:,4), Cc(:,6), Cc(:,6)]; % CCm(:,i) corresponds to the top cube's vertice corresponding to the i'th leg -#+end_src - -*** Compute the pose -:PROPERTIES: -:UNNUMBERED: t -:END: -We can compute the vector of each leg ${}^{C}\hat{\bm{s}}_{i}$ (unit vector from ${}^{C}C_{f}$ to ${}^{C}C_{m}$). -#+begin_src matlab - CSi = (CCm - CCf)./vecnorm(CCm - CCf); -#+end_src - -We now which to compute the position of the joints $a_{i}$ and $b_{i}$. -#+begin_src matlab - stewart.Fa = CCf + [0; 0; args.FOc] + ((args.FHa-(args.FOc-args.Hc/2))./CSi(3,:)).*CSi; - stewart.Mb = CCf + [0; 0; args.FOc-stewart.H] + ((stewart.H-args.MHb-(args.FOc-args.Hc/2))./CSi(3,:)).*CSi; -#+end_src - ** =generateGeneralConfiguration=: Generate a Very General Configuration :PROPERTIES: :header-args:matlab+: :tangle src/generateGeneralConfiguration.m