661 lines
25 KiB
HTML
661 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>
|
|
<!-- 2020-11-03 mar. 09:45 -->
|
|
<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="#orge032d30">1. Bending and Torsional Stiffness</a>
|
|
<ul>
|
|
<li><a href="#orge82a7c2">1.1. Initialization</a></li>
|
|
<li><a href="#orgde60939">1.2. Realistic Bending Stiffness Values</a>
|
|
<ul>
|
|
<li><a href="#orge13b41c">1.2.1. Direct Velocity Feedback</a></li>
|
|
<li><a href="#orgd5fd59b">1.2.2. Primary Plant</a></li>
|
|
<li><a href="#org865157e">1.2.3. Conclusion</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#org8ad3f34">1.3. Parametric Study</a>
|
|
<ul>
|
|
<li><a href="#orgc98ee7c">1.3.1. Direct Velocity Feedback</a></li>
|
|
<li><a href="#org15c2c08">1.3.2. Primary Control</a></li>
|
|
<li><a href="#org5322ecd">1.3.3. Conclusion</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#orgdaf7b6c">2. Axial Stiffness</a>
|
|
<ul>
|
|
<li><a href="#org969d9e7">2.1. Realistic Translation Stiffness Values</a>
|
|
<ul>
|
|
<li><a href="#org7dd21d5">2.1.1. Initialization</a></li>
|
|
<li><a href="#org47be52b">2.1.2. Direct Velocity Feedback</a></li>
|
|
<li><a href="#org15105f5">2.1.3. Primary Plant</a></li>
|
|
<li><a href="#org2098f1e">2.1.4. Conclusion</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#org0275632">2.2. Parametric study</a>
|
|
<ul>
|
|
<li><a href="#orgd87b94b">2.2.1. Direct Velocity Feedback</a></li>
|
|
<li><a href="#orge5d1c12">2.2.2. Primary Control</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#org382b3cb">2.3. Conclusion</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="#orgb6f6c0a">3. Conclusion</a></li>
|
|
<li><a href="#orgdf2870d">4. Designed Flexible Joints</a>
|
|
<ul>
|
|
<li><a href="#orgd355fcb">4.1. Initialization</a></li>
|
|
<li><a href="#org43c7d3c">4.2. Direct Velocity Feedback</a></li>
|
|
<li><a href="#org056a1de">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="#org3eb4121">1</a>)</li>
|
|
<li>Axial 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 (summarized in Section <a href="#org6614f42">3</a>).
|
|
</p>
|
|
|
|
<div id="outline-container-orge032d30" class="outline-2">
|
|
<h2 id="orge032d30"><span class="section-number-2">1</span> Bending and Torsional 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-orge82a7c2" class="outline-3">
|
|
<h3 id="orge82a7c2"><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-orgde60939" class="outline-3">
|
|
<h3 id="orgde60939"><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-orge13b41c" class="outline-4">
|
|
<h4 id="orge13b41c"><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-orgd5fd59b" class="outline-4">
|
|
<h4 id="orgd5fd59b"><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="#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 and with flexible joints</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-org865157e" class="outline-4">
|
|
<h4 id="org865157e"><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="org69f9617">
|
|
<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-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’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-orgc98ee7c" class="outline-4">
|
|
<h4 id="orgc98ee7c"><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 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="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-org15c2c08" class="outline-4">
|
|
<h4 id="org15c2c08"><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 bending 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 bending stiffnesses</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-org5322ecd" class="outline-4">
|
|
<h4 id="org5322ecd"><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="orga223c1a">
|
|
<p>
|
|
The bending stiffness of the flexible joint does not significantly change the dynamics.
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="outline-container-orgdaf7b6c" class="outline-2">
|
|
<h2 id="orgdaf7b6c"><span class="section-number-2">2</span> Axial Stiffness</h2>
|
|
<div class="outline-text-2" id="text-2">
|
|
<p>
|
|
<a id="org8f4d83b"></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-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">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-org7dd21d5" class="outline-4">
|
|
<h4 id="org7dd21d5"><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-org47be52b" class="outline-4">
|
|
<h4 id="org47be52b"><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-org15105f5" class="outline-4">
|
|
<h4 id="org15105f5"><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="#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 id="outline-container-org2098f1e" class="outline-4">
|
|
<h4 id="org2098f1e"><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="org3a7d9f4">
|
|
<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-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’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-orgd87b94b" class="outline-4">
|
|
<h4 id="orgd87b94b"><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 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 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-orge5d1c12" class="outline-4">
|
|
<h4 id="orge5d1c12"><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-org382b3cb" class="outline-3">
|
|
<h3 id="org382b3cb"><span class="section-number-3">2.3</span> Conclusion</h3>
|
|
<div class="outline-text-3" id="text-2-3">
|
|
<div class="important" id="org422e802">
|
|
<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-orgb6f6c0a" class="outline-2">
|
|
<h2 id="orgb6f6c0a"><span class="section-number-2">3</span> Conclusion</h2>
|
|
<div class="outline-text-2" id="text-3">
|
|
<p>
|
|
<a id="org6614f42"></a>
|
|
</p>
|
|
|
|
<div class="important" id="org3cbf243">
|
|
<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-orgdf2870d" class="outline-2">
|
|
<h2 id="orgdf2870d"><span class="section-number-2">4</span> Designed Flexible Joints</h2>
|
|
<div class="outline-text-2" id="text-4">
|
|
</div>
|
|
<div id="outline-container-orgd355fcb" class="outline-3">
|
|
<h3 id="orgd355fcb"><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-org43c7d3c" class="outline-3">
|
|
<h3 id="org43c7d3c"><span class="section-number-3">4.2</span> Direct Velocity Feedback</h3>
|
|
</div>
|
|
<div id="outline-container-org056a1de" class="outline-3">
|
|
<h3 id="org056a1de"><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: 2020-11-03 mar. 09:45</p>
|
|
</div>
|
|
</body>
|
|
</html>
|