Add labels and links to the cubic analysis
This commit is contained in:
parent
f4abfbe85c
commit
0c77092743
@ -4,7 +4,7 @@
|
|||||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||||
<head>
|
<head>
|
||||||
<!-- 2020-02-12 mer. 10:37 -->
|
<!-- 2020-02-12 mer. 11:18 -->
|
||||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<title>Cubic configuration for the Stewart Platform</title>
|
<title>Cubic configuration for the Stewart Platform</title>
|
||||||
@ -275,13 +275,30 @@ for the JavaScript code in this tag.
|
|||||||
<li><a href="#orge02ec88">1.3. Cubic Stewart platform not centered with the cube center - Jacobian estimated at the cube center</a></li>
|
<li><a href="#orge02ec88">1.3. Cubic Stewart platform not centered with the cube center - Jacobian estimated at the cube center</a></li>
|
||||||
<li><a href="#org43fd7e4">1.4. Cubic Stewart platform not centered with the cube center - Jacobian estimated at the Stewart platform center</a></li>
|
<li><a href="#org43fd7e4">1.4. Cubic Stewart platform not centered with the cube center - Jacobian estimated at the Stewart platform center</a></li>
|
||||||
<li><a href="#orgd35acc0">1.5. Conclusion</a></li>
|
<li><a href="#orgd35acc0">1.5. Conclusion</a></li>
|
||||||
<li><a href="#org8afa645">1.6. Having Cube’s center above the top platform</a></li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="#orgcc4ecce">2. Cubic size analysis</a></li>
|
<li><a href="#orgd70418b">2. Configuration with the Cube’s center above the mobile platform</a>
|
||||||
<li><a href="#org3044455">3. Functions</a>
|
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="#org56504f1">3.1. <code>generateCubicConfiguration</code>: Generate a Cubic Configuration</a>
|
<li><a href="#org8afa645">2.1. Having Cube’s center above the top platform</a></li>
|
||||||
|
<li><a href="#org4576402">2.2. Conclusion</a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li><a href="#orgcc4ecce">3. Cubic size analysis</a>
|
||||||
|
<ul>
|
||||||
|
<li><a href="#org0029d8c">3.1. Analysis</a></li>
|
||||||
|
<li><a href="#org04f1ef6">3.2. Conclusion</a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li><a href="#org5abef15">4. Dynamic Coupling</a>
|
||||||
|
<ul>
|
||||||
|
<li><a href="#org0d67b92">4.1. Cube’s center at the Center of Mass of the Payload</a></li>
|
||||||
|
<li><a href="#org876e05f">4.2. Dynamic decoupling between the actuators and sensors</a></li>
|
||||||
|
<li><a href="#org95af62e">4.3. Conclusion</a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li><a href="#org3044455">5. Functions</a>
|
||||||
|
<ul>
|
||||||
|
<li><a href="#org56504f1">5.1. <code>generateCubicConfiguration</code>: Generate a Cubic Configuration</a>
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="#orga5a9ba8">Function description</a></li>
|
<li><a href="#orga5a9ba8">Function description</a></li>
|
||||||
<li><a href="#org3253792">Documentation</a></li>
|
<li><a href="#org3253792">Documentation</a></li>
|
||||||
@ -299,24 +316,13 @@ for the JavaScript code in this tag.
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
The discovery of the Cubic configuration is done in <a class='org-ref-reference' href="#geng94_six_degree_of_freed_activ">geng94_six_degree_of_freed_activ</a>.
|
The Cubic configuration for the Stewart platform was first proposed in <a class='org-ref-reference' href="#geng94_six_degree_of_freed_activ">geng94_six_degree_of_freed_activ</a>.
|
||||||
|
This configuration is quite specific in the sense that the active struts are arranged in a mutually orthogonal configuration connecting the corners of a cube.
|
||||||
|
This configuration is now widely used (<a class='org-ref-reference' href="#preumont07_six_axis_singl_stage_activ">preumont07_six_axis_singl_stage_activ</a>,<a class='org-ref-reference' href="#jafari03_orthog_gough_stewar_platf_microm">jafari03_orthog_gough_stewar_platf_microm</a>).
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
The specificity of the Cubic configuration is that each actuator is orthogonal with the others:
|
According to <a class='org-ref-reference' href="#preumont07_six_axis_singl_stage_activ">preumont07_six_axis_singl_stage_activ</a>, the cubic configuration offers the following advantages:
|
||||||
</p>
|
|
||||||
<blockquote>
|
|
||||||
<p>
|
|
||||||
the active struts are arranged in a mutually orthogonal configuration connecting the corners of a cube.
|
|
||||||
</p>
|
|
||||||
</blockquote>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
The cubic (or orthogonal) configuration of the Stewart platform is now widely used (<a class='org-ref-reference' href="#preumont07_six_axis_singl_stage_activ">preumont07_six_axis_singl_stage_activ</a>,<a class='org-ref-reference' href="#jafari03_orthog_gough_stewar_platf_microm">jafari03_orthog_gough_stewar_platf_microm</a>).
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
According to <a class='org-ref-reference' href="#preumont07_six_axis_singl_stage_activ">preumont07_six_axis_singl_stage_activ</a>:
|
|
||||||
</p>
|
</p>
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p>
|
<p>
|
||||||
@ -325,19 +331,26 @@ This topology provides a uniform control capability and a uniform stiffness in a
|
|||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
To generate and study the Cubic configuration, <code>generateCubicConfiguration</code> is used (description in section <a href="#orga8311d3">3.1</a>).
|
In this document, the cubic architecture is analyzed:
|
||||||
The goal is to study the benefits of using a cubic configuration:
|
|
||||||
</p>
|
</p>
|
||||||
<ul class="org-ul">
|
<ul class="org-ul">
|
||||||
<li>Equal stiffness in all the degrees of freedom?</li>
|
<li>In section <a href="#orgda0ee50">1</a>, we study the link between the Stiffness matrix and the cubic architecture and we find what are the conditions to obtain a diagonal stiffness matrix</li>
|
||||||
<li>No coupling between the actuators?</li>
|
<li>In section <a href="#orgb73265d">2</a>, we study cubic configurations where the cube’s center is located above the mobile platform</li>
|
||||||
<li>Is the center of the cube an important point?</li>
|
<li>In section <a href="#org348ec7d">3</a>, we study the effect of the cube’s size on the Stewart platform properties</li>
|
||||||
|
<li>In section <a href="#orgc379ec8">4</a>, we study the dynamic coupling of the cubic configuration</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
To generate and study the Stewart platform with a Cubic configuration, the Matlab function <code>generateCubicConfiguration</code> is used (described <a href="#orga8311d3">here</a>).
|
||||||
|
</p>
|
||||||
|
|
||||||
<div id="outline-container-org8c6677e" class="outline-2">
|
<div id="outline-container-org8c6677e" class="outline-2">
|
||||||
<h2 id="org8c6677e"><span class="section-number-2">1</span> Configuration Analysis - Stiffness Matrix</h2>
|
<h2 id="org8c6677e"><span class="section-number-2">1</span> Configuration Analysis - Stiffness Matrix</h2>
|
||||||
<div class="outline-text-2" id="text-1">
|
<div class="outline-text-2" id="text-1">
|
||||||
<p>
|
<p>
|
||||||
|
<a id="orgda0ee50"></a>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
First, we have to understand what is the physical meaning of the Stiffness matrix \(\bm{K}\).
|
First, we have to understand what is the physical meaning of the Stiffness matrix \(\bm{K}\).
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@ -366,8 +379,11 @@ Thus, if the stiffness matrix is diagonal, the compliance matrix is also diagona
|
|||||||
<p>
|
<p>
|
||||||
One has to note that this is only valid in a static way.
|
One has to note that this is only valid in a static way.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
|
||||||
|
|
||||||
|
<p>
|
||||||
|
We here study what makes the Stiffness matrix diagonal when using a cubic configuration.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
<div id="outline-container-orgf6f7ad2" class="outline-3">
|
<div id="outline-container-orgf6f7ad2" class="outline-3">
|
||||||
<h3 id="orgf6f7ad2"><span class="section-number-3">1.1</span> Cubic Stewart platform centered with the cube center - Jacobian estimated at the cube center</h3>
|
<h3 id="orgf6f7ad2"><span class="section-number-3">1.1</span> Cubic Stewart platform centered with the cube center - Jacobian estimated at the cube center</h3>
|
||||||
<div class="outline-text-3" id="text-1-1">
|
<div class="outline-text-3" id="text-1-1">
|
||||||
@ -837,10 +853,26 @@ Here are the conclusion about the Stiffness matrix for the Cubic configuration:
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="outline-container-orgd70418b" class="outline-2">
|
||||||
|
<h2 id="orgd70418b"><span class="section-number-2">2</span> Configuration with the Cube’s center above the mobile platform</h2>
|
||||||
|
<div class="outline-text-2" id="text-2">
|
||||||
|
<p>
|
||||||
|
<a id="orgb73265d"></a>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
We saw in section <a href="#orgda0ee50">1</a> that in order to have a diagonal stiffness matrix, we need the cube’s center to be located at frames \(\{A\}\) and \(\{B\}\).
|
||||||
|
Or, we usually want to have \(\{A\}\) and \(\{B\}\) located above the top platform where forces are applied and where displacements are expressed.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
We here see if the cubic configuration can provide a diagonal stiffness matrix when \(\{A\}\) and \(\{B\}\) are above the mobile platform.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
<div id="outline-container-org8afa645" class="outline-3">
|
<div id="outline-container-org8afa645" class="outline-3">
|
||||||
<h3 id="org8afa645"><span class="section-number-3">1.6</span> Having Cube’s center above the top platform</h3>
|
<h3 id="org8afa645"><span class="section-number-3">2.1</span> Having Cube’s center above the top platform</h3>
|
||||||
<div class="outline-text-3" id="text-1-6">
|
<div class="outline-text-3" id="text-2-1">
|
||||||
<p>
|
<p>
|
||||||
Let’s say we want to have a diagonal stiffness matrix when \(\{A\}\) and \(\{B\}\) are located above the top platform.
|
Let’s say we want to have a diagonal stiffness matrix when \(\{A\}\) and \(\{B\}\) are located above the top platform.
|
||||||
Thus, we want the cube’s center to be located above the top center.
|
Thus, we want the cube’s center to be located above the top center.
|
||||||
@ -1131,11 +1163,27 @@ FOc = H <span class="org-type">+</span> MO_B; <span class="org-comment">% Cente
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div id="outline-container-org4576402" class="outline-3">
|
||||||
|
<h3 id="org4576402"><span class="section-number-3">2.2</span> Conclusion</h3>
|
||||||
|
<div class="outline-text-3" id="text-2-2">
|
||||||
|
<div class="important">
|
||||||
|
<p>
|
||||||
|
We found that we can have a diagonal stiffness matrix using the cubic architecture when \(\{A\}\) and \(\{B\}\) are located above the top platform.
|
||||||
|
Depending on the cube’s size, we obtain 3 different configurations.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="outline-container-orgcc4ecce" class="outline-2">
|
<div id="outline-container-orgcc4ecce" class="outline-2">
|
||||||
<h2 id="orgcc4ecce"><span class="section-number-2">2</span> Cubic size analysis</h2>
|
<h2 id="orgcc4ecce"><span class="section-number-2">3</span> Cubic size analysis</h2>
|
||||||
<div class="outline-text-2" id="text-2">
|
<div class="outline-text-2" id="text-3">
|
||||||
|
<p>
|
||||||
|
<a id="org348ec7d"></a>
|
||||||
|
</p>
|
||||||
<p>
|
<p>
|
||||||
We here study the effect of the size of the cube used for the Stewart Cubic configuration.
|
We here study the effect of the size of the cube used for the Stewart Cubic configuration.
|
||||||
</p>
|
</p>
|
||||||
@ -1147,7 +1195,13 @@ We fix the height of the Stewart platform, the center of the cube is at the cent
|
|||||||
<p>
|
<p>
|
||||||
We only vary the size of the cube.
|
We only vary the size of the cube.
|
||||||
</p>
|
</p>
|
||||||
|
</div>
|
||||||
|
<div id="outline-container-org0029d8c" class="outline-3">
|
||||||
|
<h3 id="org0029d8c"><span class="section-number-3">3.1</span> Analysis</h3>
|
||||||
|
<div class="outline-text-3" id="text-3-1">
|
||||||
|
<p>
|
||||||
|
We initialize the wanted cube’s size.
|
||||||
|
</p>
|
||||||
<div class="org-src-container">
|
<div class="org-src-container">
|
||||||
<pre class="src src-matlab">Hcs = 1e<span class="org-type">-</span>3<span class="org-type">*</span>[250<span class="org-type">:</span>20<span class="org-type">:</span>350]; <span class="org-comment">% Heights for the Cube [m]</span>
|
<pre class="src src-matlab">Hcs = 1e<span class="org-type">-</span>3<span class="org-type">*</span>[250<span class="org-type">:</span>20<span class="org-type">:</span>350]; <span class="org-comment">% Heights for the Cube [m]</span>
|
||||||
Ks = zeros(6, 6, length(Hcs));
|
Ks = zeros(6, 6, length(Hcs));
|
||||||
@ -1171,43 +1225,23 @@ FOc = H <span class="org-type">+</span> MO_B; <span class="org-comment">% Cente
|
|||||||
</pre>
|
</pre>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="org-src-container">
|
|
||||||
<pre class="src src-matlab">stewart = initializeStewartPlatform();
|
|
||||||
stewart = initializeFramesPositions(stewart, <span class="org-string">'H'</span>, H, <span class="org-string">'MO_B'</span>, MO_B);
|
|
||||||
<span class="org-keyword">for</span> <span class="org-variable-name"><span class="org-constant">i</span></span> = <span class="org-constant">1:length(Hcs)</span>
|
|
||||||
Hc = Hcs(<span class="org-constant">i</span>);
|
|
||||||
stewart = generateCubicConfiguration(stewart, <span class="org-string">'Hc'</span>, Hc, <span class="org-string">'FOc'</span>, FOc, <span class="org-string">'FHa'</span>, 0, <span class="org-string">'MHb'</span>, 0);
|
|
||||||
stewart = computeJointsPose(stewart);
|
|
||||||
stewart = initializeStrutDynamics(stewart, <span class="org-string">'K'</span>, ones(6,1));
|
|
||||||
stewart = computeJacobian(stewart);
|
|
||||||
Ks(<span class="org-type">:</span>,<span class="org-type">:</span>,<span class="org-constant">i</span>) = stewart.kinematics.K;
|
|
||||||
<span class="org-keyword">end</span>
|
|
||||||
</pre>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
We find that for all the cube’s size, \(k_x = k_y = k_z = k\) where \(k\) is the strut stiffness.
|
We find that for all the cube’s size, \(k_x = k_y = k_z = k\) where \(k\) is the strut stiffness.
|
||||||
We also find that \(k_{\theta_x} = k_{\theta_y}\) and \(k_{\theta_z}\) are varying with the cube’s size (figure <a href="#orgf5b4a80">9</a>).
|
We also find that \(k_{\theta_x} = k_{\theta_y}\) and \(k_{\theta_z}\) are varying with the cube’s size (figure <a href="#orgf5b4a80">9</a>).
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class="org-src-container">
|
|
||||||
<pre class="src src-matlab"><span class="org-type">figure</span>;
|
|
||||||
hold on;
|
|
||||||
plot(Hcs, squeeze(Ks(4, 4, <span class="org-type">:</span>)), <span class="org-string">'DisplayName'</span>, <span class="org-string">'$k_{\theta_x} = k_{\theta_y}$'</span>);
|
|
||||||
plot(Hcs, squeeze(Ks(6, 6, <span class="org-type">:</span>)), <span class="org-string">'DisplayName'</span>, <span class="org-string">'$k_{\theta_z}$'</span>);
|
|
||||||
hold off;
|
|
||||||
legend(<span class="org-string">'location'</span>, <span class="org-string">'northwest'</span>);
|
|
||||||
xlabel(<span class="org-string">'Cube Size [m]'</span>); ylabel(<span class="org-string">'Rotational stiffnes [normalized]'</span>);
|
|
||||||
</pre>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<div id="orgf5b4a80" class="figure">
|
<div id="orgf5b4a80" class="figure">
|
||||||
<p><img src="figs/stiffness_cube_size.png" alt="stiffness_cube_size.png" />
|
<p><img src="figs/stiffness_cube_size.png" alt="stiffness_cube_size.png" />
|
||||||
</p>
|
</p>
|
||||||
<p><span class="figure-number">Figure 9: </span>\(k_{\theta_x} = k_{\theta_y}\) and \(k_{\theta_z}\) function of the size of the cube</p>
|
<p><span class="figure-number">Figure 9: </span>\(k_{\theta_x} = k_{\theta_y}\) and \(k_{\theta_z}\) function of the size of the cube</p>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="outline-container-org04f1ef6" class="outline-3">
|
||||||
|
<h3 id="org04f1ef6"><span class="section-number-3">3.2</span> Conclusion</h3>
|
||||||
|
<div class="outline-text-3" id="text-3-2">
|
||||||
<p>
|
<p>
|
||||||
We observe that \(k_{\theta_x} = k_{\theta_y}\) and \(k_{\theta_z}\) increase linearly with the cube size.
|
We observe that \(k_{\theta_x} = k_{\theta_y}\) and \(k_{\theta_z}\) increase linearly with the cube size.
|
||||||
</p>
|
</p>
|
||||||
@ -1220,18 +1254,39 @@ In order to maximize the rotational stiffness of the Stewart platform, the size
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="outline-container-org5abef15" class="outline-2">
|
||||||
|
<h2 id="org5abef15"><span class="section-number-2">4</span> Dynamic Coupling</h2>
|
||||||
|
<div class="outline-text-2" id="text-4">
|
||||||
|
<p>
|
||||||
|
<a id="orgc379ec8"></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div id="outline-container-org0d67b92" class="outline-3">
|
||||||
|
<h3 id="org0d67b92"><span class="section-number-3">4.1</span> Cube’s center at the Center of Mass of the Payload</h3>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="outline-container-org876e05f" class="outline-3">
|
||||||
|
<h3 id="org876e05f"><span class="section-number-3">4.2</span> Dynamic decoupling between the actuators and sensors</h3>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="outline-container-org95af62e" class="outline-3">
|
||||||
|
<h3 id="org95af62e"><span class="section-number-3">4.3</span> Conclusion</h3>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div id="outline-container-org3044455" class="outline-2">
|
<div id="outline-container-org3044455" class="outline-2">
|
||||||
<h2 id="org3044455"><span class="section-number-2">3</span> Functions</h2>
|
<h2 id="org3044455"><span class="section-number-2">5</span> Functions</h2>
|
||||||
<div class="outline-text-2" id="text-3">
|
<div class="outline-text-2" id="text-5">
|
||||||
<p>
|
<p>
|
||||||
<a id="org28ba607"></a>
|
<a id="org28ba607"></a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="outline-container-org56504f1" class="outline-3">
|
<div id="outline-container-org56504f1" class="outline-3">
|
||||||
<h3 id="org56504f1"><span class="section-number-3">3.1</span> <code>generateCubicConfiguration</code>: Generate a Cubic Configuration</h3>
|
<h3 id="org56504f1"><span class="section-number-3">5.1</span> <code>generateCubicConfiguration</code>: Generate a Cubic Configuration</h3>
|
||||||
<div class="outline-text-3" id="text-3-1">
|
<div class="outline-text-3" id="text-5-1">
|
||||||
<p>
|
<p>
|
||||||
<a id="orga8311d3"></a>
|
<a id="orga8311d3"></a>
|
||||||
</p>
|
</p>
|
||||||
@ -1373,14 +1428,14 @@ stewart.platform_M.Mb = Mb;
|
|||||||
|
|
||||||
<h1 class='org-ref-bib-h1'>Bibliography</h1>
|
<h1 class='org-ref-bib-h1'>Bibliography</h1>
|
||||||
<ul class='org-ref-bib'><li><a id="geng94_six_degree_of_freed_activ">[geng94_six_degree_of_freed_activ]</a> <a name="geng94_six_degree_of_freed_activ"></a>Geng & Haynes, Six Degree-Of-Freedom Active Vibration Control Using the Stewart Platforms, <i>IEEE Transactions on Control Systems Technology</i>, <b>2(1)</b>, 45-53 (1994). <a href="https://doi.org/10.1109/87.273110">link</a>. <a href="http://dx.doi.org/10.1109/87.273110">doi</a>.</li>
|
<ul class='org-ref-bib'><li><a id="geng94_six_degree_of_freed_activ">[geng94_six_degree_of_freed_activ]</a> <a name="geng94_six_degree_of_freed_activ"></a>Geng & Haynes, Six Degree-Of-Freedom Active Vibration Control Using the Stewart Platforms, <i>IEEE Transactions on Control Systems Technology</i>, <b>2(1)</b>, 45-53 (1994). <a href="https://doi.org/10.1109/87.273110">link</a>. <a href="http://dx.doi.org/10.1109/87.273110">doi</a>.</li>
|
||||||
<li><a id="preumont07_six_axis_singl_stage_activ">[preumont07_six_axis_singl_stage_activ]</a> <a name="preumont07_six_axis_singl_stage_activ"></a>Preumont, Horodinca, Romanescu, de, Marneffe, Avraam, Deraemaeker, Bossens, & Abu Hanieh, A Six-Axis Single-Stage Active Vibration Isolator Based on Stewart Platform, <i>Journal of Sound and Vibration</i>, <b>300(3-5)</b>, 644-661 (2007). <a href="https://doi.org/10.1016/j.jsv.2006.07.050">link</a>. <a href="http://dx.doi.org/10.1016/j.jsv.2006.07.050">doi</a>.</li>
|
<li><a id="preumont07_six_axis_singl_stage_activ">[preumont07_six_axis_singl_stage_activ]</a> <a name="preumont07_six_axis_singl_stage_activ"></a>Preumont, Horodinca, Romanescu, de Marneffe, Avraam, Deraemaeker, Bossens & Abu Hanieh, A Six-Axis Single-Stage Active Vibration Isolator Based on Stewart Platform, <i>Journal of Sound and Vibration</i>, <b>300(3-5)</b>, 644-661 (2007). <a href="https://doi.org/10.1016/j.jsv.2006.07.050">link</a>. <a href="http://dx.doi.org/10.1016/j.jsv.2006.07.050">doi</a>.</li>
|
||||||
<li><a id="jafari03_orthog_gough_stewar_platf_microm">[jafari03_orthog_gough_stewar_platf_microm]</a> <a name="jafari03_orthog_gough_stewar_platf_microm"></a>Jafari & McInroy, Orthogonal Gough-Stewart Platforms for Micromanipulation, <i>IEEE Transactions on Robotics and Automation</i>, <b>19(4)</b>, 595-603 (2003). <a href="https://doi.org/10.1109/tra.2003.814506">link</a>. <a href="http://dx.doi.org/10.1109/tra.2003.814506">doi</a>.</li>
|
<li><a id="jafari03_orthog_gough_stewar_platf_microm">[jafari03_orthog_gough_stewar_platf_microm]</a> <a name="jafari03_orthog_gough_stewar_platf_microm"></a>Jafari & McInroy, Orthogonal Gough-Stewart Platforms for Micromanipulation, <i>IEEE Transactions on Robotics and Automation</i>, <b>19(4)</b>, 595-603 (2003). <a href="https://doi.org/10.1109/tra.2003.814506">link</a>. <a href="http://dx.doi.org/10.1109/tra.2003.814506">doi</a>.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div id="postamble" class="status">
|
<div id="postamble" class="status">
|
||||||
<p class="author">Author: Dehaeze Thomas</p>
|
<p class="author">Author: Dehaeze Thomas</p>
|
||||||
<p class="date">Created: 2020-02-12 mer. 10:37</p>
|
<p class="date">Created: 2020-02-12 mer. 11:18</p>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -39,27 +39,25 @@
|
|||||||
:END:
|
:END:
|
||||||
|
|
||||||
* Introduction :ignore:
|
* Introduction :ignore:
|
||||||
The discovery of the Cubic configuration is done in cite:geng94_six_degree_of_freed_activ.
|
The Cubic configuration for the Stewart platform was first proposed in cite:geng94_six_degree_of_freed_activ.
|
||||||
|
This configuration is quite specific in the sense that the active struts are arranged in a mutually orthogonal configuration connecting the corners of a cube.
|
||||||
|
This configuration is now widely used (cite:preumont07_six_axis_singl_stage_activ,jafari03_orthog_gough_stewar_platf_microm).
|
||||||
|
|
||||||
The specificity of the Cubic configuration is that each actuator is orthogonal with the others:
|
According to cite:preumont07_six_axis_singl_stage_activ, the cubic configuration offers the following advantages:
|
||||||
#+begin_quote
|
|
||||||
the active struts are arranged in a mutually orthogonal configuration connecting the corners of a cube.
|
|
||||||
#+end_quote
|
|
||||||
|
|
||||||
The cubic (or orthogonal) configuration of the Stewart platform is now widely used (cite:preumont07_six_axis_singl_stage_activ,jafari03_orthog_gough_stewar_platf_microm).
|
|
||||||
|
|
||||||
According to cite:preumont07_six_axis_singl_stage_activ:
|
|
||||||
#+begin_quote
|
#+begin_quote
|
||||||
This topology provides a uniform control capability and a uniform stiffness in all directions, and it minimizes the cross-coupling amongst actuators and sensors of different legs (being orthogonal to each other).
|
This topology provides a uniform control capability and a uniform stiffness in all directions, and it minimizes the cross-coupling amongst actuators and sensors of different legs (being orthogonal to each other).
|
||||||
#+end_quote
|
#+end_quote
|
||||||
|
|
||||||
To generate and study the Cubic configuration, =generateCubicConfiguration= is used (description in section [[sec:generateCubicConfiguration]]).
|
In this document, the cubic architecture is analyzed:
|
||||||
The goal is to study the benefits of using a cubic configuration:
|
- In section [[sec:cubic_conf_stiffness]], we study the link between the Stiffness matrix and the cubic architecture and we find what are the conditions to obtain a diagonal stiffness matrix
|
||||||
- Equal stiffness in all the degrees of freedom?
|
- In section [[sec:cubic_conf_above_platform]], we study cubic configurations where the cube's center is located above the mobile platform
|
||||||
- No coupling between the actuators?
|
- In section [[sec:cubic_conf_size_analysis]], we study the effect of the cube's size on the Stewart platform properties
|
||||||
- Is the center of the cube an important point?
|
- In section [[sec:cubic_conf_coupling]], we study the dynamic coupling of the cubic configuration
|
||||||
|
|
||||||
|
To generate and study the Stewart platform with a Cubic configuration, the Matlab function =generateCubicConfiguration= is used (described [[sec:generateCubicConfiguration][here]]).
|
||||||
|
|
||||||
* Configuration Analysis - Stiffness Matrix
|
* Configuration Analysis - Stiffness Matrix
|
||||||
|
<<sec:cubic_conf_stiffness>>
|
||||||
** Introduction :ignore:
|
** Introduction :ignore:
|
||||||
First, we have to understand what is the physical meaning of the Stiffness matrix $\bm{K}$.
|
First, we have to understand what is the physical meaning of the Stiffness matrix $\bm{K}$.
|
||||||
|
|
||||||
@ -77,6 +75,8 @@ Thus, if the stiffness matrix is diagonal, the compliance matrix is also diagona
|
|||||||
|
|
||||||
One has to note that this is only valid in a static way.
|
One has to note that this is only valid in a static way.
|
||||||
|
|
||||||
|
We here study what makes the Stiffness matrix diagonal when using a cubic configuration.
|
||||||
|
|
||||||
** Matlab Init :noexport:ignore:
|
** Matlab Init :noexport:ignore:
|
||||||
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
|
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
|
||||||
<<matlab-dir>>
|
<<matlab-dir>>
|
||||||
@ -296,6 +296,27 @@ Here are the conclusion about the Stiffness matrix for the Cubic configuration:
|
|||||||
- The stiffness matrix $K$ is diagonal for the cubic configuration if the Jacobian is estimated at the cube center.
|
- The stiffness matrix $K$ is diagonal for the cubic configuration if the Jacobian is estimated at the cube center.
|
||||||
#+end_important
|
#+end_important
|
||||||
|
|
||||||
|
* Configuration with the Cube's center above the mobile platform
|
||||||
|
<<sec:cubic_conf_above_platform>>
|
||||||
|
** Introduction :ignore:
|
||||||
|
We saw in section [[sec:cubic_conf_stiffness]] that in order to have a diagonal stiffness matrix, we need the cube's center to be located at frames $\{A\}$ and $\{B\}$.
|
||||||
|
Or, we usually want to have $\{A\}$ and $\{B\}$ located above the top platform where forces are applied and where displacements are expressed.
|
||||||
|
|
||||||
|
We here see if the cubic configuration can provide a diagonal stiffness matrix when $\{A\}$ and $\{B\}$ are above the mobile platform.
|
||||||
|
|
||||||
|
** Matlab Init :noexport:ignore:
|
||||||
|
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
|
||||||
|
<<matlab-dir>>
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src matlab :exports none :results silent :noweb yes
|
||||||
|
<<matlab-init>>
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src matlab :results none :exports none
|
||||||
|
simulinkproject('../');
|
||||||
|
#+end_src
|
||||||
|
|
||||||
** Having Cube's center above the top platform
|
** Having Cube's center above the top platform
|
||||||
Let's say we want to have a diagonal stiffness matrix when $\{A\}$ and $\{B\}$ are located above the top platform.
|
Let's say we want to have a diagonal stiffness matrix when $\{A\}$ and $\{B\}$ are located above the top platform.
|
||||||
Thus, we want the cube's center to be located above the top center.
|
Thus, we want the cube's center to be located above the top center.
|
||||||
@ -431,13 +452,36 @@ However, the rotational stiffnesses are increasing with the cube's size but the
|
|||||||
| -8e-17 | 0 | -3e-17 | -6.1e-19 | 0.094 | 0 |
|
| -8e-17 | 0 | -3e-17 | -6.1e-19 | 0.094 | 0 |
|
||||||
| -6.2e-18 | 7.2e-17 | 5.6e-17 | 2.3e-17 | 0 | 0.37 |
|
| -6.2e-18 | 7.2e-17 | 5.6e-17 | 2.3e-17 | 0 | 0.37 |
|
||||||
|
|
||||||
|
** Conclusion
|
||||||
|
#+begin_important
|
||||||
|
We found that we can have a diagonal stiffness matrix using the cubic architecture when $\{A\}$ and $\{B\}$ are located above the top platform.
|
||||||
|
Depending on the cube's size, we obtain 3 different configurations.
|
||||||
|
#+end_important
|
||||||
|
|
||||||
* Cubic size analysis
|
* Cubic size analysis
|
||||||
|
<<sec:cubic_conf_size_analysis>>
|
||||||
|
** Introduction :ignore:
|
||||||
We here study the effect of the size of the cube used for the Stewart Cubic configuration.
|
We here study the effect of the size of the cube used for the Stewart Cubic configuration.
|
||||||
|
|
||||||
We fix the height of the Stewart platform, the center of the cube is at the center of the Stewart platform and the frames $\{A\}$ and $\{B\}$ are also taken at the center of the cube.
|
We fix the height of the Stewart platform, the center of the cube is at the center of the Stewart platform and the frames $\{A\}$ and $\{B\}$ are also taken at the center of the cube.
|
||||||
|
|
||||||
We only vary the size of the cube.
|
We only vary the size of the cube.
|
||||||
|
|
||||||
|
** Matlab Init :noexport:ignore:
|
||||||
|
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
|
||||||
|
<<matlab-dir>>
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src matlab :exports none :results silent :noweb yes
|
||||||
|
<<matlab-init>>
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src matlab :results none :exports none
|
||||||
|
simulinkproject('../');
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Analysis
|
||||||
|
We initialize the wanted cube's size.
|
||||||
#+begin_src matlab :results silent
|
#+begin_src matlab :results silent
|
||||||
Hcs = 1e-3*[250:20:350]; % Heights for the Cube [m]
|
Hcs = 1e-3*[250:20:350]; % Heights for the Cube [m]
|
||||||
Ks = zeros(6, 6, length(Hcs));
|
Ks = zeros(6, 6, length(Hcs));
|
||||||
@ -454,7 +498,7 @@ The frames $\{A\}$ and $\{B\}$ are positioned at the Stewart platform center as
|
|||||||
FOc = H + MO_B; % Center of the cube with respect to {F}
|
FOc = H + MO_B; % Center of the cube with respect to {F}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
#+begin_src matlab :results silent
|
#+begin_src matlab :exports none
|
||||||
stewart = initializeStewartPlatform();
|
stewart = initializeStewartPlatform();
|
||||||
stewart = initializeFramesPositions(stewart, 'H', H, 'MO_B', MO_B);
|
stewart = initializeFramesPositions(stewart, 'H', H, 'MO_B', MO_B);
|
||||||
for i = 1:length(Hcs)
|
for i = 1:length(Hcs)
|
||||||
@ -470,7 +514,7 @@ The frames $\{A\}$ and $\{B\}$ are positioned at the Stewart platform center as
|
|||||||
We find that for all the cube's size, $k_x = k_y = k_z = k$ where $k$ is the strut stiffness.
|
We find that for all the cube's size, $k_x = k_y = k_z = k$ where $k$ is the strut stiffness.
|
||||||
We also find that $k_{\theta_x} = k_{\theta_y}$ and $k_{\theta_z}$ are varying with the cube's size (figure [[fig:stiffness_cube_size]]).
|
We also find that $k_{\theta_x} = k_{\theta_y}$ and $k_{\theta_z}$ are varying with the cube's size (figure [[fig:stiffness_cube_size]]).
|
||||||
|
|
||||||
#+begin_src matlab :results none :exports code
|
#+begin_src matlab :exports none
|
||||||
figure;
|
figure;
|
||||||
hold on;
|
hold on;
|
||||||
plot(Hcs, squeeze(Ks(4, 4, :)), 'DisplayName', '$k_{\theta_x} = k_{\theta_y}$');
|
plot(Hcs, squeeze(Ks(4, 4, :)), 'DisplayName', '$k_{\theta_x} = k_{\theta_y}$');
|
||||||
@ -491,12 +535,38 @@ We also find that $k_{\theta_x} = k_{\theta_y}$ and $k_{\theta_z}$ are varying w
|
|||||||
#+RESULTS: fig:stiffness_cube_size
|
#+RESULTS: fig:stiffness_cube_size
|
||||||
[[file:figs/stiffness_cube_size.png]]
|
[[file:figs/stiffness_cube_size.png]]
|
||||||
|
|
||||||
|
** Conclusion
|
||||||
We observe that $k_{\theta_x} = k_{\theta_y}$ and $k_{\theta_z}$ increase linearly with the cube size.
|
We observe that $k_{\theta_x} = k_{\theta_y}$ and $k_{\theta_z}$ increase linearly with the cube size.
|
||||||
|
|
||||||
#+begin_important
|
#+begin_important
|
||||||
In order to maximize the rotational stiffness of the Stewart platform, the size of the cube should be the highest possible.
|
In order to maximize the rotational stiffness of the Stewart platform, the size of the cube should be the highest possible.
|
||||||
#+end_important
|
#+end_important
|
||||||
|
|
||||||
|
* Dynamic Coupling
|
||||||
|
<<sec:cubic_conf_coupling>>
|
||||||
|
** Introduction :ignore:
|
||||||
|
|
||||||
|
** Matlab Init :noexport:ignore:
|
||||||
|
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
|
||||||
|
<<matlab-dir>>
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src matlab :exports none :results silent :noweb yes
|
||||||
|
<<matlab-init>>
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src matlab :results none :exports none
|
||||||
|
simulinkproject('../');
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
** Cube's center at the Center of Mass of the Payload
|
||||||
|
|
||||||
|
** Dynamic decoupling between the actuators and sensors
|
||||||
|
|
||||||
|
** Conclusion
|
||||||
|
|
||||||
* Functions
|
* Functions
|
||||||
<<sec:functions>>
|
<<sec:functions>>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user