666 lines
25 KiB
HTML
666 lines
25 KiB
HTML
<?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>
|
|
<!-- 2021-02-20 sam. 23:09 -->
|
|
<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="https://research.tdehaeze.xyz/css/style.css"/>
|
|
<script type="text/javascript" src="https://research.tdehaeze.xyz/js/script.js"></script>
|
|
<script>
|
|
MathJax = {
|
|
svg: {
|
|
scale: 1,
|
|
fontCache: "global"
|
|
},
|
|
tex: {
|
|
tags: "ams",
|
|
multlineWidth: "%MULTLINEWIDTH",
|
|
tagSide: "right",
|
|
macros: {bm: ["\\boldsymbol{#1}",1],},
|
|
tagIndent: ".8em"
|
|
}
|
|
};
|
|
</script>
|
|
<script id="MathJax-script" async
|
|
src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-svg.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="#org157c72f">1. Bending and Torsional Stiffness</a>
|
|
<ul>
|
|
<li><a href="#org19fa00c">1.1. Initialization</a></li>
|
|
<li><a href="#orgc66d5ef">1.2. Realistic Bending Stiffness Values</a>
|
|
<ul>
|
|
<li><a href="#org7f86aa6">1.2.1. Direct Velocity Feedback</a></li>
|
|
<li><a href="#orgd763ab8">1.2.2. Primary Plant</a></li>
|
|
<li><a href="#org34d48fd">1.2.3. Conclusion</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#org2383b0a">1.3. Parametric Study</a>
|
|
<ul>
|
|
<li><a href="#org0b2ea81">1.3.1. Direct Velocity Feedback</a></li>
|
|
<li><a href="#org4bcbd52">1.3.2. Primary Control</a></li>
|
|
<li><a href="#orgd481cbd">1.3.3. Conclusion</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#org122af58">2. Axial Stiffness</a>
|
|
<ul>
|
|
<li><a href="#orgbd421fd">2.1. Realistic Translation Stiffness Values</a>
|
|
<ul>
|
|
<li><a href="#org7e915de">2.1.1. Initialization</a></li>
|
|
<li><a href="#org484b32d">2.1.2. Direct Velocity Feedback</a></li>
|
|
<li><a href="#org4c02123">2.1.3. Primary Plant</a></li>
|
|
<li><a href="#org8aa50f5">2.1.4. Conclusion</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#orge0a9c34">2.2. Parametric study</a>
|
|
<ul>
|
|
<li><a href="#org564cc95">2.2.1. Direct Velocity Feedback</a></li>
|
|
<li><a href="#orgc1721b8">2.2.2. Primary Control</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#org13f48c9">2.3. Conclusion</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#org5519f74">3. Conclusion</a></li>
|
|
<li><a href="#org358d063">4. Designed Flexible Joints</a>
|
|
<ul>
|
|
<li><a href="#org1148778">4.1. Initialization</a></li>
|
|
<li><a href="#orgd889755">4.2. Direct Velocity Feedback</a></li>
|
|
<li><a href="#org12972b2">4.3. Integral Force Feedback</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’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 bending stiffnesses (Section <a href="#org27b9411">1</a>)</li>
|
|
<li>Axial stiffness in the direction of the legs (Section <a href="#org7789cf6">2</a>)</li>
|
|
</ul>
|
|
|
|
<p>
|
|
This may impose some limitations, also, the goal is to specify the required joints stiffnesses (summarized in Section <a href="#org8e0b118">3</a>).
|
|
</p>
|
|
|
|
<div id="outline-container-org157c72f" class="outline-2">
|
|
<h2 id="org157c72f"><span class="section-number-2">1</span> Bending and Torsional Stiffness</h2>
|
|
<div class="outline-text-2" id="text-1">
|
|
<p>
|
|
<a id="org27b9411"></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-org19fa00c" class="outline-3">
|
|
<h3 id="org19fa00c"><span class="section-number-3">1.1</span> Initialization</h3>
|
|
<div class="outline-text-3" id="text-1-1">
|
|
<p>
|
|
Let’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’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(<span class="org-string">'mass'</span>, 50, <span class="org-string">'freq'</span>, 200<span class="org-type">*</span>ones(6,1));
|
|
initializeReferences(<span class="org-string">'Rz_type'</span>, <span class="org-string">'rotating-not-filtered'</span>, <span class="org-string">'Rz_period'</span>, 60);
|
|
</pre>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-orgc66d5ef" class="outline-3">
|
|
<h3 id="orgc66d5ef"><span class="section-number-3">1.2</span> Realistic Bending Stiffness Values</h3>
|
|
<div class="outline-text-3" id="text-1-2">
|
|
<p>
|
|
Let’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<span class="org-type">*</span>ones(6,1);
|
|
Kf_F = 15<span class="org-type">*</span>ones(6,1);
|
|
Kt_M = 20<span class="org-type">*</span>ones(6,1);
|
|
Kt_F = 20<span class="org-type">*</span>ones(6,1);
|
|
</pre>
|
|
</div>
|
|
|
|
<p>
|
|
The stiffness and damping of the nano-hexapod’s legs are:
|
|
</p>
|
|
<div class="org-src-container">
|
|
<pre class="src src-matlab"> k_opt = 1e5; <span class="org-comment">% [N/m]</span>
|
|
c_opt = 2e2; <span class="org-comment">% [N/(m/s)]</span>
|
|
</pre>
|
|
</div>
|
|
|
|
<p>
|
|
This corresponds to the optimal identified stiffness.
|
|
</p>
|
|
</div>
|
|
|
|
<div id="outline-container-org7f86aa6" class="outline-4">
|
|
<h4 id="org7f86aa6"><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="#orgc127d0f">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="orgc127d0f" 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-orgd763ab8" class="outline-4">
|
|
<h4 id="orgd763ab8"><span class="section-number-4">1.2.2</span> Primary Plant</h4>
|
|
<div class="outline-text-4" id="text-1-2-2">
|
|
<p>
|
|
Let’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="#orgbca1f59">2</a>.
|
|
The plant dynamics is not found to be changing significantly.
|
|
</p>
|
|
|
|
|
|
<div id="orgbca1f59" 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 and with flexible joints</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-org34d48fd" class="outline-4">
|
|
<h4 id="org34d48fd"><span class="section-number-4">1.2.3</span> Conclusion</h4>
|
|
<div class="outline-text-4" id="text-1-2-3">
|
|
<div class="important" id="org5365e9f">
|
|
<p>
|
|
Considering realistic flexible joint bending 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-org2383b0a" class="outline-3">
|
|
<h3 id="org2383b0a"><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’s stiffness.
|
|
</p>
|
|
|
|
<p>
|
|
Let’s consider the following bending stiffness of the flexible joints:
|
|
</p>
|
|
<div class="org-src-container">
|
|
<pre class="src src-matlab"> Ks = [1, 5, 10, 50, 100]; <span class="org-comment">% [Nm/rad]</span>
|
|
</pre>
|
|
</div>
|
|
|
|
<p>
|
|
We also consider here a nano-hexapod with the identified optimal actuator stiffness.
|
|
</p>
|
|
</div>
|
|
|
|
<div id="outline-container-org0b2ea81" class="outline-4">
|
|
<h4 id="org0b2ea81"><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="#org849b1d6">3</a>.
|
|
</p>
|
|
|
|
<p>
|
|
The corresponding Root Locus plot is shown in Figure <a href="#org311fafc">4</a>.
|
|
</p>
|
|
|
|
<p>
|
|
It is shown that the bending 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="org849b1d6" 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="org311fafc" 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-org4bcbd52" class="outline-4">
|
|
<h4 id="org4bcbd52"><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="#orgaed64b5">5</a>.
|
|
</p>
|
|
|
|
<p>
|
|
It is shown that the bending stiffness of the flexible joints have very little impact on the dynamics.
|
|
</p>
|
|
|
|
|
|
<div id="orgaed64b5" 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 bending stiffnesses</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-orgd481cbd" class="outline-4">
|
|
<h4 id="orgd481cbd"><span class="section-number-4">1.3.3</span> Conclusion</h4>
|
|
<div class="outline-text-4" id="text-1-3-3">
|
|
<div class="important" id="org98dc84f">
|
|
<p>
|
|
The bending stiffness of the flexible joint does not significantly change the dynamics.
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-org122af58" class="outline-2">
|
|
<h2 id="org122af58"><span class="section-number-2">2</span> Axial Stiffness</h2>
|
|
<div class="outline-text-2" id="text-2">
|
|
<p>
|
|
<a id="org7789cf6"></a>
|
|
</p>
|
|
<p>
|
|
Let’s know consider a flexibility in translation of the flexible joint, in the axis of the legs.
|
|
</p>
|
|
</div>
|
|
|
|
<div id="outline-container-orgbd421fd" class="outline-3">
|
|
<h3 id="orgbd421fd"><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"> Ka_F = 60e6<span class="org-type">*</span>ones(6,1); <span class="org-comment">% [N/m]</span>
|
|
Ka_M = 60e6<span class="org-type">*</span>ones(6,1); <span class="org-comment">% [N/m]</span>
|
|
Ca_F = 1<span class="org-type">*</span>ones(6,1); <span class="org-comment">% [N/(m/s)]</span>
|
|
Ca_M = 1<span class="org-type">*</span>ones(6,1); <span class="org-comment">% [N/(m/s)]</span>
|
|
</pre>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-org7e915de" class="outline-4">
|
|
<h4 id="org7e915de"><span class="section-number-4">2.1.1</span> Initialization</h4>
|
|
<div class="outline-text-4" id="text-2-1-1">
|
|
<p>
|
|
Let’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’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(<span class="org-string">'mass'</span>, 50, <span class="org-string">'freq'</span>, 200<span class="org-type">*</span>ones(6,1));
|
|
initializeReferences(<span class="org-string">'Rz_type'</span>, <span class="org-string">'rotating-not-filtered'</span>, <span class="org-string">'Rz_period'</span>, 60);
|
|
</pre>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-org484b32d" class="outline-4">
|
|
<h4 id="org484b32d"><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="#org90e79ad">6</a>.
|
|
</p>
|
|
|
|
|
|
<div id="org90e79ad" 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-org4c02123" class="outline-4">
|
|
<h4 id="org4c02123"><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<span class="org-type">*</span>s<span class="org-type">/</span>(1<span class="org-type">+</span>s<span class="org-type">/</span>2<span class="org-type">/</span><span class="org-constant">pi</span><span class="org-type">/</span>1e3)<span class="org-type">*</span>eye(6);
|
|
</pre>
|
|
</div>
|
|
|
|
<p>
|
|
Let’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="#org98bb072">7</a>.
|
|
</p>
|
|
|
|
|
|
<div id="org98bb072" 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 id="outline-container-org8aa50f5" class="outline-4">
|
|
<h4 id="org8aa50f5"><span class="section-number-4">2.1.4</span> Conclusion</h4>
|
|
<div class="outline-text-4" id="text-2-1-4">
|
|
<div class="important" id="org2e8394a">
|
|
<p>
|
|
For the realistic value of the flexible joint axial stiffness, the dynamics is not much impact, and this should not be a problem for control.
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-orge0a9c34" class="outline-3">
|
|
<h3 id="orge0a9c34"><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’s consider the following values for the axial stiffness:
|
|
</p>
|
|
<div class="org-src-container">
|
|
<pre class="src src-matlab"> Kas = [1e4, 1e5, 1e6, 1e7, 1e8, 1e9]; <span class="org-comment">% [N/m]</span>
|
|
</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-org564cc95" class="outline-4">
|
|
<h4 id="org564cc95"><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="#orgeed898e">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="#org399589b">9</a> and <a href="#org5154002">10</a>).
|
|
It can be seen that very little active damping can be achieve for axial stiffnesses below \(10^7\,[N/m]\).
|
|
</p>
|
|
|
|
|
|
<div id="orgeed898e" 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="org399589b" 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 id="org5154002" 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-orgc1721b8" class="outline-4">
|
|
<h4 id="orgc1721b8"><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="#orgcab6267">11</a>.
|
|
</p>
|
|
|
|
|
|
<div id="orgcab6267" 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-org13f48c9" class="outline-3">
|
|
<h3 id="org13f48c9"><span class="section-number-3">2.3</span> Conclusion</h3>
|
|
<div class="outline-text-3" id="text-2-3">
|
|
<div class="important" id="org4a497ad">
|
|
<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 flexible 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 id="outline-container-org5519f74" class="outline-2">
|
|
<h2 id="org5519f74"><span class="section-number-2">3</span> Conclusion</h2>
|
|
<div class="outline-text-2" id="text-3">
|
|
<p>
|
|
<a id="org8e0b118"></a>
|
|
</p>
|
|
|
|
<div class="important" id="org3aeae4e">
|
|
<p>
|
|
In this study we considered the bending, torsional and axial stiffnesses of the flexible joints used for the nano-hexapod.
|
|
</p>
|
|
|
|
<p>
|
|
The bending and torsional stiffnesses somehow adds a parasitic stiffness in parallel with the legs.
|
|
It is not found to be much problematic for the considered control architecture (it is however, if Integral Force Feedback is to be used).
|
|
As a consequence of the added stiffness, it could increase a little bit the required actuator force.
|
|
</p>
|
|
|
|
|
|
<p>
|
|
The axial stiffness of the flexible joints can be very problematic for control.
|
|
Small values of the axial stiffness are shown to limit the achievable damping with Direct Velocity Feedback.
|
|
The axial stiffness should therefore be maximized and taken into account in the model of the nano-hexapod.
|
|
</p>
|
|
|
|
|
|
<p>
|
|
For the identified optimal actuator stiffness \(k = 10^5\,[N/m]\), the flexible joint should have the following stiffness properties:
|
|
</p>
|
|
<ul class="org-ul">
|
|
<li>Axial Stiffness: \(K_a > 10^7\,[N/m]\)</li>
|
|
<li>Bending Stiffness: \(K_b < 50\,[Nm/rad]\)</li>
|
|
<li>Torsion Stiffness: \(K_t < 50\,[Nm/rad]\)</li>
|
|
</ul>
|
|
|
|
<p>
|
|
As there is generally a trade-off between bending stiffness and axial stiffness, it should be highlighted that the <b>axial</b> stiffness is the most important property of the flexible joints.
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div id="outline-container-org358d063" class="outline-2">
|
|
<h2 id="org358d063"><span class="section-number-2">4</span> Designed Flexible Joints</h2>
|
|
<div class="outline-text-2" id="text-4">
|
|
</div>
|
|
<div id="outline-container-org1148778" class="outline-3">
|
|
<h3 id="org1148778"><span class="section-number-3">4.1</span> Initialization</h3>
|
|
<div class="outline-text-3" id="text-4-1">
|
|
<p>
|
|
Let’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(<span class="org-string">'type'</span>, <span class="org-string">'none'</span>);
|
|
initializeMirror(<span class="org-string">'type'</span>, <span class="org-string">'none'</span>);
|
|
initializeMirror();
|
|
</pre>
|
|
</div>
|
|
|
|
<p>
|
|
Let’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(<span class="org-string">'mass'</span>, 50, <span class="org-string">'freq'</span>, 200<span class="org-type">*</span>ones(6,1));
|
|
initializeReferences(<span class="org-string">'Rz_type'</span>, <span class="org-string">'rotating-not-filtered'</span>, <span class="org-string">'Rz_period'</span>, 60);
|
|
</pre>
|
|
</div>
|
|
|
|
<div class="org-src-container">
|
|
<pre class="src src-matlab"> flex_joint = load(<span class="org-string">'./mat/flexor_025.mat'</span>, <span class="org-string">'int_xyz'</span>, <span class="org-string">'int_i'</span>, <span class="org-string">'n_xyz'</span>, <span class="org-string">'n_i'</span>, <span class="org-string">'nodes'</span>, <span class="org-string">'M'</span>, <span class="org-string">'K'</span>);
|
|
apa = load(<span class="org-string">'./mat/APA300ML_simplified_model.mat'</span>);
|
|
</pre>
|
|
</div>
|
|
|
|
<div class="org-src-container">
|
|
<pre class="src src-matlab"> initializeNanoHexapod(<span class="org-string">'actuator'</span>, <span class="org-string">'amplified'</span>, ...
|
|
<span class="org-string">'ke'</span>, apa.ke, <span class="org-string">'ka'</span>, apa.ka, <span class="org-string">'k1'</span>, apa.k1, <span class="org-string">'c1'</span>, apa.c1, <span class="org-string">'F_gain'</span>, apa.F_gain, ...
|
|
<span class="org-string">'type_M'</span>, <span class="org-string">'spherical_3dof'</span>, ...
|
|
<span class="org-string">'Kr_M'</span>, flex_joint.K(1,1)<span class="org-type">*</span>ones(6,1), ...
|
|
<span class="org-string">'Ka_M'</span>, flex_joint.K(3,3)<span class="org-type">*</span>ones(6,1), ...
|
|
<span class="org-string">'Kf_M'</span>, flex_joint.K(4,4)<span class="org-type">*</span>ones(6,1), ...
|
|
<span class="org-string">'Kt_M'</span>, flex_joint.K(6,6)<span class="org-type">*</span>ones(6,1), ...
|
|
<span class="org-string">'type_F'</span>, <span class="org-string">'spherical_3dof'</span>, ...
|
|
<span class="org-string">'Kr_F'</span>, flex_joint.K(1,1)<span class="org-type">*</span>ones(6,1), ...
|
|
<span class="org-string">'Ka_F'</span>, flex_joint.K(3,3)<span class="org-type">*</span>ones(6,1), ...
|
|
<span class="org-string">'Kf_F'</span>, flex_joint.K(4,4)<span class="org-type">*</span>ones(6,1), ...
|
|
<span class="org-string">'Kt_F'</span>, flex_joint.K(6,6)<span class="org-type">*</span>ones(6,1));
|
|
</pre>
|
|
</div>
|
|
|
|
<div class="org-src-container">
|
|
<pre class="src src-matlab"> initializeNanoHexapod();
|
|
</pre>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-orgd889755" class="outline-3">
|
|
<h3 id="orgd889755"><span class="section-number-3">4.2</span> Direct Velocity Feedback</h3>
|
|
</div>
|
|
<div id="outline-container-org12972b2" class="outline-3">
|
|
<h3 id="org12972b2"><span class="section-number-3">4.3</span> Integral Force Feedback</h3>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="postamble" class="status">
|
|
<p class="author">Author: Dehaeze Thomas</p>
|
|
<p class="date">Created: 2021-02-20 sam. 23:09</p>
|
|
</div>
|
|
</body>
|
|
</html>
|