Add study about APA300ML
BIN
figs/apa300ml_ansys.jpg
Executable file
After Width: | Height: | Size: 45 KiB |
BIN
figs/apa300ml_dvf_plant.pdf
Normal file
BIN
figs/apa300ml_dvf_plant.png
Normal file
After Width: | Height: | Size: 127 KiB |
BIN
figs/apa300ml_dvf_root_locus.pdf
Normal file
BIN
figs/apa300ml_dvf_root_locus.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
figs/apa300ml_iff_plant.pdf
Normal file
BIN
figs/apa300ml_iff_plant.png
Normal file
After Width: | Height: | Size: 106 KiB |
BIN
figs/apa300ml_iff_root_locus.pdf
Normal file
BIN
figs/apa300ml_iff_root_locus.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
figs/apa300ml_plant_dynamics.pdf
Normal file
BIN
figs/apa300ml_plant_dynamics.png
Normal file
After Width: | Height: | Size: 146 KiB |
BIN
figs/apa300ml_resonance.pdf
Normal file
BIN
figs/apa300ml_resonance.png
Normal file
After Width: | Height: | Size: 63 KiB |
1612
index.html
235
index.org
@ -664,6 +664,12 @@ The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_
|
|||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* APA300ML
|
* APA300ML
|
||||||
|
** Introduction :ignore:
|
||||||
|
|
||||||
|
#+name: fig:apa300ml_ansys
|
||||||
|
#+caption: Ansys FEM of the APA300ML
|
||||||
|
[[file:figs/apa300ml_ansys.jpg]]
|
||||||
|
|
||||||
** Matlab Init :noexport:ignore:
|
** Matlab Init :noexport:ignore:
|
||||||
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
|
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
|
||||||
<<matlab-dir>>
|
<<matlab-dir>>
|
||||||
@ -715,8 +721,8 @@ Then, we extract the coordinates of the interface nodes.
|
|||||||
#+RESULTS:
|
#+RESULTS:
|
||||||
| Total number of Nodes | 7 |
|
| Total number of Nodes | 7 |
|
||||||
| Number of interface Nodes | 7 |
|
| Number of interface Nodes | 7 |
|
||||||
| Number of Modes | 38 |
|
| Number of Modes | 6 |
|
||||||
| Size of M and K matrices | 80 |
|
| Size of M and K matrices | 48 |
|
||||||
|
|
||||||
#+begin_src matlab :exports results :results value table replace :tangle no :post addhdr(*this*)
|
#+begin_src matlab :exports results :results value table replace :tangle no :post addhdr(*this*)
|
||||||
data2orgtable([[1:length(int_i)]', int_i, int_xyz], {}, {'Node i', 'Node Number', 'x [m]', 'y [m]', 'z [m]'}, ' %f ');
|
data2orgtable([[1:length(int_i)]', int_i, int_xyz], {}, {'Node i', 'Node Number', 'x [m]', 'y [m]', 'z [m]'}, ' %f ');
|
||||||
@ -814,6 +820,112 @@ where:
|
|||||||
#+RESULTS:
|
#+RESULTS:
|
||||||
: 5.8594
|
: 5.8594
|
||||||
|
|
||||||
|
** Identification of the APA Characteristics
|
||||||
|
*** Stiffness
|
||||||
|
#+begin_src matlab :exports none
|
||||||
|
m = 0.001;
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
The transfer function from vertical external force to the relative vertical displacement is identified.
|
||||||
|
|
||||||
|
#+begin_src matlab :exports none
|
||||||
|
%% Name of the Simulink File
|
||||||
|
mdl = 'APA300ML_test_bench';
|
||||||
|
|
||||||
|
%% Input/Output definition
|
||||||
|
clear io; io_i = 1;
|
||||||
|
io(io_i) = linio([mdl, '/Fd'], 1, 'openinput'); io_i = io_i + 1;
|
||||||
|
io(io_i) = linio([mdl, '/y'], 1, 'openoutput'); io_i = io_i + 1;
|
||||||
|
|
||||||
|
G = linearize(mdl, io);
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
The inverse of its DC gain is the axial stiffness of the APA:
|
||||||
|
#+begin_src matlab :results replace value
|
||||||
|
1e-6/dcgain(G) % [N/um]
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+RESULTS:
|
||||||
|
: 1.8634
|
||||||
|
|
||||||
|
The specified stiffness in the datasheet is $k = 1.8\, [N/\mu m]$.
|
||||||
|
|
||||||
|
*** Resonance Frequency
|
||||||
|
The resonance frequency is specified to be between 650Hz and 840Hz.
|
||||||
|
This is also the case for the FEM model (Figure [[fig:apa300ml_resonance]]).
|
||||||
|
|
||||||
|
#+begin_src matlab :exports none
|
||||||
|
freqs = logspace(2, 4, 5000);
|
||||||
|
|
||||||
|
figure;
|
||||||
|
hold on;
|
||||||
|
plot(freqs, abs(squeeze(freqresp(G, freqs, 'Hz'))));
|
||||||
|
hold off;
|
||||||
|
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log');
|
||||||
|
xlabel('Frequency [Hz]'); ylabel('Amplitude');
|
||||||
|
hold off;
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src matlab :tangle no :exports results :results file replace
|
||||||
|
exportFig('figs/apa300ml_resonance.pdf', 'width', 'wide', 'height', 'normal');
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+name: fig:apa300ml_resonance
|
||||||
|
#+caption: First resonance is around 800Hz
|
||||||
|
#+RESULTS:
|
||||||
|
[[file:figs/apa300ml_resonance.png]]
|
||||||
|
|
||||||
|
*** Amplification factor
|
||||||
|
The amplification factor is the ratio of the axial displacement to the stack displacement.
|
||||||
|
|
||||||
|
#+begin_src matlab :exports none
|
||||||
|
%% Name of the Simulink File
|
||||||
|
mdl = 'APA300ML_test_bench';
|
||||||
|
|
||||||
|
%% Input/Output definition
|
||||||
|
clear io; io_i = 1;
|
||||||
|
io(io_i) = linio([mdl, '/F'], 1, 'openinput'); io_i = io_i + 1;
|
||||||
|
io(io_i) = linio([mdl, '/y'], 1, 'openoutput'); io_i = io_i + 1;
|
||||||
|
io(io_i) = linio([mdl, '/d'], 1, 'openoutput'); io_i = io_i + 1;
|
||||||
|
|
||||||
|
G = linearize(mdl, io);
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
The ratio of the two displacement is computed from the FEM model.
|
||||||
|
#+begin_src matlab :results replace value
|
||||||
|
-dcgain(G(1,1))./dcgain(G(2,1))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+RESULTS:
|
||||||
|
: 4.936
|
||||||
|
|
||||||
|
If we take the ratio of the piezo height and length (approximation of the amplification factor):
|
||||||
|
#+begin_src matlab :results replace value
|
||||||
|
75/15
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+RESULTS:
|
||||||
|
: 5
|
||||||
|
|
||||||
|
*** Stroke
|
||||||
|
|
||||||
|
Estimation of the actuator stroke:
|
||||||
|
\[ \Delta H = A n \Delta L \]
|
||||||
|
with:
|
||||||
|
- $\Delta H$ Axial Stroke of the APA
|
||||||
|
- $A$ Amplification factor (5 for the APA300ML)
|
||||||
|
- $n$ Number of stack used
|
||||||
|
- $\Delta L$ Stroke of the stack (0.1% of its length)
|
||||||
|
|
||||||
|
#+begin_src matlab :results replace value
|
||||||
|
1e6 * 5 * 3 * 20e-3 * 0.1e-2
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+RESULTS:
|
||||||
|
: 300
|
||||||
|
|
||||||
|
This is exactly the specified stroke in the data-sheet.
|
||||||
|
|
||||||
** Identification of the Dynamics
|
** Identification of the Dynamics
|
||||||
The flexible element is imported using the =Reduced Order Flexible Solid= simscape block.
|
The flexible element is imported using the =Reduced Order Flexible Solid= simscape block.
|
||||||
|
|
||||||
@ -823,12 +935,12 @@ A =Relative Motion Sensor= block is added between the nodes 1 and 2 to measure t
|
|||||||
One mass is fixed at one end of the piezo-electric stack actuator, the other end is fixed to the world frame.
|
One mass is fixed at one end of the piezo-electric stack actuator, the other end is fixed to the world frame.
|
||||||
|
|
||||||
We first set the mass to be zero.
|
We first set the mass to be zero.
|
||||||
#+begin_src matlab
|
#+begin_src matlab :exports none
|
||||||
m = 0.01;
|
m = 0.01;
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
The dynamics is identified from the applied force to the measured relative displacement.
|
The dynamics is identified from the applied force to the measured relative displacement.
|
||||||
#+begin_src matlab
|
#+begin_src matlab :exports none
|
||||||
%% Name of the Simulink File
|
%% Name of the Simulink File
|
||||||
mdl = 'APA300ML_test_bench';
|
mdl = 'APA300ML_test_bench';
|
||||||
|
|
||||||
@ -840,15 +952,12 @@ The dynamics is identified from the applied force to the measured relative displ
|
|||||||
Gh = -linearize(mdl, io);
|
Gh = -linearize(mdl, io);
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
Then, we add 10Kg of mass:
|
The same dynamics is identified for a payload mass of 10Kg.
|
||||||
#+begin_src matlab
|
#+begin_src matlab
|
||||||
m = 10;
|
m = 10;
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
And the dynamics is identified.
|
#+begin_src matlab :exports none
|
||||||
|
|
||||||
The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_mass]].
|
|
||||||
#+begin_src matlab
|
|
||||||
%% Name of the Simulink File
|
%% Name of the Simulink File
|
||||||
mdl = 'APA300ML_test_bench';
|
mdl = 'APA300ML_test_bench';
|
||||||
|
|
||||||
@ -890,16 +999,24 @@ The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_
|
|||||||
legend('location', 'southwest');
|
legend('location', 'southwest');
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src matlab :tangle no :exports results :results file replace
|
||||||
|
exportFig('figs/apa300ml_plant_dynamics.pdf', 'width', 'full', 'height', 'full');
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+name: fig:apa300ml_plant_dynamics
|
||||||
|
#+caption: Transfer function from forces applied by the stack to the axial displacement of the APA
|
||||||
|
#+RESULTS:
|
||||||
|
[[file:figs/apa300ml_plant_dynamics.png]]
|
||||||
|
|
||||||
** IFF
|
** IFF
|
||||||
Then, we add 10Kg of mass:
|
Let's use 2 stacks as actuators and 1 stack as force sensor.
|
||||||
#+begin_src matlab
|
|
||||||
|
The transfer function from actuator to sensors is identified and shown in Figure [[fig:apa300ml_iff_plant]].
|
||||||
|
#+begin_src matlab :exports none
|
||||||
m = 10;
|
m = 10;
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
And the dynamics is identified.
|
#+begin_src matlab :exports none
|
||||||
|
|
||||||
The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_mass]].
|
|
||||||
#+begin_src matlab
|
|
||||||
%% Name of the Simulink File
|
%% Name of the Simulink File
|
||||||
mdl = 'APA300ML_test_bench';
|
mdl = 'APA300ML_test_bench';
|
||||||
|
|
||||||
@ -908,7 +1025,7 @@ The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_
|
|||||||
io(io_i) = linio([mdl, '/Va'], 1, 'openinput'); io_i = io_i + 1;
|
io(io_i) = linio([mdl, '/Va'], 1, 'openinput'); io_i = io_i + 1;
|
||||||
io(io_i) = linio([mdl, '/Vs'], 1, 'openoutput'); io_i = io_i + 1;
|
io(io_i) = linio([mdl, '/Vs'], 1, 'openoutput'); io_i = io_i + 1;
|
||||||
|
|
||||||
G = -linearize(mdl, io);
|
Giff = -linearize(mdl, io);
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
#+begin_src matlab :exports none
|
#+begin_src matlab :exports none
|
||||||
@ -918,7 +1035,7 @@ The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_
|
|||||||
|
|
||||||
ax1 = subplot(2,1,1);
|
ax1 = subplot(2,1,1);
|
||||||
hold on;
|
hold on;
|
||||||
plot(freqs, abs(squeeze(freqresp(G, freqs, 'Hz'))), '-');
|
plot(freqs, abs(squeeze(freqresp(Giff, freqs, 'Hz'))), '-');
|
||||||
hold off;
|
hold off;
|
||||||
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log');
|
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log');
|
||||||
ylabel('Amplitude'); set(gca, 'XTickLabel',[]);
|
ylabel('Amplitude'); set(gca, 'XTickLabel',[]);
|
||||||
@ -926,26 +1043,37 @@ The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_
|
|||||||
|
|
||||||
ax2 = subplot(2,1,2);
|
ax2 = subplot(2,1,2);
|
||||||
hold on;
|
hold on;
|
||||||
plot(freqs, 180/pi*unwrap(angle(squeeze(freqresp(G, freqs, 'Hz')))), '-');
|
plot(freqs, 180/pi*unwrap(angle(squeeze(freqresp(Giff, freqs, 'Hz')))), '-');
|
||||||
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'lin');
|
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'lin');
|
||||||
yticks(-360:90:360);
|
yticks(-360:90:360);
|
||||||
ylim([-360 0]);
|
ylim([-180 180]);
|
||||||
xlabel('Frequency [Hz]'); ylabel('Phase [deg]');
|
xlabel('Frequency [Hz]'); ylabel('Phase [deg]');
|
||||||
hold off;
|
hold off;
|
||||||
linkaxes([ax1,ax2],'x');
|
linkaxes([ax1,ax2],'x');
|
||||||
xlim([freqs(1), freqs(end)]);
|
xlim([freqs(1), freqs(end)]);
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
#+begin_src matlab
|
#+begin_src matlab :tangle no :exports results :results file replace
|
||||||
|
exportFig('figs/apa300ml_iff_plant.pdf', 'width', 'full', 'height', 'full');
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+name: fig:apa300ml_iff_plant
|
||||||
|
#+caption: Transfer function from actuator to force sensor
|
||||||
|
#+RESULTS:
|
||||||
|
[[file:figs/apa300ml_iff_plant.png]]
|
||||||
|
|
||||||
|
For root locus corresponding to IFF is shown in Figure [[fig:apa300ml_iff_root_locus]].
|
||||||
|
|
||||||
|
#+begin_src matlab :exports none
|
||||||
figure;
|
figure;
|
||||||
|
|
||||||
gains = logspace(0, 5, 500);
|
gains = logspace(0, 5, 500);
|
||||||
|
|
||||||
hold on;
|
hold on;
|
||||||
plot(real(pole(G)), imag(pole(G)), 'kx');
|
plot(real(pole(Giff)), imag(pole(Giff)), 'kx');
|
||||||
plot(real(tzero(G)), imag(tzero(G)), 'ko');
|
plot(real(tzero(Giff)), imag(tzero(Giff)), 'ko');
|
||||||
for k = 1:length(gains)
|
for k = 1:length(gains)
|
||||||
cl_poles = pole(feedback(G, gains(k)/s));
|
cl_poles = pole(feedback(Giff, gains(k)/s));
|
||||||
plot(real(cl_poles), imag(cl_poles), 'k.');
|
plot(real(cl_poles), imag(cl_poles), 'k.');
|
||||||
end
|
end
|
||||||
hold off;
|
hold off;
|
||||||
@ -955,15 +1083,22 @@ The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_
|
|||||||
xlabel('Real Part'); ylabel('Imaginary Part');
|
xlabel('Real Part'); ylabel('Imaginary Part');
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src matlab :tangle no :exports results :results file replace
|
||||||
|
exportFig('figs/apa300ml_iff_root_locus.pdf', 'width', 'wide', 'height', 'tall');
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+name: fig:apa300ml_iff_root_locus
|
||||||
|
#+caption: Root Locus for IFF
|
||||||
|
#+RESULTS:
|
||||||
|
[[file:figs/apa300ml_iff_root_locus.png]]
|
||||||
|
|
||||||
** DVF
|
** DVF
|
||||||
#+begin_src matlab
|
Now the dynamics from the stack actuator to the relative motion sensor is identified and shown in Figure [[fig:apa300ml_dvf_plant]].
|
||||||
|
#+begin_src matlab :exports none
|
||||||
m = 10;
|
m = 10;
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
And the dynamics is identified.
|
#+begin_src matlab :exports none
|
||||||
|
|
||||||
The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_mass]].
|
|
||||||
#+begin_src matlab
|
|
||||||
%% Name of the Simulink File
|
%% Name of the Simulink File
|
||||||
mdl = 'APA300ML_test_bench';
|
mdl = 'APA300ML_test_bench';
|
||||||
|
|
||||||
@ -1000,7 +1135,18 @@ The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_
|
|||||||
xlim([freqs(1), freqs(end)]);
|
xlim([freqs(1), freqs(end)]);
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
#+begin_src matlab
|
#+begin_src matlab :tangle no :exports results :results file replace
|
||||||
|
exportFig('figs/apa300ml_dvf_plant.pdf', 'width', 'full', 'height', 'full');
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+name: fig:apa300ml_dvf_plant
|
||||||
|
#+caption: Transfer function from stack actuator to relative motion sensor
|
||||||
|
#+RESULTS:
|
||||||
|
[[file:figs/apa300ml_dvf_plant.png]]
|
||||||
|
|
||||||
|
The root locus for DVF is shown in Figure [[fig:apa300ml_dvf_root_locus]].
|
||||||
|
|
||||||
|
#+begin_src matlab :exports none
|
||||||
figure;
|
figure;
|
||||||
|
|
||||||
gains = logspace(0, 5, 500);
|
gains = logspace(0, 5, 500);
|
||||||
@ -1019,7 +1165,16 @@ The two identified dynamics are compared in Figure [[fig:dynamics_act_disp_comp_
|
|||||||
xlabel('Real Part'); ylabel('Imaginary Part');
|
xlabel('Real Part'); ylabel('Imaginary Part');
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Sensor Fusion
|
#+begin_src matlab :tangle no :exports results :results file replace
|
||||||
|
exportFig('figs/apa300ml_dvf_root_locus.pdf', 'width', 'wide', 'height', 'tall');
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+name: fig:apa300ml_dvf_root_locus
|
||||||
|
#+caption: Root Locus for Direct Velocity Feedback
|
||||||
|
#+RESULTS:
|
||||||
|
[[file:figs/apa300ml_dvf_root_locus.png]]
|
||||||
|
|
||||||
|
** TODO Sensor Fusion :noexport:
|
||||||
- [ ] What is the goal of that? Special control properties, lower the sensor noise?
|
- [ ] What is the goal of that? Special control properties, lower the sensor noise?
|
||||||
|
|
||||||
Use the relative motion sensor at low frequency and the force sensor at high frequency.
|
Use the relative motion sensor at low frequency and the force sensor at high frequency.
|
||||||
@ -1203,6 +1358,12 @@ Root locus
|
|||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* Flexible Joint
|
* Flexible Joint
|
||||||
|
** Introduction :ignore:
|
||||||
|
|
||||||
|
#+name: fig:flexor_id16_screenshot
|
||||||
|
#+caption: Flexor studied
|
||||||
|
[[file:figs/flexor_id16_screenshot.png]]
|
||||||
|
|
||||||
** Matlab Init :noexport:ignore:
|
** Matlab Init :noexport:ignore:
|
||||||
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
|
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
|
||||||
<<matlab-dir>>
|
<<matlab-dir>>
|
||||||
@ -1302,16 +1463,16 @@ Using =K=, =M= and =int_xyz=, we can use the =Reduced Order Flexible Solid= sims
|
|||||||
|
|
||||||
** Flexible Joint Characteristics
|
** Flexible Joint Characteristics
|
||||||
#+begin_src matlab :exports results :results value table replace :tangle no :post addhdr(*this*)
|
#+begin_src matlab :exports results :results value table replace :tangle no :post addhdr(*this*)
|
||||||
data2orgtable([1e-6*K(3,3), K(4,4), K(5,5), K(6,6)]', {'Axial Stiffness [N/um]', 'Bending Stiffness [Nm/rad]', 'Bending Stiffness [Nm/rad]', 'Torsion Stiffness [Nm/rad]'}, {'*Caracteristic*', '*Value*'}, ' %0.f ');
|
data2orgtable([1e-6*K(3,3), K(4,4), K(5,5), K(6,6); 60, 15, 15, 20]', {'Axial Stiffness [N/um]', 'Bending Stiffness [Nm/rad]', 'Bending Stiffness [Nm/rad]', 'Torsion Stiffness [Nm/rad]'}, {'*Caracteristic*', '*Value*', '*Estimation by Francois*'}, ' %0.f ');
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
#+RESULTS:
|
#+RESULTS:
|
||||||
| *Caracteristic* | *Value* |
|
| *Caracteristic* | *Value* | *Estimation by Francois* |
|
||||||
|----------------------------+---------|
|
|----------------------------+---------+--------------------------|
|
||||||
| Axial Stiffness [N/um] | 119 |
|
| Axial Stiffness [N/um] | 119 | 60 |
|
||||||
| Bending Stiffness [Nm/rad] | 33 |
|
| Bending Stiffness [Nm/rad] | 33 | 15 |
|
||||||
| Bending Stiffness [Nm/rad] | 33 |
|
| Bending Stiffness [Nm/rad] | 33 | 15 |
|
||||||
| Torsion Stiffness [Nm/rad] | 236 |
|
| Torsion Stiffness [Nm/rad] | 236 | 20 |
|
||||||
|
|
||||||
** Identification
|
** Identification
|
||||||
#+begin_src matlab
|
#+begin_src matlab
|
||||||
|