Parallax Boe-Bot Assembly

Mini-sumo robotics assembly documentation and programming
Hide thumbs Also See for Boe-Bot:

Advertisement

Quick Links

SumoBot
– Mini-Sumo Robotics
®
Assembly Documentation and Programming
VERSION 2.1

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the Boe-Bot and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Summary of Contents for Parallax Boe-Bot

  • Page 1 SumoBot – Mini-Sumo Robotics ® Assembly Documentation and Programming VERSION 2.1...
  • Page 2 HomeWork Board, Parallax, the Parallax logo, are trademarks of Parallax Inc. If you decide to use trademarks of Parallax Inc. on your web page or in printed material, you must state that "(trademark) is a trademark of Parallax Inc.”, “upon the first appearance of the trademark name in each printed document or web page.
  • Page 3 INTERNET DISCUSSION LISTS We maintain active web-based discussion forums for people interested in Parallax products. These lists are accessible from www.parallax.com via the Support → Discussion Forums menu. These are the forums that we operate from our web site: •...
  • Page 5: Table Of Contents

    Table of Contents · Page v Table of Contents Preface ......................vii Recognitions ....................vii Audience....................viii Educational Concepts from the SumoBot ..........viii Copyright and Reproduction ...............ix Chapter 1: Assemble the SumoBot ............. 1 Let’s Build the SumoBot ................2 Tools Required .................... 2 About the Parts in the SumoBot Kit .............
  • Page 6 Page vi · SumoBot – Mini Sumo Robotics Appendix B: Standard Mini-Sumo Competition Rules ......55 Appendix C: Mini-Sumo Ring ..............65 Appendix D: SumoBot PCB Schematic ............ 67...
  • Page 7: Preface

    Many Mini-Sumo designs – especially the dual-wheel-and-scoop concept – can be traced back to Bill Harrison's early efforts to promote Mini-Sumo robotics competition. Parallax also recognizes Bill Boyer of the Dallas Personal Robotics Group for his version of the dual-wheel-and-scoop design that was refined and developed into the Parallax...
  • Page 8: Audience

    EDUCATIONAL CONCEPTS FROM THE SUMOBOT Educators frequently ask us at Parallax what can be learned from our different texts and application notes. The SumoBot is considered an intermediate robotic project and generally will instruct the following concepts: •...
  • Page 9 Preface · Page ix...
  • Page 11: Chapter 1: Assemble The Sumobot

    SumoBot. The SumoBot is a purpose-built rolling robot, much like its general-purpose cousin the Parallax Boe-Bot. While they share the same differential drive mechanism and the use of sensors, the SumoBot design meets the specific criteria defined by Mini-Sumo competition rules: •...
  • Page 12: Let's Build The Sumobot

    SumoBot robot’s control logic. TOOLS REQUIRED A Parallax screwdriver is included in your kit. You may find a pair of needle-nose pliers and a wire stripper to be useful (not included). ABOUT PARTS IN THE SUMOBOT KIT Appendix A includes a parts listing for the SumoBot robot kit.
  • Page 13 4/40 3/8” flat-head screws and nuts. The screws will be countersunk into the battery pack when tightened and should be out of the way of the batteries. Step #2 Install the Servo Motors Parts Required: • (2) Parallax Continuous Rotation Servos • (8) 4/40 3/8" long pan-head machine screws •...
  • Page 14 Page 4 · SumoBot – Mini Sumo Robotics Step #3 Install the Rear SumoBot PCB Stand-offs Parts Required: • (2) 5/8" round standoffs • (2) 4/40 3/8" long pan- head machine screws • SumoBot chassis Using a 4/40 3/8" pan-head machine screw, attach each stand-off to the rear of the SumoBot chassis.
  • Page 15 Chapter 1: Assemble the SumoBot · Page 5 Step #5 Mounting the PCB Parts Required: • SumoBot PCB • (2) 4/40 3/8" long pan-head machine screws • (2) 1-1/4" round stand-offs • (2) Nylon washers • SumoBot chassis Nylon Washer Feed the ends of the 1"...
  • Page 16 Page 6 · SumoBot – Mini Sumo Robotics Step #7 Mount the Wheels Parts Required: • (2) Prepared wheels/tires • (2) Black servo-horn screws • SumoBot chassis Carefully press each prepared wheel onto the servo splines. Secure each wheel with the small black Phillips head screw.
  • Page 17 Chapter 1: Assemble the SumoBot · Page 7 Step #9 Install Line Sensor Wires Parts Required: • 10" 3-pin extension cables • SumoBot chassis Carefully feed each 10" 3-pin extension cable through the center chassis slot. Step #10 Install the QTI Line Sensors Parts Required: •...
  • Page 18 Page 8 · SumoBot – Mini Sumo Robotics Step #11 Make the Connections Plug the servo motors and QTI sensors into the SumoBot PCB connectors as indicated below. Note that the "B" pin on each connector is for the black wire. X7 = Left Servo Motor X6 = Right Servo Motor X5 = Left QTI Line Sensor...
  • Page 19 Chapter 1: Assemble the SumoBot · Page 9 Step #12 Powering the SumoBot The SumoBot PCB has a three-position power switch. The state of each position is shown below. The three-position switch has a middle position that powers the entire circuit except the servos.
  • Page 21: Chapter 2: Sumobot Locomotion

    DC motor inside the servo knows where to turn to in response to a pulse train. SumoBot motion is controlled using two pre-modified Parallax Continuous Rotation servo motors using a process called differential drive. The modification "tricks" the feedback circuitry so that the servo will stop only when it receives a centering command;...
  • Page 22 Page 12 · SumoBot – Mini Sumo Robotics Figure 2.1: Milliseconds and Microseconds Details × 1000 µ × 1,000,000 A voltage level is measured in volts, which is abbreviated with an upper case V. The SumoBot PCB has sockets labeled Vss, Vdd, and Vin. Vss is called the system ground or reference voltage.
  • Page 23 Chapter 2: SumoBot Locomotion · Page 13 programmed to produce this waveform using any of its I/O pins. In this example, the BASIC Stamp sends a 1500 µs pulse to P13 (left servo) and P12 (right servo). When the pulse is done being executed the signal pin is low. Then, the BASIC Stamp creates a 20 ms pause.
  • Page 24 Load the following program that will be used to align the SumoBot motors. The Parallax BASIC Stamp Manual 2.x includes a “Quick Start” section that details how to open and launch the BASIC Stamp Windows Editor. Source code for this text is available in a zipped file for download from www.parallax.com.
  • Page 25 Chapter 2: SumoBot Locomotion · Page 15 ' SumoBot_2.1_Motor_Align.BS2 ' {$STAMP BS2} ' {$PBASIC 2.5} ' -----[ I/O Definitions ]------------------------------------------------- LMotor ' left servo motor RMotor ' right servo motor ' -----[ Constants ]------------------------------------------------------- LStop ' left motor stop RStop ' right motor stop ' -----[ Initialization ]-------------------------------------------------- Reset:...
  • Page 26: Sumobot Motion Test

    Page 16 · SumoBot – Mini Sumo Robotics Figure 2.5: SumoBot Servo Adjustment Ports Don't worry, for the moment, how the program works; that will become clear in the next section. SUMOBOT MOTION TEST With the motors aligned, it is time to test the SumoBot for essential motion control. Load the following program into the BASIC Stamp Editor, and then download it to the SumoBot: ' SumoBot_2.2_Motor_Test.BS2...
  • Page 27 Chapter 2: SumoBot Locomotion · Page 17 LRevFast ' left motor rev; fast RFwdFast ' right motor fwd; fast RFwdSlow ' right motor fwd; slow RStop ' right motor stop RRevSlow ' right motor rev; slow RRevFast 1000 ' right motor rev; fast ' -----[ Variables ]------------------------------------------------------- pulses Byte...
  • Page 28 Page 18 · SumoBot – Mini Sumo Robotics FOR pulses = 1 TO 55 ' spin turn - clockwise PULSOUT LMotor, LFwdFast PULSOUT RMotor, RRevFast PAUSE 20 NEXT Hold_Position: PULSOUT LMotor, LStop PULSOUT RMotor, RStop PAUSE 20 LOOP As soon as the program is downloaded, remove the programming cable from the SumoBot.
  • Page 29 Chapter 2: SumoBot Locomotion · Page 19 The core of the program, at the label Main , is broken down into several sections: • Move forward slowly • Pivot turn 90 degrees on left wheel • Move forward quickly • Pivot turn 180 degrees on right wheel •...
  • Page 30 Page 20 · SumoBot – Mini Sumo Robotics Figure 2.6: BASIC Stamp Editor with SumoBot_ 2.2_Motor_Test.BS2 Note: The figure above shows the edit window set to split-pane mode so that two sections of the program may be viewed simultaneously.
  • Page 31: Challenge Yourself

    Chapter 2: SumoBot Locomotion · Page 21 CHALLENGE YOURSELF Modify the motor speed constants so that your SumoBot travels straight at low and high speeds. Determine the proper loop count to cause the SumoBot to turn 30 degrees, 45 degrees and 90 degrees. Using the information in # 2 above, see if you can program the SumoBot to travel in the following patterns: Square...
  • Page 33: Chapter 3: Sumobot Sensors And Border Detection

    SumoBot to "look" for the ring's border. LINE SENSOR THEORY The Parallax QTI uses a QRD1114 infrared (IR) reflective sensor to determine the reflectivity of the surface below it. When the SumoBot is over the black playing field or start lines (Shikiri), the reflectivity is very low; when the QTI is over the white border (Tawara), the reflectivity is very high and will cause a different reading from the sensor.
  • Page 34 Page 24 · SumoBot – Mini Sumo Robotics After the QTI is activated, the capacitor is discharged by bringing the R line high and holding it for about one millisecond. RCTIME is then used to measure the time required to charge the capacitor to a specified level. This timing will be controlled by the current flow through the phototransistor side of the QRD1114.
  • Page 35 Chapter 3: SumoBot Sensors and Border Detection · Page 25 Read_Left: HIGH LLinePwr ' activate sensor HIGH LLineIn ' discharge QTI cap PAUSE 1 RCTIME LLineIn, 1, lLine ' read sensor value LOW LLinePwr ' deactivate sensor RETURN Read_Right: HIGH RLinePwr ' activate sensor HIGH RLineIn ' discharge QTI cap...
  • Page 36 Page 26 · SumoBot – Mini Sumo Robotics Figure 3.2: QTI Test Program Output Don't worry about small discrepancies between the QTI values over the same color – this is due to minor variations in components and won't adversely affect the SumoBot robot’s performance.
  • Page 37 Chapter 3: SumoBot Sensors and Border Detection · Page 27 lbLeft lineBits.BIT1 lbRight lineBits.BIT0 ' -----[ Program Code ]---------------------------------------------------- Main: GOSUB Read_Line_Sensors DEBUG HOME, "LR", CR, ' show sensor readings BIN2 lineBits, CR, CR SELECT lineBits ' display actions CASE %00 DEBUG "Continue forward", CLREOL CASE %01 DEBUG "Spin Left", CLREOL...
  • Page 38 Page 28 · SumoBot – Mini Sumo Robotics The technique for converting the raw sensor reading to a bit value takes advantage of the {optional} comparison parameter with the LOOKDOWN function. Without the comparison parameter, LOOKDOWN uses equality to scan its table for a value match. By using the comparison parameter, we can test a range of values with a single table entry.
  • Page 39: Our First Operational Sumo Program

    Chapter 3: SumoBot Sensors and Border Detection · Page 29 The movement logic is controlled by SELECT-CASE . The purpose of SELECT-CASE is to replace several IF-THEN commands that would examine the same control variable. So, the following code structure: SELECT lineBits ' display actions CASE %00...
  • Page 40 Page 30 · SumoBot – Mini Sumo Robotics Figure 3.4: Start LED Connections on the SumoBot PCB ' SumoBot_3.3_Simple_Mini_Sumo.BS2 ' {$STAMP BS2} ' {$PBASIC 2.5} ' -----[ I/O Definitions ]------------------------------------------------- LMotor ' left servo motor RMotor ' right servo motor LLinePwr ' left line sensor power LLineIn...
  • Page 41 Chapter 3: SumoBot Sensors and Border Detection · Page 31 RStop ' right motor stop RRevSlow ' right motor rev; slow RRevFast 1000 ' right motor rev; fast ' -----[ Variables ]------------------------------------------------------- lLine Word ' left sensor raw reading rLine Word ' right sensor raw reading lineBits...
  • Page 42 Page 32 · SumoBot – Mini Sumo Robotics GOTO Main Spin_Right: FOR pulses = 1 TO 20 PULSOUT LMotor, LFwdFast PULSOUT RMotor, RRevFast PAUSE 20 NEXT GOTO Main About_Face: FOR pulses = 1 TO 10 ' back up from edge PULSOUT LMotor, LRevFast PULSOUT RMotor, RRevFast PAUSE 20...
  • Page 43 Chapter 3: SumoBot Sensors and Border Detection · Page 33 useful for controlling the SumoBot in a competition without fumbling for the actual power switch. The code at Reset reads a byte from the BASIC Stamp's EEPROM; located at the address called RunStatus .
  • Page 44: Challenge Yourself

    Page 34 · SumoBot – Mini Sumo Robotics CHALLENGE YOURSELF 1. Experiment with the Spin_Left and Spin_Right routines so that the SumoBot generally moves toward the center after touching the border.
  • Page 45: Chapter 4: Infrared Object Detection

    Chapter 4: Infrared Object Detection · Page 35 Chapter 4: Infrared Object Detection Today's hottest products seem to have one thing in common: wireless communication. Personal organizers beam data into desktop computers, and wireless remotes let us channel surf. With a few inexpensive and widely available parts, the BASIC Stamp can also use an infrared LED and detector to detect objects to the front and side of your SumoBot.
  • Page 46: The Freqout Trick

    Page 36 · SumoBot – Mini Sumo Robotics The IR detectors have built-in optical filters that allow very little light except the 980 nm infrared that we want to detect onto its internal photodiode sensor. The infrared detector also has an electronic filter that only allows signals around 38.5 kHz to pass through. In other words, the detector is only looking for infrared flashed on and off at 38,500 times per second.
  • Page 47: Installing And Testing The Ir Emitters/Detectors

    Chapter 4: Infrared Object Detection · Page 37 INSTALLING AND TESTING THE IR EMITTERS/DETECTORS The SumoBot is specially designed to accommodate two IR emitter/detector pairs. Before we install them, we need to assemble the IR LEDs into their shells, then bend and trim the leads so that they don't become damaged or misaligned during competition.
  • Page 48 IR emitters and your SumoBot will be ready. When aligning the IR emitter "headlights" it's a good idea to angle them slightly outward to give the SumoBot a wider field of vision. Figure 4.3: SumoBot IR Object Detection Circuitry Spare IR LEDs and detectors can be ordered Parallax at www.parallax.com...
  • Page 49: Testing The Ir Pairs

    Chapter 4: Infrared Object Detection · Page 39 Figure 4.4: SumoBot IR Object Detection Components Installed TESTING THE IR PAIRS The key to making each IR pair work is to send one millisecond of unfiltered 38.5 kHz FREQOUT harmonic followed immediately by testing the signal sent by the IR detector and saving its output value.
  • Page 50 Page 40 · SumoBot – Mini Sumo Robotics ' -----[ Variables ]------------------------------------------------------- irBits ' storage for IR target data irLeft irBits.BIT1 irRight irBits.BIT0 ' -----[ Program Code ]---------------------------------------------------- Main: FREQOUT LfIrOut, 1, 38500 ' modulate left IR LED irLeft = ~LfIrIn ' read input (1 = target) FREQOUT RtIrOut, 1, 38500 ' modulate right IR LED...
  • Page 51: Sumobot Motion Control

    Chapter 4: Infrared Object Detection · Page 41 SUMOBOT MOTION CONTROL The next task is to link the SumoBot robot’s ability to "see" with the motors so that an object – the opponent – can be tracked. Load and run program 4.2 to see a demonstration of linking IR object control to the SumoBot motors.
  • Page 52 Page 42 · SumoBot – Mini Sumo Robotics Main: GOSUB Read_IR_Sensors BRANCH irBits, [Scan, Follow_Right, Follow_Left, Hold] Scan: BRANCH lastIR, [Move_Fwd, Scan_Right, Scan_Left, Move_Fwd] Move_Fwd: DEBUG HOME, "Forward", CLREOL GOTO Main Scan_Right: ' spin right, slow DEBUG HOME, "Scan Right", CLREOL PULSOUT LMotor, LFwdSlow PULSOUT RMotor, RRevSlow PAUSE 20...
  • Page 53 Chapter 4: Infrared Object Detection · Page 43 ' -----[ Subroutines ]----------------------------------------------------- Read_IR_Sensors: FREQOUT LfIrOut, 1, 38500 ' modulate left IR LED irLeft = ~LfIrIn ' read input (1 = target) FREQOUT RtIrOut, 1, 38500 ' modulate right IR LED irRight = ~RtIrIn ' read input (1 = target) RETURN...
  • Page 55: Chapter 5: Basic Competition Code

    Chapter 5: Basic Competition Code · Page 45 Chapter 5: Basic Competition Code Okay, it's time to get ready for competition. The program in this chapter brings all the SumoBot robot's systems together, and adds some intelligent control. Start by adding a piezo speaker as shown in Figures 5.1 and 5.2, then load and run program 5.1.
  • Page 56 Page 46 · SumoBot – Mini Sumo Robotics ' SumoBot_5.1_Basic_Competition_Program.BS2 ' {$STAMP BS2} ' {$PBASIC 2.5} ' -----[ I/O Definitions ]------------------------------------------------- LMotor ' left servo motor RMotor ' right servo motor LLinePwr ' left line sensor power LLineIn ' left line sensor input RLinePwr ' right line sensor power RLineIn...
  • Page 57 Chapter 5: Basic Competition Code · Page 47 temp Byte ' -----[ EEPROM Data ]----------------------------------------------------- RunStatus DATA ' run status ' -----[ Initialization ]-------------------------------------------------- Reset: READ RunStatus, temp ' read current status temp = ~temp ' invert status WRITE RunStatus, temp ' save for next reset IF (temp >...
  • Page 58 Page 48 · SumoBot – Mini Sumo Robotics NEXT lastIr = %00 ' clear scan direction GOTO Lunge Spin_Right: ' left sensor was active FOR pulses = 1 TO 20 PULSOUT LMotor, LFwdFast PULSOUT RMotor, RRevFast PAUSE 20 NEXT lastIr = %00 GOTO Lunge About_Face: ' both sensors on Shikiri...
  • Page 59 Chapter 5: Basic Competition Code · Page 49 GOTO Main Scan_Left: ' spin left, slow FOR pulses = 1 TO 5 PULSOUT LMotor, LRevSlow PULSOUT RMotor, RFwdSlow PAUSE 20 NEXT GOSUB Creep_Forward GOTO Main Follow_Right: ' spin right, fast PULSOUT LMotor, LFwdFast PULSOUT RMotor, RRevSlow lastIR = irBits ' save last direction found...
  • Page 60 Page 50 · SumoBot – Mini Sumo Robotics DIRS = $0000 ' disable all outputs GOTO Reset ' reset for next round ' -----[ Subroutines ]----------------------------------------------------- Read_Line_Sensors: HIGH LLinePwr ' activate sensors HIGH RLinePwr HIGH LLineIn ' discharge caps HIGH RLineIn PAUSE 1 RCTIME LLineIn, 1, lLine ' read left sensor...
  • Page 61 Chapter 5: Basic Competition Code · Page 51 The Start_Delay section serves the same purpose as described previously, it's just a bit fancier in this version of the program. In this case we've added a piezo speaker. At the start, the LED illuminates and then blinks to tick away each of the five seconds in the mandated delay.
  • Page 62: Final Competition Notes

    Page 52 · SumoBot – Mini Sumo Robotics into edge-avoidance and search mode. In this case the Judge will award the Yuko point and the SumoBot can be stopped by pressing the Reset button. FINAL COMPETITION NOTES The SumoBot – like any robot – will perform best with fresh batteries. The first sign of weak batteries will be degradation in opponent detection range.
  • Page 63: Appendix A: Sumobot Parts List

    Appendix A: SumoBot Parts List · Page 53 Appendix A: SumoBot Parts List All parts used in the SumoBot kit are available individually from the Parallax Component Shop . If you can’t readily find the component you are looking for in the Component Shop enter the name of it in the on-line search box using the stock code.
  • Page 64 Page 54 · SumoBot – Mini Sumo Robotics 700-00015 Nylon washer Miscellaneous 122-27400 SumoBot Manual 800-00003 Serial (programming) cable 27000 Parallax CD 700-00064 Parallax Screwdriver...
  • Page 65 Appendix B: Standard Mini-Sumo Competition · Page 55 Appendix B: Standard Mini-Sumo Competition Rules Reprinted with permission from Bill Harrison, Sine Robotics. Section 1: Definition of a Match Article 1 Definition The match shall be contested by two teams (At the event, one team consists of one robot with two team members, one of which is a leader.
  • Page 66 Page 56 · SumoBot – Mini Sumo Robotics of IR light), 1 cm wide and 10cm long. 3. The Ring shall be marked by a white circular line of 2.5 cm thickness. The Ring is within the outside of this circular line. Article 4 Space There should be the space of more than 50 cm wide outside the outer side of the...
  • Page 67 Appendix B: Standard Mini-Sumo Competition · Page 57 Futaba's, JR's, Sanwa's, or Kondo Kagaku's. 5. For stand-alone robots, any control mechanisms can be employed. 6. Stand-alone models must be so designed that a robot starts operating a minimum of five seconds after a start switch is pressed (or any method that invokes the operation of a robot).
  • Page 68 Page 58 · SumoBot – Mini Sumo Robotics extended by the Judges. 2. The team who wins two rounds or receives two "Yuko" points first, within the time limit, shall win the match. A team receives a Yuko point when they win a round.
  • Page 69 Appendix B: Standard Mini-Sumo Competition · Page 59 Article 10 End of Match The match ends when the judge calls the winner. Both contestants bow after removing their robots. Section 6: Time of Match Article 11 Time of Match One Match will be contested for a total of 3 minutes, starting and ending by the chief judge's announcements.
  • Page 70 Page 60 · SumoBot – Mini Sumo Robotics 2.1. Your opponent's robot has touched the space outside the Ring, on its own. 2.2. Either of the above takes place at the same time that the End of the Match is announced. 3.
  • Page 71 Appendix B: Standard Mini-Sumo Competition · Page 61 Article 16 The player utters insulting words to the opponent or to the judges or puts voice devices in a robot to utter insulting words or writes insulting words on the body of a robot, or any insulting action.
  • Page 72 Page 62 · SumoBot – Mini Sumo Robotics Section 10: Injuries and Accidents during the Match Article 21 Request to Stop the Match A player can request to stop the game when he/she is injured or his/her robot had an accident and the game cannot continue. Article 22 Unable to Continue the Match When the game cannot continue due to player's injury or robot's accident, the...
  • Page 73 Appendix B: Standard Mini-Sumo Competition · Page 63 Section 12: Requirements for Identifications for Robots Article 27 Identifications for Robots Some type of name or number, to identify the robot (as registered in the contest) must be easily readable on the robot's body, while the robot is in competition. Section 13: Miscellaneous Article 28 Flexibility of Rules...
  • Page 75 Appendix C: Mini-Sumo Ring · Page 65 Appendix C: Mini-Sumo Ring If you're handy with tools, you can build your own Mini-Sumo ring. Many home improvement centers carry precut circles (wood, MDF, Melamine) that are very close to the official dimension and can be used to create a suitable practice ring. Mini-Sumo Ring Specifications: •...
  • Page 77 Appendix D: SumoBot PCB Schematic · Page 67 Appendix D: SumoBot PCB Schematic...
  • Page 78 Mouser Electronics Authorized Distributor Click to View Pricing, Inventory, Delivery & Lifecycle Information: Parallax 27400 27402 122-27400...

This manual is also suitable for:

QuadcrawlerToddlerSumobotHexcrawler

Table of Contents