From 6b225a90ea5cf178fa33ebcc12b698eb90459f8e Mon Sep 17 00:00:00 2001 From: Thomas Dehaeze Date: Fri, 23 Apr 2021 17:37:19 +0200 Subject: [PATCH] Update Analysis --- docs/nano_hexapod.html | 343 ++++++++++++++------------- docs/nano_hexapod.pdf | Bin 5136237 -> 5136129 bytes matlab/nano_hexapod/nano_hexapod.slx | Bin 46175 -> 46146 bytes org/index.org | 2 + org/nano_hexapod.org | 47 +++- 5 files changed, 218 insertions(+), 174 deletions(-) diff --git a/docs/nano_hexapod.html b/docs/nano_hexapod.html index 47e3671..fa16bc6 100644 --- a/docs/nano_hexapod.html +++ b/docs/nano_hexapod.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Nano-Hexapod @@ -76,26 +76,26 @@
  • 2. Active Damping using Integral Force Feedback
  • 3. Active Damping using Direct Velocity Feedback - Encoders on the struts
  • 4. Active Damping using Direct Velocity Feedback - Encoders on the plates
  • 5. Function - Initialize Nano Hexapod @@ -129,31 +129,31 @@ In this document, a Simscape model of the nano-hexapod is developed and studied. It is structured as follows:

    1 Nano-Hexapod

    - +

    1.1 Nano Hexapod - Configuration

    - +

    -The nano-hexapod can be initialized and configured using the initializeNanoHexapodFinal function (link). +The nano-hexapod can be initialized and configured using the initializeNanoHexapodFinal function (link).

    -The following code would produce the model shown in Figure 1. +The following code would produce the model shown in Figure 1.

    n_hexapod = initializeNanoHexapodFinal('flex_bot_type', '4dof', ...
    @@ -165,7 +165,7 @@ The following code would produce the model shown in Figure 
     
     
    -
    +

    nano_hexapod_simscape_encoder_struts.png

    Figure 1: 3D view of the Sismcape model for the Nano-Hexapod

    @@ -175,21 +175,21 @@ The following code would produce the model shown in Figure

    1.1.1 Flexible Joints

    - +

    -The model of the flexible joint is composed of 3 solid bodies as shown in Figure 2 which are connected by joints representing the flexibility of the joint. +The model of the flexible joint is composed of 3 solid bodies as shown in Figure 2 which are connected by joints representing the flexibility of the joint.

    @@ -202,10 +202,10 @@ We can represent:

    -The configurations and the represented flexibilities are summarized in Table 1. +The configurations and the represented flexibilities are summarized in Table 1.

    - +
    @@ -254,7 +254,7 @@ Of course, adding more DoF for the flexible joint will induce an addition of man

    -
    +

    simscape_model_flexible_joint.png

    Figure 2: 3D view of the Sismcape model for the Flexible joint (4DoF configuration)

    @@ -266,7 +266,7 @@ Of course, adding more DoF for the flexible joint will induce an addition of man

    1.1.2 Amplified Piezoelectric Actuators

    - +

    @@ -278,11 +278,11 @@ The APA can be modeled in different ways which can be configured with the

    -The simplest model is a 2-DoF system shown in Figure 3. +The simplest model is a 2-DoF system shown in Figure 3.

    -
    +

    2dof_apa_model.png

    Figure 3: Schematic of the 2DoF model for the Amplified Piezoelectric Actuator

    @@ -298,11 +298,11 @@ Then, a more complex model based on a Finite Element Model can be used.

    1.1.3 Encoders

    - +

    -The encoders can be either fixed directly on the struts (Figure 4) or on the two plates (Figure 5). +The encoders can be either fixed directly on the struts (Figure 4) or on the two plates (Figure 5).

    @@ -310,32 +310,32 @@ This can be configured with the motion_sensor_type parameters which

    -
    +

    encoder_struts.png

    Figure 4: 3D view of the Encoders fixed on the struts

    -
    +

    encoders_plates_with_apa.png

    Figure 5: 3D view of the Encoders fixed on the plates

    -A complete view of the nano-hexapod with encoders fixed to the struts is shown in Figure 1 while it is shown in Figure 6 when the encoders are fixed to the plates. +A complete view of the nano-hexapod with encoders fixed to the struts is shown in Figure 1 while it is shown in Figure 6 when the encoders are fixed to the plates.

    -
    +

    nano_hexapod_simscape_encoder_plates.png

    Figure 6: Nano-Hexapod with encoders fixed to the plates

    -The encoder model is schematically represented in Figure 7: +The encoder model is schematically represented in Figure 7:

    • a frame {B}, fixed to the ruler is positioned on its top surface
    • @@ -347,18 +347,18 @@ The output measurement is then the x displacement of the origin of the frame {F}

      -
      +

      simscape_encoder_model.png

      Figure 7: Schematic of the encoder model

      -If the encoder is experiencing some tilt, it is then “converted” into a measured displacement as shown in Figure 8. +If the encoder is experiencing some tilt, it is then “converted” into a measured displacement as shown in Figure 8.

      -
      +

      simscape_encoder_model_disp.png

      Figure 8: Schematic of the encoder model

      @@ -370,7 +370,7 @@ If the encoder is experiencing some tilt, it is then “converted” int

      1.1.4 Jacobians

      - +

      @@ -390,7 +390,7 @@ Same thing can be done for the measured encoder displacements.

      1.2 Effect of encoders on the decentralized plant

      - +

      @@ -446,18 +446,19 @@ Gp.OutputName = {'D1',

      -The obtained plants are compared in Figure 9. +The obtained plants are compared in Figure 9.

      -
      +

      nano_hexapod_effect_encoder.png

      Figure 9: Comparison of the plants from actuator to associated encoder when the encoders are either fixed to the struts or to the plates

      -
      +

      -Why do we have zeros at 400Hz and 800Hz when the encoders are fixed on the struts? +The zeros at 400Hz and 800Hz should corresponds to resonances of the system when one of the APA is blocked. +It is linked to the axial stiffness of the flexible joints: increasing the axial stiffness of the joints will increase the frequency of the zeros.

      @@ -468,7 +469,7 @@ Why do we have zeros at 400Hz and 800Hz when the encoders are fixed on the strut

      1.3 Effect of APA flexibility

      - +

      @@ -503,15 +504,15 @@ Gf.OutputName = {'D1',

      -
      +

      nano_hexapod_effect_flexible_apa.png

      Figure 10: Comparison of the plants from actuator to associated strut encoder when the APA are modelled with a 2DoF system of with a flexible one

      -
      +

      -The first resonance is strange when using the flexible APA model (Figure 10). +The first resonance is strange when using the flexible APA model (Figure 10). Moreover the system is unstable. Otherwise, the 2DoF model matches quite well the flexible model considering its simplicity.

      @@ -524,7 +525,7 @@ Otherwise, the 2DoF model matches quite well the flexible model considering its

      1.4 Nano Hexapod - Number of DoF

      - +

      @@ -549,10 +550,10 @@ There are 24 states.

      -These states are summarized on table 2. +These states are summarized on table 2.

      -
    Table 1: Flexible joint’s configuration and associated represented flexibility
    +
    @@ -636,7 +637,7 @@ There are 60 states. -
    +

    Obtained number of states is very comprehensible. Depending on the physical effects we want to model, we therefore know how many states are added when configuring the model. @@ -650,7 +651,7 @@ Depending on the physical effects we want to model, we therefore know how many s

    1.5 Direct Velocity Feedback Plant

    - +

    @@ -692,9 +693,9 @@ DCgain = 1.87e-08 [m/N]

    -Let’s verify that by looking at the DC gain of the \(6 \times 6\) DVF plant in Table 3. +Let’s verify that by looking at the DC gain of the \(6 \times 6\) DVF plant in Table 3.

    -
    Table 2: Number of states for the minimalist model
    +
    @@ -768,10 +769,10 @@ Let’s verify that by looking at the DC gain of the \(6 \times 6\) DVF plan
    Table 3: DC gain of the DVF plant

    -And the bode plot of the DVF plant is shown in Figure 11. +And the bode plot of the DVF plant is shown in Figure 11.

    -
    +

    nano_hexapod_struts_2dof_dvf_plant.png

    Figure 11: Bode plot of the transfer functions from actuator forces \(\tau_i\) to relative motion sensors attached to the struts \(\mathcal{L}_i\). Diagonal terms are shown in blue, and off-diagonal terms in black.

    @@ -783,7 +784,7 @@ And the bode plot of the DVF plant is shown in Figure 111.6 Integral Force Feedback Plant

    - +

    @@ -816,10 +817,10 @@ This is corresponding to the dynamics for the Integral Force Feedback (IFF) cont

    -The bode plot is shown in Figure 12. +The bode plot is shown in Figure 12.

    -
    +

    nano_hexapod_struts_2dof_iff_plant.png

    Figure 12: Bode plot of the transfer functions from actuator forces \(\tau_i\) to force sensors \(F_{m,i}\). Diagonal terms are shown in blue, and off-diagonal terms in black.

    @@ -831,10 +832,10 @@ The bode plot is shown in Figure 12.

    1.7 Decentralized Plant - Cartesian coordinates

    - +

    -Consider the plant shown in Figure 13 with: +Consider the plant shown in Figure 13 with:

    • \(\tau\) the 6 input forces (APA)
    • @@ -844,7 +845,7 @@ Consider the plant shown in Figure 13 with:
    -
    +

    nano_hexapod_decentralized_schematic.png

    Figure 13: Plant in the cartesian Frame

    @@ -898,10 +899,10 @@ Gsp = -Gs({'Dx', <

    -The diagonal elements of the plant are shown in Figure 14. +The diagonal elements of the plant are shown in Figure 14.

    -
    +

    nano_hexapod_comp_cartesian_plants_struts.png

    Figure 14: Bode plot of the diagonal elements of the decentralized (cartesian) plant when using the sensor Jacobian (solid) and when using “perfect” 6dof sensor (dashed). The encoders are fixed on the struts.

    @@ -929,16 +930,16 @@ Gpp = -Gp({'Dx', <

    -The obtained bode plots are shown in Figure 15. +The obtained bode plots are shown in Figure 15.

    -
    +

    nano_hexapod_comp_cartesian_plants_plates.png

    Figure 15: Bode plot of the diagonal elements of the decentralized (cartesian) plant when using the sensor Jacobian (solid) and when using “perfect” 6dof sensor (dashed). The encoders are fixed on the plates.

    -
    +

    The Jacobian for the encoders is working properly both when the encoders are fixed to the plates or to the struts.

    @@ -955,10 +956,10 @@ However, then the encoders are fixed to the struts, there is a mismatch between

    1.7.2 Comparison of the decentralized plants

    -The decentralized plants are now compared whether the encoders are fixed on the struts or on the plates in Figure 16. +The decentralized plants are now compared whether the encoders are fixed on the struts or on the plates in Figure 16.

    -
    +

    nano_hexapod_cartesian_plant_encoder_comp.png

    Figure 16: Bode plot of the “cartesian” plant (transfer function from \(\mathcal{F}\) to \(d\mathcal{X}\)) when the encoders are fixed on the struts (solid) and on the plates (dashed)

    @@ -971,7 +972,7 @@ The decentralized plants are now compared whether the encoders are fixed on the

    1.8 Decentralized Plant - Decoupling at the Center of Stiffness

    - +

    @@ -979,7 +980,7 @@ The decentralized plants are now compared whether the encoders are fixed on the

    1.8.1 Center of Stiffness

    - +

    @@ -1085,7 +1086,7 @@ And the (normalized) stiffness matrix is computed as follows:

    - +
    @@ -1202,9 +1203,9 @@ Then use the Jacobian matrices to obtain the “cartesian” centralized

    -The DC gain of the obtained plant is shown in Table 5. +The DC gain of the obtained plant is shown in Table 5.

    -
    Table 4: Normalized Stiffness Matrix - Center of Stiffness
    +
    @@ -1286,16 +1287,16 @@ As the rotations and translations have very different gains, we normalize each m

    -The diagonal and off-diagonal elements are shown in Figure 17, and we can see good decoupling at low frequency. +The diagonal and off-diagonal elements are shown in Figure 17, and we can see good decoupling at low frequency.

    -
    +

    nano_hexapod_diagonal_plant_cok.png

    Figure 17: Diagonal and off-diagonal elements of the (normalized) decentralized plant with the Jacobians estimated at the “center of stiffness”

    -
    +

    The Jacobian matrices can be used to decoupled the plant at low frequency.

    @@ -1309,7 +1310,7 @@ The Jacobian matrices can be used to decoupled the plant at low frequency.

    1.9 Stiffness matrix

    - +

    The stiffness matrix of the nano-hexapod describes its induced static displacement/rotation when a force/torque is applied on its top platform. @@ -1385,7 +1386,7 @@ ks = 1.737e+06 [N/m] -

    +

    We can see that the axial stiffness of the flexible joint as little impact on the total axial stiffness of the struts.

    @@ -1409,9 +1410,9 @@ And the compliance matrix can be computed as the inverse of the stiffness matrix

    -The obtained compliance matrix is shown in Table 6. +The obtained compliance matrix is shown in Table 6.

    -
    Table 5: DC gain of the centralized plant at the center of stiffness
    +
    @@ -1515,10 +1516,10 @@ It takes into account the bending and torsional stiffness of the flexible joints

    -The obtained compliance matrix is shown in Table 7. +The obtained compliance matrix is shown in Table 7.

    -
    Table 6: Compliance Matrix - Perfect Joints
    +
    @@ -1591,10 +1592,10 @@ The obtained compliance matrix is shown in Table 7.
    Table 7: Compliance Matrix - Estimated from Simscape
    -
    +

    The bending and torsional stiffness of the flexible joints induces a lot of coupling between forces/torques applied to the to platform to its displacement/rotation. -It can be seen by comparison the compliance matrices in Tables 6 and 7. +It can be seen by comparison the compliance matrices in Tables 6 and 7.

    @@ -1607,7 +1608,7 @@ It can be seen by comparison the compliance matrices in Tables 2 Active Damping using Integral Force Feedback

    - +

    In this section Integral Force Feedback (IFF) strategy is used to damp the nano-hexapod resonances. @@ -1617,17 +1618,17 @@ In this section Integral Force Feedback (IFF) strategy is used to damp th It is structured as follows:

      -
    • Section 2.1: the IFF plant is identified
    • -
    • Section 2.2: the optimal control gain is identified using the Root Locus plot
    • -
    • Section 2.3: the IFF is applied, and the effect on the damped plant is identified and compared with the un-damped one
    • -
    • Section 2.4: the IFF is applied, and the effect on the compliance is identified
    • +
    • Section 2.1: the IFF plant is identified
    • +
    • Section 2.2: the optimal control gain is identified using the Root Locus plot
    • +
    • Section 2.3: the IFF is applied, and the effect on the damped plant is identified and compared with the un-damped one
    • +
    • Section 2.4: the IFF is applied, and the effect on the compliance is identified
    -
    -

    2.1 Plant Identification

    +
    +

    2.1 Plant Identification

    - +

    @@ -1667,7 +1668,7 @@ Giff.OutputName = {'Fm1', +

    nano_hexapod_iff_plant_bode_plot.png

    Figure 18: Integral Force Feedback plant

    @@ -1675,11 +1676,11 @@ Its bode plot is shown in Figure
    -
    -

    2.2 Root Locus

    +
    +

    2.2 Root Locus

    - +

    @@ -1702,11 +1703,11 @@ It is here chosen to have quite a large \(\omega_c\) in order to not modify the

    -The obtained Root Locus is shown in Figure 19. +The obtained Root Locus is shown in Figure 19. The control gain chosen for future plots is shown by the red crosses.

    -
    +

    nano_hexapod_iff_root_locus.png

    Figure 19: Root locus for the decentralized IFF control strategy

    @@ -1722,11 +1723,11 @@ The obtained controller is then:

    -The corresponding loop gain of the diagonal terms are shown in Figure 20. +The corresponding loop gain of the diagonal terms are shown in Figure 20. It is shown that the loop gain is quite large around resonances (which allows to add lots of damping) and less than one at low frequency thanks to the large value of \(\omega_c\).

    -
    +

    nano_hexapod_iff_loop_gain.png

    Figure 20: Loop gain of the diagonal terms \(G(i,i) \cdot K_{\text{IFF}}(i,i)\)

    @@ -1738,7 +1739,7 @@ It is shown that the loop gain is quite large around resonances (which allows to

    2.3 Effect of IFF on the plant

    - +

    @@ -1775,16 +1776,16 @@ Giff.OutputName = {'D1', 21. +The obtained plants are compared in Figure 21.

    -
    +

    nano_hexapod_effect_iff_plant.png

    Figure 21: Bode plots of the transfer functions from actuator forces \(\tau_i\) to relative motion sensors \(\mathcal{L}_i\) with and without the IFF controller.

    -
    +

    The Integral Force Feedback Strategy is very effective to damp the 6 suspension modes of the nano-hexapod.

    @@ -1797,7 +1798,7 @@ The Integral Force Feedback Strategy is very effective to damp the 6 suspension

    2.4 Effect of IFF on the compliance

    - +

    @@ -1806,13 +1807,13 @@ Let’s quantify that for the nano-hexapod. The obtained compliances are compared in Figure

    -
    +

    nano_hexapod_iff_compare_compliance.png

    Figure 22: Comparison of the compliances in Open Loop and with Integral Force Feedback controller

    -
    +

    The use of IFF induces a degradation of the compliance. This degradation is limited due to the use of a pseudo integrator (instead of a pure integrator). @@ -1828,7 +1829,7 @@ Also, it should not be a major problem for the NASS, as no direct forces should

    3 Active Damping using Direct Velocity Feedback - Encoders on the struts

    - +

    In this section, the Direct Velocity Feedback (DVF) strategy is used to damp the nano-hexapod resonances. @@ -1838,17 +1839,17 @@ In this section, the Direct Velocity Feedback (DVF) strategy is used to d It is structured as follows:

      -
    • Section 3.1: the DVF plant is identified
    • -
    • Section 3.2: the optimal control gain is identified using the Root Locus plot
    • -
    • Section 3.3: the DVF is applied, and the effect on the damped plant is identified and compared with the un-damped one
    • -
    • Section 3.4: the DVF is applied, and the effect on the compliance is identified
    • +
    • Section 3.1: the DVF plant is identified
    • +
    • Section 3.2: the optimal control gain is identified using the Root Locus plot
    • +
    • Section 3.3: the DVF is applied, and the effect on the damped plant is identified and compared with the un-damped one
    • +
    • Section 3.4: the DVF is applied, and the effect on the compliance is identified
    -
    -

    3.1 Plant Identification

    +
    +

    3.1 Plant Identification

    - +

    @@ -1885,10 +1886,10 @@ Gdvf.OutputName = {'D1', 23. +Its bode plot is shown in Figure 23.

    -
    +

    nano_hexapod_dvf_plant_bode_plot_struts.png

    Figure 23: Direct Velocity Feedback plant

    @@ -1896,11 +1897,11 @@ Its bode plot is shown in Figure 23.
    -
    -

    3.2 Root Locus

    +
    +

    3.2 Root Locus

    - +

    @@ -1920,11 +1921,11 @@ The value of \(\omega_d\) sets the frequency above high the derivative action is

    -The obtained Root Locus is shown in Figure 24. +The obtained Root Locus is shown in Figure 24. The control gain chosen for future plots is shown by the red crosses.

    -
    +

    nano_hexapod_dvf_root_locus_struts.png

    Figure 24: Root locus for the decentralized DVF control strategy

    @@ -1940,11 +1941,11 @@ The obtained controller is then:

    -The corresponding loop gain of the diagonal terms are shown in Figure 25. +The corresponding loop gain of the diagonal terms are shown in Figure 25. It is shown that the loop gain is quite large around resonances (which allows to add lots of damping) and less than one at low frequency thanks to the large value of \(\omega_c\).

    -
    +

    nano_hexapod_dvf_loop_gain_struts.png

    Figure 25: Loop gain of the diagonal terms \(G(i,i) \cdot K_{\text{DVF}}(i,i)\)

    @@ -1952,11 +1953,11 @@ It is shown that the loop gain is quite large around resonances (which allows to
    -
    -

    3.3 Effect of DVF on the plant

    +
    +

    3.3 Effect of DVF on the plant

    - +

    @@ -1993,16 +1994,16 @@ Gdvf.OutputName = {'D1', 26. +The obtained plants are compared in Figure 26.

    -
    +

    nano_hexapod_effect_dvf_plant_struts.png

    Figure 26: Bode plots of the transfer functions from actuator forces \(\tau_i\) to relative motion sensors \(\mathcal{L}_i\) with and without the DVF controller.

    -
    +

    The Direct Velocity Feedback Strategy is very effective to damp the 6 suspension modes of the nano-hexapod.

    @@ -2011,20 +2012,20 @@ The Direct Velocity Feedback Strategy is very effective to damp the 6 suspension
    -
    -

    3.4 Effect of DVF on the compliance

    +
    +

    3.4 Effect of DVF on the compliance

    - +

    The DVF strategy has the well known drawback of degrading the compliance (transfer function from external forces/torques applied to the top platform to the motion of the top platform), especially at low frequency where the control gain is large. Let’s quantify that for the nano-hexapod. -The obtained compliances are compared in Figure 27. +The obtained compliances are compared in Figure 27.

    -
    +

    nano_hexapod_dvf_compare_compliance_struts.png

    Figure 27: Comparison of the compliances in Open Loop and with Direct Velocity Feedback controller

    @@ -2037,7 +2038,7 @@ The obtained compliances are compared in Figure 27.

    4 Active Damping using Direct Velocity Feedback - Encoders on the plates

    - +

    In this section, the Direct Velocity Feedback (DVF) strategy is used to damp the nano-hexapod resonances. @@ -2047,17 +2048,17 @@ In this section, the Direct Velocity Feedback (DVF) strategy is used to d It is structured as follows:

      -
    • Section 4.1: the DVF plant is identified
    • -
    • Section 4.2: the optimal control gain is identified using the Root Locus plot
    • -
    • Section 4.3: the DVF is applied, and the effect on the damped plant is identified and compared with the un-damped one
    • -
    • Section 4.4: the DVF is applied, and the effect on the compliance is identified
    • +
    • Section 4.1: the DVF plant is identified
    • +
    • Section 4.2: the optimal control gain is identified using the Root Locus plot
    • +
    • Section 4.3: the DVF is applied, and the effect on the damped plant is identified and compared with the un-damped one
    • +
    • Section 4.4: the DVF is applied, and the effect on the compliance is identified
    -
    -

    4.1 Plant Identification

    +
    +

    4.1 Plant Identification

    - +

    @@ -2094,10 +2095,10 @@ Gdvf.OutputName = {'D1', 28. +Its bode plot is shown in Figure 28.

    -
    +

    nano_hexapod_dvf_plant_bode_plot_plates.png

    Figure 28: Direct Velocity Feedback plant

    @@ -2105,11 +2106,11 @@ Its bode plot is shown in Figure 28.
    -
    -

    4.2 Root Locus

    +
    +

    4.2 Root Locus

    - +

    @@ -2129,11 +2130,11 @@ The value of \(\omega_d\) sets the frequency above high the derivative action is

    -The obtained Root Locus is shown in Figure 29. +The obtained Root Locus is shown in Figure 29. The control gain chosen for future plots is shown by the red crosses.

    -
    +

    nano_hexapod_dvf_root_locus_plates.png

    Figure 29: Root locus for the decentralized DVF control strategy

    @@ -2149,11 +2150,11 @@ The obtained controller is then:

    -The corresponding loop gain of the diagonal terms are shown in Figure 30. +The corresponding loop gain of the diagonal terms are shown in Figure 30. It is shown that the loop gain is quite large around resonances (which allows to add lots of damping).

    -
    +

    nano_hexapod_dvf_loop_gain_plates.png

    Figure 30: Loop gain of the diagonal terms \(G(i,i) \cdot K_{\text{DVF}}(i,i)\)

    @@ -2161,11 +2162,11 @@ It is shown that the loop gain is quite large around resonances (which allows to
    -
    -

    4.3 Effect of DVF on the plant

    +
    +

    4.3 Effect of DVF on the plant

    - +

    @@ -2202,16 +2203,16 @@ Gdvf.OutputName = {'D1', 31. +The obtained plants are compared in Figure 31.

    -
    +

    nano_hexapod_effect_dvf_plant_plates.png

    Figure 31: Bode plots of the transfer functions from actuator forces \(\tau_i\) to relative motion sensors \(\mathcal{L}_i\) with and without the DVF controller.

    -
    +

    The Direct Velocity Feedback Strategy is very effective in damping the 6 suspension modes of the nano-hexapod.

    @@ -2220,20 +2221,20 @@ The Direct Velocity Feedback Strategy is very effective in damping the 6 suspens
    -
    -

    4.4 Effect of DVF on the compliance

    +
    +

    4.4 Effect of DVF on the compliance

    - +

    The DVF strategy has the well known drawback of degrading the compliance (transfer function from external forces/torques applied to the top platform to the motion of the top platform), especially at low frequency where the control gain is large. Let’s quantify that for the nano-hexapod. -The obtained compliances are compared in Figure 32. +The obtained compliances are compared in Figure 32.

    -
    +

    nano_hexapod_dvf_compare_compliance_plates.png

    Figure 32: Comparison of the compliances in Open Loop and with Direct Velocity Feedback controller

    @@ -2246,7 +2247,7 @@ The obtained compliances are compared in Figure 32.

    5 Function - Initialize Nano Hexapod

    - +

    @@ -2604,7 +2605,7 @@ nano_hexapod.geometry.J = [nano_hexapod.geometry.si'

    Author: Dehaeze Thomas

    -

    Created: 2021-04-23 ven. 15:50

    +

    Created: 2021-04-23 ven. 17:35

    diff --git a/docs/nano_hexapod.pdf b/docs/nano_hexapod.pdf index 74f408c7658ac19ee7cfe7c0e4fd299f200b06b7..22faff050709ba5c174b9d6b929ce4a401c21be2 100644 GIT binary patch delta 45796 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 W+S(CHh=@u`N=XuOa;j>p5&j?AAZptH delta 46089 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 J3Yv;o{|lgYo96%k diff --git a/matlab/nano_hexapod/nano_hexapod.slx b/matlab/nano_hexapod/nano_hexapod.slx index 15651847e3bfc6b18a3f2eb8edda24ecadd8c7e0..dc9ea6ac1619976eda3dd0b06fa82d2c3bb05559 100644 GIT binary patch delta 17206 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 z zi<6Brm7X=Cxf(T$2{joPr8C8Jul$sgs@Fp9R5uzngyY;_mI&p4&RZqMUkQ6EU|pCm z(IPX}UrGDDa^+Am$KQ`x+b2(j6n;Wy(LxMcg0IPUW3nq-YN3FOZao;RlcVmHps{XV;7|G zgwa6QxTGj9h#x4?UoWv!0vi523hZX;pD8IjN&W6;buCp|U8iu)ClCgFUD#J?8z3m> zBG2L@ciuCis?gCWPoRQ&%&Cd6ELW$_M%d}ueTm|&RHx35dFlC<#1`e^c(jRWP)Pv4 z%T|42yvb)W0o|e;jUE-TWFkM;OZkoLg=`3Cv-zTXwM0&LqwSSt7=S-g@z8YW?#g*t zS{!8KspjH%%kaW%6R6~jP7M~98nq;r79uOJoX+(*YS}&gCq}-M$? zUsjtv0ONz<4NUA39=ApGoAvgMq1G;i8EhC_eK*}2df;VBldG6C*{|S1r>bh-6%QN0 ze7_lYR4Y?np3Uqzi+Mm#wt^~CXOCA-`6#jjIgVpGh&C)RigG&q)%g4dab*Ku{49-<-$-CxnLSqDrgFXijUe}Zx# zy)xwl{G%xyASG(Du*~R5h!%KEQKk27i;vyqW>D~;GhJ(l<00#V(*X8G!oSAICB-G-8>nPA>;>ML}Os0ZiF^izdQ|tYk5@mRl;#N9pSXQv* zgOI6@Kz_UjiM~*iAyp6VWr z=;G-oAXM&#PxD0=Y|uIrjYCum(g;z!7V+qWY>=4ZF2w!YPY?0gMX4xU)C*bv@NrrL z6(q&MY?2jI&cY@||Co5Tng`Gk9C>%bD*6(47{sPuBUQeW8}-$N zm081%jq6dJY0h0jTy}Jgi{n|a+)?onxk0)%AWE|PKw>DQKT1~&o>-LjRmR%Kv3g#< zSKRY>j8WXo3@W?wW97~2aDU}E^jPIQo8aSN;`kM@nDVANJG-6Fr=GNJe2HgGz2Pe9 znCF4=a)|N}I0vjENEK+3J>cGUwSVH!KOULOhq+t>5)Ro7ne77mu4n#yS8||iRuyys zyticH3OwEJd6P`}?my#Bx>;HB3|LgsO`q>i=VD7kAKYB6 zPxmM9Kp^e%j`_`KL&*7i5AkJ{AoF_Y!@`2cqO9IYQOW*UIY8M>&h8p<`FN7s(;n^mta;0zsCqD4;##%hYx=e^beVSe zcx!&m^>$@@nK-<2+K$!|db!u~#{N>$@`-uF8zc4+&x`3xsJFHHczgTC(el~1^7!m= zGE>(rkgY4`6kq%J=4ZO}YWLYEV7cby;NjCT;f1^I&9d=?xzt3gRr5J!oz1ZC@y`8X zOLp_*!JEzBW#>VdezuyJ$2cFFDcKV*znO;r3 zz1z0~js?zz}Rt~W!^+~~{a`|J-w1!>SfS=;}~ zvj=vU2>i=?DdqTIY4$>;f`oswWlQd$e-0yHPAT1A;$$fv zm@y@#2WkdPEF&lS zzjMp~hxR{qd$IrDOmk@3|I-xLrvPosAJ=-IK|pZ-%M<`eR8I5PicC2km;)g&ijV>r zR}TLd$tuSK%>=fUv;J*d|7j!u5h^JDIsgBq3gi4uaR1+fcmXO`Q2izNRN#S~Fax(M z(12AH$p2V+fWB>yKgzj(${*st<9~+k1l+2i{>y@`!~-P*QdTnj^Yyhm+JXL$#>$_9 z_g{nzHDHGt0m6U#3Cyj;0|VCpB5R`pIW$m#5!LYj>}C>_y=nZR`~E4^|J6+j5UGmu zuifuecwn5G|CrXAn17jn(VRc%;{TwqT8O~ys(xqqBD((+J!>%k zInhd`d~o|mq4m$T_;1AyV08`s-(hUk;DMbP0f|jefk?HKe-W-)JTMTGKL{z%v-aQM z!~P)u&&tz*B65?DY!U=JVV1t5L^RM;TV@6ZMHDBT&IBryoh-Cj2&_=8{G_H4C=~&Z zH9%FEnhjEDWNEBdk(+}WDbs@%tyY=*0H{rzhk-!>#r$izKy6Z!*KQU8dl9}9Y#zG8 fFOwf^)(5LWU0MP$4d`|tm^fK)i#FTTl^`|%iq(dh delta 17222 zcmZU419&CDvu|wM+SvBS*=%fXu(8dJPHdmpwr$(l*tV@r^0Is1eeeF?oA2wc=|1(V zs+sE3(=*l8djz(51csm>4Gw_;0s;a9qV8RTAPfek?p-Gj777Zh?wzD$ti%=c1Go)N z4H%Q_V@COtF#OnWAE)-Spai0rik1`x%${wMGcx3SnA7_9ky{>4WyfS{d@^b=tx`Vs z0V!LyU=J>qM2zTrWtdbV-CervAG$rGC5^XqEJt+fWnrlY)(u@;7RR9s`LyD=)&bmk}WH(Wc__V&|jdX#@t zev@*^+wlo{W`-~LZB3~H>Krze<76e<0u_vzX(<%Eg?@{+xv`HQFRm~4hxuWIjLH;M zhu&OdL+MXhCmX?}l&MSA+8W;kg7Ys6le2}lvr506!VFbF3Qsyt4PchS8{?3?Fg%8G ztj-B2ys6ihbFx7HMc66hF4DAkcZgw}D8uw=;})GA;c}?cSnq#&0B8&O@#z7e9n@cv zXAcef*B_2Bny4^;{UPV)?FpR2r3S>MF{5-$sW&%|t!Rjinv}+kIDFq{9{VK~lBl>$ zAGl{ksYk3Ifk;#oC+Yy|J~OM_WmD7YRpJtUIjuQ6ck06^S?#065m>@?x^;Ywj@D!C zQdi5jC}7LGoH%QQN3T`V=m0LCQFEH@ROuC5qe`LTped>TZq{0%Q(D-YKnZyAQBr-% zME!Pi_%6vEZq^GVY15=fTBR==Wjgx#oKr&B-W=#*txu>84;lWpfpJO#$AeCz3ga-L zIBXW6M1m&HPTL#>7iZzV)NMQCQg|HU(ZNPYeTW?A#gcZj+Bur@N?Y+`y9u{XiaNrw z6`G1rd-v{|fan)RSU#LV&~Jd4G{#9hiEx6DwgMt6C5zOu-~+$tKM`^Ce6N=Owvmh!};d=VWYw&JY)w* zLZlb)n$(!EXZW};X=@#!M)hWmn@@iH-mPNCO|2g;z8p2UsE;m8tv~xI%Z3E@fN`ib zd5?^3hbd6kDF+`kv;I9%K5rsc-4L&x+CVz$Vt&)n3HP*}C z_CN}kScC6!ro6R$S)4F_30Q$6c7I{#bxY5iC>Z6FPy3fG)kl4DFCwqnbpJTT! zoZ#x;^x;KJ`7{tG$w^>?`vZOEy*d7FNmq~BxncRLM=FdF28SiDh(ahoP42;ZUeGgUxi z?0T$3 zf;?tpOVU*f$X}r&fwn(%bo{kIMsO90Ujy?MUJHBoIbMOE3So*Rd~U^scRh?S z`Adn+3ohUm?v)lZn>*La-^P9D>5`YbWQVuQ>rHCG2;rR}5UxiM=Dl0w@>uC-*3n%} z#wq6?S29fOA6G5$oG3~)0kokk@uB0oSWfhdKO{+Z3I#~^@;Dwgjqq0GsytjhR!_Y; z-doidNSe5=OSTRgSKBU}Y>ICleyL8_1s=IQn_eK$MHni&yEvK;PZQ-!pFHVX-T2>h~0+vy#-^oc( zVpjmvty?$)D?_M7+649SQd>SOl`^hX5>q2mBsGC29{z<13J`o4M(cFNy#IWoaf;@%&j?eiZ`Cv9e_kID68wZb4Q0F7?3}JBE&5096g z5M+o)!1I%X`kE9g!}zVYo->j&8$E=OEhF4jt4PZwr#@?X&q2|x9#YZs$Tr|tfNB1) z33wCoBPqcFm7{*Y%;mc$(ON*(H->8P|653&qJwXv2ed7YW znJJ}^H(cOtnF0l1ktBEF(RUm88u{;tOJQCwfaU${-%h4i4jU^a+JM%OlKnl$ z_4t+ii)#6}M)>fuCr_HCO69nV!Z!y%>8o>)Ym?IUQn`Fm<~em{{|k;K3Qf!2bw7c} zd1bcpaP$x%m{5v=k3-3+EC@{ z26Z!Lp`JhpXR7SyKM>1`bwNrVKZd_UXKqWW`UQ8-;>!r{F3X!T$_Hl7V1e5T;9Tgb z!=4;Rnc$v~qUv*Sn8bK{k&=ikPxKXL`9@!z zf#cl{cdxkI8gPKX8+I{gx_dkWcp+B*@WV1Rx47ZS*{_@TuC8O9vqHFSuucK5Rd}8r zV-&d68`Def9cegXS>ITuYc`>M;!tY3(1ILYo)v}+T5TcgS&zVftF%jM{Q&{`v}H+ zO!q35U4t60v1~1g?XH{OSr3R29(bswIaYiG;E5WJ7Es487+G5ZyuZbsVm=5}JpsMh zfxB7b7a7bl%^{OEct`TtXUa+cD)b|>SekT22+ZxT%-Dvwwq8ren!M;-Q?K4;79>JtdAJY6uRQfj<~NA-!!Uoq)GY?g=$6 z1r%u5S?$7%npDisp@rjJfb)BD?|t?6@B zxcQ;UGvUVihF8mrCtvnesmCf!yTdx+Np%2H`?+cUvfpTHQ^7Cqd8^URxlKphLwW%9 zpXJ^3H{}0V13a(>ll*=51C*=&KKq$fT)_X*Vs+!cD_J12Ch#xG*UbD&#I(}?k{zvx zzr^lG*kAJJN6BAOq@Ddq>Lhg_{w;y!b=@HTwnq#Y{!meYbNl*nh3a22Loiap8{O&xY-{!Yo^zG)G}JX z^Mj3Xk4!(hFd<@s;* zeU3L~C$Z0@41?*`?k3R*EiZKDMAw-l#mYC~o(R zp>99EY;^(5i=JM;qMEC7b5|pN2QkPIdW7kVO@gRIZydD8aeKxoDWo8jnld*DAXpifgZwT2ho58H%@7@7O633mIF;jYp4K~O-!kL@vG80&J=im+ zed2BRIa4915FRes7az&=@}^PbWZw6M>gx`C3GcSU!Ej>~KY9%iEz$lsS74F3D3z?a z&|$TF%-YkDtC%wUyC_8-+!HBWj4q>?-Ney2E&)Vmmx#Z@cjytwk1=%V230mEF*cza zBC$Gv)y9QnQ5a6dm_4Ec7umNc>~bYBu>qJAJK18An2BN>9~k#Yi6ihWD_`)K-8bG- z#`hA3Ej)urCZa@pxP{7V)*f`w&TDOYKX$}U)jLrO%nvx3qJ?_g$dF$0wvbv9P+Q@4 z5Y3z6d^?1`cyuTL2(lv>#l3QJ2iYbd)wl|<0Kf!j|2o3=CeQ0?+XH=hnSoWeY(8zD zpzv+2bg~Cuw?@GPpsEMGkA@PbFjANYAXYPu9B4NU4WjHbZ!Wg9(;> zX_p1#M)o)pgs?<{?nWltLd@>BqYTdc@C;u4?Oh7gS%id}*<;c=jMt;qW_`}JV}$}J zNVHR)dA-M;c?m#xsOYwGFq|$p)%`eOkX;P6dq9l4UK18JZV$l4oA-8LHbWn7xgvE5 zLnBYsp}fvzmd3kMg@~iKyHV+e)xjw6EyfJ><@H~4UV7y<1ZCef!r6^D7@R5*qxm6S zY2r+<#ew)y^F+mAW6ilF*~%q7L;(uej;9Ue)u^kyg(w?j;+t6V!(wfpH=v3dx+U=& z42Rmt|F$LDyzZ_CmhTQrQGyCtp*5Qk;pzjjq}fCVYU#3KBlwmx^{Lq1Xsum0A5c zk++4gur-xoB~}zh-DvMDcZg;=y7ExPRc6&9auh)sVKsrwMD+88pht7eIAW)7Ecl&{ z>P8F5?R&e+5v?{`8bX@MD22A8SvNCIB#-T!8Y5LmA@$4VLzBpa&03g94~1yfMhAjP z>fu?rGb8Qm&>ZqCE0{UK&gd^d=81P0a5~Qycmr;8*P`a1-REfz;I+ZtP3*r$xo=C_lDeb=2fDCXBPBEUjn;1+^0V|gg?>x`^(+Zq2E z)V35199@ab3DtfS6))|Yfi++em5yN;|=#j;@Mf zBQw(77~YA8Cup7*(G98eD2-haXKLqu7JU6UE4d>^lS-duG63L$BP7v;SZ)L9PM^xi z!}CZX&E~hlg|hQ@Ll2BzwWfl#tMy))+7aK%9a-N_^dC$*RrG1m);S8+dhE$-9IBl{ zX?CQ7`wcmHL~0|LT!EG@h{aiy4Ci=I8#~Xnq~k-yLe8cb8;p@p*(#?P^H%qQtce0; zR=BLg_MSV)E(l22teJ5nzfn+qu1h>(~d{SGuO8MIL`4=beAr?a;5z7_A4>iKO0t^brBjyy>v~}}B@1yQ8 zR&LQFxPsLrB)g0cHJu&0tkE>yU|`)LlB1~dTyp(#Gyt@;950c>rM5+6qJ0rFh; zBJGF3_^KBClJWQ1R4v2W6oj)itXS1?@82C-dgA$V)#|%HpeKCvp(E|XcV$!&52IA zI83rTd$&=pzA;Efhp54BK9lY_$09-Oc*g?3C(Z*T3IwrUZ)^@}1V*z^_(tcPx$?gx z=SB0pBzHwd&qxvH5&RyaKIQ+mTSfI9}9;;Z>MU#11wdSJ{!4)zI{|uOlhr z!UyaWC1B~mebAF2S@$%PeoUr841i0&76SFw%M3k)rvuzHCESlwtfb>Wg|_Q?`9k5u zy|y67FWHy!1&wAwXRJtl-Z-emkm7;B*J#g`Uw;Y$}5Q@*zvqWKGdfQst} zkiH|K-KhiB&NmL3RDv2?CHndRk3k#xIRf)5XT=+Gi4e$c09NvIOeL@zVn8fsOb~&Q zAjw;Cr}3D!#wO1P3DfK`r+bRrU>d7R4_3Zc;~Rl;JaKF;0T5{D;2ep##+R?!6J>LJMK^-!lBV|4)xx2?`~8is zdVKUGs|mz|5Sj)Dg2st*7T|ek*&kAmQ_qXl9>?h1N7$A8gMuH1G>jzm{);V0m#07D zCBA_{O8+KUv=mYO;GA=!Pd$S+B;pO+NS2Rm_KoAw1yr z`Yvg>|C7hHc*4Wnj#$F7oJ|XuH8YC1fx`EHImUQb9Ky?Gd4#qlqZSxhwREtI>PKg0 zhzQUBRhvsQCk1)Ny2XEW%zx_O5dJ2;T;}LhFCpRaw|Y%-1k~HZ4AgkF%GfuL=g244 zobMRniWW3zcxcK#gFuLNVJ)OcBrLU22Qn_CxB!`C)wnJubwrMrU-o_G5SFALTWAgLckYJG0tuxBSiLo{Yc_?*!@KUY@MF% z2u)M5Dg-fl^>buc$Jxn6gn}}IZA0kH_Bv(0nTLTIO~)eObu)(y;%cD5qzPbUW!L6Q z2RrT@!(>BPp+y7qcwn0yYIc8$=v84|?ue%kj18T%NU*-~2ClXM2S;M4g3utGbxNUC z$^G5zCiTe?+Y|ir;b8mH-jn?_>0lb+O_DHi9Ma_40Ipv4fCa&iD*3mWt@oY2*YFuH zz*P;v%bNww$;TNryL$xpR@f7lALNo>j*U`L^w2l`YamqidftXSsD8|MSctdQXg5$< zLhYU@W^t&o?nLlu=oJE))8qE!2Ql2TpfU?;c&np|>W3^y93z_RUuw*d-O zS`sHBfbx;k?%uW4{>1d8p{5dh>3lh>S+eFhPEmPrZuL> zkSz}7M+d4DSp5`f2x1fmecP1dcUuNn9K{T30OLklvwZj=`!}E!LS8?Z#pB1HyI0yt zUEzAz^e-`j-p?F>6Ewe@qG!>g)Kt*cJ(FhcmYapEy)N}wna)2CRp>Vq{(b3vF(2vJ zk+z~oH!~eDMZ;^oSN0JGKEXD#1fo(fP8(wum~IWaK2;W}(Dg`mGF5rzg_||TBNuLk z0DZGUtCNR0s+bSn<>-VoRmw#(ALRJ-7NF8kj?!=HwwtnW^@8z$^lD=%SRG-0i%QxN;!UQsVgaR&Ruzyi96EWS?-06OhYp7 z8#;(k*o#xWS%zS?rNRxW2xe`mj4gJ|Upsd3qnN-&Syk4@VV5_P$^qDBNwy=MknNLm zN=4HtOIkxLMkTwWjhCghr8H98GH^3J7hSziFQl-XcV?N!V|uOY7#`coIQxfY0LJ*t z*6ZB1tAdNv{EP3g80K1w&FyYVd2#{?4tp(q*bsA4)D`Kum2B#h81~MfT{fZ7-8Ob# z829U;wG(`s-yaX<(1{vPs81hB>}iY<$daRyBqA>Csv#rqP9*=pxu;+d_S!B#IWfLZ zfIhGhSk=70_*G9-6|)C=M?HQE26RiR!!}CIAYz7S#B`+%wof7YZY7O1qZFgJfJXcV z`L^HphwI}Im9Au{YlFUf{CWHm^nb5VzmZ@dd_jQ=LWMO(sVfQ;V-yMTZcYz3^4Eu` z?O_I6{)rRYOY*PeSmD7)!1T8FLVk?4xBac^14&$$#07fy0K`3h$i9jAPbliB9*X`~ zRPo)|r2QEh(@|6lqQjLaF!uBielp=hs{D6){Uol4P6)Ld5sxP0Tsz+IM5&H%!06HAWwZeAD|Kq4k7$??{&AssY>=vDJ7xN zjBHk;17C*h0hrOJ)$K4>j=#VN9pQfOiSRodq-$!2n1*eX6rL^86_Uoc1!aHv5j6Ql zOI`S>P%f5NeOc^&7wbi1^AR%^{wLRSDL2&UcM8UqEgdi1+~sE`jPn+8SDvjA+}|f~ zd8TIbKQ~4d4<8wIBd8va@;c7F;k6&I81XpwE-lorodB=`s5jR~p7@U-#$cu9lB-r~ ztzPTmVC(Yjyyr(sD(@CbhHGC$jH+cNMO)yYRBhRd302GLp5uip zSgoh0GQ0Wdv@^M&GR*sFCu$DXEEmSy5@v$1(S54!-EreF_{C>rR#YvMQJgH8RwGy_ zibZ0jMFBi84D>lFD2fl$nDtifenm6AH?~mo7n%+;NFwlo$9`BXJPf=USd?l~%rxKn z4lJnQLI@y@$?~u z@{r8TDJ3Y=La6JL@%IEmvBE{iTykq9!x;$Uu>g&4%e8h93wuQUY(K1K>uEq^#o_z3 zUGf918#pOQ^=BMVrmPgB)~U^AQfGUw#@l8L>Xg3KA9nCC4B80HnG9L2qC6?2B@Hs8 z)`B}m#egZ0#6JoTM|JXuxX6J;8X^Z+9j1TD2f=`u_d==d(EZ1;M)iA@VDTHuZ^~K# zkBBaY5!v2S3C(XML)U=BURZKC_-%JMvNEbCJ04F<)&d-br86RbYZ|NNzV}q}uLx5k zV#AWBD!x5v0c{kOiM{`Q{w%bdpE!c@%_*mix?=XRnq;|JV}t0Db~h|RhUKwmB(45t z0!DZ#SW3@W*#x;}IiH{G#|dDzOrG1!W+zv_ZehWSpdLb8$~u@@g1X%z)6M{F=>6xH zF(>&DH02mSbS)$5jsT&_>IJLp(H+R;g~__7!Yphy(B zS@h?!)tdTvi2lQkt9Mf{+(Cc7@@Mef{bhUgx@vc~60`H`SMHbXt;Orxw*p9~MXJpA zTLVuA`_7j!OZx|SOMZs;UPjON%c7#oE&=YnqK?`C#mZCV%?>Yshd`$WW-GjJyesbu zNC3=a>kwbD;_((39(u<9SkGkH^R}HQ>$~p5jTn(hEl8)et)fj9HT~urE9>I+ux(i0 zB;v`S;-Q4i&H# ziojBKY0WkH3fL8(8urRg4)Riiv)UGH!Dss`XL&<9d{nM;`{tnWR$0k zw{~<`%(l^^4memJR%dXyaB4ECkQQd@;Qj|SF1@rj&Jc@t{{zdYFLTO%)uJ^l*19D7 z!`T^Lk+4s-4LjkZW~C6wt5=+I3DCaxXNSD-XGqG!*QI=)CgdZ|!Qs+_rsOAQ$jaLZ zTrqVlCIaq3YLLq%H4)ARKrGSnScb$;s7M4yxipv(GXpflz{P`M@InZYiMyXCbf`F) zvO8P}67cP2LP^7faY?2JA)iki`HKWj9YKaNxx2tMoyB21CC+4owMk3dd#nrxUx<1l zI;c<9_BK=T2f{>atT}y+W|tM!-bcN*tKvb+Rso4bOZKHH?TqLLxD;|#jYqflOmV^h50)iY#Gg*5^)iW>MZxW@>4Ldt%j1)4sUw|j~c`VL;>q{@LEQ08~4H4eyq85@CQf|28 zS_fdCf8ne6!9+KM#WTNgl$@}8NkO8{w44fS5B?r%Ry@IG7eT=`pyJbJn2PY)G3c|; zV6AP`)cav&GQL1hRj#BAy_G9Tnq)QM*;MlBulpebqn*HL>k;0jIDc|-?AbX@wmm|E zxs9GMSaGRwy=j5Hq_0j6d%9z>=NP?xw>Ug*O}XF2j|C!5RMRr!&MG@qG4&P*!(p7p z_6Aa)hOJ`zSjioi_c|9}!WrOz_4pmtsRr+oNTzOg?|Ow4yXUMBmw4FVuVheNj+o8!DLRg$9L=<+Gq2}O=yKc3Q- zk3t?4aXCf?=&KwLAhFnRWQgzV8y5xH5hkTjp~LT17^B}xgt<@wl;aaN+7+|Ys2Nv_OrbNnCLmTS6O5vv8by>7ifpo0PVJ^G&=r1;b9OB~P%%5O zcB5^>-c;u3J;~{`{h446j>rmZ68uxuNyEuO5OLhRnAB!;0MohpbS0o2mxl3|>hMw) zyrkHPlLr1xR^ItNswdc+S7n33R7nFhmB;>wmSTDkgR9AwBal=WDy77}*$%T#-@ek4 zjS^pvVmpQ(+hH8D199lGA>Co@uFU<#@hf4J=#|z{YFavUZ3*BD~5Rm1dfP*lQ+DY-v+MDWm91R}epL`Y5lz1mh_r=P7(1%~Pqh!{JfM)CSGhGV} zwmyD3oHiz}r_r`(yh9j z{PYjCNiHLf+ofEmY?-n8fX}eZfGBzm4?8GrIPHlxds8I6nyi{~iYENcXjT+M9TUv z9HY6?(8Sxi2o$=Ho=AL0I5;pIX?C^c2%)fBDgmcSGEp_-Xe&W4_m{b8fDYx5}g07&mxkD6yTc|15}5k|d4eZ=(uu zY3x!$OEZjLU`Ue3Q=M>T(+(Stk~NGZp!MqLV*TEOkZ{rEe6GLCuE&wUu;Gw169r4P zs3BYLx?x20^GBU_h+GnP( zN$*}gr8(^a44yI`y{lp4%39#f@Bx3f40d2)Ls2xGziIG{gf2&Fxyk7pIlxMGS#`8w z%3j?lVgV$Ru)4)@r@zkDg8g)&&=;1D_^?7o9Vrn9mxs2hDB%2;iwX@X0J4L1e!pC# zTb!8}Z@E8GbXjMwx%TUOPc~VJeeDWNCd=jYGlM19AFcFTOGS&qm_D79g#@8S#RBqo z41-6?%`d?xo-rY@h^wmLb7>AQR*@hs{ECG zS{G&==ds`5Wu;QLU_oDlz^3DVQRtqc{QBSqv0FdCYSm%p*(vMbWX(m)OX|JW8Om%a zw;;?(?-(l?J*D!=U{L#^7-H@+GAzm#*z0HpzTnmDI%EE~fYhDhqR8%svC`Umyoi*xeRdP|*QsX(}{}Ov7}BAUsHhhul{|)ui@me0OSSOE7X;LijG>sWdi& z77soKKa+-lt|rSc)`_|&RKhYOF>osuR5}61{rsY;16$X$aNk*iIN06_N&zunO^g*Zkyo@a>S`($Hle;z^u^<;nnMLD$=)GzV267N0g&fBC7ktmSShZN^@4Ux6#5^WF8lkT6s6aj&VTAQU>OzkY)JpIO%XP)bPU_A4?fdB`N#~(c)Mrzk_W9v`?CBh~bn*KOC!W1H+Gz+l*}0 zgp4{DCpNdG){K>e3`tdRRk?S;%B17-+wJs($B*@P(GDITB}a&pv~#Qz<1^=$P_C9v zjM|A9n^WLvJT;37J`+q7Lhup6{?i2)6F+?p-s%3Sb55vqpQtnrb-g3R-rZ2guWjEP zRVMYSu?gV`pjbi&fT?5_DMIt=4-y)F21sk_uQw4>@SB#Vp9yE}*VZNoeRkeD@~}Tt zTsTajE>4d@j>C4&>(fk?#TlTTNwdQ;bq1D6*XVQeivlV#kU}^P@!&9dO=cawQP-VP z)h}u=ZF;6bz zTt;zxYEl_5z*RBLt05T1lSaxl$|x?GStOSjt%y2n8S4V#B*_C3R8KeMdsEpl$g}8K zT7Q%KEb@kCQ2WqRS#u&bKOfg0cS_(OX?~?Zh$xpz@t(3V1vSzi_2F^~%gsWAjOySS zW%*^P=Fz^p>}-oim6|Z{nv<`q+gW2v8rnmf9ms8Tp4j2&uooi#1+|CZqX6?-9~E)!()1;3kC$IDV#G=_~7|)@#Rc&^<;kNKaIA6&j zy{~~)Oh}|k&$_Y^ljY$4RY%tnCS-2ZIBA9yR)$k@(bfo1w4m`GXlzp*sQcGc_u1c92UCn3YNf=x86~2Jsy0U1V$|4_3}rrYVV}q@$G<+~Cu= z>A%r}&w0G+5KW?RvI7wd7nCYd_mwiYtzZAD&{&#V%VUf07$jf*qhjFKP{Ih-n}QO} zVdTQ0(YK3f9tSNtq2n_{9@@o8i5iA*Bd6i)@Rtg~au0}v+Vye|sp;>Mt)})t0GrAS zO&x2Hb!84|M3#7%bM!aTia(?5ctr_>lf)+!`f2Y91#=Gs*5;1=;n@?Y!Ky2@3}6^H z)g=l*Yh(z#C2Oo5<|4bMq5$jM3Z)y5Fiyi9vGODpZ5l{RU4NuM#KB0cU%ivK)@xX6 z`za&6$QI^!j+?#FpsJG+;$ebyU%Su_qob~0=oFkZLP*F+?D{k@f<)mOw zYVy}~CR+aL4jR{}4R(#i5BgVWU(Esp{+~;01Eay3zaFkrO-VKa^iO6Myk9F8rkJdt7T2)-E^Ce@LL zhT}WOLFvDfGtq)%`P-ygTtiDQVQaZN6$V>{g6_eg4AUqTk+7P$%UbLNVZpzYDNSa? zI@^wJejVoN1i{lf&lw&X_&rG=Use>rfEC>;#pCML7k{^@X1~cuMiX%h)g4v%2C&zy zi_S~}1w;nAd>7{NITD=)<(JfQ#%>6+%jhdAZ@tb$gF-q#$#1~bFrHJ9y6E>Kv(@l$ zgE0K5^=mIu=NbhN&YemhSXv~ zIv-TjL^nLx(r@Juv}a}ZFniSfc;;7m#toUE6>k-^uq2sV zB??IyqLm=%kF!#o6Y`l6BMOL13?o7SWY=#?>ZdYhh9ZH&|GF@=j2oo$b>mApGxvr` zxmFEPO-EaG?6J!c+!OMC*s%IM?`bg|<}#o-l{9jy8MUkm6}TJ-a@3>k&~+t{y@+*v ze0E$%!!%+TnQK4qpGc(@{wiYw+HsPBHDMJ}v$DR3Qcl(+i_oq{9zaP)CK}Ntgke%@ zsx%r^VU2Ra?*q;p{Ckua%VNf=6^4hO6ExRnG&x_0Ma|Dg4GP3~nxP|ARSXBDo}FNj zi56{#KZ6{sC&k1FhMIjERKXWss0SxK%(~!ZatG_m3lTAV^BO(HZaNR_44z=3x$+L> z+mWY8X7UJ8ilzw^*J?Y?Z=mZqm$U2n*L)J=>;rjLF_k2-P z0_1{XecX3~!bc2*T1&vE3-Vw0NC9!Z&n;&YdLu_TyPcC{H|SbQwD3{w?C$L8uQT=E{VyBd^FqeD#1IqB7Mz z!i;rh8Q`Z|4}ysRuE|oSAwJ*p<;7eeX~Ak$;cNK}Ez-PtSrG&%4kLRn<|=izWey6c zl8`!;DIzLYQN)dK651^rgdHY00_b~Q3z)5%LuVEQ>_e4-w@i;x1_398I+!%gm!xh7 z4C;;=vYJH^)^?91gb>;}kOjZR5L|^58lkmo3IKA(o@xDE9Yn-3FO5w|Bf=n2gc0%d zykvx^%n{=CPx9M{{0blr7v)+S7;`AnBP=N&ng+T`XB60WP;13+hZjm)>x+{XeXD2FrV~QPG^B#~hNpW=@EOzcGt#}B zEdZQYpNZ%w#8BLhFdUH(wTG0Ym%X1QSpkuEzYnt_Cnu2vblw`CS0~5nW|3#hRs_HP z*)N-YB$kuk)BhLfGLvvgsd8d z>E~AB{nMj$vxgU{_s++nq$ItO%?I7gv8Jxb%uc+HmbKTcnY!DV=p+x~Z&SLF@7^t+ zTLKT}j|TRYe@zLdO+{Af0pji-z45#RS6-d(&IXRQ94-YVro3_Ayy{(9-5=bY*zo|z z$9#{1z{Pv2N6F4k@21CzqvQRfA$1SE=!dN6%;<-^qqM`kt}cTXPiH}$(N=e-rSj;T z+h~Wco4SQwmA^XT>0lkUfyY_6Y23MAsgZrb2?-#_+-rv0M?i$vnpr82# zv*h#Mlv^%#XX>(y*5w_tY&S+6EjIvjeS4t28Ns#~Q!qE6u9&Dc@!!Mon@ zEjQM)#Etfom#3HI=G4?Jlfy@FUDoaGT%M`#hnG9%g!t&jEqJQVrQUnbN2B@U&drN^ z+9PN4vqkGQQ>CqFqrpefvVhL$?aQybiSK*Yw{8Mn-g>tJoKt1X(TikRRkxmZcP)SZ z0N1z#n;zSlUc+BkyuWs|W?p`)l@MOwCI0F`JGG-%t1j39?CK)wNVH5g*!R4123{7^ z5a$+fsMw zCzkpj{J+H*L4Sg1fwE-?f5rSLBLFo4x|MxKwmy~rO+pX)G*tr%1O)d#P(8T74P1QS zQW?TOMxGBrx|UDI9vBc1{QqF|CIF@p5F-7jJwT>%0#G}kOgY`+cl_5~bW;XKD-!@WEB;;nc?AI&jS5gmg%n6%`LBn!k^nRZs9s6;PqA5r zg}U-5+V-=M|CgBm?F|@UP9@tvo(!V0KboJvd4Cp~|KQ2^kGM^(pbo=QaPQNg}|jYVN-%+8P3|@4CS2YD}O`4femA z)=I5>aQlgB{X`M{hdsRp{}?X};QzmY_P=&AxJLgJP_Ys)HRzyd`j|YqF{fK>F=;8UZ0IcxdW)X1kz!#G6FfmA=xOvfJ!7bWs In^uAZ0lyo=uK)l5 diff --git a/org/index.org b/org/index.org index 2d4a65b..677aad3 100644 --- a/org/index.org +++ b/org/index.org @@ -82,6 +82,8 @@ Active damping techniques are applied to the full Simscape model. In this file are gathered all studies about the control the Nano-Active-Stabilization-System. * Nano-Hexapod Simscape Model ([[file:nano_hexapod.org][link]]) +The nano-hexapod simscape model is described and used for simulations. + * Useful Matlab Functions ([[./functions.org][link]]) Many matlab functions are shared among all the files of the projects. diff --git a/org/nano_hexapod.org b/org/nano_hexapod.org index aaac76c..f473324 100644 --- a/org/nano_hexapod.org +++ b/org/nano_hexapod.org @@ -264,9 +264,10 @@ exportFig('figs/nano_hexapod_effect_encoder.pdf', 'width', 'full', 'height', 'ta #+RESULTS: [[file:figs/nano_hexapod_effect_encoder.png]] -#+begin_question -Why do we have zeros at 400Hz and 800Hz when the encoders are fixed on the struts? -#+end_question +#+begin_important +The zeros at 400Hz and 800Hz should corresponds to resonances of the system when one of the APA is blocked. +It is linked to the axial stiffness of the flexible joints: increasing the axial stiffness of the joints will increase the frequency of the zeros. +#+end_important ** Effect of APA flexibility <> @@ -2446,6 +2447,46 @@ exportFig('figs/nano_hexapod_dvf_compare_compliance_plates.pdf', 'width', 'wide' [[file:figs/nano_hexapod_dvf_compare_compliance_plates.png]] * To-order :noexport: +** Why Zero when encoder on the struts +#+begin_src matlab +n_hexapod = initializeNanoHexapodFinal('flex_bot_type', '4dof', ... + 'flex_top_type', '4dof', ... + 'motion_sensor_type', 'struts', ... + 'actuator_type', '2dof'); +#+end_src + +The transfer function from actuator inputs to force sensors outputs is identified. +#+begin_src matlab +%% Options for Linearized +options = linearizeOptions; +options.SampleTime = 0; + +%% Name of the Simulink File +mdl = 'test_apa300ml'; + +%% Input/Output definition +clear io; io_i = 1; +io(io_i) = linio([mdl, '/F'], 1, 'openinput'); io_i = io_i + 1; % Actuator Inputs +io(io_i) = linio([mdl, '/dLs'], 1, 'openoutput'); io_i = io_i + 1; % Force Sensors +io(io_i) = linio([mdl, '/dLp'], 1, 'openoutput'); io_i = io_i + 1; % Force Sensors + +G = linearize(mdl, io, 0.0, options); +G.InputName = {'F'}; +G.OutputName = {'dLs', 'dLp'}; + +bodeFig({G(1), G(2)}, logspace(1,4,1000)) +#+end_src + +The zero seems to be linked to the axial flexibility of the top joint. + +In this mode, the APA does not experience any motion (hence the zero). +The resonance frequency then corresponds to the top mass on top of the axial stiffness of the two joints in series. + +For the nano-hexapod, it corresponds to the resonance of the top mass when all (or *just one*?) of the APA is blocked. + +#+begin_src matlab +sqrt((n_hexapod.flex_bot.kz(1)/2)/(55/3))/2/pi +#+end_src ** Verify why unstable strut #+begin_src matlab :results value replace