Add correct STEP file for APA
This commit is contained in:
parent
3aa329a275
commit
79db77ba69
2509
matlab/STEPS/apa300ml_full.STEP
Normal file
2509
matlab/STEPS/apa300ml_full.STEP
Normal file
File diff suppressed because it is too large
Load Diff
@ -17,13 +17,13 @@ arguments
|
|||||||
args.Gs (1,1) double {mustBeNumeric} = 0
|
args.Gs (1,1) double {mustBeNumeric} = 0
|
||||||
|
|
||||||
% For 2DoF
|
% For 2DoF
|
||||||
args.k (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*0.38e6
|
args.k (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*380000
|
||||||
args.ke (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*1.75e6
|
args.ke (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*4952605
|
||||||
args.ka (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*3e7
|
args.ka (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*2476302
|
||||||
|
|
||||||
args.c (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*3e1
|
args.c (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*20
|
||||||
args.ce (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*2e1
|
args.ce (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*200
|
||||||
args.ca (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*2e1
|
args.ca (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*100
|
||||||
|
|
||||||
args.Leq (6,1) double {mustBeNumeric} = ones(6,1)*0.056
|
args.Leq (6,1) double {mustBeNumeric} = ones(6,1)*0.056
|
||||||
|
|
||||||
@ -52,11 +52,11 @@ end
|
|||||||
if args.Ga == 0
|
if args.Ga == 0
|
||||||
switch args.type
|
switch args.type
|
||||||
case '2dof'
|
case '2dof'
|
||||||
actuator.Ga = -30.0;
|
actuator.Ga = -2.5796;
|
||||||
case 'flexible frame'
|
case 'flexible frame'
|
||||||
actuator.Ga = 1; % TODO
|
actuator.Ga = 1; % TODO
|
||||||
case 'flexible'
|
case 'flexible'
|
||||||
actuator.Ga = 23.4;
|
actuator.Ga = 23.2;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
actuator.Ga = args.Ga; % Actuator gain [N/V]
|
actuator.Ga = args.Ga; % Actuator gain [N/V]
|
||||||
@ -65,11 +65,11 @@ end
|
|||||||
if args.Gs == 0
|
if args.Gs == 0
|
||||||
switch args.type
|
switch args.type
|
||||||
case '2dof'
|
case '2dof'
|
||||||
actuator.Gs = 0.098;
|
actuator.Gs = 466664;
|
||||||
case 'flexible frame'
|
case 'flexible frame'
|
||||||
actuator.Gs = 1; % TODO
|
actuator.Gs = 1; % TODO
|
||||||
case 'flexible'
|
case 'flexible'
|
||||||
actuator.Gs = -4674824;
|
actuator.Gs = -4898341;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
actuator.Gs = args.Gs; % Sensor gain [V/m]
|
actuator.Gs = args.Gs; % Sensor gain [V/m]
|
||||||
|
Binary file not shown.
@ -116,8 +116,9 @@ Prefix for figures/section/tables =test_apa=
|
|||||||
|
|
||||||
Verify that everything interesting to say about that is either done before in the thesis or in this report.
|
Verify that everything interesting to say about that is either done before in the thesis or in this report.
|
||||||
|
|
||||||
* Introduction :ignore:
|
** TODO [#B] A lieu d'identifier le plant et de tracer sur le root locus, tracer le plant dampé depuis le modèle et comparer a la mesure
|
||||||
|
|
||||||
|
* Introduction :ignore:
|
||||||
|
|
||||||
#+name: fig:test_apa_received
|
#+name: fig:test_apa_received
|
||||||
#+attr_latex: :width 0.7\linewidth
|
#+attr_latex: :width 0.7\linewidth
|
||||||
@ -1358,7 +1359,7 @@ The obtained parameters of the model shown in Figure ref:fig:test_apa_2dof_model
|
|||||||
| $c_e$ | $200\,Ns/m$ |
|
| $c_e$ | $200\,Ns/m$ |
|
||||||
| $c_a$ | $100\,Ns/m$ |
|
| $c_a$ | $100\,Ns/m$ |
|
||||||
| $g_a$ | $-2.58\,N/V$ |
|
| $g_a$ | $-2.58\,N/V$ |
|
||||||
| $g_s$ | $4.6\,V/\mu m$ |
|
| $g_s$ | $0.46\,V/\mu m$ |
|
||||||
|
|
||||||
** Obtained Dynamics
|
** Obtained Dynamics
|
||||||
<<ssec:test_apa_2dof_model_result>>
|
<<ssec:test_apa_2dof_model_result>>
|
||||||
@ -1372,7 +1373,7 @@ This indicates that this model represents well the axial dynamics of the APA300M
|
|||||||
#+begin_src matlab
|
#+begin_src matlab
|
||||||
%% 2DoF APA300ML with optimized parameters
|
%% 2DoF APA300ML with optimized parameters
|
||||||
n_hexapod = struct();
|
n_hexapod = struct();
|
||||||
n_hexapod.actuator = initializeAPA(...
|
n_hexapod.actuator = initializeAPA( ...
|
||||||
'type', '2dof', ...
|
'type', '2dof', ...
|
||||||
'k', k1, ...
|
'k', k1, ...
|
||||||
'ka', ka, ...
|
'ka', ka, ...
|
||||||
@ -1598,7 +1599,7 @@ n = 160; % Number of layers per stack
|
|||||||
eT = 4500*8.854e-12; % Permittivity under constant stress [F/m]
|
eT = 4500*8.854e-12; % Permittivity under constant stress [F/m]
|
||||||
sD = 21e-12; % Compliance under constant electric displacement [m2/N]
|
sD = 21e-12; % Compliance under constant electric displacement [m2/N]
|
||||||
|
|
||||||
gs = d33/(eT*sD*n); % Sensor Constant [V/m]
|
gs_th = d33/(eT*sD*n); % Sensor Constant [V/m]
|
||||||
|
|
||||||
%% Estimate "Actuator Constant" - (THP5H)
|
%% Estimate "Actuator Constant" - (THP5H)
|
||||||
d33 = 680e-12; % Strain constant [m/V]
|
d33 = 680e-12; % Strain constant [m/V]
|
||||||
@ -1609,7 +1610,7 @@ A = (10e-3)^2; % Area of the stacks [m^2]
|
|||||||
L = 40e-3; % Length of the two stacks [m]
|
L = 40e-3; % Length of the two stacks [m]
|
||||||
ka = cE*A/L; % Stiffness of the two stacks [N/m]
|
ka = cE*A/L; % Stiffness of the two stacks [N/m]
|
||||||
|
|
||||||
ga = d33*n*ka; % Actuator Constant [N/V]
|
ga_th = d33*n*ka; % Actuator Constant [N/V]
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Comparison of the obtained dynamics
|
** Comparison of the obtained dynamics
|
||||||
@ -1813,13 +1814,13 @@ arguments
|
|||||||
args.Gs (1,1) double {mustBeNumeric} = 0
|
args.Gs (1,1) double {mustBeNumeric} = 0
|
||||||
|
|
||||||
% For 2DoF
|
% For 2DoF
|
||||||
args.k (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*0.38e6
|
args.k (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*380000
|
||||||
args.ke (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*1.75e6
|
args.ke (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*4952605
|
||||||
args.ka (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*3e7
|
args.ka (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*2476302
|
||||||
|
|
||||||
args.c (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*3e1
|
args.c (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*20
|
||||||
args.ce (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*2e1
|
args.ce (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*200
|
||||||
args.ca (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*2e1
|
args.ca (6,1) double {mustBeNumeric, mustBePositive} = ones(6,1)*100
|
||||||
|
|
||||||
args.Leq (6,1) double {mustBeNumeric} = ones(6,1)*0.056
|
args.Leq (6,1) double {mustBeNumeric} = ones(6,1)*0.056
|
||||||
|
|
||||||
@ -1869,11 +1870,11 @@ end
|
|||||||
if args.Ga == 0
|
if args.Ga == 0
|
||||||
switch args.type
|
switch args.type
|
||||||
case '2dof'
|
case '2dof'
|
||||||
actuator.Ga = -30.0;
|
actuator.Ga = -2.5796;
|
||||||
case 'flexible frame'
|
case 'flexible frame'
|
||||||
actuator.Ga = 1; % TODO
|
actuator.Ga = 1; % TODO
|
||||||
case 'flexible'
|
case 'flexible'
|
||||||
actuator.Ga = 23.4;
|
actuator.Ga = 23.2;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
actuator.Ga = args.Ga; % Actuator gain [N/V]
|
actuator.Ga = args.Ga; % Actuator gain [N/V]
|
||||||
@ -1884,11 +1885,11 @@ end
|
|||||||
if args.Gs == 0
|
if args.Gs == 0
|
||||||
switch args.type
|
switch args.type
|
||||||
case '2dof'
|
case '2dof'
|
||||||
actuator.Gs = 0.098;
|
actuator.Gs = 466664;
|
||||||
case 'flexible frame'
|
case 'flexible frame'
|
||||||
actuator.Gs = 1; % TODO
|
actuator.Gs = 1; % TODO
|
||||||
case 'flexible'
|
case 'flexible'
|
||||||
actuator.Gs = -4674824;
|
actuator.Gs = -4898341;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
actuator.Gs = args.Gs; % Sensor gain [V/m]
|
actuator.Gs = args.Gs; % Sensor gain [V/m]
|
||||||
|
Loading…
Reference in New Issue
Block a user