Continue flexible joint study

This commit is contained in:
2020-05-05 10:34:45 +02:00
parent 4e531a6673
commit 9bc27e1f60
22 changed files with 5724 additions and 112 deletions

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 169 KiB

After

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 91 KiB

After

Width:  |  Height:  |  Size: 86 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 199 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

View File

@@ -0,0 +1,534 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2020-05-05 mar. 10:34 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>Study of the Flexible Joints</title>
<meta name="generator" content="Org mode" />
<meta name="author" content="Dehaeze Thomas" />
<link rel="stylesheet" type="text/css" href="./css/htmlize.css"/>
<link rel="stylesheet" type="text/css" href="./css/readtheorg.css"/>
<script src="./js/jquery.min.js"></script>
<script src="./js/bootstrap.min.js"></script>
<script src="./js/jquery.stickytableheaders.min.js"></script>
<script src="./js/readtheorg.js"></script>
<script>MathJax = {
tex: {
tags: 'ams',
macros: {bm: ["\\boldsymbol{#1}",1],}
}
};
</script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
</head>
<body>
<div id="org-div-home-and-up">
<a accesskey="h" href="./index.html"> UP </a>
|
<a accesskey="H" href="./index.html"> HOME </a>
</div><div id="content">
<h1 class="title">Study of the Flexible Joints</h1>
<div id="table-of-contents">
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org83db6d9">1. Rotational Stiffness</a>
<ul>
<li><a href="#orgd487aa8">1.1. Initialization</a></li>
<li><a href="#orgbc5ab48">1.2. Realistic Rotational Stiffness Values</a>
<ul>
<li><a href="#orgfa496e1">1.2.1. Direct Velocity Feedback</a></li>
<li><a href="#org2cf681e">1.2.2. Primary Plant</a></li>
<li><a href="#org17b7568">1.2.3. Conclusion</a></li>
</ul>
</li>
<li><a href="#org8ad3f34">1.3. Parametric Study</a>
<ul>
<li><a href="#org067911e">1.3.1. Direct Velocity Feedback</a></li>
<li><a href="#org3d67d1c">1.3.2. Primary Control</a></li>
<li><a href="#org700e2da">1.3.3. Conclusion</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#org81f1d95">2. Translation Stiffness</a>
<ul>
<li><a href="#org969d9e7">2.1. Realistic Translation Stiffness Values</a>
<ul>
<li><a href="#org4af6fbb">2.1.1. Initialization</a></li>
<li><a href="#org5135788">2.1.2. Direct Velocity Feedback</a></li>
<li><a href="#org7eb4054">2.1.3. Primary Plant</a></li>
</ul>
</li>
<li><a href="#org0275632">2.2. Parametric study</a>
<ul>
<li><a href="#org1f64e69">2.2.1. Direct Velocity Feedback</a></li>
<li><a href="#orgb35fa00">2.2.2. Primary Control</a></li>
</ul>
</li>
<li><a href="#org81a1a77">2.3. Conclusion</a></li>
</ul>
</li>
</ul>
</div>
</div>
<p>
In this document is studied the effect of the mechanical behavior of the flexible joints that are located the extremities of each nano-hexapod&rsquo;s legs.
</p>
<p>
Ideally, we want the x and y rotations to be free and all the translations to be blocked.
However, this is never the case and be have to consider:
</p>
<ul class="org-ul">
<li>Finite x and y rotational stiffnesses (Section <a href="#org3eb4121">1</a>)</li>
<li>Translation stiffness in the direction of the legs (Section <a href="#org8f4d83b">2</a>)</li>
</ul>
<p>
This may impose some limitations, also, the goal is to specify the required joints stiffnesses.
</p>
<div id="outline-container-org83db6d9" class="outline-2">
<h2 id="org83db6d9"><span class="section-number-2">1</span> Rotational Stiffness</h2>
<div class="outline-text-2" id="text-1">
<p>
<a id="org3eb4121"></a>
</p>
<p>
In this section, we wish to study the effect of the rotation flexibility of the nano-hexapod joints.
</p>
</div>
<div id="outline-container-orgd487aa8" class="outline-3">
<h3 id="orgd487aa8"><span class="section-number-3">1.1</span> Initialization</h3>
<div class="outline-text-3" id="text-1-1">
<p>
Let&rsquo;s initialize all the stages with default parameters.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeGround();
initializeGranite();
initializeTy();
initializeRy();
initializeRz();
initializeMicroHexapod();
initializeAxisc();
initializeMirror();
</pre>
</div>
<p>
Let&rsquo;s consider the heaviest mass which should we the most problematic with it comes to the flexible joints.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeSample('mass', 50, 'freq', 200*ones(6,1));
initializeReferences('Rz_type', 'rotating-not-filtered', 'Rz_period', 60);
</pre>
</div>
</div>
</div>
<div id="outline-container-orgbc5ab48" class="outline-3">
<h3 id="orgbc5ab48"><span class="section-number-3">1.2</span> Realistic Rotational Stiffness Values</h3>
<div class="outline-text-3" id="text-1-2">
<p>
Let&rsquo;s compare the ideal case (zero stiffness in rotation and infinite stiffness in translation) with a more realistic case:
</p>
<ul class="org-ul">
<li>\(K_{\theta, \phi} = 15\,[Nm/rad]\) stiffness in flexion</li>
<li>\(K_{\psi} = 20\,[Nm/rad]\) stiffness in torsion</li>
</ul>
<div class="org-src-container">
<pre class="src src-matlab">Kf_M = 15*ones(6,1);
Kf_F = 15*ones(6,1);
Kt_M = 20*ones(6,1);
Kt_F = 20*ones(6,1);
</pre>
</div>
<p>
The stiffness and damping of the nano-hexapod&rsquo;s legs are:
</p>
<div class="org-src-container">
<pre class="src src-matlab">k_opt = 1e5; % [N/m]
c_opt = 2e2; % [N/(m/s)]
</pre>
</div>
<p>
This corresponds to the optimal identified stiffness.
</p>
</div>
<div id="outline-container-orgfa496e1" class="outline-4">
<h4 id="orgfa496e1"><span class="section-number-4">1.2.1</span> Direct Velocity Feedback</h4>
<div class="outline-text-4" id="text-1-2-1">
<p>
We identify the dynamics from actuators force \(\tau_i\) to relative motion sensors \(d\mathcal{L}_i\) with and without considering the flexible joint stiffness.
</p>
<p>
The obtained dynamics are shown in Figure <a href="#org656fd1c">1</a>.
It is shown that the adding of stiffness for the flexible joints does increase a little bit the frequencies of the mass suspension modes. It stiffen the structure.
</p>
<div id="org656fd1c" class="figure">
<p><img src="figs/flex_joint_rot_dvf.png" alt="flex_joint_rot_dvf.png" />
</p>
<p><span class="figure-number">Figure 1: </span>Dynamics from actuators force \(\tau_i\) to relative motion sensors \(d\mathcal{L}_i\) with (blue) and without (red) considering the flexible joint stiffness</p>
</div>
</div>
</div>
<div id="outline-container-org2cf681e" class="outline-4">
<h4 id="org2cf681e"><span class="section-number-4">1.2.2</span> Primary Plant</h4>
<div class="outline-text-4" id="text-1-2-2">
<p>
Let&rsquo;s now identify the dynamics from \(\bm{\tau}^\prime\) to \(\bm{\epsilon}_{\mathcal{X}_n}\) (for the primary controller designed in the frame of the legs).
</p>
<p>
The dynamics is compare with and without the joint flexibility in Figure <a href="#org4322feb">2</a>.
The plant dynamics is not found to be changing significantly.
</p>
<div id="org4322feb" class="figure">
<p><img src="figs/flex_joints_rot_primary_plant_L.png" alt="flex_joints_rot_primary_plant_L.png" />
</p>
<p><span class="figure-number">Figure 2: </span>Dynamics from \(\bm{\tau}^\prime_i\) to \(\bm{\epsilon}_{\mathcal{X}_n,i}\) with perfect joints (dashed) and with flexible joints (solid)</p>
</div>
</div>
</div>
<div id="outline-container-org17b7568" class="outline-4">
<h4 id="org17b7568"><span class="section-number-4">1.2.3</span> Conclusion</h4>
<div class="outline-text-4" id="text-1-2-3">
<div class="important">
<p>
Considering realistic flexible joint rotational stiffness for the nano-hexapod does not seems to impose any limitation on the DVF control nor on the primary control.
</p>
<p>
It only increases a little bit the suspension modes of the sample on top of the nano-hexapod.
</p>
</div>
</div>
</div>
</div>
<div id="outline-container-org8ad3f34" class="outline-3">
<h3 id="org8ad3f34"><span class="section-number-3">1.3</span> Parametric Study</h3>
<div class="outline-text-3" id="text-1-3">
<p>
We wish now to see what is the impact of the rotation stiffness of the flexible joints on the dynamics.
This will help to determine the requirements on the joint&rsquo;s stiffness.
</p>
<p>
Let&rsquo;s consider the following rotational stiffness of the flexible joints:
</p>
<div class="org-src-container">
<pre class="src src-matlab">Ks = [1, 5, 10, 50, 100]; % [Nm/rad]
</pre>
</div>
<p>
We also consider here a nano-hexapod with the identified optimal actuator stiffness.
</p>
</div>
<div id="outline-container-org067911e" class="outline-4">
<h4 id="org067911e"><span class="section-number-4">1.3.1</span> Direct Velocity Feedback</h4>
<div class="outline-text-4" id="text-1-3-1">
<p>
The dynamics from the actuators to the relative displacement sensor in each leg is identified and shown in Figure <a href="#org8fbbf9d">3</a>.
</p>
<p>
The corresponding Root Locus plot is shown in Figure <a href="#orgb9f3389">4</a>.
</p>
<p>
It is shown that the rotational stiffness of the flexible joints does indeed change a little the dynamics, but critical damping is stiff achievable with Direct Velocity Feedback.
</p>
<div id="org8fbbf9d" class="figure">
<p><img src="figs/flex_joints_rot_study_dvf.png" alt="flex_joints_rot_study_dvf.png" />
</p>
<p><span class="figure-number">Figure 3: </span>Dynamics from \(\tau_i\) to \(d\mathcal{L}_i\) for all the considered Rotation Stiffnesses</p>
</div>
<div id="orgb9f3389" class="figure">
<p><img src="figs/flex_joints_rot_study_dvf_root_locus.png" alt="flex_joints_rot_study_dvf_root_locus.png" />
</p>
<p><span class="figure-number">Figure 4: </span>Root Locus for all the considered Rotation Stiffnesses</p>
</div>
</div>
</div>
<div id="outline-container-org3d67d1c" class="outline-4">
<h4 id="org3d67d1c"><span class="section-number-4">1.3.2</span> Primary Control</h4>
<div class="outline-text-4" id="text-1-3-2">
<p>
The dynamics from \(\bm{\tau}^\prime\) to \(\bm{\epsilon}_{\mathcal{X}_n}\) (for the primary controller designed in the frame of the legs) is shown in Figure <a href="#orgb739560">5</a>.
</p>
<p>
It is shown that the rotational stiffness of the flexible joints have very little impact on the dynamics.
</p>
<div id="orgb739560" class="figure">
<p><img src="figs/flex_joints_rot_study_primary_plant.png" alt="flex_joints_rot_study_primary_plant.png" />
</p>
<p><span class="figure-number">Figure 5: </span>Diagonal elements of the transfer function matrix from \(\bm{\tau}^\prime\) to \(\bm{\epsilon}_{\mathcal{X}_n}\) for the considered rotational stiffnesses</p>
</div>
</div>
</div>
<div id="outline-container-org700e2da" class="outline-4">
<h4 id="org700e2da"><span class="section-number-4">1.3.3</span> Conclusion</h4>
<div class="outline-text-4" id="text-1-3-3">
<div class="important">
<p>
The rotational stiffness of the flexible joint does not significantly change the dynamics.
</p>
</div>
</div>
</div>
</div>
</div>
<div id="outline-container-org81f1d95" class="outline-2">
<h2 id="org81f1d95"><span class="section-number-2">2</span> Translation Stiffness</h2>
<div class="outline-text-2" id="text-2">
<p>
<a id="org8f4d83b"></a>
</p>
<p>
Let&rsquo;s know consider a flexibility in translation of the flexible joint, in the axis of the legs.
</p>
</div>
<div id="outline-container-org969d9e7" class="outline-3">
<h3 id="org969d9e7"><span class="section-number-3">2.1</span> Realistic Translation Stiffness Values</h3>
<div class="outline-text-3" id="text-2-1">
<p>
We choose realistic values of the axial stiffness of the joints:
\[ K_a = 60\,[N/\mu m] \]
</p>
<div class="org-src-container">
<pre class="src src-matlab">Kz_F = 60e6*ones(6,1); % [N/m]
Kz_M = 60e6*ones(6,1); % [N/m]
Cz_F = 1*ones(6,1); % [N/(m/s)]
Cz_M = 1*ones(6,1); % [N/(m/s)]
</pre>
</div>
</div>
<div id="outline-container-org4af6fbb" class="outline-4">
<h4 id="org4af6fbb"><span class="section-number-4">2.1.1</span> Initialization</h4>
<div class="outline-text-4" id="text-2-1-1">
<p>
Let&rsquo;s initialize all the stages with default parameters.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeGround();
initializeGranite();
initializeTy();
initializeRy();
initializeRz();
initializeMicroHexapod();
initializeAxisc();
initializeMirror();
</pre>
</div>
<p>
Let&rsquo;s consider the heaviest mass which should we the most problematic with it comes to the flexible joints.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeSample('mass', 50, 'freq', 200*ones(6,1));
initializeReferences('Rz_type', 'rotating-not-filtered', 'Rz_period', 60);
</pre>
</div>
</div>
</div>
<div id="outline-container-org5135788" class="outline-4">
<h4 id="org5135788"><span class="section-number-4">2.1.2</span> Direct Velocity Feedback</h4>
<div class="outline-text-4" id="text-2-1-2">
<p>
The dynamics from actuators force \(\tau_i\) to relative motion sensors \(d\mathcal{L}_i\) with and without considering the flexible joint stiffness are identified.
</p>
<p>
The obtained dynamics are shown in Figure <a href="#org78dd87a">6</a>.
</p>
<div id="org78dd87a" class="figure">
<p><img src="figs/flex_joint_trans_dvf.png" alt="flex_joint_trans_dvf.png" />
</p>
<p><span class="figure-number">Figure 6: </span>Dynamics from actuators force \(\tau_i\) to relative motion sensors \(d\mathcal{L}_i\) with (blue) and without (red) considering the flexible joint axis stiffness</p>
</div>
</div>
</div>
<div id="outline-container-org7eb4054" class="outline-4">
<h4 id="org7eb4054"><span class="section-number-4">2.1.3</span> Primary Plant</h4>
<div class="outline-text-4" id="text-2-1-3">
<div class="org-src-container">
<pre class="src src-matlab">Kdvf = 5e3*s/(1+s/2/pi/1e3)*eye(6);
</pre>
</div>
<p>
Let&rsquo;s now identify the dynamics from \(\bm{\tau}^\prime\) to \(\bm{\epsilon}_{\mathcal{X}_n}\) (for the primary controller designed in the frame of the legs).
</p>
<p>
The dynamics is compare with and without the joint flexibility in Figure <a href="#org9bd0791">7</a>.
</p>
<div id="org9bd0791" class="figure">
<p><img src="figs/flex_joints_trans_primary_plant_L.png" alt="flex_joints_trans_primary_plant_L.png" />
</p>
<p><span class="figure-number">Figure 7: </span>Dynamics from \(\bm{\tau}^\prime_i\) to \(\bm{\epsilon}_{\mathcal{X}_n,i}\) with infinite axis stiffnes (solid) and with realistic axial stiffness (dashed)</p>
</div>
</div>
</div>
</div>
<div id="outline-container-org0275632" class="outline-3">
<h3 id="org0275632"><span class="section-number-3">2.2</span> Parametric study</h3>
<div class="outline-text-3" id="text-2-2">
<p>
We wish now to see what is the impact of the <b>axial</b> stiffness of the flexible joints on the dynamics.
</p>
<p>
Let&rsquo;s consider the following values for the axial stiffness:
</p>
<div class="org-src-container">
<pre class="src src-matlab">Kzs = [1e4, 1e5, 1e6, 1e7, 1e8, 1e9]; % [N/m]
</pre>
</div>
<p>
We also consider here a nano-hexapod with the identified optimal actuator stiffness (\(k = 10^5\,[N/m]\)).
</p>
</div>
<div id="outline-container-org1f64e69" class="outline-4">
<h4 id="org1f64e69"><span class="section-number-4">2.2.1</span> Direct Velocity Feedback</h4>
<div class="outline-text-4" id="text-2-2-1">
<p>
The dynamics from the actuators to the relative displacement sensor in each leg is identified and shown in Figure <a href="#orgab9ab86">8</a>.
</p>
<p>
It is shown that the axial stiffness of the flexible joints does have a huge impact on the dynamics.
</p>
<p>
If the axial stiffness of the flexible joints is \(K_a > 10^7\,[N/m]\) (here \(100\) times higher than the actuator stiffness), then the change of dynamics stays reasonably small.
</p>
<p>
This is more clear by looking at the root locus (Figures <a href="#org9d43966">9</a> and <a href="#org987d98e">10</a>).
It can be seen that very little active damping can be achieve for rotational joint axial stiffnesses below \(10^7\,[N/m]\).
</p>
<div id="orgab9ab86" class="figure">
<p><img src="figs/flex_joints_trans_study_dvf.png" alt="flex_joints_trans_study_dvf.png" />
</p>
<p><span class="figure-number">Figure 8: </span>Dynamics from \(\tau_i\) to \(d\mathcal{L}_i\) for all the considered axis Stiffnesses</p>
</div>
<div id="org9d43966" class="figure">
<p><img src="figs/flex_joints_trans_study_dvf_root_locus.png" alt="flex_joints_trans_study_dvf_root_locus.png" />
</p>
<p><span class="figure-number">Figure 9: </span>Root Locus for all the considered axial Stiffnesses</p>
</div>
<div class="org-src-container">
<pre class="src src-matlab">xlim([-1e3, 0]);
ylim([0, 1e3]);
</pre>
</div>
<div id="org987d98e" class="figure">
<p><img src="figs/flex_joints_trans_study_root_locus_unzoom.png" alt="flex_joints_trans_study_root_locus_unzoom.png" />
</p>
<p><span class="figure-number">Figure 10: </span>Root Locus (unzoom) for all the considered axial Stiffnesses</p>
</div>
</div>
</div>
<div id="outline-container-orgb35fa00" class="outline-4">
<h4 id="orgb35fa00"><span class="section-number-4">2.2.2</span> Primary Control</h4>
<div class="outline-text-4" id="text-2-2-2">
<p>
The dynamics from \(\bm{\tau}^\prime\) to \(\bm{\epsilon}_{\mathcal{X}_n}\) (for the primary controller designed in the frame of the legs) is shown in Figure <a href="#org6070692">11</a>.
</p>
<div id="org6070692" class="figure">
<p><img src="figs/flex_joints_trans_study_primary_plant.png" alt="flex_joints_trans_study_primary_plant.png" />
</p>
<p><span class="figure-number">Figure 11: </span>Diagonal elements of the transfer function matrix from \(\bm{\tau}^\prime\) to \(\bm{\epsilon}_{\mathcal{X}_n}\) for the considered axial stiffnesses</p>
</div>
</div>
</div>
</div>
<div id="outline-container-org81a1a77" class="outline-3">
<h3 id="org81a1a77"><span class="section-number-3">2.3</span> Conclusion</h3>
<div class="outline-text-3" id="text-2-3">
<div class="important">
<p>
The axial stiffness of the flexible joints should be maximized.
</p>
<p>
For the considered actuator stiffness \(k = 10^5\,[N/m]\), the axial stiffness of the rotational joints should ideally be above \(10^7\,[N/m]\).
</p>
<p>
This is a reasonable stiffness value for such joints.
</p>
<p>
We may interpolate the results and say that the axial joint stiffness should be 100 times higher than the actuator stiffness, but this should be confirmed with further analysis.
</p>
</div>
</div>
</div>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: Dehaeze Thomas</p>
<p class="date">Created: 2020-05-05 mar. 10:34</p>
</div>
</body>
</html>