Last modified by Eric Nantel on 2023/02/02 13:56

Show last authors
1 {{html wiki="false" clean="true"}}
2 <body><table border="0" cellpadding="0" cellspacing="0" >
3 <tbody><tr>
4 <td valign="top" ><font size="2" face="verdana"><strong>Sumo for
5 Bot Board / BASIC Atom or Pro / Scorpion.</strong></font>
6 <p><font size="2" face="verdana"><strong>Updated: <!--webbot
7 bot="Timestamp" startspan s-type="EDITED" s-format="%m.%d.%y" -->02.15.06<!--webbot
8 bot="Timestamp" i-checksum="13028" endspan --></strong></font></p>
9 <p><font size="2" face="verdana"><b>By Jim
10 Frye &amp; Beth
11 Frye</b></font></p>
12 <p><font size="2" face="verdana">The goal of this tutorial is to build an
13 autonomous sumo using a Bot Board with an Atom 28 or Pro microcontroller,
14 Scorpion motor controller, and various sensors.</font></p>
15 <p><font size="2" face="verdana">Note, in our examples we are using a
16 Viper sumo chassis. However, the fundamental principals explained in this
17 tutorial can be used with any of our sumo chassis. Minor changes to the
18 code may be necessary and are encouraged to fine-tune the performance of
19 your sumo set up. These modifications are simple. For example, a
20 six-wheel-drive sumo will require a larger turning value than a
21 two-wheel-drive to obtain the same results.</font></p>
22 <p><font size="2" face="verdana">This is a work-in-progress, and will be
23 updated as we proceed with the project.</font></p>
24 </td>
25 <td align="center" valign="top" width="320"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbsisos.jpg" border="2" hspace="10" ><br>
26 <font size="2" face="verdana"><strong>Current Picture (as of 03.01.04)</strong></font></td>
27 </tr>
28 <tr>
29 <td colspan="2" valign="top">&nbsp;<a name="elec1"></a></td>
30 </tr>
31 <tr>
32 <td valign="top" ><b><font size="2" face="verdana">1. Attaching
33 Scorpion&nbsp; to Chassis</font></b>
34 <p><font size="2" face="verdana"><b>Step 1.</b> Consult the Scorpion <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-electronics/ses-modules/WebHome/scorpion.pdf" target="_blank">users
35 manual</a> to disable mixing (tank steer mode) and disable the battery
36 elimination circuitry (BEC). Cut the servo cables to about 3" length,
37 and solder them in the Left and Right positions. Use double-sided foam
38 tape to attach the Scorpion to the chassis as shown in the picture.</font></p></td>
39 <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbs03.jpg" border="2" hspace="10" ><br>
40 <font size="2" face="verdana">Figure 1-1.</font></td>
41 </tr>
42 <tr>
43 <td colspan="2" valign="top">&nbsp;<a name="power1"></a></td>
44 </tr>
45 <tr>
46 <td valign="top" ><font size="2" face="verdana"><b>2. Wiring
47 Power to the Electronics</b></font>
48 <p><font size="2" face="verdana"><b>Step 1.</b> Solder the wires onto the
49 DPDT power switch as illustrated. While positioned as shown, flipping the
50 toggle switch down will apply 9vdc to the Bot Board. Flipping the switch
51 up will apply 9vdc to the Bot Board and 14.4vdc to the Scorpion. This is
52 useful for disabling the motors while programming.</font></p>
53 </td>
54 <td align="center" valign="bottom" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbs02.jpg" border="2" hspace="10" ><br>
55 <font size="2" face="verdana">Figure 2-1.</font></td>
56 </tr>
57 <tr>
58 <td colspan="2" valign="top">&nbsp;</td>
59 </tr>
60 <tr>
61 <td valign="top" ><font size="2" face="verdana"><b>Step 2.</b>
62 This image illustrates the power switch installed, the 14.4vdc leads going
63 to the Scorpion's battery inputs, and the motor wires connected to the
64 Scorpion's screw terminals. Observe polarity!<br>
65 &nbsp;</font>
66 <div align="center">
67 <center>
68 <font size="2" face="verdana">
69 </font><font size="2" face="verdana"><font size="2" face="verdana">
70 </font></font><table border="1" bordercolor="#FFFFFF">
71 <tbody><tr>
72 <td bordercolor="#808080" bgcolor="#C0C0C0">
73 <p align="center"><font face="Verdana" size="2">Screw Terminal</font></p>
74 </td>
75 <td bordercolor="#808080" bgcolor="#C0C0C0" align="center">
76 <p align="center"><font face="Verdana" size="2">Batt. / Motor Wire</font></p></td>
77 </tr>
78 <tr>
79 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">B+</font></td>
80 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">Battery
81 +</font></td>
82 </tr>
83 <tr>
84 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">B-</font></td>
85 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">Battery
86 -</font></td>
87 </tr>
88 <tr>
89 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">L+</font></td>
90 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Left
91 Motor +</font></td>
92 </tr>
93 <tr>
94 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">L-</font></td>
95 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Left
96 Motor -</font></td>
97 </tr>
98 <tr>
99 <td bordercolor="#C0C0C0" align="center"><font face="Verdana" size="2">R+</font></td>
100 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Right
101 Motor +</font></td>
102 </tr>
103 <tr>
104 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">R-</font></td>
105 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Right
106 Motor -</font></td>
107 </tr>
108 <tr>
109 <td bordercolor="#FFFFFF" align="center" colspan="2"><font face="Verdana" size="2"><font size="2" face="verdana">Table
110 </font></font><font face="Verdana" size="2">2</font><font size="2" face="verdana">-2</font></td>
111 </tr>
112 </tbody></table><font size="2" face="verdana"><font size="2" face="verdana">
113 </font></font></center><font size="2" face="verdana"><font size="2" face="verdana">
114 </font></font></div><font size="2" face="verdana"><font size="2" face="verdana">
115 </font></font></td>
116 <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbs04.jpg" border="2" hspace="10" ><br>
117 <font size="2" face="verdana">Figure 2-2.</font></td>
118 </tr>
119 <tr>
120 <td valign="top" colspan="2">&nbsp;<a name="prog1"></a></td>
121 </tr>
122 <tr>
123 <td valign="top" ><font size="2" face="verdana"><b>3. Setting Up
124 and Installing the Bot Board and Atom</b></font>
125 <p><font size="2" face="verdana">Consult the Bot Board <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-electronics/ses-modules/WebHome/mini-abb-user-guide.pdf" target="_blank">users
126 manual</a> to provide VL to the power bus for I/O 0 - 3, and AX 0 - 3 for
127 the Atom 28. Enable the onboard speaker and the pushbuttons / LEDs (simple
128 user interface). Install the board as shown using the provided hardware.
129 Carefully install the Atom into the Bot Board socket. Install the 9vdc
130 wires from the switch harness. Observe polarity! Plug in the servo cables
131 from the Scorpion with Left being I/O 14 and Right being I/O 15. Plug in
132 the Single Line Detector cables with Left being I/O 2 and Right being I/O
133 3.</font></p></td>
134 <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbs06.jpg" border="2" hspace="10" ><br>
135 <font size="2" face="verdana">Figure 3-1.</font></td>
136 </tr>
137 <tr>
138 <td colspan="2" valign="top">&nbsp;<a name="sld01"></a></td>
139 </tr>
140 <tr>
141 <td valign="top" ><font size="2" face="verdana"><b>4. Preparing
142 the Single Line Detectors</b></font>
143 <p><font size="2" face="verdana">Install the charged 7.2vdc battery packs
144 and the 9vdc battery. Turn on the power to the electronics only. Adjust
145 the sensor positions to as low as possible. Place the robot on the sumo
146 ring or other black surface. Adjust the threshold full counterclockwise,
147 then clockwise until the red LED just lights. Then roll the robot to the
148 ring edge, or other white surface, and the LED should go out. Do this to
149 both sides to complete the line detector setup.</font></p></td>
150 <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbs07.jpg" border="2" hspace="10" ><br>
151 <font size="2" face="verdana">Figure 4-1.</font></td>
152 </tr>
153 <tr>
154 <td valign="top" colspan="2">&nbsp;<a name="sld02"></a></td>
155 </tr>
156 <tr>
157 <td valign="top" ><b><font size="2" face="Verdana">5. Using
158 Single Line Detectors to stay in the ring</font></b>
159 <p align="left"><font size="2" face="verdana">Download the latest version
160 of the Basic Atom or Pro editor from Basic Micro's.
161 Then download the proper program for your processor from Table 5-1. It
162 uses the pulseout command, which requires updating every 20 mS. Load the
163 program into the editor, and program the Atom chip. The Atom Pro 24 does
164 not have a power on reset. This means you should press Reset after
165 downloading to start the program running.</font></p>
166 <p align="left"><font size="2" face="verdana">This program incorporates a
167 five-second delay which is required in sumo competitions. It then
168 instructs the robot to go forward. If the white line is detected, the
169 robot will stop, back up, and turn away from the detected line. For
170 example, if the Left line detector sees the line, the robot will back up
171 and turn right. The variable "backup" affects how long the robot
172 will back up. The variable "turn" affects how long the robot
173 will turn. Watch these videos to see how your robot should be acting: <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo01.mpg" target="_blank">Without
174 opponent</a>. <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo02.mpg" target="_blank">With
175 opponent</a>.</font></p></td>
176 <td align="center" valign="top" >
177 <div align="center">
178 <center>
179 <font size="2" face="verdana">
180 </font><table border="1" bordercolor="#FFFFFF">
181 <tbody><tr>
182 <td bordercolor="#808080" bgcolor="#C0C0C0">
183 <p align="center"><font face="Verdana" size="2">Bot Board </font><font size="2" face="verdana"><font face="Verdana" size="2">Pin
184 Number</font></font></p><font size="2" face="verdana">
185 </font></td>
186 <td bordercolor="#808080" bgcolor="#C0C0C0" align="center">
187 <p align="center"><font face="Verdana" size="2">Connects to...</font></p>
188 </td>
189 </tr>
190 <tr>
191 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">P0
192 - P1</font></td>
193 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">Not
194 used</font></td>
195 </tr>
196 <tr>
197 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">P2</font></td>
198 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Left
199 Edge Sensor</font></td>
200 </tr>
201 <tr>
202 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">P3</font></td>
203 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Right
204 Edge Sensor</font></td>
205 </tr>
206 <tr>
207 <td bordercolor="#C0C0C0" align="center"><font face="Verdana" size="2">P4,
208 P5, P6</font></td>
209 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Push
210 buttons</font></td>
211 </tr>
212 <tr>
213 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">P7</font></td>
214 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Not
215 used</font></td>
216 </tr>
217 <tr>
218 <td bordercolor="#C0C0C0" align="center"><font face="Verdana" size="2">P9</font></td>
219 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">(Internal
220 speaker)</font></td>
221 </tr>
222 <tr>
223 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">P10
224 - P13</font></td>
225 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Not
226 used</font></td>
227 </tr>
228 <tr>
229 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">P14</font></td>
230 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Left
231 Motor</font></td>
232 </tr>
233 <tr>
234 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">P15</font></td>
235 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Right
236 Motor</font></td>
237 </tr>
238 <tr>
239 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">VL</font></td>
240 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">9vdc
241 battery</font></td>
242 </tr>
243 <tr>
244 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">VS</font></td>
245 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Not
246 used</font></td>
247 </tr>
248 <tr>
249 <td bordercolor="#808080" bgcolor="#C0C0C0">
250 <p align="center"><font face="Verdana" size="2">Download</font></p></td>
251 <td bordercolor="#808080" bgcolor="#C0C0C0" align="center">
252 <p align="center"><font face="Verdana" size="2">Description</font></p></td>
253 </tr>
254 <tr>
255 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo01.zip" target="_blank">Line
256 Detectors Program</a></font></td>
257 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">BASIC
258 Atom Pro code</font></td>
259 </tr>
260 <tr>
261 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo11.zip" target="_blank">Line
262 Detectors Program</a></font></td>
263 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">BASIC
264 Atom 28 code</font></td>
265 </tr>
266 <tr>
267 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo01.mpg" target="_blank">Without
268 Opponent Video</a></font></td>
269 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">Bot's
270 behavior without opponent in ring</font></td>
271 </tr>
272 <tr>
273 <td bordercolor="#C0C0C0" align="center"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo02.mpg" target="_blank"><font size="2" face="Verdana">With
274 Opponent Video</font></a></td>
275 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Bot's
276 behavior with opponent in ring</font></td>
277 </tr>
278 <tr>
279 <td bordercolor="#FFFFFF" align="center" colspan="2"><font size="2" face="verdana">Table
280 </font><font face="Verdana" size="2">5</font><font size="2" face="verdana">-1</font></td>
281 </tr>
282 </tbody></table><font size="2" face="verdana">
283 </font></center><font size="2" face="verdana">
284 </font></div><font size="2" face="verdana">
285 </font></td>
286 </tr>
287 <tr>
288 <td valign="top" colspan="2">&nbsp;<a name="altsu1"></a></td>
289 </tr>
290 <tr>
291 <td valign="top"><b><font size="2" face="Verdana">6. Alternate
292 Startup Behaviors</font></b>
293 <p align="left"><font size="2" face="verdana">Download the alternate
294 startup behaviors code from table 6-1 and load it into the editor. Program
295 the Atom chip. (This program also has the stay-in-the-ring functionality
296 of previous programs.)</font></p>
297 <p align="left"><font size="2" face="verdana">Now, when you power up the
298 robot you can press either the A, B, or C buttons on the board. Each one
299 will trigger a different startup behavior routine. For a summary of the
300 behaviors and a video example of each, refer to table 6-1. Having multiple
301 startup functions available gives you a strategic advantage over the
302 opponent. For example, if you know that your opponent always goes forward
303 and you don't think that you can get under their scoop, you can choose
304 BehaviorA. This will allow you to ram into their side and push them out of
305 the ring.</font></p></td>
306 <td align="center" valign="middle" >
307 <div align="center">
308 <center>
309 <font size="2" face="verdana">
310 </font><table border="1" bordercolor="#FFFFFF">
311 <tbody><tr>
312 <td bordercolor="#808080" bgcolor="#C0C0C0">
313 <p align="center"><font face="Verdana" size="2">Download</font></p>
314 </td>
315 <td bordercolor="#808080" bgcolor="#C0C0C0" align="center">
316 <p align="center"><font face="Verdana" size="2">Description</font></p></td>
317 </tr>
318 <tr>
319 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo03.zip" target="_blank">Alt
320 Startup Program</a></font></td>
321 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">BASIC
322 Atom Pro code</font></td>
323 </tr>
324 <tr>
325 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo13.zip" target="_blank">Alt
326 Startup Program</a></font></td>
327 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">BASIC
328 Atom 28 code</font></td>
329 </tr>
330 <tr>
331 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbsa01.mpg" target="_blank">BehaviorA
332 Video</a></font></td>
333 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">Bot
334 reverses in a Right arc, then goes forward</font></td>
335 </tr>
336 <tr>
337 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbsb01.mpg" target="_blank">BehaviorB
338 Video</a></font></td>
339 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">Bot
340 turns in place to the Right, then does a half circle around the
341 ring</font></td>
342 </tr>
343 <tr>
344 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbsc01.mpg" target="_blank">BehaviorC
345 Video</a></font></td>
346 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">Bot
347 goes forward at start; "normal" sumo startup</font></td>
348 </tr>
349 <tr>
350 <td bordercolor="#FFFFFF" align="center" colspan="2"><font size="2" face="verdana">Table
351 </font><font face="Verdana" size="2">6</font><font size="2" face="verdana">-1</font></td>
352 </tr>
353 </tbody></table><font size="2" face="verdana">
354 </font></center><font size="2" face="verdana">
355 </font></div><font size="2" face="verdana">
356 </font></td>
357 </tr>
358 <tr>
359 <td valign="top" colspan="2">&nbsp;<a name="gp2d1201"></a></td>
360 </tr>
361 <tr>
362 <td valign="top"><b><font size="2" face="Verdana">7. Setup of
363 Sharp GP2D12 Sensor</font></b>
364 <p align="left"><font size="2" face="verdana">For the Atom Pro 24, plug in
365 the sensors to P0 and P1. For the Atom 28, plug in the sensors to AX0 and
366 AX1. Attach the sensors to the top of the robot as shown in Figure 7-1. We
367 used two aluminum Single Ultrasonic Range Sensor Housing kits. You may
368 want to use double-sided tape or another method.</font></p>
369 <p align="left"><font size="2" face="verdana">Note, make sure the sensors
370 are "watching" the correct side of the robot! If you set this up
371 incorrectly, your bot will run away from any approaching opponent. The
372 sensor in P0 or AX0 should be watching the bot's Left side. The sensor in
373 P1 or AX1 should be watching the bot's Right side.</font></p>
374 <p align="left"><font size="2" face="verdana">Table 7-1 holds a nifty
375 little bit of code that you can use to adjust the position of your Sharp
376 GP2D12 sensors. Just make a new .zip file for it.</font></p>
377 <p align="left"><font size="2" face="verdana">After you run the code, if
378 you run your hand in front of the sensor a note will sound. The note
379 raises in pitch as you get closer to the sensor. Note, this code will only
380 work for the sensor on P0 / AX0 as is. To adjust the sensor on P1 / AX1,
381 change "</font><font size="2" face="Courier New"><font color="#000080">temp</font><font color="#800000">*</font><font color="#FF0000">10</font></font><font size="2" face="verdana">"
382 to "</font><font size="2" face="Courier New"><font color="#000080">temp2</font><font color="#800000">*</font><font color="#FF0000">10</font></font><font size="2" face="verdana">"
383 and run the code.</font></p>
384 <p align="left"><font size="2" face="verdana">This code allows you to
385 angle the sensors to look down in front of the robot and get an audio
386 signal when they see something. Adjust the sensors as far down as possible
387 without hearing sound.</font></p>
388 <p align="left"><font size="2" face="verdana">If you want to use Terminal1
389 in the editor to see the values produced by both sensors, remove the
390 apostrophe from in front of the </font><font size="2" face="Courier New">serout</font><font size="2" face="Verdana">
391 line.</font></p></td>
392 <td align="center" valign="middle" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbs08.jpg" border="2" hspace="10" ><br>
393 <font size="2" face="verdana"><center>Figure 7-1.</center><br>
394 </font>
395 <div align="center">
396 <center>
397 </center><font size="2" face="verdana">
398 </font><table border="1" bordercolor="#FFFFFF">
399 <tbody><tr>
400 <td bordercolor="#808080" bgcolor="#C0C0C0">
401 <p align="center"><font face="Verdana" size="2">Code Snippet</font></p>
402 </td>
403 </tr>
404 <tr>
405 <td bordercolor="#C0C0C0" align="center">
406 <p align="left"><font size="2" face="Courier New"><font color="#0000FF">temp
407 var</font> <font color="#FF0000">word</font><br>
408 <font color="#0000FF">temp2 var</font> <font color="#FF0000">word</font><br>
409 <br>
410 <font color="#0000FF">test:</font><br>
411 <br>
412 <font color="#0000FF">adin</font> AX0,<font color="#800000">2</font>,ad_ron,<font color="#000080">temp</font>&nbsp;
413 <font color="#808080">'For Atom 28</font><br>
414 <font color="#0000FF">adin</font> AX1,<font color="#800000">2</font>,ad_ron,<font color="#000080">temp2</font>
415 <font color="#808080">'For Atom 28</font><br>
416 <font color="#808080">'adin 0,temp&nbsp; 'For Atom Pro<br>
417 'adin 1,temp2 'For Atom Pro</font><br>
418 <font color="#808080">' serout S_OUT,i57600,[dec3 temp\3,"
419 ",dec3 temp2\3," ",13]</font><br>
420 <font color="#000080">temp</font> = <font color="#000080">temp</font><font color="#800000">*</font><font color="#FF0000">10</font><br>
421 <font color="#0000FF">sound</font> <font color="#FF0000">9</font>,
422 [<font color="#FF0000">10</font>\<font color="#000080">temp</font>]<br>
423 <br>
424 <font color="#0000FF">goto</font> <font color="#000080">test</font><br>
425 <font color="#0000FF">end</font></font></p></td>
426 </tr>
427 <tr>
428 <td bordercolor="#FFFFFF" align="center"><font size="2" face="verdana">Table
429 </font><font face="Verdana" size="2">7</font><font size="2" face="verdana">-1</font></td>
430 </tr>
431 </tbody></table><font size="2" face="verdana">
432
433 </font></div><font size="2" face="verdana">
434 </font></td>
435 </tr>
436 <tr>
437 <td valign="top" colspan="2">&nbsp;<a name="gp2d1202"></a></td>
438 </tr>
439 <tr>
440 <td valign="top"><b><font size="2" face="Verdana">8. Using
441 GP2D12 to Seek Out Opponents</font></b>
442 <p align="left"><font size="2" face="verdana">Download the opponent
443 detection code from table 8-1 and load it into the editor. Program the
444 Atom chip. (This program also has the stay-in-the-ring functionality and
445 alternate startup behaviors of previous programs.)</font></p>
446 <p align="left"><font size="2" face="verdana">Now when you run this code,
447 your bot will be able to detect and chase an opponent.</font></p>
448 <p align="left"><font size="2" face="verdana">This code also includes the
449 GP2D12 testing code from the previous step. However, you'll need to remove
450 the apostrophes from in front</font><font size="2"><font face="verdana">
451 of "</font><font face="Courier New"><font color="#0000FF">goto</font>
452 <font color="#000080">test</font></font><font face="verdana">" and
453 "</font><font color="#0000FF" face="Courier New">end</font><font face="verdana">"
454 </font></font><font size="2" face="verdana">if you want to use it. When
455 you want to run the rest of the program, just put the apostrophes back in.</font></p></td>
456 <td align="center" valign="middle" >
457 <div align="center">
458 <center>
459 <font size="2" face="verdana">
460 </font><table border="1" bordercolor="#FFFFFF">
461 <tbody><tr>
462 <td bordercolor="#808080" bgcolor="#C0C0C0">
463 <p align="center"><font face="Verdana" size="2">Bot Board Pin
464 Number</font></p></td>
465 <td bordercolor="#808080" bgcolor="#C0C0C0" align="center">
466 <p align="center"><font face="Verdana" size="2">Connects to...</font></p></td>
467 </tr>
468 <tr>
469 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">P0
470 / AX0</font></td>
471 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">Left
472 Opponent Sensor (Watches bot's Left side)</font></td>
473 </tr>
474 <tr>
475 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">P1
476 / AX1</font></td>
477 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">Right
478 Opponent Sensor (Watches bot's Right side)</font></td>
479 </tr>
480 <tr>
481 <td bordercolor="#808080" bgcolor="#C0C0C0">
482 <p align="center"><font face="Verdana" size="2">Download</font></p>
483 </td>
484 <td bordercolor="#808080" bgcolor="#C0C0C0" align="center">
485 <p align="center"><font face="Verdana" size="2">Description</font></p></td>
486 </tr>
487 <tr>
488 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo04.zip" target="_blank">Opponent
489 Detect Program</a></font></td>
490 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">BASIC
491 Atom Pro code</font></td>
492 </tr>
493 <tr>
494 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/basumo14.zip" target="_blank">Opponent
495 Detect Program</a></font></td>
496 <td bordercolor="#C0C0C0" align="center"><font size="2" face="verdana">BASIC
497 Atom 28 code</font></td>
498 </tr>
499 <tr>
500 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana"><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/wheeled-tracked/sumo-bot-board-basic-atom-scorpion/WebHome/bbs01.mpg" target="_blank">Sees
501 Left Side Video</a></font></td>
502 <td bordercolor="#C0C0C0" align="center"><font size="2" face="Verdana">Bot
503 sees opponent on Left side and reacts</font></td>
504 </tr>
505 <tr>
506 <td bordercolor="#FFFFFF" align="center" colspan="2"><font size="2" face="verdana">Table
507 </font><font face="Verdana" size="2">8</font><font size="2" face="verdana">-1</font></td>
508 </tr>
509 </tbody></table><font size="2" face="verdana">
510 </font></center><font size="2" face="verdana">
511 </font></div><font size="2" face="verdana">
512 </font></td>
513 </tr>
514 </tbody></table>
515 </body>
516 {{/html}}
Copyright RobotShop 2018