minor changes

This commit is contained in:
2019-12-12 12:49:03 +01:00
parent 8980329eb5
commit 72c9afb29f
5 changed files with 63 additions and 69 deletions

View File

@@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2019-12-11 mer. 14:47 -->
<!-- 2019-12-12 jeu. 11:39 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Kinematics of the station</title>
@@ -283,16 +283,16 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#orgf49d055">1. Micro Hexapod</a>
<li><a href="#org1c1eaea">1. Micro Hexapod</a>
<ul>
<li><a href="#orgb024fa1">1.1. How the Symetrie Hexapod is controlled on the micro station</a></li>
<li><a href="#org34abe0f">1.2. Control of the Micro-Hexapod using Simscape</a>
<li><a href="#orgbed4ee9">1.1. How the Symetrie Hexapod is controlled on the micro station</a></li>
<li><a href="#org3fdba3a">1.2. Control of the Micro-Hexapod using Simscape</a>
<ul>
<li><a href="#org118cdf5">1.2.1. Using Bushing Joint</a></li>
<li><a href="#org37b4bdd">1.2.2. Using Inverse Kinematics and Leg Actuators</a>
<li><a href="#org6d226ad">1.2.1. Using Bushing Joint</a></li>
<li><a href="#orgd390910">1.2.2. Using Inverse Kinematics and Leg Actuators</a>
<ul>
<li><a href="#org9839e83">1.2.2.1. Theory</a></li>
<li><a href="#org78fd3cf">1.2.2.2. Matlab Implementation</a></li>
<li><a href="#orgf6ea97b">1.2.2.1. Theory</a></li>
<li><a href="#org67bcb7b">1.2.2.2. Matlab Implementation</a></li>
</ul>
</li>
</ul>
@@ -307,12 +307,12 @@ for the JavaScript code in this tag.
In this document, we discuss the way the motion of each stage is defined.
</p>
<div id="outline-container-orgf49d055" class="outline-2">
<h2 id="orgf49d055"><span class="section-number-2">1</span> Micro Hexapod</h2>
<div id="outline-container-org1c1eaea" class="outline-2">
<h2 id="org1c1eaea"><span class="section-number-2">1</span> Micro Hexapod</h2>
<div class="outline-text-2" id="text-1">
</div>
<div id="outline-container-orgb024fa1" class="outline-3">
<h3 id="orgb024fa1"><span class="section-number-3">1.1</span> How the Symetrie Hexapod is controlled on the micro station</h3>
<div id="outline-container-orgbed4ee9" class="outline-3">
<h3 id="orgbed4ee9"><span class="section-number-3">1.1</span> How the Symetrie Hexapod is controlled on the micro station</h3>
<div class="outline-text-3" id="text-1-1">
<p>
For the Micro-Hexapod, the convention for the angles are defined in <code>MAN_A_Software API_4.0.150918_EN.pdf</code> on page 13 (section 2.4 - Rotation Vectors):
@@ -360,8 +360,8 @@ Thus, it does the translations and then the rotation around the new translated f
</div>
</div>
<div id="outline-container-org34abe0f" class="outline-3">
<h3 id="org34abe0f"><span class="section-number-3">1.2</span> Control of the Micro-Hexapod using Simscape</h3>
<div id="outline-container-org3fdba3a" class="outline-3">
<h3 id="org3fdba3a"><span class="section-number-3">1.2</span> Control of the Micro-Hexapod using Simscape</h3>
<div class="outline-text-3" id="text-1-2">
<p>
We can think of two main ways to position the Micro-Hexapod using Simscape.
@@ -378,15 +378,15 @@ This require a little bit more of mathematical derivations but this is the chose
</p>
</div>
<div id="outline-container-org118cdf5" class="outline-4">
<h4 id="org118cdf5"><span class="section-number-4">1.2.1</span> Using Bushing Joint</h4>
<div id="outline-container-org6d226ad" class="outline-4">
<h4 id="org6d226ad"><span class="section-number-4">1.2.1</span> Using Bushing Joint</h4>
<div class="outline-text-4" id="text-1-2-1">
<p>
In the documentation of the Bushing Joint (<code>doc "Bushing Joint"</code>) that is used to position the Hexapods, it is mention that the following frame is positioned with respect to the base frame in a way shown in figure <a href="#orgbf74afe">1</a>.
In the documentation of the Bushing Joint (<code>doc "Bushing Joint"</code>) that is used to position the Hexapods, it is mention that the following frame is positioned with respect to the base frame in a way shown in figure <a href="#orgb016316">1</a>.
</p>
<div id="orgbf74afe" class="figure">
<div id="orgb016316" class="figure">
<p><img src="figs/bushing_joint_transform.png" alt="bushing_joint_transform.png" />
</p>
<p><span class="figure-number">Figure 1: </span>Joint Transformation Sequence for the Bushing Joint</p>
@@ -404,8 +404,8 @@ However, the Bushing Joint makes rotations around mobiles axes (X, Y' and then Z
</div>
</div>
<div id="outline-container-org37b4bdd" class="outline-4">
<h4 id="org37b4bdd"><span class="section-number-4">1.2.2</span> Using Inverse Kinematics and Leg Actuators</h4>
<div id="outline-container-orgd390910" class="outline-4">
<h4 id="orgd390910"><span class="section-number-4">1.2.2</span> Using Inverse Kinematics and Leg Actuators</h4>
<div class="outline-text-4" id="text-1-2-2">
<p>
Here, we can use the Inverse Kinematic of the Hexapod to determine the length of each leg in order to obtain some defined translation and rotation of the mobile platform.
@@ -431,8 +431,8 @@ Thus, for this simulation, we <b>remove the gravity</b>.
</p>
</div>
<div id="outline-container-org9839e83" class="outline-5">
<h5 id="org9839e83"><span class="section-number-5">1.2.2.1</span> Theory</h5>
<div id="outline-container-orgf6ea97b" class="outline-5">
<h5 id="orgf6ea97b"><span class="section-number-5">1.2.2.1</span> Theory</h5>
<div class="outline-text-5" id="text-1-2-2-1">
<p>
For inverse kinematic analysis, it is assumed that the position \({}^A\bm{P}\) and orientation of the moving platform \({}^A\bm{R}_B\) are given and the problem is to obtain the joint variables, namely, \(\bm{L} = [l_1, l_2, \dots, l_6]^T\).
@@ -443,7 +443,7 @@ From the geometry of the manipulator, the loop closure for each limb, \(i = 1, 2
</p>
\begin{align*}
l_i {}^A\hat{\bm{s}}_i &= {}^A\bm{A} + {}^A\bm{b}_i - {}^A\bm{a}_i \\
&= {}^A\bm{A} + {}^A\bm{R}_b {}^B\bm{b}_i - {}^A\bm{a}_i
&= {}^A\bm{A} + {}^A\bm{R}_b {}^B\bm{b}_i - {}^A\bm{a}_i
\end{align*}
<p>
@@ -467,14 +467,14 @@ Otherwise, when the limbs' lengths derived yield complex numbers, then the posit
</div>
</div>
<div id="outline-container-org78fd3cf" class="outline-5">
<h5 id="org78fd3cf"><span class="section-number-5">1.2.2.2</span> Matlab Implementation</h5>
<div id="outline-container-org67bcb7b" class="outline-5">
<h5 id="org67bcb7b"><span class="section-number-5">1.2.2.2</span> Matlab Implementation</h5>
<div class="outline-text-5" id="text-1-2-2-2">
<p>
We open the Simulink file.
</p>
<div class="org-src-container">
<pre class="src src-matlab">open <span class="org-string">'simscape/hexapod_tests.slx'</span>
<pre class="src src-matlab">open<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'kinematics/matlab/hexapod_tests.slx'</span><span class="org-rainbow-delimiters-depth-1">)</span>
</pre>
</div>
@@ -482,7 +482,7 @@ We open the Simulink file.
We load the configuration and set a small <code>StopTime</code>.
</p>
<div class="org-src-container">
<pre class="src src-matlab">load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'simscape/conf_simscape.mat'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
<pre class="src src-matlab">load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'mat/conf_simscape.mat'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
<span class="org-matlab-simulink-keyword">set_param</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">conf_simscape</span>, <span class="org-string">'StopTime'</span>, '<span class="org-highlight-numbers-number">0</span>.<span class="org-highlight-numbers-number">5</span><span class="org-type">'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
</pre>
</div>
@@ -518,7 +518,7 @@ hexapod = initializeMicroHexapod<span class="org-rainbow-delimiters-depth-1">(</
We run the simulation.
</p>
<div class="org-src-container">
<pre class="src src-matlab"><span class="org-matlab-simulink-keyword">sim</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'simscape/hexapod_tests.slx'</span><span class="org-rainbow-delimiters-depth-1">)</span>
<pre class="src src-matlab"><span class="org-matlab-simulink-keyword">sim</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'hexapod_tests'</span><span class="org-rainbow-delimiters-depth-1">)</span>
</pre>
</div>
@@ -594,7 +594,7 @@ And we verify that we indeed succeed to go to the wanted position.
</div>
<div id="postamble" class="status">
<p class="author">Author: Dehaeze Thomas</p>
<p class="date">Created: 2019-12-11 mer. 14:47</p>
<p class="date">Created: 2019-12-12 jeu. 11:39</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>