diff --git a/src/initializeJointDynamics.m b/src/initializeJointDynamics.m index 831296d..62f23e5 100644 --- a/src/initializeJointDynamics.m +++ b/src/initializeJointDynamics.m @@ -5,30 +5,30 @@ function [stewart] = initializeJointDynamics(stewart, args) % % Inputs: % - args - Structure with the following fields: -% - Ksbi [6x1] - Bending (Rx, Ry) Stiffness for each top Spherical joints [N/rad] -% - Csbi [6x1] - Bending (Rx, Ry) Damping of each top Spherical joint [N/(rad/s)] -% - Ksti [6x1] - Torsion (Rz) Stiffness for each top Spherical joints [N/rad] -% - Csti [6x1] - Torsion (Rz) Damping of each top Spherical joint [N/(rad/s)] -% - Kubi [6x1] - Bending (Rx, Ry) Stiffness for each bottom Universal joints [N/rad] -% - Cubi [6x1] - Bending (Rx, Ry) Damping of each bottom Universal joint [N/(rad/s)] -% - disable [true/false] - Sets all the stiffness/damping to zero +% - Ksbi [6x1] - Bending (Rx, Ry) Stiffness for each top Spherical joints [(N.m)/rad] +% - Csbi [6x1] - Bending (Rx, Ry) Damping of each top Spherical joint [(N.m)/(rad/s)] +% - Ksti [6x1] - Torsion (Rz) Stiffness for each top Spherical joints [(N.m)/rad] +% - Csti [6x1] - Torsion (Rz) Damping of each top Spherical joint [(N.m)/(rad/s)] +% - Kubi [6x1] - Bending (Rx, Ry) Stiffness for each bottom Universal joints [(N.m)/rad] +% - Cubi [6x1] - Bending (Rx, Ry) Damping of each bottom Universal joint [(N.m)/(rad/s)] +% - disable [boolean] - Sets all the stiffness/damping to zero % % Outputs: % - stewart - updated Stewart structure with the added fields: -% - Ksbi [6x1] - Bending (Rx, Ry) Stiffness for each top Spherical joints [N/rad] -% - Csbi [6x1] - Bending (Rx, Ry) Damping of each top Spherical joint [N/(rad/s)] -% - Ksti [6x1] - Torsion (Rz) Stiffness for each top Spherical joints [N/rad] -% - Csti [6x1] - Torsion (Rz) Damping of each top Spherical joint [N/(rad/s)] -% - Kubi [6x1] - Bending (Rx, Ry) Stiffness for each bottom Universal joints [N/rad] -% - Cubi [6x1] - Bending (Rx, Ry) Damping of each bottom Universal joint [N/(rad/s)] +% - Ksbi [6x1] - Bending (Rx, Ry) Stiffness for each top Spherical joints [(N.m)/rad] +% - Csbi [6x1] - Bending (Rx, Ry) Damping of each top Spherical joint [(N.m)/(rad/s)] +% - Ksti [6x1] - Torsion (Rz) Stiffness for each top Spherical joints [(N.m)/rad] +% - Csti [6x1] - Torsion (Rz) Damping of each top Spherical joint [(N.m)/(rad/s)] +% - Kubi [6x1] - Bending (Rx, Ry) Stiffness for each bottom Universal joints [(N.m)/rad] +% - Cubi [6x1] - Bending (Rx, Ry) Damping of each bottom Universal joint [(N.m)/(rad/s)] arguments stewart - args.Ksbi (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e+1*ones(6,1) + args.Ksbi (6,1) double {mustBeNumeric, mustBeNonnegative} = 15*ones(6,1) args.Csbi (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e-4*ones(6,1) - args.Ksti (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e+0*ones(6,1) + args.Ksti (6,1) double {mustBeNumeric, mustBeNonnegative} = 20*ones(6,1) args.Csti (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e-3*ones(6,1) - args.Kubi (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e+1*ones(6,1) + args.Kubi (6,1) double {mustBeNumeric, mustBeNonnegative} = 15*ones(6,1) args.Cubi (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e-4*ones(6,1) args.disable logical {mustBeNumericOrLogical} = false end diff --git a/stewart-architecture.html b/stewart-architecture.html index 37943b7..43100e7 100644 --- a/stewart-architecture.html +++ b/stewart-architecture.html @@ -4,7 +4,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- +initializeFramesPositions
: Initialize the positions of frames {A}, {B}, {F} and {M}
+initializeFramesPositions
: Initialize the positions of frames {A}, {B}, {F} and {M}
generateGeneralConfiguration
: Generate a Very General Configuration
+generateGeneralConfiguration
: Generate a Very General Configuration
computeJointsPose
: Compute the Pose of the Joints
+computeJointsPose
: Compute the Pose of the Joints
initializeStewartPose
: Determine the initial stroke in each leg to have the wanted pose
+initializeStewartPose
: Determine the initial stroke in each leg to have the wanted pose
initializeCylindricalPlatforms
: Initialize the geometry of the Fixed and Mobile Platforms
+initializeCylindricalPlatforms
: Initialize the geometry of the Fixed and Mobile Platforms
initializeCylindricalStruts
: Define the inertia of cylindrical struts
+initializeCylindricalStruts
: Define the inertia of cylindrical struts
initializeStrutDynamics
: Add Stiffness and Damping properties of each strut
+initializeStrutDynamics
: Add Stiffness and Damping properties of each strut
initializeJointDynamics
: Add Stiffness and Damping properties for spherical joints
+initializeJointDynamics
: Add Stiffness and Damping properties for spherical joints
displayArchitecture
: 3D plot of the Stewart platform architecture
+displayArchitecture
: 3D plot of the Stewart platform architecture
stewart.FRa = zeros(3,3,6); stewart.MRb = zeros(3,3,6); @@ -1077,11 +1077,11 @@ stewart.MRb = zeros(3,3,6);
initializeStewartPose
: Determine the initial stroke in each leg to have the wanted poseinitializeStewartPose
: Determine the initial stroke in each leg to have the wanted pose@@ -1089,9 +1089,9 @@ This Matlab function is accessible here
function [stewart] = initializeStewartPose(stewart, args) % initializeStewartPose - Determine the initial stroke in each leg to have the wanted pose @@ -1115,9 +1115,9 @@ This Matlab function is accessible here
arguments stewart @@ -1129,9 +1129,9 @@ This Matlab function is accessible here
[Li, dLi] = inverseKinematics(stewart, 'AP', args.AP, 'ARB', args.ARB); @@ -1142,11 +1142,11 @@ stewart.dLi = dLi;
initializeCylindricalPlatforms
: Initialize the geometry of the Fixed and Mobile PlatformsinitializeCylindricalPlatforms
: Initialize the geometry of the Fixed and Mobile Platforms
@@ -1154,9 +1154,9 @@ This Matlab function is accessible
-
@@ -1253,9 +1253,9 @@ This Matlab function is accessible h
@@ -1352,9 +1352,9 @@ This Matlab function is accessible here<
@@ -1413,9 +1413,9 @@ This Matlab function is accessible here<
@@ -1501,9 +1501,9 @@ This Matlab function is accessible here.
The reference frame of the 3d plot corresponds to the frame \(\{F\}\).
Let’s first plot the frame \(\{F\}\).
Plot the frame \(\{M\}\).
Plot the legs connecting the joints of the fixed base to the joints of the mobile platform.
Created: 2020-02-07 ven. 17:18 Created: 2020-02-07 ven. 17:34Function description
-Function description
+function [stewart] = initializeCylindricalPlatforms(stewart, args)
% initializeCylindricalPlatforms - Initialize the geometry of the Fixed and Mobile Platforms
@@ -1188,9 +1188,9 @@ This Matlab function is accessible
-
Optional Parameters
-Optional Parameters
+arguments
stewart
@@ -1206,9 +1206,9 @@ This Matlab function is accessible
-
Create the
-platforms
structCreate the
+platforms
structplatforms = struct();
@@ -1230,9 +1230,9 @@ platforms.Mpi = diag([1/12
Save the
-platforms
structSave the
+platforms
structstewart.platforms = platforms;
@@ -1241,11 +1241,11 @@ platforms.Mpi = diag([1/12
5.6
+initializeCylindricalStruts
: Define the inertia of cylindrical struts5.6
initializeCylindricalStruts
: Define the inertia of cylindrical strutsFunction description
-Function description
+function [stewart] = initializeCylindricalStruts(stewart, args)
% initializeCylindricalStruts - Define the mass and moment of inertia of cylindrical struts
@@ -1287,9 +1287,9 @@ This Matlab function is accessible h
Optional Parameters
-Optional Parameters
+arguments
stewart
@@ -1305,9 +1305,9 @@ This Matlab function is accessible h
Create the
-struts
structureCreate the
+struts
structurestruts = struct();
@@ -1340,11 +1340,11 @@ struts.Msi = zeros(3, 3, 6);
5.7
+initializeStrutDynamics
: Add Stiffness and Damping properties of each strut5.7
initializeStrutDynamics
: Add Stiffness and Damping properties of each strutFunction description
-Function description
+function [stewart] = initializeStrutDynamics(stewart, args)
% initializeStrutDynamics - Add Stiffness and Damping properties of each strut
@@ -1375,9 +1375,9 @@ This Matlab function is accessible here<
Optional Parameters
-Optional Parameters
+arguments
stewart
@@ -1389,9 +1389,9 @@ This Matlab function is accessible here<
Add Stiffness and Damping properties of each strut
-Add Stiffness and Damping properties of each strut
+stewart.Ki = args.Ki;
stewart.Ci = args.Ci;
@@ -1401,11 +1401,11 @@ stewart.Ci = args.Ci;
5.8
+initializeJointDynamics
: Add Stiffness and Damping properties for spherical joints5.8
initializeJointDynamics
: Add Stiffness and Damping properties for spherical jointsFunction description
-Optional Parameters
-Optional Parameters
+arguments
stewart
- args.Ksbi (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e+1*ones(6,1)
+ args.Ksbi (6,1) double {mustBeNumeric, mustBeNonnegative} = 15*ones(6,1)
args.Csbi (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e-4*ones(6,1)
- args.Ksti (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e+0*ones(6,1)
+ args.Ksti (6,1) double {mustBeNumeric, mustBeNonnegative} = 20*ones(6,1)
args.Csti (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e-3*ones(6,1)
- args.Kubi (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e+1*ones(6,1)
+ args.Kubi (6,1) double {mustBeNumeric, mustBeNonnegative} = 15*ones(6,1)
args.Cubi (6,1) double {mustBeNumeric, mustBeNonnegative} = 1e-4*ones(6,1)
args.disable logical {mustBeNumericOrLogical} = false
end
@@ -1464,9 +1464,9 @@ This Matlab function is accessible here<
Add Stiffness and Damping properties of each strut
-Add Stiffness and Damping properties of each strut
+if args.disable
stewart.Ksbi = zeros(6,1);
@@ -1489,11 +1489,11 @@ This Matlab function is accessible here<
5.9
+displayArchitecture
: 3D plot of the Stewart platform architecture5.9
displayArchitecture
: 3D plot of the Stewart platform architectureFunction description
-Function description
+function [] = displayArchitecture(stewart, args)
% displayArchitecture - 3D plot of the Stewart platform architecture
@@ -1531,9 +1531,9 @@ This Matlab function is accessible here.
Optional Parameters
-Optional Parameters
+arguments
stewart
@@ -1553,9 +1553,9 @@ This Matlab function is accessible here.
Figure Creation, Frames and Homogeneous transformations
-Figure Creation, Frames and Homogeneous transformations
+Fixed Base elements
-Fixed Base elements
+Mobile Platform elements
-Mobile Platform elements
+Legs
-Legs
+5.9.1 Figure parameters
+5.9.1 Figure parameters
view([1 -0.6 0.4]);
@@ -1812,7 +1812,7 @@ Plot the legs connecting the joints of the fixed base to the joints of the mobil