Remove useless latex headings

This commit is contained in:
Thomas Dehaeze 2020-02-14 14:24:20 +01:00
parent de392e5c40
commit a83598d7dd
6 changed files with 190 additions and 218 deletions

View File

@ -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-13 jeu. 16:46 --> <!-- 2020-02-14 ven. 14:11 -->
<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>
@ -274,33 +274,33 @@ for the JavaScript code in this tag.
<li><a href="#orga88e79a">1.2. Cubic Stewart platform centered with the cube center - Jacobian not estimated at the cube center</a></li> <li><a href="#orga88e79a">1.2. Cubic Stewart platform centered with the cube center - Jacobian not 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="#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="#orgaaa4012">1.5. Conclusion</a></li> <li><a href="#orgbde7788">1.5. Conclusion</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orgd70418b">2. Configuration with the Cube&rsquo;s center above the mobile platform</a> <li><a href="#orgd70418b">2. Configuration with the Cube&rsquo;s center above the mobile platform</a>
<ul> <ul>
<li><a href="#org8afa645">2.1. Having Cube&rsquo;s center above the top platform</a></li> <li><a href="#org8afa645">2.1. Having Cube&rsquo;s center above the top platform</a></li>
<li><a href="#orge4b07dd">2.2. Conclusion</a></li> <li><a href="#orgc0314ec">2.2. Conclusion</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orgcc4ecce">3. Cubic size analysis</a> <li><a href="#orgcc4ecce">3. Cubic size analysis</a>
<ul> <ul>
<li><a href="#org0029d8c">3.1. Analysis</a></li> <li><a href="#org0029d8c">3.1. Analysis</a></li>
<li><a href="#orga34a399">3.2. Conclusion</a></li> <li><a href="#orgb3ca361">3.2. Conclusion</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orgf09da67">4. Dynamic Coupling in the Cartesian Frame</a> <li><a href="#orgf09da67">4. Dynamic Coupling in the Cartesian Frame</a>
<ul> <ul>
<li><a href="#org5fe01ec">4.1. Cube&rsquo;s center at the Center of Mass of the mobile platform</a></li> <li><a href="#org5fe01ec">4.1. Cube&rsquo;s center at the Center of Mass of the mobile platform</a></li>
<li><a href="#org4cb2a36">4.2. Cube&rsquo;s center not coincident with the Mass of the Mobile platform</a></li> <li><a href="#org4cb2a36">4.2. Cube&rsquo;s center not coincident with the Mass of the Mobile platform</a></li>
<li><a href="#org2a36f1e">4.3. Conclusion</a></li> <li><a href="#orge33568e">4.3. Conclusion</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org8f26dc0">5. Dynamic Coupling between actuators and sensors of each strut</a> <li><a href="#org8f26dc0">5. Dynamic Coupling between actuators and sensors of each strut</a>
<ul> <ul>
<li><a href="#org6e391c9">5.1. Coupling between the actuators and sensors - Cubic Architecture</a></li> <li><a href="#org6e391c9">5.1. Coupling between the actuators and sensors - Cubic Architecture</a></li>
<li><a href="#orgafd808d">5.2. Coupling between the actuators and sensors - Non-Cubic Architecture</a></li> <li><a href="#orgafd808d">5.2. Coupling between the actuators and sensors - Non-Cubic Architecture</a></li>
<li><a href="#orgbde7788">5.3. Conclusion</a></li> <li><a href="#org1a90044">5.3. Conclusion</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org3044455">6. Functions</a> <li><a href="#org3044455">6. Functions</a>
@ -333,7 +333,7 @@ According to <a class='org-ref-reference' href="#preumont07_six_axis_singl_stage
</p> </p>
<blockquote> <blockquote>
<p> <p>
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 <b>uniform control capability</b> and a <b>uniform stiffness</b> in all directions, and it <b>minimizes the cross-coupling amongst actuators and sensors of different legs</b> (being orthogonal to each other).
</p> </p>
</blockquote> </blockquote>
@ -341,11 +341,11 @@ This topology provides a uniform control capability and a uniform stiffness in a
In this document, the cubic architecture is analyzed: In this document, the cubic architecture is analyzed:
</p> </p>
<ul class="org-ul"> <ul class="org-ul">
<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>In section <a href="#orgda0ee50">1</a>, we study the <b>uniform stiffness</b> of such configuration and we find the conditions to obtain a diagonal stiffness matrix</li>
<li>In section <a href="#orgb73265d">2</a>, we study cubic configurations where the cube&rsquo;s center is located above the mobile platform</li> <li>In section <a href="#orgb73265d">2</a>, we find cubic configurations where the cube&rsquo;s center is located above the mobile platform</li>
<li>In section <a href="#org348ec7d">3</a>, we study the effect of the cube&rsquo;s size on the Stewart platform properties</li> <li>In section <a href="#org348ec7d">3</a>, we study the effect of the cube&rsquo;s size on the Stewart platform properties</li>
<li>In section <a href="#org00d3816">4</a>, we study the dynamic coupling of the cubic configuration in the cartesian frame</li> <li>In section <a href="#org00d3816">4</a>, we study the dynamics of the cubic configuration in the cartesian frame</li>
<li>In section <a href="#org5b5c8a9">5</a>, we study the dynamic coupling of the cubic configuration from actuators to sensors of each strut</li> <li>In section <a href="#org5b5c8a9">5</a>, we study the dynamic <b>cross-coupling</b> of the cubic configuration from actuators to sensors of each strut</li>
<li>In section <a href="#org28ba607">6</a>, function related to the cubic configuration are defined. 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>).</li> <li>In section <a href="#org28ba607">6</a>, function related to the cubic configuration are defined. 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>).</li>
</ul> </ul>
@ -848,8 +848,8 @@ stewart = initializeCylindricalPlatforms(stewart, <span class="org-string">'Fpr'
</div> </div>
</div> </div>
<div id="outline-container-orgaaa4012" class="outline-3"> <div id="outline-container-orgbde7788" class="outline-3">
<h3 id="orgaaa4012"><span class="section-number-3">1.5</span> Conclusion</h3> <h3 id="orgbde7788"><span class="section-number-3">1.5</span> Conclusion</h3>
<div class="outline-text-3" id="text-1-5"> <div class="outline-text-3" id="text-1-5">
<div class="important"> <div class="important">
<p> <p>
@ -1186,8 +1186,8 @@ FOc = H <span class="org-type">+</span> MO_B; <span class="org-comment">% Cente
</div> </div>
</div> </div>
<div id="outline-container-orge4b07dd" class="outline-3"> <div id="outline-container-orgc0314ec" class="outline-3">
<h3 id="orge4b07dd"><span class="section-number-3">2.2</span> Conclusion</h3> <h3 id="orgc0314ec"><span class="section-number-3">2.2</span> Conclusion</h3>
<div class="outline-text-3" id="text-2-2"> <div class="outline-text-3" id="text-2-2">
<div class="important"> <div class="important">
<p> <p>
@ -1273,8 +1273,8 @@ We also find that \(k_{\theta_x} = k_{\theta_y}\) and \(k_{\theta_z}\) are varyi
</div> </div>
</div> </div>
<div id="outline-container-orga34a399" class="outline-3"> <div id="outline-container-orgb3ca361" class="outline-3">
<h3 id="orga34a399"><span class="section-number-3">3.2</span> Conclusion</h3> <h3 id="orgb3ca361"><span class="section-number-3">3.2</span> Conclusion</h3>
<div class="outline-text-3" id="text-3-2"> <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.
@ -1319,20 +1319,6 @@ We here suppose that there is one relative motion sensor in each strut (\(\delta
Thanks to the Jacobian matrix, we can use the &ldquo;architecture&rdquo; shown in Figure <a href="#org76f24a0">9</a> to obtain the dynamics of the system from forces/torques applied by the actuators on the top platform to translations/rotations of the top platform. Thanks to the Jacobian matrix, we can use the &ldquo;architecture&rdquo; shown in Figure <a href="#org76f24a0">9</a> to obtain the dynamics of the system from forces/torques applied by the actuators on the top platform to translations/rotations of the top platform.
</p> </p>
<div class="org-src-container">
<pre class="src src-latex"><span class="org-font-latex-sedate"><span class="org-keyword">\begin</span></span>{<span class="org-function-name">tikzpicture</span>}
<span class="org-font-latex-sedate">\node</span>[block] (Jt) at (0, 0) {<span class="org-font-latex-math">$</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\bm</span></span><span class="org-font-latex-math">{J}</span><span class="org-font-latex-math"><span class="org-font-latex-script-char">^</span></span><span class="org-font-latex-math">{-T}$</span>};
<span class="org-font-latex-sedate">\node</span>[block, right= of Jt] (G) {<span class="org-font-latex-math">$</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\bm</span></span><span class="org-font-latex-math">{G}$</span>};
<span class="org-font-latex-sedate">\node</span>[block, right= of G] (J) {<span class="org-font-latex-math">$</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\bm</span></span><span class="org-font-latex-math">{J}</span><span class="org-font-latex-math"><span class="org-font-latex-script-char">^</span></span><span class="org-font-latex-math">{-1}$</span>};
<span class="org-font-latex-sedate">\draw</span>[-&gt;] (<span class="org-font-latex-math">$(Jt.west)+(-0.8, 0)$</span>) -- (Jt.west) node[above left]{<span class="org-font-latex-math">$</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\bm</span></span><span class="org-font-latex-math">{</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\mathcal</span></span><span class="org-font-latex-math">{F}}$</span>};
<span class="org-font-latex-sedate">\draw</span>[-&gt;] (Jt.east) -- (G.west) node[above left]{<span class="org-font-latex-math">$</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\bm</span></span><span class="org-font-latex-math">{</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\tau</span></span><span class="org-font-latex-math">}$</span>};
<span class="org-font-latex-sedate">\draw</span>[-&gt;] (G.east) -- (J.west) node[above left]{<span class="org-font-latex-math">$</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\delta\bm</span></span><span class="org-font-latex-math">{</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\mathcal</span></span><span class="org-font-latex-math">{L}}$</span>};
<span class="org-font-latex-sedate">\draw</span>[-&gt;] (J.east) -- ++(0.8, 0) node[above left]{<span class="org-font-latex-math">$</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\delta\bm</span></span><span class="org-font-latex-math">{</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\mathcal</span></span><span class="org-font-latex-math">{X}}$</span>};
<span class="org-font-latex-sedate"><span class="org-keyword">\end</span></span>{<span class="org-function-name">tikzpicture</span>}
</pre>
</div>
<div id="org76f24a0" class="figure"> <div id="org76f24a0" class="figure">
<p><img src="figs/local_to_cartesian_coordinates.png" alt="local_to_cartesian_coordinates.png" /> <p><img src="figs/local_to_cartesian_coordinates.png" alt="local_to_cartesian_coordinates.png" />
@ -1643,8 +1629,8 @@ This was expected as the mass matrix is not diagonal (the Center of Mass of the
</div> </div>
</div> </div>
<div id="outline-container-org2a36f1e" class="outline-3"> <div id="outline-container-orge33568e" class="outline-3">
<h3 id="org2a36f1e"><span class="section-number-3">4.3</span> Conclusion</h3> <h3 id="orge33568e"><span class="section-number-3">4.3</span> Conclusion</h3>
<div class="outline-text-3" id="text-4-3"> <div class="outline-text-3" id="text-4-3">
<div class="important"> <div class="important">
<p> <p>
@ -1826,8 +1812,8 @@ And we identify the dynamics from the actuator forces \(\tau_{i}\) to the relati
</div> </div>
</div> </div>
<div id="outline-container-orgbde7788" class="outline-3"> <div id="outline-container-org1a90044" class="outline-3">
<h3 id="orgbde7788"><span class="section-number-3">5.3</span> Conclusion</h3> <h3 id="org1a90044"><span class="section-number-3">5.3</span> Conclusion</h3>
<div class="outline-text-3" id="text-5-3"> <div class="outline-text-3" id="text-5-3">
<div class="important"> <div class="important">
<p> <p>
@ -1998,7 +1984,7 @@ stewart.platform_M.Mb = Mb;
</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-13 jeu. 16:46</p> <p class="date">Created: 2020-02-14 ven. 14:11</p>
</div> </div>
</body> </body>
</html> </html>

View File

@ -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-11 mar. 17:52 --> <!-- 2020-02-14 ven. 14:11 -->
<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>Stewart Platform - Static Analysis</title> <title>Stewart Platform - Static Analysis</title>
@ -280,20 +280,6 @@ for the JavaScript code in this tag.
What causes the coupling from \(F_i\) to \(X_i\) ? What causes the coupling from \(F_i\) to \(X_i\) ?
</p> </p>
<div class="org-src-container">
<pre class="src src-latex"><span class="org-font-latex-sedate"><span class="org-keyword">\begin</span></span>{<span class="org-function-name">tikzpicture</span>}
<span class="org-font-latex-sedate">\node</span>[block] (Jt) at (0, 0) {<span class="org-font-latex-math">$J</span><span class="org-font-latex-math"><span class="org-font-latex-script-char">^</span></span><span class="org-font-latex-math">{-T}$</span>};
<span class="org-font-latex-sedate">\node</span>[block, right= of Jt] (G) {<span class="org-font-latex-math">$G$</span>};
<span class="org-font-latex-sedate">\node</span>[block, right= of G] (J) {<span class="org-font-latex-math">$J</span><span class="org-font-latex-math"><span class="org-font-latex-script-char">^</span></span><span class="org-font-latex-math">{-1}$</span>};
<span class="org-font-latex-sedate">\draw</span>[-&gt;] (<span class="org-font-latex-math">$(Jt.west)+(-0.8, 0)$</span>) -- (Jt.west) node[above left]{<span class="org-font-latex-math">$F</span><span class="org-font-latex-math"><span class="org-font-latex-script-char">_</span></span><span class="org-font-latex-math">i$</span>};
<span class="org-font-latex-sedate">\draw</span>[-&gt;] (Jt.east) -- (G.west) node[above left]{<span class="org-font-latex-math">$</span><span class="org-font-latex-sedate"><span class="org-font-latex-math">\tau</span></span><span class="org-font-latex-math"><span class="org-font-latex-script-char">_</span></span><span class="org-font-latex-math">i$</span>};
<span class="org-font-latex-sedate">\draw</span>[-&gt;] (G.east) -- (J.west) node[above left]{<span class="org-font-latex-math">$q</span><span class="org-font-latex-math"><span class="org-font-latex-script-char">_</span></span><span class="org-font-latex-math">i$</span>};
<span class="org-font-latex-sedate">\draw</span>[-&gt;] (J.east) -- ++(0.8, 0) node[above left]{<span class="org-font-latex-math">$X</span><span class="org-font-latex-math"><span class="org-font-latex-script-char">_</span></span><span class="org-font-latex-math">i$</span>};
<span class="org-font-latex-sedate"><span class="org-keyword">\end</span></span>{<span class="org-function-name">tikzpicture</span>}
</pre>
</div>
<div id="org41430df" class="figure"> <div id="org41430df" class="figure">
<p><img src="figs/coupling.png" alt="coupling.png" /> <p><img src="figs/coupling.png" alt="coupling.png" />
@ -317,7 +303,7 @@ Thus, the system is uncoupled if \(G\) and \(K\) are diagonal.
</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-11 mar. 17:52</p> <p class="date">Created: 2020-02-14 ven. 14:11</p>
</div> </div>
</body> </body>
</html> </html>

View File

@ -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-13 jeu. 15:47 --> <!-- 2020-02-14 ven. 14:11 -->
<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>Stewart Platform - Definition of the Architecture</title> <title>Stewart Platform - Definition of the Architecture</title>
@ -297,85 +297,85 @@ for the JavaScript code in this tag.
<ul> <ul>
<li><a href="#orgd89f0e1">5.1. <code>initializeStewartPlatform</code>: Initialize the Stewart Platform structure</a> <li><a href="#orgd89f0e1">5.1. <code>initializeStewartPlatform</code>: Initialize the Stewart Platform structure</a>
<ul> <ul>
<li><a href="#org56918f3">Documentation</a></li> <li><a href="#orga7c47bc">Documentation</a></li>
<li><a href="#org2bf8771">Function description</a></li> <li><a href="#org59a5a2e">Function description</a></li>
<li><a href="#orgd567fc1">Initialize the Stewart structure</a></li> <li><a href="#orgd567fc1">Initialize the Stewart structure</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orgb11894c">5.2. <code>initializeFramesPositions</code>: Initialize the positions of frames {A}, {B}, {F} and {M}</a> <li><a href="#orgb11894c">5.2. <code>initializeFramesPositions</code>: Initialize the positions of frames {A}, {B}, {F} and {M}</a>
<ul> <ul>
<li><a href="#org75e004e">Documentation</a></li> <li><a href="#org2e2e6c3">Documentation</a></li>
<li><a href="#org961f34d">Function description</a></li> <li><a href="#org04ff2b3">Function description</a></li>
<li><a href="#org2259cf3">Optional Parameters</a></li> <li><a href="#org8bd5132">Optional Parameters</a></li>
<li><a href="#org458592e">Compute the position of each frame</a></li> <li><a href="#org458592e">Compute the position of each frame</a></li>
<li><a href="#org46c0939">Populate the <code>stewart</code> structure</a></li> <li><a href="#org55d115f">Populate the <code>stewart</code> structure</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org9057387">5.3. <code>generateGeneralConfiguration</code>: Generate a Very General Configuration</a> <li><a href="#org9057387">5.3. <code>generateGeneralConfiguration</code>: Generate a Very General Configuration</a>
<ul> <ul>
<li><a href="#org35cd468">Documentation</a></li> <li><a href="#org96f9637">Documentation</a></li>
<li><a href="#org5e67fec">Function description</a></li> <li><a href="#org59b256d">Function description</a></li>
<li><a href="#org552a968">Optional Parameters</a></li> <li><a href="#org953c5b3">Optional Parameters</a></li>
<li><a href="#org232e4c2">Compute the pose</a></li> <li><a href="#org232e4c2">Compute the pose</a></li>
<li><a href="#org08036be">Populate the <code>stewart</code> structure</a></li> <li><a href="#org8ce6d85">Populate the <code>stewart</code> structure</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org861f6de">5.4. <code>computeJointsPose</code>: Compute the Pose of the Joints</a> <li><a href="#org861f6de">5.4. <code>computeJointsPose</code>: Compute the Pose of the Joints</a>
<ul> <ul>
<li><a href="#org310340f">Documentation</a></li> <li><a href="#org6b1772b">Documentation</a></li>
<li><a href="#orgb68ba66">Function description</a></li> <li><a href="#org6ac2b53">Function description</a></li>
<li><a href="#org2318f9d">Check the <code>stewart</code> structure elements</a></li> <li><a href="#org92ac986">Check the <code>stewart</code> structure elements</a></li>
<li><a href="#org52b0d4c">Compute the position of the Joints</a></li> <li><a href="#org52b0d4c">Compute the position of the Joints</a></li>
<li><a href="#org4b76b0f">Compute the strut length and orientation</a></li> <li><a href="#org4b76b0f">Compute the strut length and orientation</a></li>
<li><a href="#orgd621d5e">Compute the orientation of the Joints</a></li> <li><a href="#orgd621d5e">Compute the orientation of the Joints</a></li>
<li><a href="#org85f125f">Populate the <code>stewart</code> structure</a></li> <li><a href="#orgc39bc0e">Populate the <code>stewart</code> structure</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org329bef9">5.5. <code>initializeStewartPose</code>: Determine the initial stroke in each leg to have the wanted pose</a> <li><a href="#org329bef9">5.5. <code>initializeStewartPose</code>: Determine the initial stroke in each leg to have the wanted pose</a>
<ul> <ul>
<li><a href="#orge9eed8d">Function description</a></li> <li><a href="#org8339f6e">Function description</a></li>
<li><a href="#org2ecb2be">Optional Parameters</a></li> <li><a href="#org6b574c3">Optional Parameters</a></li>
<li><a href="#org3d3ef62">Use the Inverse Kinematic function</a></li> <li><a href="#org3d3ef62">Use the Inverse Kinematic function</a></li>
<li><a href="#org91a0531">Populate the <code>stewart</code> structure</a></li> <li><a href="#org70b368a">Populate the <code>stewart</code> structure</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org6ff5b31">5.6. <code>initializeCylindricalPlatforms</code>: Initialize the geometry of the Fixed and Mobile Platforms</a> <li><a href="#org6ff5b31">5.6. <code>initializeCylindricalPlatforms</code>: Initialize the geometry of the Fixed and Mobile Platforms</a>
<ul> <ul>
<li><a href="#org7a76b52">Function description</a></li> <li><a href="#orgef76da0">Function description</a></li>
<li><a href="#orgd2ac20d">Optional Parameters</a></li> <li><a href="#org333a206">Optional Parameters</a></li>
<li><a href="#org25a390a">Compute the Inertia matrices of platforms</a></li> <li><a href="#org25a390a">Compute the Inertia matrices of platforms</a></li>
<li><a href="#org54ca25a">Populate the <code>stewart</code> structure</a></li> <li><a href="#org89d5372">Populate the <code>stewart</code> structure</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org60aa215">5.7. <code>initializeCylindricalStruts</code>: Define the inertia of cylindrical struts</a> <li><a href="#org60aa215">5.7. <code>initializeCylindricalStruts</code>: Define the inertia of cylindrical struts</a>
<ul> <ul>
<li><a href="#orge902b6c">Function description</a></li> <li><a href="#org0431333">Function description</a></li>
<li><a href="#org9ed68cb">Optional Parameters</a></li> <li><a href="#org738f1f8">Optional Parameters</a></li>
<li><a href="#orgc056498">Compute the properties of the cylindrical struts</a></li> <li><a href="#orgc056498">Compute the properties of the cylindrical struts</a></li>
<li><a href="#org4e084f4">Populate the <code>stewart</code> structure</a></li> <li><a href="#org9c1a6e4">Populate the <code>stewart</code> structure</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org3ad0cd1">5.8. <code>initializeStrutDynamics</code>: Add Stiffness and Damping properties of each strut</a> <li><a href="#org3ad0cd1">5.8. <code>initializeStrutDynamics</code>: Add Stiffness and Damping properties of each strut</a>
<ul> <ul>
<li><a href="#orgfbed90c">Documentation</a></li> <li><a href="#org53e4966">Documentation</a></li>
<li><a href="#org6f66ea1">Function description</a></li> <li><a href="#org5bd2bb1">Function description</a></li>
<li><a href="#org5acb074">Optional Parameters</a></li> <li><a href="#org484f45f">Optional Parameters</a></li>
<li><a href="#orgadb8327">Add Stiffness and Damping properties of each strut</a></li> <li><a href="#orgadb8327">Add Stiffness and Damping properties of each strut</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orgd8d403e">5.9. <code>initializeAmplifiedStrutDynamics</code>: Add Stiffness and Damping properties of each strut for an amplified piezoelectric actuator</a> <li><a href="#orgd8d403e">5.9. <code>initializeAmplifiedStrutDynamics</code>: Add Stiffness and Damping properties of each strut for an amplified piezoelectric actuator</a>
<ul> <ul>
<li><a href="#orga7c47bc">Documentation</a></li> <li><a href="#orgcbe44a8">Documentation</a></li>
<li><a href="#org899fc34">Function description</a></li> <li><a href="#orgbeac987">Function description</a></li>
<li><a href="#orgc57dd52">Optional Parameters</a></li> <li><a href="#orgb924b3b">Optional Parameters</a></li>
<li><a href="#org9b435e8">Compute the total stiffness and damping</a></li> <li><a href="#org9b435e8">Compute the total stiffness and damping</a></li>
<li><a href="#org7a48c56">Populate the <code>stewart</code> structure</a></li> <li><a href="#org0c93e39">Populate the <code>stewart</code> structure</a></li>
</ul> </ul>
</li> </li>
<li><a href="#orgeb6173a">5.10. <code>initializeJointDynamics</code>: Add Stiffness and Damping properties for spherical joints</a> <li><a href="#orgeb6173a">5.10. <code>initializeJointDynamics</code>: Add Stiffness and Damping properties for spherical joints</a>
<ul> <ul>
<li><a href="#orgbe1d3f6">Function description</a></li> <li><a href="#orgd67e306">Function description</a></li>
<li><a href="#org3b77131">Optional Parameters</a></li> <li><a href="#orgbad8e13">Optional Parameters</a></li>
<li><a href="#orgc6d4183">Add Actuator Type</a></li> <li><a href="#orgc6d4183">Add Actuator Type</a></li>
<li><a href="#orgc0e613c">Add Stiffness and Damping in Translation of each strut</a></li> <li><a href="#orgc0e613c">Add Stiffness and Damping in Translation of each strut</a></li>
<li><a href="#org04698fc">Add Stiffness and Damping in Rotation of each strut</a></li> <li><a href="#org04698fc">Add Stiffness and Damping in Rotation of each strut</a></li>
@ -385,17 +385,17 @@ for the JavaScript code in this tag.
<ul> <ul>
<li><a href="#orgd667bbb">Geophone - Working Principle</a></li> <li><a href="#orgd667bbb">Geophone - Working Principle</a></li>
<li><a href="#orgca7729f">Accelerometer - Working Principle</a></li> <li><a href="#orgca7729f">Accelerometer - Working Principle</a></li>
<li><a href="#org1eb17e3">Function description</a></li> <li><a href="#org42a2695">Function description</a></li>
<li><a href="#orgc623e70">Optional Parameters</a></li> <li><a href="#org5d7462b">Optional Parameters</a></li>
<li><a href="#org463075d">Compute the properties of the sensor</a></li> <li><a href="#org463075d">Compute the properties of the sensor</a></li>
<li><a href="#org55d115f">Populate the <code>stewart</code> structure</a></li> <li><a href="#org5cb9de9">Populate the <code>stewart</code> structure</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org5266e9d">5.12. <code>displayArchitecture</code>: 3D plot of the Stewart platform architecture</a> <li><a href="#org5266e9d">5.12. <code>displayArchitecture</code>: 3D plot of the Stewart platform architecture</a>
<ul> <ul>
<li><a href="#org59a5a2e">Function description</a></li> <li><a href="#org3f0619e">Function description</a></li>
<li><a href="#org8bd5132">Optional Parameters</a></li> <li><a href="#orgc1e4a8f">Optional Parameters</a></li>
<li><a href="#org92ac986">Check the <code>stewart</code> structure elements</a></li> <li><a href="#org5081c24">Check the <code>stewart</code> structure elements</a></li>
<li><a href="#orgc088b18">Figure Creation, Frames and Homogeneous transformations</a></li> <li><a href="#orgc088b18">Figure Creation, Frames and Homogeneous transformations</a></li>
<li><a href="#orgc25a979">Fixed Base elements</a></li> <li><a href="#orgc25a979">Fixed Base elements</a></li>
<li><a href="#org8417772">Mobile Platform elements</a></li> <li><a href="#org8417772">Mobile Platform elements</a></li>
@ -845,11 +845,11 @@ This Matlab function is accessible <a href="../src/initializeStewartPlatform.m">
</p> </p>
</div> </div>
<div id="outline-container-org56918f3" class="outline-4"> <div id="outline-container-orga7c47bc" class="outline-4">
<h4 id="org56918f3">Documentation</h4> <h4 id="orga7c47bc">Documentation</h4>
<div class="outline-text-4" id="text-org56918f3"> <div class="outline-text-4" id="text-orga7c47bc">
<div id="orgfeff460" class="figure"> <div id="org9d8b281" class="figure">
<p><img src="figs/stewart-frames-position.png" alt="stewart-frames-position.png" /> <p><img src="figs/stewart-frames-position.png" alt="stewart-frames-position.png" />
</p> </p>
<p><span class="figure-number">Figure 7: </span>Definition of the position of the frames</p> <p><span class="figure-number">Figure 7: </span>Definition of the position of the frames</p>
@ -857,9 +857,9 @@ This Matlab function is accessible <a href="../src/initializeStewartPlatform.m">
</div> </div>
</div> </div>
<div id="outline-container-org2bf8771" class="outline-4"> <div id="outline-container-org59a5a2e" class="outline-4">
<h4 id="org2bf8771">Function description</h4> <h4 id="org59a5a2e">Function description</h4>
<div class="outline-text-4" id="text-org2bf8771"> <div class="outline-text-4" id="text-org59a5a2e">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeStewartPlatform</span>() <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeStewartPlatform</span>()
<span class="org-comment">% initializeStewartPlatform - Initialize the stewart structure</span> <span class="org-comment">% initializeStewartPlatform - Initialize the stewart structure</span>
@ -918,11 +918,11 @@ This Matlab function is accessible <a href="../src/initializeFramesPositions.m">
</p> </p>
</div> </div>
<div id="outline-container-org75e004e" class="outline-4"> <div id="outline-container-org2e2e6c3" class="outline-4">
<h4 id="org75e004e">Documentation</h4> <h4 id="org2e2e6c3">Documentation</h4>
<div class="outline-text-4" id="text-org75e004e"> <div class="outline-text-4" id="text-org2e2e6c3">
<div id="org9d8b281" class="figure"> <div id="org8c7f906" class="figure">
<p><img src="figs/stewart-frames-position.png" alt="stewart-frames-position.png" /> <p><img src="figs/stewart-frames-position.png" alt="stewart-frames-position.png" />
</p> </p>
<p><span class="figure-number">Figure 8: </span>Definition of the position of the frames</p> <p><span class="figure-number">Figure 8: </span>Definition of the position of the frames</p>
@ -930,9 +930,9 @@ This Matlab function is accessible <a href="../src/initializeFramesPositions.m">
</div> </div>
</div> </div>
<div id="outline-container-org961f34d" class="outline-4"> <div id="outline-container-org04ff2b3" class="outline-4">
<h4 id="org961f34d">Function description</h4> <h4 id="org04ff2b3">Function description</h4>
<div class="outline-text-4" id="text-org961f34d"> <div class="outline-text-4" id="text-org04ff2b3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeFramesPositions</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeFramesPositions</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% initializeFramesPositions - Initialize the positions of frames {A}, {B}, {F} and {M}</span> <span class="org-comment">% initializeFramesPositions - Initialize the positions of frames {A}, {B}, {F} and {M}</span>
@ -955,9 +955,9 @@ This Matlab function is accessible <a href="../src/initializeFramesPositions.m">
</div> </div>
</div> </div>
<div id="outline-container-org2259cf3" class="outline-4"> <div id="outline-container-org8bd5132" class="outline-4">
<h4 id="org2259cf3">Optional Parameters</h4> <h4 id="org8bd5132">Optional Parameters</h4>
<div class="outline-text-4" id="text-org2259cf3"> <div class="outline-text-4" id="text-org8bd5132">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -985,9 +985,9 @@ FO_A = MO_B <span class="org-type">+</span> FO_M; <span class="org-comment">% Po
</div> </div>
</div> </div>
<div id="outline-container-org46c0939" class="outline-4"> <div id="outline-container-org55d115f" class="outline-4">
<h4 id="org46c0939">Populate the <code>stewart</code> structure</h4> <h4 id="org55d115f">Populate the <code>stewart</code> structure</h4>
<div class="outline-text-4" id="text-org46c0939"> <div class="outline-text-4" id="text-org55d115f">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">stewart.geometry.H = H; <pre class="src src-matlab">stewart.geometry.H = H;
stewart.geometry.FO_M = FO_M; stewart.geometry.FO_M = FO_M;
@ -1011,9 +1011,9 @@ This Matlab function is accessible <a href="../src/generateGeneralConfiguration.
</p> </p>
</div> </div>
<div id="outline-container-org35cd468" class="outline-4"> <div id="outline-container-org96f9637" class="outline-4">
<h4 id="org35cd468">Documentation</h4> <h4 id="org96f9637">Documentation</h4>
<div class="outline-text-4" id="text-org35cd468"> <div class="outline-text-4" id="text-org96f9637">
<p> <p>
Joints are positions on a circle centered with the Z axis of {F} and {M} and at a chosen distance from {F} and {M}. Joints are positions on a circle centered with the Z axis of {F} and {M} and at a chosen distance from {F} and {M}.
The radius of the circles can be chosen as well as the angles where the joints are located (see Figure <a href="#org4c354b6">9</a>). The radius of the circles can be chosen as well as the angles where the joints are located (see Figure <a href="#org4c354b6">9</a>).
@ -1028,9 +1028,9 @@ The radius of the circles can be chosen as well as the angles where the joints a
</div> </div>
</div> </div>
<div id="outline-container-org5e67fec" class="outline-4"> <div id="outline-container-org59b256d" class="outline-4">
<h4 id="org5e67fec">Function description</h4> <h4 id="org59b256d">Function description</h4>
<div class="outline-text-4" id="text-org5e67fec"> <div class="outline-text-4" id="text-org59b256d">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">generateGeneralConfiguration</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">generateGeneralConfiguration</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% generateGeneralConfiguration - Generate a Very General Configuration</span> <span class="org-comment">% generateGeneralConfiguration - Generate a Very General Configuration</span>
@ -1055,9 +1055,9 @@ The radius of the circles can be chosen as well as the angles where the joints a
</div> </div>
</div> </div>
<div id="outline-container-org552a968" class="outline-4"> <div id="outline-container-org953c5b3" class="outline-4">
<h4 id="org552a968">Optional Parameters</h4> <h4 id="org953c5b3">Optional Parameters</h4>
<div class="outline-text-4" id="text-org552a968"> <div class="outline-text-4" id="text-org953c5b3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -1092,9 +1092,9 @@ Mb = zeros(3,6);
</div> </div>
</div> </div>
<div id="outline-container-org08036be" class="outline-4"> <div id="outline-container-org8ce6d85" class="outline-4">
<h4 id="org08036be">Populate the <code>stewart</code> structure</h4> <h4 id="org8ce6d85">Populate the <code>stewart</code> structure</h4>
<div class="outline-text-4" id="text-org08036be"> <div class="outline-text-4" id="text-org8ce6d85">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">stewart.platform_F.Fa = Fa; <pre class="src src-matlab">stewart.platform_F.Fa = Fa;
stewart.platform_M.Mb = Mb; stewart.platform_M.Mb = Mb;
@ -1116,9 +1116,9 @@ This Matlab function is accessible <a href="../src/computeJointsPose.m">here</a>
</p> </p>
</div> </div>
<div id="outline-container-org310340f" class="outline-4"> <div id="outline-container-org6b1772b" class="outline-4">
<h4 id="org310340f">Documentation</h4> <h4 id="org6b1772b">Documentation</h4>
<div class="outline-text-4" id="text-org310340f"> <div class="outline-text-4" id="text-org6b1772b">
<div id="org8ffb841" class="figure"> <div id="org8ffb841" class="figure">
<p><img src="figs/stewart-struts.png" alt="stewart-struts.png" /> <p><img src="figs/stewart-struts.png" alt="stewart-struts.png" />
@ -1128,9 +1128,9 @@ This Matlab function is accessible <a href="../src/computeJointsPose.m">here</a>
</div> </div>
</div> </div>
<div id="outline-container-orgb68ba66" class="outline-4"> <div id="outline-container-org6ac2b53" class="outline-4">
<h4 id="orgb68ba66">Function description</h4> <h4 id="org6ac2b53">Function description</h4>
<div class="outline-text-4" id="text-orgb68ba66"> <div class="outline-text-4" id="text-org6ac2b53">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">computeJointsPose</span>(<span class="org-variable-name">stewart</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">computeJointsPose</span>(<span class="org-variable-name">stewart</span>)
<span class="org-comment">% computeJointsPose -</span> <span class="org-comment">% computeJointsPose -</span>
@ -1163,9 +1163,9 @@ This Matlab function is accessible <a href="../src/computeJointsPose.m">here</a>
</div> </div>
</div> </div>
<div id="outline-container-org2318f9d" class="outline-4"> <div id="outline-container-org92ac986" class="outline-4">
<h4 id="org2318f9d">Check the <code>stewart</code> structure elements</h4> <h4 id="org92ac986">Check the <code>stewart</code> structure elements</h4>
<div class="outline-text-4" id="text-org2318f9d"> <div class="outline-text-4" id="text-org92ac986">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">assert(isfield(stewart.platform_F, <span class="org-string">'Fa'</span>), <span class="org-string">'stewart.platform_F should have attribute Fa'</span>) <pre class="src src-matlab">assert(isfield(stewart.platform_F, <span class="org-string">'Fa'</span>), <span class="org-string">'stewart.platform_F should have attribute Fa'</span>)
Fa = stewart.platform_F.Fa; Fa = stewart.platform_F.Fa;
@ -1236,9 +1236,9 @@ MRb = zeros(3,3,6);
</div> </div>
</div> </div>
<div id="outline-container-org85f125f" class="outline-4"> <div id="outline-container-orgc39bc0e" class="outline-4">
<h4 id="org85f125f">Populate the <code>stewart</code> structure</h4> <h4 id="orgc39bc0e">Populate the <code>stewart</code> structure</h4>
<div class="outline-text-4" id="text-org85f125f"> <div class="outline-text-4" id="text-orgc39bc0e">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">stewart.geometry.Aa = Aa; <pre class="src src-matlab">stewart.geometry.Aa = Aa;
stewart.geometry.Ab = Ab; stewart.geometry.Ab = Ab;
@ -1271,9 +1271,9 @@ This Matlab function is accessible <a href="../src/initializeStewartPose.m">here
</p> </p>
</div> </div>
<div id="outline-container-orge9eed8d" class="outline-4"> <div id="outline-container-org8339f6e" class="outline-4">
<h4 id="orge9eed8d">Function description</h4> <h4 id="org8339f6e">Function description</h4>
<div class="outline-text-4" id="text-orge9eed8d"> <div class="outline-text-4" id="text-org8339f6e">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeStewartPose</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeStewartPose</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% initializeStewartPose - Determine the initial stroke in each leg to have the wanted pose</span> <span class="org-comment">% initializeStewartPose - Determine the initial stroke in each leg to have the wanted pose</span>
@ -1297,9 +1297,9 @@ This Matlab function is accessible <a href="../src/initializeStewartPose.m">here
</div> </div>
</div> </div>
<div id="outline-container-org2ecb2be" class="outline-4"> <div id="outline-container-org6b574c3" class="outline-4">
<h4 id="org2ecb2be">Optional Parameters</h4> <h4 id="org6b574c3">Optional Parameters</h4>
<div class="outline-text-4" id="text-org2ecb2be"> <div class="outline-text-4" id="text-org6b574c3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -1321,9 +1321,9 @@ This Matlab function is accessible <a href="../src/initializeStewartPose.m">here
</div> </div>
</div> </div>
<div id="outline-container-org91a0531" class="outline-4"> <div id="outline-container-org70b368a" class="outline-4">
<h4 id="org91a0531">Populate the <code>stewart</code> structure</h4> <h4 id="org70b368a">Populate the <code>stewart</code> structure</h4>
<div class="outline-text-4" id="text-org91a0531"> <div class="outline-text-4" id="text-org70b368a">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">stewart.actuators.Leq = dLi; <pre class="src src-matlab">stewart.actuators.Leq = dLi;
</pre> </pre>
@ -1344,9 +1344,9 @@ This Matlab function is accessible <a href="../src/initializeCylindricalPlatform
</p> </p>
</div> </div>
<div id="outline-container-org7a76b52" class="outline-4"> <div id="outline-container-orgef76da0" class="outline-4">
<h4 id="org7a76b52">Function description</h4> <h4 id="orgef76da0">Function description</h4>
<div class="outline-text-4" id="text-org7a76b52"> <div class="outline-text-4" id="text-orgef76da0">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeCylindricalPlatforms</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeCylindricalPlatforms</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% initializeCylindricalPlatforms - Initialize the geometry of the Fixed and Mobile Platforms</span> <span class="org-comment">% initializeCylindricalPlatforms - Initialize the geometry of the Fixed and Mobile Platforms</span>
@ -1380,9 +1380,9 @@ This Matlab function is accessible <a href="../src/initializeCylindricalPlatform
</div> </div>
</div> </div>
<div id="outline-container-orgd2ac20d" class="outline-4"> <div id="outline-container-org333a206" class="outline-4">
<h4 id="orgd2ac20d">Optional Parameters</h4> <h4 id="org333a206">Optional Parameters</h4>
<div class="outline-text-4" id="text-orgd2ac20d"> <div class="outline-text-4" id="text-org333a206">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -1417,9 +1417,9 @@ This Matlab function is accessible <a href="../src/initializeCylindricalPlatform
</div> </div>
</div> </div>
<div id="outline-container-org54ca25a" class="outline-4"> <div id="outline-container-org89d5372" class="outline-4">
<h4 id="org54ca25a">Populate the <code>stewart</code> structure</h4> <h4 id="org89d5372">Populate the <code>stewart</code> structure</h4>
<div class="outline-text-4" id="text-org54ca25a"> <div class="outline-text-4" id="text-org89d5372">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">stewart.platform_F.type = 1; <pre class="src src-matlab">stewart.platform_F.type = 1;
@ -1455,9 +1455,9 @@ This Matlab function is accessible <a href="../src/initializeCylindricalStruts.m
</p> </p>
</div> </div>
<div id="outline-container-orge902b6c" class="outline-4"> <div id="outline-container-org0431333" class="outline-4">
<h4 id="orge902b6c">Function description</h4> <h4 id="org0431333">Function description</h4>
<div class="outline-text-4" id="text-orge902b6c"> <div class="outline-text-4" id="text-org0431333">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeCylindricalStruts</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeCylindricalStruts</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% initializeCylindricalStruts - Define the mass and moment of inertia of cylindrical struts</span> <span class="org-comment">% initializeCylindricalStruts - Define the mass and moment of inertia of cylindrical struts</span>
@ -1490,9 +1490,9 @@ This Matlab function is accessible <a href="../src/initializeCylindricalStruts.m
</div> </div>
</div> </div>
<div id="outline-container-org9ed68cb" class="outline-4"> <div id="outline-container-org738f1f8" class="outline-4">
<h4 id="org9ed68cb">Optional Parameters</h4> <h4 id="org738f1f8">Optional Parameters</h4>
<div class="outline-text-4" id="text-org9ed68cb"> <div class="outline-text-4" id="text-org738f1f8">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -1540,9 +1540,9 @@ I_M = zeros(3, 3, 6); <span class="org-comment">% Inertia of the "mobile" part o
</div> </div>
</div> </div>
<div id="outline-container-org4e084f4" class="outline-4"> <div id="outline-container-org9c1a6e4" class="outline-4">
<h4 id="org4e084f4">Populate the <code>stewart</code> structure</h4> <h4 id="org9c1a6e4">Populate the <code>stewart</code> structure</h4>
<div class="outline-text-4" id="text-org4e084f4"> <div class="outline-text-4" id="text-org9c1a6e4">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">stewart.struts_M.type = 1; <pre class="src src-matlab">stewart.struts_M.type = 1;
@ -1578,9 +1578,9 @@ This Matlab function is accessible <a href="../src/initializeStrutDynamics.m">he
</p> </p>
</div> </div>
<div id="outline-container-orgfbed90c" class="outline-4"> <div id="outline-container-org53e4966" class="outline-4">
<h4 id="orgfbed90c">Documentation</h4> <h4 id="org53e4966">Documentation</h4>
<div class="outline-text-4" id="text-orgfbed90c"> <div class="outline-text-4" id="text-org53e4966">
<div id="orgbbfb204" class="figure"> <div id="orgbbfb204" class="figure">
<p><img src="figs/piezoelectric_stack.jpg" alt="piezoelectric_stack.jpg" width="500px" /> <p><img src="figs/piezoelectric_stack.jpg" alt="piezoelectric_stack.jpg" width="500px" />
@ -1609,9 +1609,9 @@ A simplistic model of such amplified actuator is shown in Figure <a href="#org62
</div> </div>
</div> </div>
<div id="outline-container-org6f66ea1" class="outline-4"> <div id="outline-container-org5bd2bb1" class="outline-4">
<h4 id="org6f66ea1">Function description</h4> <h4 id="org5bd2bb1">Function description</h4>
<div class="outline-text-4" id="text-org6f66ea1"> <div class="outline-text-4" id="text-org5bd2bb1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeStrutDynamics</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeStrutDynamics</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% initializeStrutDynamics - Add Stiffness and Damping properties of each strut</span> <span class="org-comment">% initializeStrutDynamics - Add Stiffness and Damping properties of each strut</span>
@ -1633,9 +1633,9 @@ A simplistic model of such amplified actuator is shown in Figure <a href="#org62
</div> </div>
</div> </div>
<div id="outline-container-org5acb074" class="outline-4"> <div id="outline-container-org484f45f" class="outline-4">
<h4 id="org5acb074">Optional Parameters</h4> <h4 id="org484f45f">Optional Parameters</h4>
<div class="outline-text-4" id="text-org5acb074"> <div class="outline-text-4" id="text-org484f45f">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -1673,9 +1673,9 @@ This Matlab function is accessible <a href="../src/initializeAmplifiedStrutDynam
</p> </p>
</div> </div>
<div id="outline-container-orga7c47bc" class="outline-4"> <div id="outline-container-orgcbe44a8" class="outline-4">
<h4 id="orga7c47bc">Documentation</h4> <h4 id="orgcbe44a8">Documentation</h4>
<div class="outline-text-4" id="text-orga7c47bc"> <div class="outline-text-4" id="text-orgcbe44a8">
<p> <p>
An amplified piezoelectric actuator is shown in Figure <a href="#org9e7e9ad">13</a>. An amplified piezoelectric actuator is shown in Figure <a href="#org9e7e9ad">13</a>.
</p> </p>
@ -1708,9 +1708,9 @@ A simplistic model of such amplified actuator is shown in Figure <a href="#orgcf
</div> </div>
</div> </div>
<div id="outline-container-org899fc34" class="outline-4"> <div id="outline-container-orgbeac987" class="outline-4">
<h4 id="org899fc34">Function description</h4> <h4 id="orgbeac987">Function description</h4>
<div class="outline-text-4" id="text-org899fc34"> <div class="outline-text-4" id="text-orgbeac987">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeAmplifiedStrutDynamics</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeAmplifiedStrutDynamics</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% initializeAmplifiedStrutDynamics - Add Stiffness and Damping properties of each strut</span> <span class="org-comment">% initializeAmplifiedStrutDynamics - Add Stiffness and Damping properties of each strut</span>
@ -1738,9 +1738,9 @@ A simplistic model of such amplified actuator is shown in Figure <a href="#orgcf
</div> </div>
</div> </div>
<div id="outline-container-orgc57dd52" class="outline-4"> <div id="outline-container-orgb924b3b" class="outline-4">
<h4 id="orgc57dd52">Optional Parameters</h4> <h4 id="orgb924b3b">Optional Parameters</h4>
<div class="outline-text-4" id="text-orgc57dd52"> <div class="outline-text-4" id="text-orgb924b3b">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -1765,9 +1765,9 @@ C = args.Ca <span class="org-type">+</span> args.Cr;
</div> </div>
</div> </div>
<div id="outline-container-org7a48c56" class="outline-4"> <div id="outline-container-org0c93e39" class="outline-4">
<h4 id="org7a48c56">Populate the <code>stewart</code> structure</h4> <h4 id="org0c93e39">Populate the <code>stewart</code> structure</h4>
<div class="outline-text-4" id="text-org7a48c56"> <div class="outline-text-4" id="text-org0c93e39">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">stewart.actuators.type = 2; <pre class="src src-matlab">stewart.actuators.type = 2;
@ -1797,9 +1797,9 @@ This Matlab function is accessible <a href="../src/initializeJointDynamics.m">he
</p> </p>
</div> </div>
<div id="outline-container-orgbe1d3f6" class="outline-4"> <div id="outline-container-orgd67e306" class="outline-4">
<h4 id="orgbe1d3f6">Function description</h4> <h4 id="orgd67e306">Function description</h4>
<div class="outline-text-4" id="text-orgbe1d3f6"> <div class="outline-text-4" id="text-orgd67e306">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeJointDynamics</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeJointDynamics</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% initializeJointDynamics - Add Stiffness and Damping properties for the spherical joints</span> <span class="org-comment">% initializeJointDynamics - Add Stiffness and Damping properties for the spherical joints</span>
@ -1834,9 +1834,9 @@ This Matlab function is accessible <a href="../src/initializeJointDynamics.m">he
</div> </div>
</div> </div>
<div id="outline-container-org3b77131" class="outline-4"> <div id="outline-container-orgbad8e13" class="outline-4">
<h4 id="org3b77131">Optional Parameters</h4> <h4 id="orgbad8e13">Optional Parameters</h4>
<div class="outline-text-4" id="text-org3b77131"> <div class="outline-text-4" id="text-orgbad8e13">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -2036,9 +2036,9 @@ Note that there is trade-off between:
</div> </div>
</div> </div>
<div id="outline-container-org1eb17e3" class="outline-4"> <div id="outline-container-org42a2695" class="outline-4">
<h4 id="org1eb17e3">Function description</h4> <h4 id="org42a2695">Function description</h4>
<div class="outline-text-4" id="text-org1eb17e3"> <div class="outline-text-4" id="text-org42a2695">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeInertialSensor</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[stewart]</span> = <span class="org-function-name">initializeInertialSensor</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% initializeInertialSensor - Initialize the inertial sensor in each strut</span> <span class="org-comment">% initializeInertialSensor - Initialize the inertial sensor in each strut</span>
@ -2064,9 +2064,9 @@ Note that there is trade-off between:
</div> </div>
</div> </div>
<div id="outline-container-orgc623e70" class="outline-4"> <div id="outline-container-org5d7462b" class="outline-4">
<h4 id="orgc623e70">Optional Parameters</h4> <h4 id="org5d7462b">Optional Parameters</h4>
<div class="outline-text-4" id="text-orgc623e70"> <div class="outline-text-4" id="text-org5d7462b">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -2107,9 +2107,9 @@ Note that there is trade-off between:
</div> </div>
</div> </div>
<div id="outline-container-org55d115f" class="outline-4"> <div id="outline-container-org5cb9de9" class="outline-4">
<h4 id="org55d115f">Populate the <code>stewart</code> structure</h4> <h4 id="org5cb9de9">Populate the <code>stewart</code> structure</h4>
<div class="outline-text-4" id="text-org55d115f"> <div class="outline-text-4" id="text-org5cb9de9">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">stewart.sensors.inertial = sensor; <pre class="src src-matlab">stewart.sensors.inertial = sensor;
</pre> </pre>
@ -2130,9 +2130,9 @@ This Matlab function is accessible <a href="../src/displayArchitecture.m">here</
</p> </p>
</div> </div>
<div id="outline-container-org59a5a2e" class="outline-4"> <div id="outline-container-org3f0619e" class="outline-4">
<h4 id="org59a5a2e">Function description</h4> <h4 id="org3f0619e">Function description</h4>
<div class="outline-text-4" id="text-org59a5a2e"> <div class="outline-text-4" id="text-org3f0619e">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[]</span> = <span class="org-function-name">displayArchitecture</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>) <pre class="src src-matlab"><span class="org-keyword">function</span> <span class="org-variable-name">[]</span> = <span class="org-function-name">displayArchitecture</span>(<span class="org-variable-name">stewart</span>, <span class="org-variable-name">args</span>)
<span class="org-comment">% displayArchitecture - 3D plot of the Stewart platform architecture</span> <span class="org-comment">% displayArchitecture - 3D plot of the Stewart platform architecture</span>
@ -2161,9 +2161,9 @@ This Matlab function is accessible <a href="../src/displayArchitecture.m">here</
</div> </div>
</div> </div>
<div id="outline-container-org8bd5132" class="outline-4"> <div id="outline-container-orgc1e4a8f" class="outline-4">
<h4 id="org8bd5132">Optional Parameters</h4> <h4 id="orgc1e4a8f">Optional Parameters</h4>
<div class="outline-text-4" id="text-org8bd5132"> <div class="outline-text-4" id="text-orgc1e4a8f">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">arguments <pre class="src src-matlab">arguments
stewart stewart
@ -2184,9 +2184,9 @@ This Matlab function is accessible <a href="../src/displayArchitecture.m">here</
</div> </div>
</div> </div>
<div id="outline-container-org92ac986" class="outline-4"> <div id="outline-container-org5081c24" class="outline-4">
<h4 id="org92ac986">Check the <code>stewart</code> structure elements</h4> <h4 id="org5081c24">Check the <code>stewart</code> structure elements</h4>
<div class="outline-text-4" id="text-org92ac986"> <div class="outline-text-4" id="text-org5081c24">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">assert(isfield(stewart.platform_F, <span class="org-string">'FO_A'</span>), <span class="org-string">'stewart.platform_F should have attribute FO_A'</span>) <pre class="src src-matlab">assert(isfield(stewart.platform_F, <span class="org-string">'FO_A'</span>), <span class="org-string">'stewart.platform_F should have attribute FO_A'</span>)
FO_A = stewart.platform_F.FO_A; FO_A = stewart.platform_F.FO_A;
@ -2522,7 +2522,7 @@ Plot the legs connecting the joints of the fixed base to the joints of the mobil
</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-13 jeu. 15:47</p> <p class="date">Created: 2020-02-14 ven. 14:11</p>
</div> </div>
</body> </body>
</html> </html>

View File

@ -45,15 +45,15 @@ This configuration is now widely used (cite:preumont07_six_axis_singl_stage_acti
According to cite:preumont07_six_axis_singl_stage_activ, the cubic configuration offers the following advantages: According to cite:preumont07_six_axis_singl_stage_activ, the cubic configuration offers the following advantages:
#+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
In this document, the cubic architecture is analyzed: In this document, the cubic architecture is analyzed:
- 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 - In section [[sec:cubic_conf_stiffness]], we study the *uniform stiffness* of such configuration and we find the conditions to obtain a diagonal stiffness matrix
- In section [[sec:cubic_conf_above_platform]], we study cubic configurations where the cube's center is located above the mobile platform - In section [[sec:cubic_conf_above_platform]], we find cubic configurations where the cube's center is located above the mobile platform
- In section [[sec:cubic_conf_size_analysis]], we study the effect of the cube's size on the Stewart platform properties - In section [[sec:cubic_conf_size_analysis]], we study the effect of the cube's size on the Stewart platform properties
- In section [[sec:cubic_conf_coupling_cartesian]], we study the dynamic coupling of the cubic configuration in the cartesian frame - In section [[sec:cubic_conf_coupling_cartesian]], we study the dynamics of the cubic configuration in the cartesian frame
- In section [[sec:cubic_conf_coupling_struts]], we study the dynamic coupling of the cubic configuration from actuators to sensors of each strut - In section [[sec:cubic_conf_coupling_struts]], we study the dynamic *cross-coupling* of the cubic configuration from actuators to sensors of each strut
- In section [[sec:functions]], function related to the cubic configuration are defined. To generate and study the Stewart platform with a Cubic configuration, the Matlab function =generateCubicConfiguration= is used (described [[sec:generateCubicConfiguration][here]]). - In section [[sec:functions]], function related to the cubic configuration are defined. To generate and study the Stewart platform with a Cubic configuration, the Matlab function =generateCubicConfiguration= is used (described [[sec:generateCubicConfiguration][here]]).
* Stiffness Matrix for the Cubic configuration * Stiffness Matrix for the Cubic configuration
@ -605,7 +605,7 @@ We here suppose that there is one relative motion sensor in each strut ($\delta\
Thanks to the Jacobian matrix, we can use the "architecture" shown in Figure [[fig:local_to_cartesian_coordinates]] to obtain the dynamics of the system from forces/torques applied by the actuators on the top platform to translations/rotations of the top platform. Thanks to the Jacobian matrix, we can use the "architecture" shown in Figure [[fig:local_to_cartesian_coordinates]] to obtain the dynamics of the system from forces/torques applied by the actuators on the top platform to translations/rotations of the top platform.
#+begin_src latex :file local_to_cartesian_coordinates.pdf :post pdf2svg(file=*this*, ext="png") :exports both #+begin_src latex :file local_to_cartesian_coordinates.pdf
\begin{tikzpicture} \begin{tikzpicture}
\node[block] (Jt) at (0, 0) {$\bm{J}^{-T}$}; \node[block] (Jt) at (0, 0) {$\bm{J}^{-T}$};
\node[block, right= of Jt] (G) {$\bm{G}$}; \node[block, right= of Jt] (G) {$\bm{G}$};

View File

@ -41,7 +41,7 @@
* Coupling * Coupling
What causes the coupling from $F_i$ to $X_i$ ? What causes the coupling from $F_i$ to $X_i$ ?
#+begin_src latex :file coupling.pdf :post pdf2svg(file=*this*, ext="png") :exports both #+begin_src latex :file coupling.pdf
\begin{tikzpicture} \begin{tikzpicture}
\node[block] (Jt) at (0, 0) {$J^{-T}$}; \node[block] (Jt) at (0, 0) {$J^{-T}$};
\node[block, right= of Jt] (G) {$G$}; \node[block, right= of Jt] (G) {$G$};

View File

@ -449,7 +449,7 @@ This Matlab function is accessible [[file:../src/generateGeneralConfiguration.m]
Joints are positions on a circle centered with the Z axis of {F} and {M} and at a chosen distance from {F} and {M}. Joints are positions on a circle centered with the Z axis of {F} and {M} and at a chosen distance from {F} and {M}.
The radius of the circles can be chosen as well as the angles where the joints are located (see Figure [[fig:joint_position_general]]). The radius of the circles can be chosen as well as the angles where the joints are located (see Figure [[fig:joint_position_general]]).
#+begin_src latex :file stewart_bottom_plate.pdf :exports results #+begin_src latex :file stewart_bottom_plate.pdf
\begin{tikzpicture} \begin{tikzpicture}
% Internal and external limit % Internal and external limit
\draw[fill=white!80!black] (0, 0) circle [radius=3]; \draw[fill=white!80!black] (0, 0) circle [radius=3];
@ -993,7 +993,7 @@ A simplistic model of such amplified actuator is shown in Figure [[fig:actuator_
- $v_{m}$ represents the absolute velocity of the top part of the actuator - $v_{m}$ represents the absolute velocity of the top part of the actuator
- $d_{m}$ represents the total relative displacement of the actuator - $d_{m}$ represents the total relative displacement of the actuator
#+begin_src latex :file actuator_model_simple.pdf :post pdf2svg(file=*this*, ext="png") :exports results #+begin_src latex :file actuator_model_simple.pdf
\begin{tikzpicture} \begin{tikzpicture}
\draw (-1, 0) -- (1, 0); \draw (-1, 0) -- (1, 0);
@ -1094,7 +1094,7 @@ A simplistic model of such amplified actuator is shown in Figure [[fig:amplified
- $v_{m,i}$ represents the absolute velocity of the top part of the actuator - $v_{m,i}$ represents the absolute velocity of the top part of the actuator
- $d_{m,i}$ represents the total relative displacement of the actuator - $d_{m,i}$ represents the total relative displacement of the actuator
#+begin_src latex :file iff_1dof.pdf :post pdf2svg(file=*this*, ext="png") :exports results #+begin_src latex :file iff_1dof.pdf
\begin{tikzpicture} \begin{tikzpicture}
% Ground % Ground
\draw (-1.2, 0) -- (1, 0); \draw (-1.2, 0) -- (1, 0);