Wiki source code of The Complete Hexapod 2 Tutorial
Last modified by Eric Nantel on 2024/07/03 09:20
Hide last authors
![]() |
1.1 | 1 | {{html wiki="false" clean="true"}} |
![]() |
26.1 | 2 | <body><table border="0" cellpadding="0" cellspacing="0" > |
3 | <tbody><tr> | ||
4 | <td valign="top" align="left"><strong><font face="Verdana" size="2">The Complete Hexapod 2 Tutorial. Updated 01/26/2007</font></strong> | ||
5 | <p><font size="2"><strong><font face="Verdana">Hardware:<br> | ||
6 | </font></strong><font face="Verdana"> - SSC-32<br> | ||
7 | - Bot Board / BASIC Atom 28<br> | ||
8 | - PS2 Cable / PS2 Wireless Controller (Not included)<br> | ||
9 | - Extreme Hexapod 2<br> | ||
10 | - L5 / L6 Arm (Optional)<br> | ||
11 | - Sharp GP2D12 Sensor (Optional, see text)</font></font></p> | ||
12 | <p><font face="Verdana" size="2"><b>Software:<br> | ||
![]() |
30.1 | 13 | </b> - LynxTerm (<a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/view/ses-software/lynxterm/" target="_blank">download</a>)<br> |
14 | - Basic Micro Atom IDE ver 2.2.1.1<br> | ||
![]() |
26.1 | 15 | </font><font size="2" face="Verdana, Helvetica, sans-serif"> - Note, if your Basic Atom chip has a "Rev-D" label on |
16 | the bottom, you <i>must</i> use IDE v5.3.1.3.</font><font face="Verdana" size="2"><br> | ||
17 | - Hexapod Programs<br> | ||
18 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog1.zip" target="_blank">h2prog1.zip</a> RC.<br> | ||
19 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog2.zip" target="_blank">h2prog2.zip</a> RC.<br> | ||
20 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog3.zip" target="_blank">h2prog3.zip</a> RC.<br> | ||
21 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog4.zip" target="_blank">h2prog4.zip</a> RC.<br> | ||
22 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2l56p5.zip" target="_blank">h2l56p5.zip</a> RC.<br> | ||
23 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog6.zip" target="_blank">h2prog6.zip</a> RC.<br> | ||
24 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog7.zip" target="_blank">h2prog7.zip</a> Autonomous!</font></p> | ||
25 | <font size="2"><b><font face="Verdana">Resources:<br> | ||
26 | </font></b><font face="Verdana"> - Wiring Schematic (<a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/wd001.gif" target="_blank">wd001.gif</a>)<br> | ||
27 | - Wiring Schematic (<a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2l56wd.gif" target="_blank">h2l56wd.gif</a>)</font></font> | ||
28 | <p><font size="2"><b><font face="Verdana">Goal:<br> | ||
29 | </font></b><font face="Verdana"> - Install, program, and test the electronics to operate a Hexapod 2 with optional L5/L6 arm from a | ||
30 | Lynxmotion, MadCatz, Pelican, or Hiteck wireless controller.</font></font></p> | ||
31 | </td> | ||
![]() |
39.1 | 32 | <td align="center" valign="top" width="320"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/eh200s.jpg" border="2" hspace="10" width="320" height="240"><br> |
![]() |
26.1 | 33 | <font size="2" face="Verdana"><strong>Image of Hexapod 2.<br> |
34 | <br> | ||
35 | </strong></font></td> | ||
36 | </tr> | ||
37 | <tr> | ||
38 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> | ||
39 | </tr> | ||
40 | <tr> | ||
41 | <td valign="top" align="center" colspan="2"> | ||
![]() |
39.1 | 42 | <hr width="95%" noshade="" color="#808080"> |
![]() |
26.1 | 43 | </td> |
44 | </tr> | ||
45 | <tr> | ||
46 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> | ||
47 | </tr> | ||
48 | <tr> | ||
49 | <td valign="top" align="left"><strong><font face="Verdana" size="2">Step 1.<br> | ||
50 | </font></strong><font face="Verdana" size="2">Install the Bot Board and SSC-32 onto the top of the robot as shown.</font></td> | ||
![]() |
39.1 | 51 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/eh209s.jpg" border="2" hspace="10" width="320" height="240"><br> |
![]() |
26.1 | 52 | <font size="2" face="Verdana">Figure 1.</font></td> |
53 | </tr> | ||
54 | <tr> | ||
55 | <td valign="top" align="left" colspan="2"><br class="pb"> | ||
56 | </td> | ||
57 | </tr> | ||
58 | <tr> | ||
59 | <td valign="top" align="left"><strong><font face="Verdana" size="2">Step 2.<br> | ||
60 | </font></strong><font face="Verdana" size="2">Connect power wires for the servos as illustrated. Click on Figure 2 for a larger, printable | ||
61 | version. Install VS1 = VS2, VL = VS1, TX and RX, and both Baud jumpers for these tests. This will set the Baud rate to 115.2k and allow DB9 | ||
62 | communications. Consult the SSC-32 user manual for more detailed information.</font></td> | ||
![]() |
39.1 | 63 | <td align="center" valign="top" ><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/wd001.gif" target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/wd001.jpg" border="2" hspace="10" width="320" height="240"></a><br> |
![]() |
26.1 | 64 | <font size="2" face="Verdana">Figure 2.</font></td> |
65 | </tr> | ||
66 | <tr> | ||
67 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> | ||
68 | </tr> | ||
69 | <tr> | ||
70 | <td valign="top" align="left"><strong><font size="2"><font face="Verdana">Step 3.<br> | ||
71 | </font></font></strong><font face="Verdana" size="2">Connect the servos to their appropriate I/O channels. See Table 1 and consult the SSC-32 | ||
72 | users manual. Double check your work. The header pins are close and numerous.<br> | ||
73 | </font> | ||
74 | <div align="center"> | ||
75 | <center> | ||
![]() |
39.1 | 76 | <table border="1" bordercolor="#FFFFFF" width="320"> |
![]() |
26.1 | 77 | <tbody><tr> |
78 | <td > | ||
79 | <div align="center"> | ||
80 | <center> | ||
81 | </center><center> | ||
![]() |
39.1 | 82 | </center><table border="1" bordercolor="#000000" width="320"> |
![]() |
26.1 | 83 | <tbody><tr> |
![]() |
39.1 | 84 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2"><b>SSC-32 I/O</b></font></td> |
85 | <td width="75%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2"><b>Servo</b></font></td> | ||
![]() |
26.1 | 86 | </tr> |
87 | <tr> | ||
![]() |
39.1 | 88 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">00</font></td> |
89 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Rear Vertical</font></td> | ||
![]() |
26.1 | 90 | |
91 | </tr> | ||
92 | <tr> | ||
![]() |
39.1 | 93 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">01</font></td> |
94 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Rear Horizontal</font></td> | ||
![]() |
26.1 | 95 | </tr> |
96 | <tr> | ||
![]() |
39.1 | 97 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">02</font></td> |
98 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Middle Vertical</font></td> | ||
![]() |
26.1 | 99 | </tr> |
100 | <tr> | ||
![]() |
39.1 | 101 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">03</font></td> |
102 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Middle Horizontal</font></td> | ||
![]() |
26.1 | 103 | </tr> |
104 | <tr> | ||
![]() |
39.1 | 105 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">04</font></td> |
106 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Front Vertical</font></td> | ||
![]() |
26.1 | 107 | </tr> |
108 | <tr> | ||
![]() |
39.1 | 109 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">05</font></td> |
110 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Front Horizontal</font></td> | ||
![]() |
26.1 | 111 | </tr> |
112 | <tr> | ||
![]() |
39.1 | 113 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">16</font></td> |
114 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Rear Vertical</font></td> | ||
![]() |
26.1 | 115 | </tr> |
116 | <tr> | ||
![]() |
39.1 | 117 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">17</font></td> |
118 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Rear Horizontal</font></td> | ||
![]() |
26.1 | 119 | |
120 | </tr> | ||
121 | <tr> | ||
![]() |
39.1 | 122 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">18</font></td> |
123 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Middle Vertical</font></td> | ||
![]() |
26.1 | 124 | </tr> |
125 | <tr> | ||
![]() |
39.1 | 126 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">19</font></td> |
127 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Middle Horizontal</font></td> | ||
![]() |
26.1 | 128 | </tr> |
129 | <tr> | ||
![]() |
39.1 | 130 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">20</font></td> |
131 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Front Vertical</font></td> | ||
![]() |
26.1 | 132 | </tr> |
133 | <tr> | ||
![]() |
39.1 | 134 | <td width="25%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">21</font></td> |
135 | <td width="75%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Front Horizontal</font></td> | ||
![]() |
26.1 | 136 | </tr> |
137 | </tbody></table> | ||
138 | </div> | ||
139 | </td> | ||
140 | </tr> | ||
141 | <tr> | ||
142 | <td bordercolor="#FFFFFF"> | ||
143 | <p align="center"><font face="Verdana" size="2">Table 3.</font></p></td> | ||
144 | </tr> | ||
145 | </tbody></table> | ||
146 | </center></div> | ||
147 | </td> | ||
![]() |
39.1 | 148 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/eh213s.jpg" border="2" hspace="10" width="320" height="240"><br> |
![]() |
26.1 | 149 | <font size="2" face="Verdana">Figure 3.</font></td> |
150 | </tr> | ||
151 | <tr> | ||
152 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font><font face="verdana " size="2"> </font></td> | ||
153 | </tr> | ||
154 | <tr> | ||
155 | <td valign="top" align="left"><strong><font face="Verdana" size="2">Step 4a.<br> | ||
156 | </font></strong><font face="Verdana" size="2">Connect the serial data cable to the PC's serial port. This can be recognized by having 9 pins | ||
157 | that stick out.</font> | ||
158 | <p><font size="2"><b><font face="Verdana">Step 4b. <br> | ||
159 | </font></b><font face="Verdana">Connect the other end of the serial data cable to the SSC-32's DB9 port. Turn on the power.</font></font></p> | ||
160 | <p><font face="Verdana" size="2">Note, you can also use an IOGear USB-to-Serial adaptor.</font></p></td> | ||
![]() |
39.1 | 161 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/comp.jpg" border="2" hspace="10" width="320" height="240"><br> |
![]() |
26.1 | 162 | <font size="2" face="Verdana">Figure 4.</font></td> |
163 | </tr> | ||
164 | <tr> | ||
165 | <td valign="top" align="left" colspan="2"><br class="pb"> | ||
166 | </td> | ||
167 | </tr> | ||
168 | <tr> | ||
169 | <td valign="top" align="left"><b><font face="Verdana" size="2">Step 5.<br> | ||
170 | </font></b><font face="Verdana" size="2">Install and run the LynxTerm on your PC. This program uses your computer's serial port to | ||
171 | "talk" to the SSC-32. We will use it to quickly test your hexapod robot. This tool can also be extremely useful if you want to write a | ||
172 | program for your favorite microcontroller to talk to the SSC-32 directly.</font> | ||
173 | <p><font face="Verdana" size="2">Choose the COM Port for your computer from the drop down menu in the upper left corner.</font></p> | ||
174 | <p><font face="Verdana" size="2">Note, if you notice the text going below the bottom of the box, it may be necessary to change the font settings | ||
175 | and / or change the number of rows on screen under the Terminal Setup.</font></p> | ||
176 | <p><font face="Verdana" size="2">Click in the black text box and type "ver". If everything is working correctly, you should receive a | ||
177 | response such as "SSC32-1.03XE".</font></p> | ||
178 | </td> | ||
179 | <td align="left" valign="top" > | ||
![]() |
39.1 | 180 | <p align="center"><a href="https://www.lynxmotion.com/images/assembly/eh2v4/lterm01.jpg" target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/lterm01s.jpg" border="2" hspace="10" width="264" height="240"></a><br> |
![]() |
26.1 | 181 | <font size="2" face="Verdana">Figure 5.</font></p></td> |
182 | </tr> | ||
183 | <tr> | ||
184 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> | ||
185 | </tr> | ||
186 | <tr> | ||
187 | <td valign="top" align="left"><strong><font face="Verdana" size="2">Step 6.<br> | ||
188 | </font></strong><font face="Verdana" size="2">Click on the Sequencer button in the lower left corner. Click "All = 1500" and notice | ||
189 | the hexapod legs hold position. If the robot was constructed properly, the legs will be horizontal and perpendicular to the body. Now would be a | ||
190 | good time to double check the H2 mechanical leg alignment.</font> | ||
191 | <p><font face="Verdana" size="2">If your robot does not have mechanical alignment, then use the Offset tool under Servo Quick Test. Select the | ||
192 | servo on the Hexapod diagram and adjust the offset slider to fine-tune the leg alignment. Do this for all twelve servos. When completed, click | ||
193 | on Config to display the configuration data. Ignore the first four lines, as they do not pertain to the offset command. The lines starting with | ||
194 | "#0PO" can be cut and pasted into the serout command in the programs included with this tutorial. Do a search for "Servo | ||
195 | Offset" in the supplied programs and follow the instructions.</font></p> | ||
196 | </td> | ||
197 | <td valign="top" > | ||
![]() |
39.1 | 198 | <p align="center"><a href="https://www.lynxmotion.com/images/assembly/eh2v4/lterm02.jpg" target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/lterm02s.jpg" border="2" hspace="10" width="284" height="240"></a><br> |
![]() |
26.1 | 199 | <font size="2" face="Verdana">Figure 6.</font></p></td> |
200 | </tr> | ||
201 | <tr> | ||
202 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> | ||
203 | </tr> | ||
204 | <tr> | ||
205 | <td valign="top" ><strong><font face="Verdana" size="2">Step 7.<br> | ||
206 | </font></strong><font face="Verdana" size="2">The values for the L* and R* textboxes will control the positions the legs are moved to in the | ||
207 | sequence. You can fine-tune these values to your mechanical leg arrangement with the same Servo Quick Test. Just adjust the position slider | ||
208 | instead of the offset slider.<br> | ||
209 | </font> | ||
210 | <div align="center"> | ||
211 | <center> | ||
212 | <table border="0"> | ||
213 | <tbody><tr> | ||
214 | <td > | ||
215 | <div align="center"> | ||
![]() |
39.1 | 216 | <table border="1" bordercolor="#000000" width="360"> |
![]() |
26.1 | 217 | <tbody><tr> |
![]() |
28.1 | 218 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" colspan="4"><font face="Verdana" size="2">Tripod Leg |
![]() |
26.1 | 219 | Movement Sequence</font></td> |
220 | </tr> | ||
221 | <tr> | ||
![]() |
39.1 | 222 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LF</font></td> |
223 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Front Horiz</font></td> | ||
224 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RF</font></td> | ||
225 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Front Horiz</font></td> | ||
![]() |
26.1 | 226 | </tr> |
227 | <tr> | ||
![]() |
39.1 | 228 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LH</font></td> |
229 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left High Vertical</font></td> | ||
230 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RH</font></td> | ||
231 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right High Vertical</font></td> | ||
![]() |
26.1 | 232 | </tr> |
233 | <tr> | ||
![]() |
39.1 | 234 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LM</font></td> |
235 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Middle Vertical</font></td> | ||
236 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RM</font></td> | ||
237 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Mid Vertical</font></td> | ||
![]() |
26.1 | 238 | </tr> |
239 | <tr> | ||
![]() |
39.1 | 240 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LL</font></td> |
241 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Low Vertical</font></td> | ||
242 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RL</font></td> | ||
243 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Low Vertical</font></td> | ||
![]() |
26.1 | 244 | </tr> |
245 | <tr> | ||
![]() |
39.1 | 246 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LR</font></td> |
247 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Rear Horiz</font></td> | ||
248 | <td width="10%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RR</font></td> | ||
249 | <td width="22%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Rear Horiz</font></td> | ||
![]() |
26.1 | 250 | </tr> |
251 | </tbody></table> | ||
252 | </div> | ||
253 | </td> | ||
254 | </tr> | ||
255 | <tr> | ||
256 | <td > | ||
257 | <p align="center"><font face="Verdana" size="2">Table 7-1</font></p> | ||
258 | </td> | ||
259 | </tr> | ||
260 | </tbody></table> | ||
261 | </center> | ||
262 | </div> | ||
263 | </td> | ||
![]() |
39.1 | 264 | <td align="center" valign="top" ><a href="https://www.lynxmotion.com/images/assembly/eh2v4/lterm04.jpg" target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/lterm04s.jpg" border="2" hspace="10" width="284" height="240"></a><br> |
![]() |
26.1 | 265 | <font size="2" face="Verdana">Figure 7.</font></td> |
266 | </tr> | ||
267 | <tr> | ||
268 | <td valign="top" align="left" colspan="2"><br class="pb"> | ||
269 | </td> | ||
270 | </tr> | ||
271 | <tr> | ||
272 | <td valign="top" align="left"><strong><font face="Verdana" size="2">Step 8.</font></strong><font face="Verdana" size="2"><br> | ||
273 | Now to make the robot walk forward. Adjust the XL and XR sliders to 100%. Note that HT=1500uS (1.5 seconds). Set the XS slider to ~50% and | ||
274 | notice that the stride takes 3 seconds. Adjust the HT slider to 1000 and notice that the stride now takes 2 seconds.</font> | ||
275 | <p><font face="Verdana" size="2">You have complete control over all aspects of the tripod gait. Adjust either XL or XR lower to do gradual | ||
276 | turns. Setting XL and XR to opposite directions will cause the robot to turn in place. Reverse values of XL and XR will cause the robot to walk | ||
277 | backwards. Moving a slider is the same as typing from the terminal or sending the command from a microcontroller. For example, moving XS to 50% | ||
278 | is the same as sending "XS50". Once the commands are sent, the robot will continue to walk until it receives XS = 0. If you are using | ||
279 | a host microcontroller to send commands, it will be free to do any timing-intensive tasks without worrying about any of the walking process.</font></p> | ||
280 | </td> | ||
281 | <td valign="top" > | ||
![]() |
39.1 | 282 | <p align="center"><a href="https://www.lynxmotion.com/images/assembly/eh2v4/lterm03.jpg" target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/lterm03s.jpg" border="2" hspace="10" width="284" height="240"></a><br> |
![]() |
26.1 | 283 | <font size="2" face="Verdana">Figure 8.</font></p></td> |
284 | </tr> | ||
285 | <tr> | ||
286 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> | ||
287 | </tr> | ||
288 | <tr> | ||
289 | <td valign="top" align="left"><font face="Verdana" size="2"><strong>Step 9.</strong><br> | ||
290 | For the do-it-yourselfers, the program to the right will set up and initiate walking on the robot. It will be necessary to remove the TX and RX | ||
291 | jumpers, install the data cable to the Bot Board, and configure the Baud rate jumpers for 38.4k. Refer to the schematic in Figure 12. To change | ||
292 | speed and direction just alter the XL, XR, XS values. The robot will immediately begin walking in the speed and direction commanded. We have | ||
293 | several fully functional programs to choose from below.</font></td> | ||
294 | <td valign="top" > | ||
295 | <div align="center"> | ||
296 | <center> | ||
![]() |
39.1 | 297 | <table border="1" bordercolor="#FFFFFF" width="320"> |
![]() |
26.1 | 298 | <tbody><tr> |
![]() |
28.1 | 299 | <td bordercolor="#000000"><font face="Courier New" size="2">XL var sbyte<br> |
![]() |
26.1 | 300 | XR var sbyte<br> |
301 | XS var byte<br> | ||
302 | <br> | ||
303 | XL = 100<br> | ||
304 | XR = 100<br> | ||
305 | XS = 100<br> | ||
306 | <br> | ||
307 | start:<br> | ||
308 | serout p15,i38400,["LF1700 RF1300 LR1300",13]<br> | ||
309 | serout p15,i38400,["RR1700 LH1000 LM1700",13]<br> | ||
310 | serout p15,i38400,["LL1800 RH2000 RM1300",13]<br> | ||
311 | serout p15,i38400,["RL1200 VS3000 HT1500",13]<br> | ||
312 | serout p15,i38400,["XL",SDEC XL,"XR",SDEC XR,13]<br> | ||
313 | serout p15,i38400,["XS",DEC XS,13]<br> | ||
314 | loop:<br> | ||
315 | goto loop</font></td> | ||
316 | </tr> | ||
317 | <tr> | ||
318 | <td bordercolor="#FFFFFF"> | ||
319 | <p align="center"><font face="Verdana" size="2">Table 9.</font></p></td> | ||
320 | </tr> | ||
321 | </tbody></table> | ||
322 | </center> | ||
323 | </div> | ||
324 | </td> | ||
325 | </tr> | ||
326 | <tr> | ||
327 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> | ||
328 | </tr> | ||
329 | <tr> | ||
330 | <td valign="top" ><strong><font face="Verdana" size="2">Step 10.<br> | ||
331 | </font></strong><font face="Verdana" size="2">The following steps refer to several programs that offer complete control of all aspects of the | ||
332 | hexapod gait sequence through a wireless PS2 controller. Install and run the BASIC Atom IDE to allow programming the chip.<br> | ||
333 | </font> | ||
334 | <div align="center"> | ||
335 | <center> | ||
336 | <table border="0"> | ||
337 | <tbody><tr> | ||
338 | <td > | ||
339 | <div align="center"> | ||
![]() |
39.1 | 340 | <table border="1" bordercolor="#000000" width="360"> |
![]() |
26.1 | 341 | <tbody><tr> |
![]() |
39.1 | 342 | <td width="30%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Filename</font></td> |
343 | <td width="70%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Program description</font></td> | ||
![]() |
26.1 | 344 | </tr> |
345 | <tr> | ||
![]() |
39.1 | 346 | <td width="30%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog1.zip" target="_blank"><font face="Verdana" size="2">h2prog1.zip</font></a></td> |
347 | <td width="70%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Differential tank-steer mode.</font></td> | ||
![]() |
26.1 | 348 | </tr> |
349 | <tr> | ||
![]() |
39.1 | 350 | <td width="30%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog2.zip" target="_blank"><font face="Verdana" size="2">h2prog2.zip</font></a></td> |
351 | <td width="70%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Above, and single joystick | ||
![]() |
26.1 | 352 | mode.</font></td> |
353 | </tr> | ||
354 | <tr> | ||
![]() |
39.1 | 355 | <td width="30%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog3.zip" target="_blank"><font face="Verdana" size="2">h2prog3.zip</font></a></td> |
356 | <td width="70%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Above, and leg high-position | ||
![]() |
26.1 | 357 | adjustable.</font></td> |
358 | </tr> | ||
359 | <tr> | ||
![]() |
39.1 | 360 | <td width="30%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog4.zip" target="_blank"><font face="Verdana" size="2">h2prog4.zip</font></a></td> |
361 | <td width="70%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Above, leg low-pos. | ||
![]() |
26.1 | 362 | adjustable, and obstacle detection.</font></td> |
363 | </tr> | ||
364 | <tr> | ||
![]() |
39.1 | 365 | <td width="30%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2l56p5.zip" target="_blank"><font face="Verdana" size="2">h2l56p5.zip</font></a></td> |
366 | <td width="70%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Above, and L5/L6 arm control.</font></td> | ||
![]() |
26.1 | 367 | </tr> |
368 | <tr> | ||
![]() |
39.1 | 369 | <td width="30%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog6.zip" target="_blank">h2prog6.zip</a></font></td> |
370 | <td width="70%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Same as h2prog4, except only | ||
![]() |
26.1 | 371 | single joystick mode and pan-and-tilt on left joystick.</font></td> |
372 | </tr> | ||
373 | </tbody></table> | ||
374 | </div> | ||
375 | </td> | ||
376 | </tr> | ||
377 | <tr> | ||
378 | <td > | ||
379 | <p align="center"><font face="Verdana" size="2">Table 10-1</font></p> | ||
380 | </td> | ||
381 | </tr> | ||
382 | </tbody></table> | ||
383 | </center> | ||
384 | </div> | ||
385 | </td> | ||
![]() |
39.1 | 386 | <td align="center" valign="top" ><a target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/eh2l56s.jpg" border="2" hspace="10" width="320" height="240"></a><br> |
![]() |
26.1 | 387 | <font size="2" face="Verdana">Figure 10.</font></td> |
388 | </tr> | ||
389 | <tr> | ||
390 | <td valign="top" align="left" colspan="2"><br class="pb"> | ||
391 | </td> | ||
392 | </tr> | ||
393 | <tr> | ||
394 | <td valign="top" align="left"><b><font face="Verdana" size="2">Step 11.<br> | ||
395 | </font></b><font face="Verdana" size="2">Wire your robot as illustrated in the wiring diagram to the right. Click on Figure 11 for a larger, | ||
396 | printable version. The Sharp GP2D12 is not required, but offers crash protection if installed. You can use 7.2vdc battery for the best | ||
397 | performance, however, if you're installing an L5 or L6 arm 6.0vdc is recommended. This is due to the micro servo on the gripper. For increased | ||
398 | runtime, you can power the logic of the Bot Board and SSC-32 from a 9v battery. Just remember to remove the VS=VL jumpers on both boards. Don't | ||
399 | forget to install the speaker enable jumper. This will provide audible feedback when using the controller with the provided programs. Install | ||
400 | the PS2 receiver module and put fresh batteries in your controller.</font> | ||
401 | <p><font face="Verdana" size="2">When you run the program, you should hear some beeps that will continue until the game controller is | ||
402 | recognized. Press the Analog button and the legs should hold position.</font></p> | ||
403 | </td> | ||
404 | <td valign="top" > | ||
![]() |
39.1 | 405 | <p align="center"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2l56wd.gif" target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2l56wd.jpg" border="2" hspace="10" width="320" height="240"></a><br> |
![]() |
26.1 | 406 | <font size="2" face="Verdana">Figure 11.</font></p></td> |
407 | </tr> | ||
408 | <tr> | ||
409 | <td valign="top" align="left" colspan="2"><font face="verdana " size="2"> </font></td> | ||
410 | </tr> | ||
411 | <tr> | ||
412 | <td valign="top" align="left"><font face="Verdana"><b><font size="2">Step 12.</font></b><br> | ||
413 | <font size="2">Install the Playstation 2 cable as illustrated in Figure 12-1 and 12-2.</font></font> | ||
![]() |
39.1 | 414 | <p align="center"><img border="2" src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/wire07s.gif" width="320" height="160"><br> |
![]() |
26.1 | 415 | <font size="2" face="Verdana">Figure 12-1</font></p> |
416 | </td> | ||
417 | <td align="center" valign="top" > | ||
418 | <div align="center"> | ||
419 | <center> | ||
420 | <table border="0"> | ||
421 | <tbody><tr> | ||
![]() |
39.1 | 422 | <td ><img border="2" src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/ps2abb02.jpg" width="320" height="240"></td> |
![]() |
26.1 | 423 | </tr> |
424 | <tr> | ||
425 | <td > | ||
426 | <p align="center"><font size="2" face="Verdana">Figure 12-2</font></p> | ||
427 | </td> | ||
428 | </tr> | ||
429 | </tbody></table> | ||
430 | </center> | ||
431 | </div> | ||
432 | </td> | ||
433 | </tr> | ||
434 | <tr> | ||
435 | <td valign="top" align="left" colspan="2"><br class="pb"> | ||
436 | </td> | ||
437 | </tr> | ||
438 | <tr> | ||
439 | <td valign="top" align="left"><b><font face="Verdana" size="2">Step 13.</font></b><font face="Verdana" size="2"><br> | ||
440 | Controlling the motion of the hexapod is handled in two ways. Make sure the controller is in Analog mode. Mode 1 (default) uses a differential | ||
441 | or tank mode, where the right joystick controls the right legs, and the left joystick controls the left legs. Mode 2 allows control of the | ||
442 | direction of walking with the right joystick, while Left and Right on the D-Pad adjusts speed. Pressing R3 swaps between control modes. | ||
443 | Initially, in either mode the joystick positions will allow a max of 100% XS speed. Pressing D-Pad Left lowers the max in 5% increments, and | ||
444 | D-Pad Right increases the max in 5% increments up to 200%</font> | ||
445 | <p><font face="Verdana" size="2">Both modes offer additional control of leg trajectory for the alternating tripod gait. This refers to the | ||
446 | vertical and horizontal motion that the foot goes through during the walking gait. Pressing <u>/\</u>, O (default), X, or [] changes how the | ||
447 | foot is lifted in relation to the stride motion. Control the max vertical height with the R1/R2 buttons. Control the max low position (H2 body | ||
448 | ride height) with the L1/L2 buttons. This can also be done with the D-Pad Up and Down buttons with a faster response.</font></p> | ||
449 | <p><font face="Verdana" size="2">If the robot is driven toward an obstacle, after a threshold is reached the forward joystick position is | ||
450 | ignored. However, you can still reverse direction. The controller will also vibrate proportionally in relation to the distance from the | ||
451 | obstacle. The Sharp sensor can be enabled or disabled with the Start button.</font></p> | ||
452 | </td> | ||
453 | <td valign="top" > | ||
![]() |
39.1 | 454 | <p align="center"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/legtraj.gif" target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/legtraj.jpg" border="2" hspace="10" width="320" height="240"></a><br> |
![]() |
26.1 | 455 | <font size="2" face="Verdana">Figure 13.</font></p></td> |
456 | </tr> | ||
457 | <tr> | ||
458 | <td valign="top" align="left" colspan="2"><br class="pb"> | ||
459 | </td> | ||
460 | </tr> | ||
461 | <tr> | ||
462 | <td valign="top" align="left"><b><font face="Verdana" size="2">Step 14.</font></b><font face="Verdana" size="2"><br> | ||
463 | The Select button switches between Hexapod and Arm control.</font> | ||
464 | <p><font face="Verdana" size="2">- Move X and Y (Up/Down, To/Away) with the Left joystick.<br> | ||
465 | - Move Z (Base Rotate) and Wrist Angle with Right joystick.<br> | ||
466 | - Close/Open gripper with L1/L2 buttons.<br> | ||
467 | - Turn Wrist (L6 only) Right/Left with the R1/R2 buttons.<br> | ||
![]() |
30.1 | 468 | <font color="#808080"> > Arm moving <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/eh2l600.mpg">video</a>.</font><br> |
![]() |
26.1 | 469 | - Invert the X axis with the L3 (left joystick push button).<br> |
470 | - Initialize Arm position with the X button.<br> | ||
471 | - Disable/Enable Arm servos with the <u>/\</u> button.</font></p> | ||
472 | </td> | ||
473 | <td valign="top" > | ||
![]() |
39.1 | 474 | <p align="center"><font face="Verdana" size="2"> </font><a target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/eh212s.jpg" border="2" hspace="10" width="320" height="240"></a><br> |
![]() |
26.1 | 475 | <font size="2" face="Verdana">Figure 14.</font></p></td> |
476 | </tr> | ||
477 | <tr> | ||
478 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> | ||
479 | </tr> | ||
480 | <tr> | ||
481 | <td valign="top" align="left"><font size="2" face="Verdana"> | ||
482 | <div align="center"> | ||
483 | <center> | ||
484 | <table border="0"> | ||
485 | <tbody><tr> | ||
486 | <td > | ||
487 | <div align="center"> | ||
![]() |
39.1 | 488 | <table border="1" bordercolor="#000000" width="360"> |
![]() |
26.1 | 489 | <tbody><tr> |
![]() |
28.1 | 490 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" colspan="4"><font size="2" face="Verdana"><b>PS2 Controls |
![]() |
26.1 | 491 | (Default Tank Mode)</b></font></td> |
492 | </tr> | ||
493 | <tr> | ||
![]() |
39.1 | 494 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy U</font></td> |
495 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Left Side Forward</font></td> | ||
496 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy U</font></td> | ||
497 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Right Side Forward</font></td> | ||
![]() |
26.1 | 498 | </tr> |
499 | <tr> | ||
![]() |
39.1 | 500 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy D</font></td> |
501 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Left Side Backward</font></td> | ||
502 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy D</font></td> | ||
503 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Right Side Backward</font></td> | ||
![]() |
26.1 | 504 | </tr> |
505 | <tr> | ||
![]() |
39.1 | 506 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy L</font></td> |
507 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">N/A</font></td> | ||
508 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy L</font></td> | ||
509 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">N/A</font></td> | ||
![]() |
26.1 | 510 | </tr> |
511 | <tr> | ||
![]() |
39.1 | 512 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy R</font></td> |
513 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">N/A</font></td> | ||
514 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy R</font></td> | ||
515 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">N/A</font></td> | ||
![]() |
26.1 | 516 | </tr> |
517 | <tr> | ||
![]() |
39.1 | 518 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L1</font></td> |
519 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Raise body height</font></td> | ||
520 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R1</font></td> | ||
521 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Increase leg lift</font></td> | ||
![]() |
26.1 | 522 | </tr> |
523 | <tr> | ||
![]() |
39.1 | 524 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L2</font></td> |
525 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Lower body height</font></td> | ||
526 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R2</font></td> | ||
527 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Decrease leg lift</font></td> | ||
![]() |
26.1 | 528 | </tr> |
529 | <tr> | ||
![]() |
39.1 | 530 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L3</font></td> |
531 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">N/A</font></td> | ||
532 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R3</font></td> | ||
533 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Switch control mode</font></td> | ||
![]() |
26.1 | 534 | </tr> |
535 | <tr> | ||
![]() |
39.1 | 536 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">D-Pad U</font></td> |
537 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Raise body height</font></td> | ||
538 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana"><u>/\</u></font></td> | ||
539 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Figure 12</font></td> | ||
![]() |
26.1 | 540 | </tr> |
541 | <tr> | ||
![]() |
39.1 | 542 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">D-Pad D</font></td> |
543 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Lower body height</font></td> | ||
544 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">X</font></td> | ||
545 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Figure 12</font></td> | ||
![]() |
26.1 | 546 | </tr> |
547 | <tr> | ||
![]() |
39.1 | 548 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">D-Pad L</font></td> |
549 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Speed Limit Down</font></td> | ||
550 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">[]</font></td> | ||
551 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Figure 12</font></td> | ||
![]() |
26.1 | 552 | </tr> |
553 | <tr> | ||
![]() |
39.1 | 554 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">D-Pad R</font></td> |
555 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Speed Limit Up</font></td> | ||
556 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">O</font></td> | ||
557 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Figure 12</font></td> | ||
![]() |
26.1 | 558 | </tr> |
559 | <tr> | ||
![]() |
39.1 | 560 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Start</font></td> |
561 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Dis/En Crash Monitor</font></td> | ||
562 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Select</font></td> | ||
563 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Switch to Arm mode</font></td> | ||
![]() |
26.1 | 564 | </tr> |
565 | </tbody></table> | ||
566 | </div> | ||
567 | </td> | ||
568 | </tr> | ||
569 | <tr> | ||
570 | <td > | ||
571 | <p align="center"><font size="2" face="Verdana">Table 14-1</font></p> | ||
572 | </td> | ||
573 | </tr> | ||
574 | </tbody></table> | ||
575 | </center> | ||
576 | </div> | ||
577 | </font></td> | ||
578 | <td align="center" valign="top" > | ||
579 | <div align="center"> | ||
580 | <center> | ||
581 | <table border="0"> | ||
582 | <tbody><tr> | ||
583 | <td > | ||
584 | <div align="center"> | ||
![]() |
39.1 | 585 | <table border="1" bordercolor="#000000" width="360"> |
![]() |
26.1 | 586 | <tbody><tr> |
![]() |
28.1 | 587 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" colspan="4"><font size="2" face="Verdana"><b>PS2 Controls |
![]() |
26.1 | 588 | (Right-Joystick Mode)</b></font></td> |
589 | </tr> | ||
590 | <tr> | ||
![]() |
39.1 | 591 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy U</font></td> |
592 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">N/A</font></td> | ||
593 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy U</font></td> | ||
594 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Forward</font></td> | ||
![]() |
26.1 | 595 | </tr> |
596 | <tr> | ||
![]() |
39.1 | 597 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy D</font></td> |
598 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">N/A</font></td> | ||
599 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy D</font></td> | ||
600 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Backward</font></td> | ||
![]() |
26.1 | 601 | </tr> |
602 | <tr> | ||
![]() |
39.1 | 603 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy L</font></td> |
604 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">N/A</font></td> | ||
605 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy L</font></td> | ||
606 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Left</font></td> | ||
![]() |
26.1 | 607 | </tr> |
608 | <tr> | ||
![]() |
39.1 | 609 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy R</font></td> |
610 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">N/A</font></td> | ||
611 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy R</font></td> | ||
612 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Right</font></td> | ||
![]() |
26.1 | 613 | </tr> |
614 | </tbody></table> | ||
615 | </div> | ||
616 | </td> | ||
617 | </tr> | ||
618 | <tr> | ||
619 | <td > | ||
620 | <p align="center"><font size="2" face="Verdana">Table 14-2</font></p> | ||
621 | </td> | ||
622 | </tr> | ||
623 | <tr> | ||
624 | <td > | ||
625 | <div align="center"> | ||
626 | <font size="2" face="Verdana"> | ||
627 | </font><font size="2" face="Verdana"> | ||
628 | </font><font size="2" face="Verdana"> | ||
629 | </font><font size="2" face="Verdana"> | ||
630 | </font><font size="2" face="Verdana"> | ||
631 | </font><font size="2" face="Verdana"> | ||
632 | </font><font size="2" face="Verdana"> | ||
![]() |
39.1 | 633 | </font><table border="1" bordercolor="#000000" width="360"> |
![]() |
26.1 | 634 | <tbody><tr> |
![]() |
28.1 | 635 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" colspan="4"><font size="2" face="Verdana"><b>PS2 Controls |
![]() |
26.1 | 636 | (Arm Control)</b></font></td> |
637 | </tr> | ||
638 | <tr> | ||
![]() |
39.1 | 639 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy</font></td> |
640 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Move X and Y</font></td> | ||
641 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy</font></td> | ||
642 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Move Z and Wrist</font></td> | ||
![]() |
26.1 | 643 | </tr> |
644 | <tr> | ||
![]() |
39.1 | 645 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L1</font></td> |
![]() |
26.1 | 646 | |
![]() |
39.1 | 647 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Close Gripper</font></td> |
648 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R1</font></td> | ||
![]() |
26.1 | 649 | |
![]() |
39.1 | 650 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Turn Wrist Right</font></td> |
![]() |
26.1 | 651 | </tr> |
652 | <tr> | ||
![]() |
39.1 | 653 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L2</font></td> |
![]() |
26.1 | 654 | |
![]() |
39.1 | 655 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Open Gripper</font></td> |
656 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R2</font></td> | ||
![]() |
26.1 | 657 | |
![]() |
39.1 | 658 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Turn Wrist Left</font></td> |
![]() |
26.1 | 659 | </tr> |
660 | <tr> | ||
![]() |
39.1 | 661 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L3</font></td> |
![]() |
26.1 | 662 | |
![]() |
39.1 | 663 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Invert X Axis</font></td> |
664 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R3</font></td> | ||
665 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Switch control mode</font></td> | ||
![]() |
26.1 | 666 | |
667 | </tr> | ||
668 | <tr> | ||
![]() |
39.1 | 669 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">X</font></td> |
670 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Home Position</font></td> | ||
671 | <td width="15%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana"><u>/\</u></font></td> | ||
![]() |
26.1 | 672 | |
![]() |
39.1 | 673 | <td width="35%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Diable/Enable Servos</font></td> |
![]() |
26.1 | 674 | </tr> |
675 | </tbody></table> | ||
676 | </div> | ||
677 | </td> | ||
678 | </tr> | ||
679 | <tr> | ||
680 | <td > | ||
681 | <p align="center"><font size="2" face="Verdana">Table 14-1</font></p> | ||
682 | </td> | ||
683 | </tr> | ||
684 | </tbody></table> | ||
685 | </center> | ||
686 | </div> | ||
687 | </td> | ||
688 | </tr> | ||
689 | <tr> | ||
690 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> | ||
691 | </tr> | ||
692 | <tr> | ||
693 | <td valign="top" ><font face="Verdana" size="2"><strong>Step 15.<br> | ||
694 | </strong>The following autonomous-behavior program requires the addition of three Sharp GP2D12 sensors, connected as follows:<br> | ||
695 | <br> | ||
696 | A to D channel 0 sensor: on front left side, facing right.<br> | ||
697 | A to D channel 1 sensor: on front right side, facing left.<br> | ||
698 | A to D channel 2 sensor: on rear, facing behind the robot.<br> | ||
699 | </font> | ||
700 | <div align="center"> | ||
701 | <center> | ||
702 | <table border="0"> | ||
703 | <tbody><tr> | ||
704 | <td > | ||
705 | <div align="center"> | ||
![]() |
39.1 | 706 | <table border="1" bordercolor="#000000" width="360"> |
![]() |
26.1 | 707 | <tbody><tr> |
![]() |
39.1 | 708 | <td width="30%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Filename</font></td> |
709 | <td width="70%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Program description</font></td> | ||
![]() |
26.1 | 710 | </tr> |
711 | <tr> | ||
![]() |
39.1 | 712 | <td width="30%" align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/h2prog7.zip" target="_blank">h2prog7.zip</a></font></td> |
713 | <td width="70%" align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Autonomous using two Sharp | ||
![]() |
26.1 | 714 | GP2D12 sensors and one on the rear.</font></td> |
715 | </tr> | ||
716 | </tbody></table> | ||
717 | </div> | ||
718 | </td> | ||
719 | </tr> | ||
720 | <tr> | ||
721 | <td > | ||
722 | <p align="center"><font face="Verdana" size="2">Table 15-1</font></p> | ||
723 | </td> | ||
724 | </tr> | ||
725 | </tbody></table> | ||
726 | </center> | ||
727 | </div> | ||
728 | </td> | ||
![]() |
39.1 | 729 | <td align="center" valign="top" ><a target="_blank"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-hexapod-2-tutorial/WebHome/eh200s.jpg" border="2" hspace="10" width="320" height="240"></a><br> |
![]() |
26.1 | 730 | <font size="2" face="Verdana">Figure 15.</font></td> |
731 | </tr> | ||
732 | </tbody></table> | ||
733 | </body> | ||
![]() |
1.1 | 734 | {{/html}} |