@@ -330,20 +330,20 @@ for the JavaScript code in this tag.
This file is used to explain how this Simscape Model works.
-
In section 1, the simulink project with the associated scripts are presented
-
In section 2, an introduction to Simscape Multibody is done
-
In section 3, each simscape files are presented with the associated signal names and joint architectures
-
In section 4, the list of the Simulink library elements are described
-
In section 5, the scripts used for the simulations (initialization for instance) are described
-
In section 6, a list of Matlab function that will be used are defined here
-
In section 7, all the functions that are used to initialize the Simscape Multibody elements are defined here. This includes the mass of all solids for instance.
+
In section 1, the simulink project with the associated scripts are presented
+
In section 2, an introduction to Simscape Multibody is done
+
In section 3, each simscape files are presented with the associated signal names and joint architectures
+
In section 4, the list of the Simulink library elements are described
+
In section 5, the scripts used for the simulations (initialization for instance) are described
+
In section 6, a list of Matlab function that will be used are defined here
+
In section 7, all the functions that are used to initialize the Simscape Multibody elements are defined here. This includes the mass of all solids for instance.
-
-
1 Simulink Project - Startup and Shutdown scripts
+
+
1 Simulink Project - Startup and Shutdown scripts
-
+
@@ -409,11 +409,11 @@ The project also permits to automatically add defined folder to the path when th
Each solid body is represented by a solid block.
@@ -435,8 +435,8 @@ The geometry of the solid body can be imported using a step file. T
-
-
2.2 Frames
+
+
2.2 Frames
Frames are very important in simscape multibody, they defined where the forces are applied, where the joints are located and where the measurements are made.
@@ -448,8 +448,8 @@ They can be defined from the solid body geometry, or using the
-
A transform sensor block measures the spatial relationship between two frames: the base B and the follower F.
@@ -909,8 +909,8 @@ If we want to simulate an inertial sensor, we just have to choose B
-
-
2.5 Excitation
+
+
2.5 Excitation
We can apply external forces to the model by using an external force and torque block.
@@ -923,11 +923,11 @@ Internal force, acting reciprocally between base and following origins is implem
-
-
3 Simulink files and signal names
+
+
3 Simulink files and signal names
-
+
@@ -935,8 +935,8 @@ In order to "normalize" things, the names of all the signal are listed here.
-
-
3.1 List of Simscape files
+
+
3.1 List of Simscape files
Few different Simulink files are used:
@@ -948,7 +948,7 @@ Few different Simulink files are used:
control
-
+
Table 3: List of simscape files
@@ -1015,14 +1015,14 @@ Few different Simulink files are used:
-
-
3.2 List of Inputs
+
+
3.2 List of Inputs
-
-
3.2.1 Perturbations
+
+
3.2.1 Perturbations
-
+
Table 4: List of Disturbances
@@ -1068,10 +1068,10 @@ Few different Simulink files are used:
-
-
3.2.2 Measurement Noise
+
+
3.2.2 Measurement Noise
-
+
Table 5: List of Measurement Noise
@@ -1103,10 +1103,10 @@ Few different Simulink files are used:
-
-
3.2.3 Control Inputs
+
+
3.2.3 Control Inputs
-
+
Table 6: List of Control Inputs
@@ -1228,10 +1228,10 @@ Few different Simulink files are used:
-
-
3.3 List of Outputs
+
+
3.3 List of Outputs
-
+
Table 7: List of Outputs
@@ -1347,11 +1347,11 @@ Few different Simulink files are used:
-
-
4 Simulink Library
+
+
4 Simulink Library
-
+
@@ -1359,8 +1359,8 @@ A simulink library is developed in order to share elements between the different
-
-
4.1inputs
+
+
4.1inputs
inputs.slx
@@ -1368,8 +1368,8 @@ A simulink library is developed in order to share elements between the different
-
-
4.2nass_library
+
+
4.2nass_library
nasslibrary.slx
@@ -1377,8 +1377,8 @@ A simulink library is developed in order to share elements between the different
-
-
4.3pos_error_wrt_nass_base
+
+
4.3pos_error_wrt_nass_base
poserrorwrtnassbase.slx
@@ -1386,8 +1386,8 @@ A simulink library is developed in order to share elements between the different
-
-
4.4QuaternionToAngles
+
+
4.4QuaternionToAngles
QuaternionToAngles.slx
@@ -1395,8 +1395,8 @@ A simulink library is developed in order to share elements between the different
-
-
4.5RotationMatrixToAngle
+
+
4.5RotationMatrixToAngle
RotationMatrixToAngle.slx
@@ -1405,19 +1405,19 @@ A simulink library is developed in order to share elements between the different
-
-
5 Scripts
+
+
5 Scripts
-
+
-
-
5.1 Simulation Initialization
+
+
5.1 Simulation Initialization
-
+
@@ -1441,19 +1441,19 @@ load(
-
6 Functions
+
+
6 Functions
-
+
-
-
6.1 computePsdDispl
+
+
6.1 computePsdDispl
-
+
@@ -1489,11 +1489,11 @@ This Matlab function is accessible here.
@@ -2312,18 +2323,18 @@ This Matlab function is accessible here.
ty.rotor.color = [0.7920.8200.933];
ty.rotor.STEP = './STEPS/ty/Ty_Motor_Rotor.STEP';
- ty.m = 250; % TODO [kg]
+ ty.m = 1000; % TODO [kg]%% Y-Translation - Dynamicals Propertiesif opts.rigid
ty.k.ax = 1e10; % Axial Stiffness for each of the 4 guidance (y) [N/m]
else
- ty.k.ax = 1e7/4; % Axial Stiffness for each of the 4 guidance (y) [N/m]
+ ty.k.ax = 5e7; % Axial Stiffness for each of the 4 guidance (y) [N/m]
end
- ty.k.rad = 9e9/4; % Radial Stiffness for each of the 4 guidance (x-z) [N/m]
+ ty.k.rad = 5e7; % Radial Stiffness for each of the 4 guidance (x-z) [N/m]
- ty.c.ax = 100*(1/5)*sqrt(ty.k.ax/ty.m);
- ty.c.rad = 100*(1/5)*sqrt(ty.k.rad/ty.m);
+ ty.c.ax = 0.1*sqrt(ty.k.ax*ty.m);
+ ty.c.rad = 0.1*sqrt(ty.k.rad*ty.m);
%% Save
save('./mat/stages.mat', 'ty', '-append');
@@ -2333,11 +2344,11 @@ This Matlab function is accessible here.
-
-
7.7 Tilt Stage
+
+
7.7 Tilt Stage
-
+
@@ -2377,7 +2388,7 @@ This Matlab function is accessible here.
ry.stage.color = [0.7920.8200.933];
ry.stage.STEP = './STEPS/ry/Tilt_Stage.STEP';
- ry.m = 200; % TODO [kg]
+ ry.m = 800; % TODO [kg]%% Tilt Stage - Dynamical Propertiesif opts.rigid
@@ -2386,14 +2397,14 @@ This Matlab function is accessible here.
ry.k.tilt = 1e4; % Rotation stiffness around y [N*m/deg]end
- ry.k.h = 357e6/4; % Stiffness in the direction of the guidance [N/m]
- ry.k.rad = 555e6/4; % Stiffness in the top direction [N/m]
- ry.k.rrad = 238e6/4; % Stiffness in the side direction [N/m]
+ ry.k.h = 1e8; % Stiffness in the direction of the guidance [N/m]
+ ry.k.rad = 1e8; % Stiffness in the top direction [N/m]
+ ry.k.rrad = 1e8; % Stiffness in the side direction [N/m]
- ry.c.h = 10*(1/5)*sqrt(ry.k.h/ry.m);
- ry.c.rad = 10*(1/5)*sqrt(ry.k.rad/ry.m);
- ry.c.rrad = 10*(1/5)*sqrt(ry.k.rrad/ry.m);
- ry.c.tilt = 10*(1/1)*sqrt(ry.k.tilt/ry.m);
+ ry.c.h = 0.1*sqrt(ry.k.h*ry.m);
+ ry.c.rad = 0.1*sqrt(ry.k.rad*ry.m);
+ ry.c.rrad = 0.1*sqrt(ry.k.rrad*ry.m);
+ ry.c.tilt = 0.1*sqrt(ry.k.tilt*ry.m);
%% Positioning parameters
ry.z_offset = 0.58178; % Z-Offset so that the center of rotation matches the sample center [m]
@@ -2406,11 +2417,11 @@ This Matlab function is accessible here.
-
-
7.8 Spindle
+
+
7.8 Spindle
-
+
@@ -2453,19 +2464,19 @@ This Matlab function is accessible here.
% Estimated stiffnesses
rz.k.ax = 2e9; % Axial Stiffness [N/m]
rz.k.rad = 7e8; % Radial Stiffness [N/m]
- rz.k.rot = 100e6*2*pi/360; % Rotational Stiffness [N*m/deg]
+ rz.k.tilt = 1e8*(2*pi/360); % Rotational Stiffness [N*m/deg]if opts.rigid
- rz.k.tilt = 1e10; % Vertical Rotational Stiffness [N*m/deg]
+ rz.k.rot = 1e10; % Rotational Stiffness [N*m/deg]else
- rz.k.tilt = 1e2; % TODO what value should I put? [N*m/deg]
+ rz.k.rot = 1e6; % TODO what value should I put? [N*m/deg]end
- % TODO
- rz.c.ax = 2*sqrt(rz.k.ax/rz.m);
- rz.c.rad = 2*sqrt(rz.k.rad/rz.m);
- rz.c.tilt = 100*sqrt(rz.k.tilt/rz.m);
- rz.c.rot = 100*sqrt(rz.k.rot/rz.m);
+ % Damping
+ rz.c.ax = 0.1*sqrt(rz.k.ax*rz.m);
+ rz.c.rad = 0.1*sqrt(rz.k.rad*rz.m);
+ rz.c.tilt = 0.1*sqrt(rz.k.tilt*rz.m);
+ rz.c.rot = 0.1*sqrt(rz.k.rot*rz.m);
%% Save
save('./mat/stages.mat', 'rz', '-append');
@@ -2475,11 +2486,11 @@ This Matlab function is accessible here.