-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path_locomotion_8h_source.html
More file actions
105 lines (105 loc) · 15.8 KB
/
_locomotion_8h_source.html
File metadata and controls
105 lines (105 loc) · 15.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>naowalkoptimiser: /Users/jason/Code/naowalkoptimiser/src/Locomotion/Locomotion.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="main.html"><span>Main Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="files.html"><span>File List</span></a></li>
<li><a href="globals.html"><span>File Members</span></a></li>
</ul>
</div>
<h1>/Users/jason/Code/naowalkoptimiser/src/Locomotion/Locomotion.h</h1><a href="_locomotion_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef LOCOMOTION_H_DEFINED</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define LOCOMOTION_H_DEFINED</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00004"></a>00004 <span class="comment">//#include <almotionproxy.h></span>
<a name="l00005"></a>00005 <span class="preprocessor">#include "<a class="code" href="jwalk_8h.html">Walk/jwalk.h</a>"</span>
<a name="l00006"></a>00006 <span class="preprocessor">#include "<a class="code" href="sensors_8h.html">Walk/sensors.h</a>"</span>
<a name="l00007"></a>00007 <span class="preprocessor">#include "../Globals.h"</span>
<a name="l00008"></a>00008 <span class="preprocessor">#include <vector></span>
<a name="l00009"></a>00009 <span class="preprocessor">#include <fstream></span>
<a name="l00010"></a>00010 <span class="preprocessor">#include <iostream></span>
<a name="l00011"></a>00011 <span class="preprocessor">#include "alproxy.h"</span>
<a name="l00012"></a>00012 <span class="preprocessor">#include "alloggerproxy.h"</span>
<a name="l00013"></a>00013 <span class="preprocessor">#include "almotionproxy.h"</span>
<a name="l00014"></a>00014 <span class="preprocessor">#include "dcmproxy.h"</span>
<a name="l00015"></a>00015 <span class="preprocessor">#include "<a class="code" href="script_8h.html">script.h</a>"</span>
<a name="l00016"></a>00016
<a name="l00017"></a><a class="code" href="class_locomotion.html">00017</a> <span class="keyword">class </span><a class="code" href="class_locomotion.html">Locomotion</a>
<a name="l00018"></a>00018 {
<a name="l00019"></a>00019 <span class="keyword">public</span>:
<a name="l00020"></a><a class="code" href="class_locomotion.html#adf9a6218f90b9fd0792f4bd64b218133">00020</a> <span class="keywordtype">bool</span> <a class="code" href="class_locomotion.html#adf9a6218f90b9fd0792f4bd64b218133">stiffnessSet</a>;
<a name="l00021"></a><a class="code" href="class_locomotion.html#a0ff0132c2d3d7d46c225813cb2d74b3e">00021</a> <a class="code" href="classscript.html">script</a> <a class="code" href="class_locomotion.html#a0ff0132c2d3d7d46c225813cb2d74b3e">getUpFront</a>, <a class="code" href="class_locomotion.html#addab0e6a2359ff1529c6f705bd4433e7">getUpBack</a>, <a class="code" href="class_locomotion.html#a7b2ef56709fccd5641d8153029a0fb66">getUpBackFall</a>;
<a name="l00022"></a><a class="code" href="class_locomotion.html#a02460ad611330b650bfd2183882dd7c7">00022</a> <a class="code" href="classscript.html">script</a> <a class="code" href="class_locomotion.html#a16f4c3753fb83b2141ee392a829711d4">leftKick</a>, <a class="code" href="class_locomotion.html#a996f2e89f9e2923877595e7b52777588">leftWideKick</a>, <a class="code" href="class_locomotion.html#ad04c74c0feff97d192fc5b97687c8a04">rightKick</a>, <a class="code" href="class_locomotion.html#a02460ad611330b650bfd2183882dd7c7">rightWideKick</a>;
<a name="l00023"></a><a class="code" href="class_locomotion.html#a577f8f9ff38448088620e520b1116cd5">00023</a> <a class="code" href="classscript.html">script</a> <a class="code" href="class_locomotion.html#a948bd873d705234a23a784c75914e3bd">leftInsideKick</a>, <a class="code" href="class_locomotion.html#a59b6cd2d30cd0c161e8b669e71c4638d">rightInsideKick</a>, <a class="code" href="class_locomotion.html#a6bd28a3f6ef5c48cad0529d843436f47">leftInsideKickClose</a>, <a class="code" href="class_locomotion.html#a577f8f9ff38448088620e520b1116cd5">rightInsideKickClose</a>;
<a name="l00024"></a><a class="code" href="class_locomotion.html#aed6e64435b141e62367419f991d6bf31">00024</a> <a class="code" href="classscript.html">script</a> <a class="code" href="class_locomotion.html#a2d676b3e828c0437671302e11bf22722">leftBackKick</a>, <a class="code" href="class_locomotion.html#aed6e64435b141e62367419f991d6bf31">rightBackKick</a>;
<a name="l00025"></a><a class="code" href="class_locomotion.html#a40137a29c273931f763c29cac8ceccfb">00025</a> <a class="code" href="classscript.html">script</a> <a class="code" href="class_locomotion.html#a58262506b53a67fef88e382d24053fce">leftSaveClose</a>, <a class="code" href="class_locomotion.html#a40137a29c273931f763c29cac8ceccfb">rightSaveClose</a>, <a class="code" href="class_locomotion.html#a9a5d7f5ecb0f1350cd6bcadf60cc0039">centreSave</a>;
<a name="l00026"></a>00026
<a name="l00027"></a>00027 <span class="comment">// New Panning.</span>
<a name="l00028"></a><a class="code" href="class_locomotion.html#ab6550a2410c2b7889c987030ab91e32f">00028</a> <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#ab6550a2410c2b7889c987030ab91e32f">currentMotionEndTime</a>;
<a name="l00029"></a>00029 <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#aa3ce3c94f2d19138c3feaa398058f2cf">generateZigZagSearchPattern</a>(AL::ALValue& pitchCommands, AL::ALValue& yawCommands, <span class="keywordtype">float</span> maxYaw, <span class="keywordtype">float</span> minPitch, <span class="keywordtype">float</span> maxPitch, <span class="keywordtype">int</span> numTiltLevels, <span class="keywordtype">int</span> timePerPan);
<a name="l00030"></a>00030 <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#aa4381a20a20777108a3b6e0f4692eece">generateNod</a>(AL::ALValue& pitchCommands, AL::ALValue& yawCommands, <span class="keywordtype">float</span> headyaw, <span class="keywordtype">float</span> minPitch, <span class="keywordtype">float</span> maxPitch, <span class="keywordtype">int</span> timePerNod);
<a name="l00031"></a><a class="code" href="class_locomotion.html#a700d718e4f4cf06eaf036e70eb3af3a0">00031</a> <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#a700d718e4f4cf06eaf036e70eb3af3a0">numPanSequences</a>;
<a name="l00032"></a>00032 <span class="comment">// </span>
<a name="l00033"></a><a class="code" href="class_locomotion.html#a413bc29444b6b1376ede1ba4792acf2d">00033</a> <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#a413bc29444b6b1376ede1ba4792acf2d">numPanSweeps</a>;
<a name="l00034"></a><a class="code" href="class_locomotion.html#afe31c7e52fdeeb5cd4412cd7ab637983">00034</a> <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#afe31c7e52fdeeb5cd4412cd7ab637983">ALMotionLastHeadTaskID</a>;
<a name="l00035"></a><a class="code" href="class_locomotion.html#a72af9118a18b4e58358b0892e0a2180d">00035</a> <span class="keywordtype">bool</span> <a class="code" href="class_locomotion.html#a72af9118a18b4e58358b0892e0a2180d">HeadMotionUsingDCM</a>; <span class="comment">// Head motion always has to go through jwalk</span>
<a name="l00036"></a><a class="code" href="class_locomotion.html#ac543e82e6cc88c49b06672f0e7430a08">00036</a> <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#ac543e82e6cc88c49b06672f0e7430a08">yawTask</a>, <a class="code" href="class_locomotion.html#a1424cde3a540ebf58af0fd1c6a9d0c1c">pitchTask</a>;
<a name="l00037"></a><a class="code" href="class_locomotion.html#ace06b2071c42e0bd3b3264d16195c1f8">00037</a> <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#ace06b2071c42e0bd3b3264d16195c1f8">framesSinceMoved</a>;
<a name="l00038"></a><a class="code" href="class_locomotion.html#ae04745e4fcb68651f633c9275fb0b492">00038</a> <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#ae04745e4fcb68651f633c9275fb0b492">m_callCount</a>;
<a name="l00039"></a><a class="code" href="class_locomotion.html#a6f701297ff4db64efc718065aa78cdf1">00039</a> <a class="code" href="class_j_walk.html">JWalk</a> *<a class="code" href="class_locomotion.html#a6f701297ff4db64efc718065aa78cdf1">m_Walk</a>;
<a name="l00040"></a>00040 <span class="comment">// Odometry Variables</span>
<a name="l00041"></a><a class="code" href="class_locomotion.html#a5ed85daeefa239e3ce4b5ab0b4dc1eff">00041</a> <span class="keywordtype">double</span> <a class="code" href="class_locomotion.html#a5ed85daeefa239e3ce4b5ab0b4dc1eff">previousHipYaw</a>;
<a name="l00042"></a>00042 <span class="comment">//int previousSupportMode;</span>
<a name="l00043"></a><a class="code" href="class_locomotion.html#a19ee241eeb1ef067ad1c23ba80f6ffc0">00043</a> <span class="keywordtype">float</span> <a class="code" href="class_locomotion.html#a19ee241eeb1ef067ad1c23ba80f6ffc0">previousLeftX</a>;
<a name="l00044"></a><a class="code" href="class_locomotion.html#a751d937b904736b6526e820956d664bf">00044</a> <span class="keywordtype">float</span> <a class="code" href="class_locomotion.html#a751d937b904736b6526e820956d664bf">previousRightX</a>;
<a name="l00045"></a><a class="code" href="class_locomotion.html#abca37c1e258319c0d4f60f8ef5c14c9d">00045</a> <span class="keywordtype">float</span> <a class="code" href="class_locomotion.html#abca37c1e258319c0d4f60f8ef5c14c9d">previousLeftY</a>;
<a name="l00046"></a><a class="code" href="class_locomotion.html#a44033791979727ec94e311648e195ebb">00046</a> <span class="keywordtype">float</span> <a class="code" href="class_locomotion.html#a44033791979727ec94e311648e195ebb">previousRightY</a>;
<a name="l00047"></a>00047 <span class="comment">//double x, y, distance, theta; // Temporary odometry variables</span>
<a name="l00048"></a><a class="code" href="class_locomotion.html#a4cd90988e9ab1379b9767ff977af76e7">00048</a> ofstream <a class="code" href="class_locomotion.html#a4cd90988e9ab1379b9767ff977af76e7">odometryFile</a>;
<a name="l00049"></a>00049
<a name="l00050"></a>00050 <span class="keyword">public</span>:
<a name="l00051"></a>00051 <a class="code" href="class_locomotion.html#ab638f52e9d728e40fe172a09bc3c2b82">Locomotion</a>();
<a name="l00052"></a>00052 <a class="code" href="class_locomotion.html#a8782f9968502b40259e2bc87a4ca997d">~Locomotion</a>();
<a name="l00053"></a>00053 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#a08b16d13ad80cd4a520fde55e57a19fd">RunLocomotion</a>();
<a name="l00054"></a>00054 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#a57b17d229382e845069811f1bb81bcad">updateOdometry</a>();
<a name="l00055"></a>00055 <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#a7b1780c200e52be15404cb6996a65fa6">MoveHead</a>(<span class="keywordtype">float</span> newYaw, <span class="keywordtype">float</span> newPitch, <span class="keywordtype">int</span> timeMs = 0);
<a name="l00056"></a>00056 <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#a84aa1852b93e925679134ab01d886bb1">MoveHeadALMotion</a>(<span class="keywordtype">float</span> yaw, <span class="keywordtype">float</span> pitch, <span class="keywordtype">int</span> timeMs);
<a name="l00057"></a>00057 <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#a5343972596c5114986c555953e6b172a">MoveHeadDCM</a>(<span class="keywordtype">float</span> yaw, <span class="keywordtype">float</span> pitch, <span class="keywordtype">int</span> timeMs);
<a name="l00058"></a>00058 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#ae93298368719844a9400122f1703a660">LocalisationPan</a>(<span class="keywordtype">bool</span> autoSetCamera = <span class="keyword">true</span>);
<a name="l00059"></a>00059 <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#a40d042c8427eb10d1cf9007cdf7ee528">ALMotionPan</a>(<span class="keywordtype">float</span> maxYaw, <span class="keywordtype">float</span> minPitch, <span class="keywordtype">float</span> maxPitch, <span class="keywordtype">float</span> numPitchLevels, <span class="keywordtype">int</span> timePerPan);
<a name="l00060"></a>00060 <span class="keywordtype">bool</span> <a class="code" href="class_locomotion.html#aef1b2c61a3f36660f591ec503057752a">isPanning</a>();
<a name="l00061"></a>00061 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#a64512197082f72d3e9b828dfd8175fff">nodPan</a>(<span class="keywordtype">float</span> headyaw, <span class="keywordtype">bool</span> autoSetCamera = <span class="keyword">true</span>);
<a name="l00062"></a>00062 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#a0393fb507f09016342ebd7d2f1327efc">nodPanDCM</a>(<span class="keywordtype">float</span> headyaw);
<a name="l00063"></a>00063 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#a93715025540ad502a5e27d6897ad1a59">nodPanALMotion</a>(<span class="keywordtype">float</span> headyaw);
<a name="l00064"></a>00064 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#a63a09ac28ae8aedee3b28faf53f430d1">SearchPan</a>(<span class="keywordtype">bool</span> autoSetCamera = <span class="keyword">true</span>);
<a name="l00065"></a>00065 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#ab7122492c827d10312882a274aec9a11">CloseBallSearchPan</a>(<span class="keywordtype">bool</span> autoSetCamera = <span class="keyword">true</span>);
<a name="l00066"></a>00066 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#ab1bd7b207408214962215002e1e591f6">Initialise</a>();
<a name="l00067"></a>00067 <span class="keywordtype">void</span> <a class="code" href="class_locomotion.html#a538947ceded7969f2617aa89a1c7cd99">TrackPoint</a>(<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y);
<a name="l00068"></a><a class="code" href="class_locomotion.html#a5af89d562c59ab844307b87f34f5bfcf">00068</a> vector<float> <a class="code" href="class_locomotion.html#a5af89d562c59ab844307b87f34f5bfcf">NextFrameTargets</a>;
<a name="l00069"></a>00069
<a name="l00070"></a>00070 <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#aa1f1d824798a14b374e2b121038b217b">doKick</a>(<span class="keywordtype">float</span> kickyposition);
<a name="l00071"></a>00071 <span class="keywordtype">int</span> <a class="code" href="class_locomotion.html#acc1e5d71c7148f0c02f7a527dd5b7749">doSave</a>(<span class="keywordtype">float</span> saveyposition);
<a name="l00072"></a>00072 };
<a name="l00073"></a>00073
<a name="l00074"></a>00074 <span class="preprocessor">#endif</span>
</pre></div></div>
<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Oct 9 13:42:11 2009 for naowalkoptimiser by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>