Wiki source code of The Complete 2DoF Hexapod Tutorial
Last modified by Eric Nantel on 2024/07/03 09:20
Show last authors
1 | {{html wiki="false" clean="true"}} |
2 | |
3 | <body><table border="0" cellpadding="0" cellspacing="0" > |
4 | <tbody><tr> |
5 | <td valign="top" align="left"><strong><font face="Verdana" size="2">The Complete |
6 | 2DOF Hexapod Tutorial. Updated <!--webbot bot="Timestamp" |
7 | S-Type="EDITED" S-Format="%m/%d/%Y" startspan -->09/30/2010<!--webbot bot="Timestamp" i-CheckSum="12519" endspan --> |
8 | </font></strong> |
9 | <p><font face="Verdana" size="2"><strong>Notice: <br> |
10 | - </strong>This tutorial follows the <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/view/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/inline-hexapod-body/">2DOF |
11 | Hexapod assembly guide</a>. Make sure all servos and other connections are |
12 | set up as detailed there.</font></p> |
13 | <p><font face="Verdana" size="2"><strong>Required Hardware:<br> |
14 | </strong> |
15 | </font><font face="Verdana" size="2"> - Any |
16 | Lynxmotion 2 DOF Hexapod<br> |
17 | - SSC-32<br> |
18 | - Bot Board / BASIC Atom Pro 28<br> |
19 | - PS2 Cable<br> |
20 | - PS2 Wireless Controller (Not included |
21 | in combo kit)<br> |
22 | - Sharp GP2D12 Sensor (Optional, see text)</font></p> |
23 | <p><font face="Verdana" size="2"><b>Required Software:<br> |
24 | </b> - LynxTerm (free <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/view/ses-software/lynxterm/" target="_blank">download</a>)<br> |
25 | - Basic Micro Studio ver 2.0.0.0<br> |
26 | - Basic Atom Pro Hexapod Programs:<br> |
27 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-2-dof-hexapod-tutorial/WebHome/h2prog01.zip" target="_blank">h2prog01.zip</a> PS2.<br> |
28 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-2-dof-hexapod-tutorial/WebHome/h2prog02.zip" target="_blank">h2prog02.zip</a> PS2.<br> |
29 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-2-dof-hexapod-tutorial/WebHome/h2prog03.zip" target="_blank">h2prog03.zip</a> PS2.<br> |
30 | > <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-2-dof-hexapod-tutorial/WebHome/h2prog04.zip" target="_blank">h2prog04.zip</a> Autonomous!</font></p> |
31 | <font size="2"><b><font face="Verdana">Resources:<br> |
32 | </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-2-dof-hexapod-tutorial/WebHome/2dofsch2.gif" target="_blank">2dofsch2.gif</a>)</font></font> |
33 | <p><font size="2"><b><font face="Verdana">Goal:<br> |
34 | </font></b><font face="Verdana"> - Install, program, and test the electronics to operate a Hexapod 2 |
35 | remotely from a Lynxmotion wireless controller or autonomously using |
36 | sensors.</font></font></p> |
37 | </td> |
38 | <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-2-dof-hexapod-tutorial/WebHome/2dofprod.jpg" border="2" hspace="10" ><br> |
39 | <font size="2" face="Verdana"><strong>Image of Hexapod 2.<br> |
40 | <br> |
41 | </strong></font></td> |
42 | </tr> |
43 | <tr> |
44 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> |
45 | </tr> |
46 | <tr> |
47 | <td valign="top" align="center" colspan="2"> |
48 | <hr noshade="" color="#808080"> |
49 | </td> |
50 | </tr> |
51 | <tr> |
52 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> |
53 | </tr> |
54 | <tr> |
55 | <td valign="top" align="left"><strong><font face="Verdana" size="2">Step |
56 | 1. Establishing Communication. <br> |
57 | </font></strong><font face="Verdana" size="2">The first thing we need to |
58 | do is establish a connection between your computer and the SSC-32 so that |
59 | we can align the servos. This is done by using a program called LynxTerm |
60 | on the PC with the SSC-32 connected. </font> |
61 | <p><font face="Verdana" size="2">Connect the serial data cable to the PC's serial port. This can be |
62 | recognized by having 9 pins |
63 | that stick out. Connect the other end of the serial data cable to the SSC-32's DB9 port. </font></p> |
64 | <p><font face="Verdana" size="2">Note, if your computer does not have a |
65 | native serial port, you can add one, |
66 | or you can also use a high quality USB to Serial adapter |
67 | such as one made by FTDI. If you are using an FTDI adapter cable, please install the VCP (Virtual Com Port) driver and change the "latency" property to its minimum. </font></p></td> |
68 | <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-2-dof-hexapod-tutorial/WebHome/comp.jpg" border="2" hspace="10" ><br> |
69 | <font size="2" face="Verdana">Figure 1.</font></td> |
70 | </tr> |
71 | <tr> |
72 | <td valign="top" align="left" colspan="2"><br class="pb"> |
73 | </td> |
74 | </tr> |
75 | <tr> |
76 | <td valign="top" align="left"><b><font face="Verdana" size="2">Step |
77 | 2.<br> |
78 | </font></b><font face="Verdana" size="2">Install and run <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/view/ses-software/lynxterm/"> LynxTerm</a> on your PC. |
79 | Plug the 9vdc battery in and notice the green LED light up on the SSC-32. Choose the COM port for your computer from the drop down menu in the upper left corner. Click in the black box, type |
80 | "ver" and press "enter". If everything is working correctly, you should receive a response such as "SSC32-2.03XE". </font> |
81 | <p><font face="Verdana" size="2"> |
82 | |
83 | Note, the LED on the SSC-32 is not a power indicator but a status indicator. Its job is to light up on power up showing the SSC-32 is 95% functional. After it receives a serial command it will turn off, and from there on it will blink when it receives data. This will happen even if the data is not formatted correctly. The LED on the Bot |
84 | Board II is a simple power indicator. </font></p> |
85 | </td> |
86 | <td align="left" valign="top" > |
87 | <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-2-dof-hexapod-tutorial/WebHome/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-2-dof-hexapod-tutorial/WebHome/lterm01s.jpg" border="2" hspace="10" ></a><br> |
88 | <font size="2" face="Verdana">Figure 2.</font></p></td> |
89 | </tr> |
90 | <tr> |
91 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> |
92 | </tr> |
93 | <tr> |
94 | <td valign="top" align="left"><strong><font face="Verdana" size="2">Step |
95 | 3. Aligning the Servos.<br> |
96 | </font></strong><font face="Verdana" size="2">Place the robot on top of a |
97 | CD spindle or other similar object to support the body and lift the legs |
98 | off the ground. </font> |
99 | <font face="Verdana" size="2">Make sure your 6v battery is connected to |
100 | the wiring harness and flip the power switch to the ON position to apply power to the servos. </font> |
101 | <p><font face="Verdana" size="2">Click the All=1500 button at the bottom |
102 | of the program and the legs should respond by quickly moving to a position |
103 | near centered. If the robot was constructed properly, the legs will be horizontal and perpendicular to the body. |
104 | If the legs are more than 15° off you may need to remove the output horn, rotate |
105 | it, and reinstall it. The next step is to align the servos in software to be perfectly aligned. </font> |
106 | </p></td> |
107 | <td valign="top" > |
108 | <p align="center"><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-2-dof-hexapod-tutorial/WebHome/2dofh11.jpg" border="2" hspace="10" ></a><br> |
109 | <font size="2" face="Verdana">Figure 3.</font></p></td> |
110 | </tr> |
111 | <tr> |
112 | <td valign="top" align="left" colspan="2"><br class="pb"> |
113 | </td> |
114 | </tr> |
115 | <tr> |
116 | <td valign="top" align="left"><strong><font face="Verdana" size="2">Step |
117 | 4.<br> |
118 | </font></strong><font face="Verdana" size="2">Click on the H2 Sequencer button in the lower left corner. |
119 | </font><p><font face="Verdana" size="2">Since |
120 | no servo is perfect, you will need to set offsets to center each servo. |
121 | Use the Offset tool under Servo Quick Test. Click on "Read" to |
122 | load any previous offset settings. Select the |
123 | 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 |
124 | on "Write" to save your offsets to the SSC-32 EEPROM. </font></p> |
125 | <p><font face="Verdana" size="2">Refer to Figures 4-2 and 4-3 for how each |
126 | servo should be aligned. </font></p> |
127 | </td> |
128 | <td valign="top" > |
129 | <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-2-dof-hexapod-tutorial/WebHome/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-2-dof-hexapod-tutorial/WebHome/lterm02s.jpg" border="2" hspace="10" ></a><br> |
130 | <font size="2" face="Verdana">Figure 4-1.</font></p></td> |
131 | </tr> |
132 | <tr> |
133 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> |
134 | </tr> |
135 | <tr> |
136 | <td valign="top" > |
137 | <p align="center"><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-2-dof-hexapod-tutorial/WebHome/align01.jpg" border="2" hspace="10" ></a><br> |
138 | <font size="2" face="Verdana">Figure 4-2.</font></p></td> |
139 | <td valign="top" > |
140 | <p align="center"><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-2-dof-hexapod-tutorial/WebHome/align02.jpg" border="2" hspace="10" ></a><br> |
141 | <font size="2" face="Verdana">Figure 4-3.</font></p></td> |
142 | </tr> |
143 | <tr> |
144 | <td valign="top" align="left" colspan="2"><br class="pb"> |
145 | </td> |
146 | </tr> |
147 | <tr> |
148 | <td valign="top" align="left" colspan="2"> |
149 | <p><font size="2" face="Verdana"><b>Schematic.</b><br> |
150 | Double check your connections against the schematic below. Be sure that red wires |
151 | go to positive (+) and black wires go to negative (-). Also be sure that |
152 | your jumpers are connected the exact same way as detailed below. Note: Your PS2 cable may not match up with Schematic 1. Refer to Schematic 2 for accurate connection information.</font></p> |
153 | <p align="center"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-2dof-hexapods/the-complete-2-dof-hexapod-tutorial/WebHome/2dofsch2.gif" border="0" hspace="10" ><br> |
154 | <font size="2" face="Verdana">Schematic 1.</font></p></td> |
155 | </tr> |
156 | <tr> |
157 | <td valign="top" align="left" colspan="2"><br class="pb"> |
158 | </td> |
159 | </tr> |
160 | <tr> |
161 | <td colspan="2" valign="top"><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-2-dof-hexapod-tutorial/WebHome/wire08s.gif" align="center" ><br> |
162 | <font size="2" face="Verdana">Schematic 2.</font></p> |
163 | </td> |
164 | </tr> |
165 | <tr> |
166 | <td valign="top" ><strong><font face="Verdana" size="2">Step 5. |
167 | Programming the Microcontroller.<br> |
168 | </font></strong><font face="Verdana" size="2">The following steps refer to several programs that offer complete control of all aspects of the |
169 | hexapod gait sequence through a wireless PS2 controller. Install and run the BASIC |
170 | Micro Studio to allow programming the chip.<br> |
171 | <br> |
172 | Refer to <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/view/support/basic-atom-pro-programming/">this tutorial</a> for |
173 | assistance on using the BASIC Micro Studio program.<br> |
174 | </font> |
175 | <div align="center"> |
176 | <center> |
177 | <table border="0"> |
178 | <tbody><tr> |
179 | <td > |
180 | <div align="center"> |
181 | <table border="1" bordercolor="#000000" > |
182 | <tbody><tr> |
183 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Filename</font></td> |
184 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Program description</font></td> |
185 | </tr> |
186 | <tr> |
187 | <td 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-2-dof-hexapod-tutorial/WebHome/h2prog01.zip" target="_blank"><font face="Verdana" size="2">h2prog01.zip</font></a></td> |
188 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Default |
189 | program. </font></td> |
190 | </tr> |
191 | <tr> |
192 | <td 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-2-dof-hexapod-tutorial/WebHome/h2prog02.zip" target="_blank">h2prog02.zip</a></font></td> |
193 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Tank |
194 | mode and single joystick mode.</font></td> |
195 | </tr> |
196 | <tr> |
197 | <td 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-2-dof-hexapod-tutorial/WebHome/h2prog03.zip" target="_blank">h2prog03.zip</a></font></td> |
198 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Single joystick |
199 | mode and pan-and-tilt on left joystick.</font></td> |
200 | </tr> |
201 | </tbody></table> |
202 | </div> |
203 | </td> |
204 | </tr> |
205 | <tr> |
206 | <td > |
207 | <p align="center"><font face="Verdana" size="2">Table 5</font></p> |
208 | </td> |
209 | </tr> |
210 | </tbody></table> |
211 | </center> |
212 | </div> |
213 | </td> |
214 | <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-2-dof-hexapod-tutorial/WebHome/2dofprod.jpg" border="2" hspace="10" ></a><br> |
215 | <font size="2" face="Verdana">Figure 5.</font></td> |
216 | </tr> |
217 | <tr> |
218 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> |
219 | </tr> |
220 | <tr> |
221 | <td valign="top" align="left"><b><font face="Verdana" size="2">Step |
222 | 6. </font></b><strong><font face="Verdana" size="2">PS2 Control. |
223 | </font></strong><font face="Verdana" size="2"><br> |
224 | Controlling the motion of the hexapod is handled using a single joystick. Make sure the controller is in Analog mode. |
225 | control of the |
226 | direction of walking with the right joystick, while Left and Right on the D-Pad adjusts speed. |
227 | 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 |
228 | D-Pad Right increases the max in 5% increments up to 200%</font> |
229 | <p><font face="Verdana" size="2">Both modes offer additional control of leg trajectory for the alternating tripod gait. This refers to the |
230 | vertical and horizontal motion that the foot goes through during the walking gait. Pressing <u>/\</u>, O (default), X, or [] changes how the |
231 | foot is lifted and the stride motion. </font></p> |
232 | <p><font face="Verdana" size="2">If the robot is driven toward an obstacle, after a threshold is reached the forward joystick position is |
233 | ignored. However, you can still reverse direction. The controller will also vibrate proportionally in relation to the distance from the |
234 | obstacle. The Sharp sensor can be enabled or disabled with the Start button.</font></p> |
235 | <p><font face="Verdana" size="2">You may notice that there are no commands |
236 | to change the height of the robot's body in the default program. In order |
237 | to take full advantage of the mechanical advantage legs, they need to |
238 | remain at their highest point. </font></p> |
239 | </td> |
240 | <td valign="top" > |
241 | <p align="center"><a href="http://www.lynxmotion.com/images/jpg/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-2-dof-hexapod-tutorial/WebHome/legtraj.jpg" border="2" hspace="10" ></a><br> |
242 | <font size="2" face="Verdana">Figure 6.</font></p></td> |
243 | </tr> |
244 | <tr> |
245 | <td valign="top" align="left" colspan="2"><br class="pb"> |
246 | </td> |
247 | </tr> |
248 | <tr> |
249 | <td valign="top" align="left"><font size="2" face="Verdana"> |
250 | <div align="center"> |
251 | <center> |
252 | <font size="2" face="Verdana"> |
253 | </font><table border="0"> |
254 | <tbody><tr> |
255 | <td > |
256 | <div align="center"> |
257 | <font size="2" face="Verdana"> |
258 | </font><font size="2" face="Verdana"> |
259 | </font><table border="1" bordercolor="#000000" > |
260 | <tbody><tr> |
261 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" colspan="4"><b><font size="2" face="Verdana">PS2 |
262 | Controls <br> |
263 | </font> |
264 | </b><b><font size="2" face="Verdana">Right-Joystick Mode<br> |
265 | Applies to h2prog01.zip</font></b></td> |
266 | </tr> |
267 | <tr> |
268 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"> |
269 | <font size="2" face="Verdana">L Joy U</font></td> |
270 | |
271 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Tilt Servo up</font></td> |
272 | |
273 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy U</font></td> |
274 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Forward</font></td> |
275 | </tr> |
276 | |
277 | <tr> |
278 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy D</font></td> |
279 | |
280 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Tilt |
281 | Servo down</font></td> |
282 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy D</font></td> |
283 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Backward</font></td> |
284 | </tr> |
285 | |
286 | <tr> |
287 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L </font><font size="2" face="Verdana">Joy L</font></td> |
288 | |
289 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Pan |
290 | Servo left</font></td> |
291 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy L</font></td> |
292 | |
293 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Left</font></td> |
294 | </tr> |
295 | <tr> |
296 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy R</font></td> |
297 | |
298 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Pan |
299 | Servo right</font></td> |
300 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">R Joy R</font></td> |
301 | |
302 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Right</font></td> |
303 | </tr> |
304 | <tr> |
305 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana"><u>/\</u></font></td> |
306 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">See |
307 | Figure 8</font></td> |
308 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">[]</font></td> |
309 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">See |
310 | Figure 8</font></td> |
311 | </tr> |
312 | <tr> |
313 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">X</font></td> |
314 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">See |
315 | Figure 8</font></td> |
316 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">O</font></td> |
317 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">See |
318 | Figure 8</font></td> |
319 | </tr> |
320 | <tr> |
321 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">D-Pad L</font></td> |
322 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Speed Limit Down</font></td> |
323 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">D-Pad R</font></td> |
324 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Speed Limit Up</font></td> |
325 | </tr> |
326 | <tr> |
327 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Start</font></td> |
328 | |
329 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font size="2" face="Verdana">Disable/Enable Crash Monitor</font></td> |
330 | </tr> |
331 | </tbody></table> |
332 | </div> |
333 | </td> |
334 | </tr> |
335 | <tr> |
336 | <td > |
337 | <p align="center"><font size="2" face="Verdana">Table 6-1</font></p> |
338 | </td> |
339 | </tr> |
340 | </tbody></table><font size="2" face="Verdana"> |
341 | </font></center><font size="2" face="Verdana"> |
342 | </font></div><font size="2" face="Verdana"> |
343 | <div align="center"> |
344 | <center> |
345 | <table border="0"> |
346 | <tbody><tr> |
347 | <td > |
348 | <div align="center"> |
349 | <font size="2" face="Verdana"> |
350 | </font><table border="1" bordercolor="#000000" > |
351 | <tbody><tr> |
352 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" colspan="4" ><b><font size="2" face="Verdana">PS2 Controls <br> |
353 | Right Joystick Mode<br> |
354 | Applies to h2prog0</font><font size="2" face="Verdana">3.zip</font></b></td> |
355 | </tr> |
356 | <tr> |
357 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy U</font></td> |
358 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Tilt |
359 | Servo up</font></td> |
360 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R Joy U</font></td> |
361 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Forward</font></td> |
362 | </tr> |
363 | <tr> |
364 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy D</font></td> |
365 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Tilt |
366 | Servo down</font></td> |
367 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R Joy D</font></td> |
368 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Backward</font></td> |
369 | </tr> |
370 | <tr> |
371 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy L</font></td> |
372 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Pan |
373 | Servo left</font></td> |
374 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R Joy L</font></td> |
375 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Left</font></td> |
376 | </tr> |
377 | <tr> |
378 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">L Joy R</font></td> |
379 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Pan |
380 | Servo right</font></td> |
381 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R Joy |
382 | R</font></td> |
383 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Right</font></td> |
384 | </tr> |
385 | |
386 | <tr> |
387 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">All |
388 | Other Commands</font></td> |
389 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">See |
390 | Table 8-3</font><font size="2" face="Verdana"></font></td> |
391 | </tr> |
392 | </tbody></table> |
393 | </div> |
394 | </td> |
395 | </tr> |
396 | <tr> |
397 | <td > |
398 | <p align="center"><font size="2" face="Verdana">Table 6-2</font></p> |
399 | </td> |
400 | </tr> |
401 | </tbody></table> |
402 | </center> |
403 | </div> |
404 | </font></font></td> |
405 | <td align="center" valign="top" > |
406 | <div align="center"> |
407 | <center> |
408 | <table border="0"> |
409 | <tbody><tr> |
410 | <td > |
411 | <div align="center"> |
412 | <table border="1" bordercolor="#000000" > |
413 | <tbody><tr> |
414 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" colspan="4" ><font size="2" face="Verdana"><b>PS2 Controls <br> |
415 | Tank Mode or (Right Joystick Mode)<br> |
416 | Applies to h2prog02.zip</b></font></td> |
417 | </tr> |
418 | <tr> |
419 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">L Joy U</font></td> |
420 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Left Side Forward |
421 | (N/A)</font></td> |
422 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R Joy U</font></td> |
423 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Right Side Forward |
424 | (Forward)</font></td> |
425 | </tr> |
426 | <tr> |
427 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">L Joy D</font></td> |
428 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Left Side Backward |
429 | (N/A)</font></td> |
430 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R Joy D</font></td> |
431 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Right Side Backward |
432 | (Backward)</font></td> |
433 | </tr> |
434 | <tr> |
435 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">L Joy L</font></td> |
436 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">N/A</font></td> |
437 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R Joy L</font></td> |
438 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">N/A |
439 | (Left)</font></td> |
440 | </tr> |
441 | <tr> |
442 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">L Joy R</font></td> |
443 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">N/A</font></td> |
444 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R Joy R</font></td> |
445 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">N/A |
446 | (Right)</font></td> |
447 | </tr> |
448 | <tr> |
449 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">L1</font></td> |
450 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Raise body height</font></td> |
451 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R1</font></td> |
452 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Increase leg lift</font></td> |
453 | </tr> |
454 | <tr> |
455 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">L2</font></td> |
456 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Lower body height</font></td> |
457 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R2</font></td> |
458 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Decrease leg lift</font></td> |
459 | </tr> |
460 | <tr> |
461 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">L3</font></td> |
462 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">N/A</font></td> |
463 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">R3</font></td> |
464 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Switch control mode</font></td> |
465 | </tr> |
466 | <tr> |
467 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">D-Pad U</font></td> |
468 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Raise body height</font></td> |
469 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana"><u>/\</u></font></td> |
470 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">See |
471 | Figure 8</font></td> |
472 | </tr> |
473 | <tr> |
474 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">D-Pad D</font></td> |
475 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Lower body height</font></td> |
476 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">X</font></td> |
477 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">See |
478 | Figure 8</font></td> |
479 | </tr> |
480 | <tr> |
481 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">D-Pad L</font></td> |
482 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Speed Limit Down</font></td> |
483 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">[]</font></td> |
484 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">See |
485 | Figure 8</font></td> |
486 | </tr> |
487 | <tr> |
488 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">D-Pad R</font></td> |
489 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Speed Limit Up</font></td> |
490 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">O</font></td> |
491 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">See |
492 | Figure 8</font></td> |
493 | </tr> |
494 | <tr> |
495 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">Start</font></td> |
496 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">Disable/Enable Crash Monitor</font></td> |
497 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" ><font size="2" face="Verdana">Select</font></td> |
498 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF" ><font size="2" face="Verdana">N/A</font></td> |
499 | </tr> |
500 | </tbody></table> |
501 | </div> |
502 | </td> |
503 | </tr> |
504 | <tr> |
505 | <td > |
506 | <p align="center"><font size="2" face="Verdana">Table 6-3</font></p> |
507 | </td> |
508 | </tr> |
509 | </tbody></table> |
510 | </center> |
511 | </div> </td> |
512 | </tr> |
513 | <tr> |
514 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> |
515 | </tr> |
516 | <tr> |
517 | <td valign="top" ><font face="Verdana" size="2"><strong>Step 7. |
518 | Autonomous Control.<br> |
519 | </strong>The following autonomous-behavior program requires the addition of three Sharp GP2D12 sensors, connected as follows:<br> |
520 | <br> |
521 | A to D channel 0 sensor: on front left side, facing right.<br> |
522 | A to D channel 1 sensor: on front right side, facing left.<br> |
523 | A to D channel 2 sensor: on rear, facing behind the robot.</font> |
524 | <p><font face="Verdana" size="2">The exact angle of the sensors isn't |
525 | critical, but will affect the robot's behavior. Experimentation is |
526 | encouraged.</font></p> |
527 | <div align="center"> |
528 | <center> |
529 | <table border="0"> |
530 | <tbody><tr> |
531 | <td > |
532 | <div align="center"> |
533 | <table border="1" bordercolor="#000000" > |
534 | <tbody><tr> |
535 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Filename</font></td> |
536 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font size="2" face="Verdana">Program description</font></td> |
537 | </tr> |
538 | <tr> |
539 | <td 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-2-dof-hexapod-tutorial/WebHome/h2prog04.zip" target="_blank">h2prog04.zip</a></font></td> |
540 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Autonomous using two Sharp |
541 | GP2D12 sensors and one on the rear.</font></td> |
542 | </tr> |
543 | </tbody></table> |
544 | </div> |
545 | </td> |
546 | </tr> |
547 | <tr> |
548 | <td > |
549 | <p align="center"><font face="Verdana" size="2">Table 7</font></p> |
550 | </td> |
551 | </tr> |
552 | </tbody></table> |
553 | </center> |
554 | </div> |
555 | </td> |
556 | <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-2-dof-hexapod-tutorial/WebHome/sensors.jpg" border="2" hspace="10" ></a><br> |
557 | <font size="2" face="Verdana">Figure 7.</font></td> |
558 | </tr> |
559 | <tr> |
560 | <td valign="top" align="left" colspan="2"><br class="pb"> |
561 | </td> |
562 | </tr> |
563 | <tr> |
564 | <td valign="top" ><strong><font face="Verdana" size="2">Step 8. |
565 | Additional Information.<br> |
566 | </font></strong><font face="Verdana" size="2">The Hexapod Sequencer can be used to test the hexapod without a microcontroller. Simply connect the SSC-32 to the serial port as if you were going to align the servos, then follow along.</font> |
567 | <p><font face="Verdana" size="2">The values for the L* and R* textboxes will control the positions the legs are moved to in the |
568 | sequence. You can fine-tune these values to your mechanical leg arrangement with the same Servo Quick Test. Just adjust the position slider |
569 | instead of the offset slider. <br> |
570 | </font></p> |
571 | <div align="center"> |
572 | <center> |
573 | <table border="0"> |
574 | <tbody><tr> |
575 | <td > |
576 | <div align="center"> |
577 | <table border="1" bordercolor="#000000" > |
578 | <tbody><tr> |
579 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0" colspan="4"><font face="Verdana" size="2">Tripod Leg |
580 | Movement Sequence</font></td> |
581 | </tr> |
582 | <tr> |
583 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LF</font></td> |
584 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Front Horiz</font></td> |
585 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RF</font></td> |
586 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Front Horiz</font></td> |
587 | </tr> |
588 | <tr> |
589 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LH</font></td> |
590 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left High Vertical</font></td> |
591 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RH</font></td> |
592 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right High Vertical</font></td> |
593 | </tr> |
594 | <tr> |
595 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LM</font></td> |
596 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Middle Vertical</font></td> |
597 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RM</font></td> |
598 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Mid Vertical</font></td> |
599 | </tr> |
600 | <tr> |
601 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LL</font></td> |
602 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Low Vertical</font></td> |
603 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RL</font></td> |
604 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Low Vertical</font></td> |
605 | </tr> |
606 | <tr> |
607 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">LR</font></td> |
608 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Left Rear Horiz</font></td> |
609 | <td align="center" bordercolor="#808080" bgcolor="#C0C0C0"><font face="Verdana" size="2">RR</font></td> |
610 | <td align="center" bordercolor="#C0C0C0" bgcolor="#FFFFFF"><font face="Verdana" size="2">Right Rear Horiz</font></td> |
611 | </tr> |
612 | </tbody></table> |
613 | </div> |
614 | </td> |
615 | </tr> |
616 | <tr> |
617 | <td > |
618 | <p align="center"><font face="Verdana" size="2">Table 8</font></p> |
619 | </td> |
620 | </tr> |
621 | </tbody></table> |
622 | </center> |
623 | </div> |
624 | </td> |
625 | <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-2-dof-hexapod-tutorial/WebHome/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-2-dof-hexapod-tutorial/WebHome/lterm03s.jpg" border="2" hspace="10" ></a><br> |
626 | <font size="2" face="Verdana">Figure 8.</font></td> |
627 | </tr> |
628 | <tr> |
629 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> |
630 | </tr> |
631 | <tr> |
632 | <td valign="top" align="left"><strong><font face="Verdana" size="2">Step |
633 | 9.</font></strong><font face="Verdana" size="2"><br> |
634 | 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 |
635 | notice that the stride takes 3 seconds. Adjust the HT slider to 1000 and notice that the stride now takes 2 seconds.</font> |
636 | <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 |
637 | 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 |
638 | 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% |
639 | 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 |
640 | 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> |
641 | </td> |
642 | <td valign="top" > |
643 | <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-2-dof-hexapod-tutorial/WebHome/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-2-dof-hexapod-tutorial/WebHome/lterm04s.jpg" border="2" hspace="10" ></a><br> |
644 | <font size="2" face="Verdana">Figure 9.</font></p></td> |
645 | </tr> |
646 | <tr> |
647 | <td valign="top" align="left" colspan="2"><font face="Verdana" size="2"> </font></td> |
648 | </tr> |
649 | <tr> |
650 | <td valign="top" align="left"><font face="Verdana" size="2"><strong>Step |
651 | 10.</strong><br> |
652 | For the do-it-yourselfers, the program to the right will set up and initiate walking on the robot. To change |
653 | speed and direction just alter the XL, XR, XS values. The robot will immediately begin walking in the speed and direction commanded.</font></td> |
654 | <td valign="top" > |
655 | <div align="center"> |
656 | <center> |
657 | <table border="1" bordercolor="#FFFFFF" > |
658 | <tbody><tr> |
659 | <td bordercolor="#000000"><font face="Courier New" size="2">XL var sbyte<br> |
660 | XR var sbyte<br> |
661 | XS var byte<br> |
662 | <br> |
663 | XL = 100<br> |
664 | XR = 100<br> |
665 | XS = 100<br> |
666 | <br> |
667 | start:<br> |
668 | serout p15,i38400,["LF1700 RF1300 LR1300",13]<br> |
669 | serout p15,i38400,["RR1700 LH1000 LM1700",13]<br> |
670 | serout p15,i38400,["LL1800 RH2000 RM1300",13]<br> |
671 | serout p15,i38400,["RL1200 VS3000 HT1500",13]<br> |
672 | serout p15,i38400,["XL",SDEC XL,"XR",SDEC XR,13]<br> |
673 | serout p15,i38400,["XS",DEC XS,13]<br> |
674 | loop:<br> |
675 | goto loop</font></td> |
676 | </tr> |
677 | <tr> |
678 | <td bordercolor="#FFFFFF"> |
679 | <p align="center"><font face="Verdana" size="2">Table 10.</font></p></td> |
680 | </tr> |
681 | </tbody></table> |
682 | </center> |
683 | </div> |
684 | </td> |
685 | </tr> |
686 | </tbody></table> |
687 | </body> |
688 | {{/html}} |