Sumo Bot Class

Sumo Bot Class

The Santa Barbara Hackerspace  will both be hosting sumo bot classes in November. The class will be three 2 hour sessions and will cover constructing the sumo bot, programming an arduino to control it, and a competition to pit your bots against each other. Classes will be held on Thursday evenings from 6pm to 8pm at the Hackerspace. The sumo bots are very simple with only a handul of parts and just a handful of code to get them moving.

The real challenge of the class will be the software. The bots for the class will all have the exact same hardware, so its up to you to find the best way to navigate the arena and push your opponent out without going outside the arena or being pushed out by your adversary. The bots use a pair of continuous rotation servos for locomotion and a 6 volt battery pack for power. The only sensors are a pair of hall effect sensors under the bots scoop to detedt a magnetic ring under the arena to keep your bots in the circle.

Class size will be limited and a sign up sheet will be posted shortly, so sign up soon and get your spot in the class. Once the form is posted we will have 10 slots available for students. After filling out the form if you’re in the first 10 you will receive an email link to paypal / google wallet. The class will cost $50 dollars and includes an arduino compatible development board, 2 continuous rotation servos, 2 hall effect sensors, 1 3d printed pla chassis, 2 3d printed pla wheels, and a battery pack with 4 AA batteries. Sign up here <will add link soon>

The classes will cover a bit of electronic theory, schematics, programming in arduino (a C++ like language), using 123d.circuits,io to test electronics assembly and programming before  getting to the hardware, and a sumo competition. After the class the Hackerspace will host regular sumo competitions so you can modify your sumo bot and learn more about robotics and programming.

If you are attending the class please bring a laptop wit you, we have only a couple of machines available for use so please bring your own if you can. It can be linux, windows, or mac, just so long as it can run the arduino IDE. We will also be offering the class for $15 for those who do not want to purchase the hardware kit with the class.

Photos of the prototype sumo bot, a bill of materials, and code will all be posted shortly.
UPDATE:
Here are some photos of my working prototype of the Sumo-Bot, video will be posted saturday as well as code.
IMG_20131031_210946

IMG_20131031_210938

IMG_20131031_210916

IMG_20131031_210910

IMG_20131031_210905

IMG_20131031_210858

Yet Another Update:
Had our first sumo bot class at the library and I think it went fairly well. Learned a few things about doing class type presentations and found some wrinkles which we have since ironed out. Looking forward to our thursday class at the space, though the class is currently looking a little thin.

code below, heavily borrowed from http://letsmakerobots.com/node/31830

#include <Servo.h> 
#define LEFTBUTTON 12    // The left bumper
#define RIGHTBUTTON 13  // The right bumper
Servo servor;
Servo servol;

int rval = 0;        // val will be used to store the state of the input pin
int rold_val = 0;    // The previous value of val
int rstate= 0;      // Store the state of our circuit. 0 = off 1 = on
int lval = 0;        // val will be used to store the state of the input pin
int lold_val = 0;    // The previous value of val
int lstate= 0;      // Store the state of our circuit. 0 = off 1 = on
boolean debug=false;
int pos = 0;
int pos1 = 0;


void setup() {
    delay(1000); // Wait one second just in case I've screwed something up
    pinMode(LEFTBUTTON, INPUT);  // Pin 7 will be input
    pinMode(RIGHTBUTTON, INPUT);  // Pin 7 will be input
    servor.attach(11);
    servol.attach(10);
    
    if (debug == true) {   
      Serial.begin(9600);
    }
}

void loop() {
  lval = digitalRead(LEFTBUTTON); // SRead input value and store it
  rval = digitalRead(RIGHTBUTTON); // SRead input value and store it
  
  // Check whether the left input Has transitioned
  if ((lval == HIGH) && (lold_val == LOW)) {
    lstate = 1 - lstate;
    delay(10);
  } 
  
  // Check whether the right input Has transitioned
  if ((rval == HIGH) && (rold_val == LOW)) {
    rstate = 1 - rstate;
    delay(10);
  } 
    
  lold_val = lval; // val is now old so let's store it
  rold_val = rval; // val is now old so let's store it
 
    if (lstate == 1) {
    if (debug == true) {
      Serial.println("Left bumper triggered");
      Serial.print("values are lval ");
      Serial.print(lval);
      Serial.print(" rval ");
      Serial.print(rval);
      Serial.print(" lstate ");
      Serial.print(lstate);
      Serial.print(" rstate ");
      Serial.println(rstate);
    }
    leftbumper(); 
    //lstate = 0;
  }
  
  if (rstate == 1) {
    if (debug == true) {
      Serial.println("Right bumper triggered");
      Serial.print("values are lval ");
      Serial.print(lval);
      Serial.print(" rval ");
      Serial.print(rval);
      Serial.print(" lstate ");
      Serial.print(lstate);
      Serial.print(" rstate ");
      Serial.println(rstate);
    }
    rightbumper(); 
    //rstate = 0; // zero rstate
  }
  int pos = (255);
    int pos1 = (0);
  // If nothing has changed both motors are on and we should be going straight. ish
    servor.write(pos);
    servol.write(pos1);
      lstate = 0; // zero rstate
      rstate = 0; // zero rstate
      
}

void rightbumper() {
    // Turn left
    if (debug == true) {
      Serial.println("Turning left");
    }
    int pos = (255);
    int pos1 = (127.50);
    servor.write(pos);
    servol.write(pos1); 
    delay(750); 
}

void leftbumper() {
    // Turn right
    if (debug == true) {
      Serial.println("Turning right");
    }
    int pos = (50);
    int pos1 = (50);  
    servor.write(pos);
    servol.write(pos1);
    delay(750); 
}

Class Sign Up Form:

Sumo-Bot Class Sign Up Sheet

Sign up sheet for the Santa Barbara Hackerspace Arduino powered Sumo-Bot class. The class has a $50 fee which includes a sumo-bot kit and 3 classes to assemble and program the sumo-bot. Suggested age range is 8 and up, and all children under 18 must be accompanied by a parent or guardian. The Sumo-Bots have a 3D printed chassis and wheels, an arduino uno microcontroller, 2 continuous rotation servos, and 2 hall effect sensors. The kits will require some minor assembly with a screwdriver, some tape, and a hot glue gun. The bots are extremely simple but have a lot of room for customization and upgrades. After the class the Hackerspace will be hosting regular Sumo-Bot competitions open to everyone.
* Required
    This is a required question
    This is a required question
    This is a required question
    This is a required question
    This is a required question
    Never submit passwords through Google Forms.
Santa Barbara Hackerspace
About The Author

There are no comments yet, but you can be the first



Comments are closed.

What is the Hackerspace?

We are a group of makers and developers in the Santa Barbara community who love building things. The Hackerspace has a Makerbot printer, piles of Arduinos, and much, much more. Learn More →
Become a Member

Membership Levels
Location

5782 Thornwood Dr
Goleta CA 93117

Contact Us

Current Status

Current status of the Hackerspace: "awesome".
Twitter Feed

Find out what's happening, right now, with the people and organizations you care about.


Bad Authentication data.
Copyright 2012 Builder - Company. Design by OrangeIdea