C.A.E.S.A.R. BOT

From Makers Local 256
Jump to: navigation, search

Creator:
tylercrumpton
Status:
Testing and tweaking (paused)
Born On:
07:31, 22 May 2012 (CDT)
Last Updated:
23:54, 10 June 2013 (CDT)

Overview

The initial version of CAESAR Bot.

C.A.E.S.A.R. stands for "Cute And Edgy Sumo Attack Robot", and is my team's entry into the Mini-Sumo Robot Competition hosted by Auburn University SPaRC. The objective of the competition is to build a small, autonomous robot that is capable of pushing a competing robot out of a sumo ring. The requirements for entry into the competition are as follows:

  • The robot must fully fit inside a 10 cm by 10 cm starting area, but there are no height restrictions.
  • The robot must weigh no more than 0.5 kg.
  • The robot must use up to two of the Solarbotics GM9 motors with the RM2 Motor drop-in replacement for driving the robot.
  • Full rules can be found on the Robotics Society website.

Ideas

Chassis

In design v0.1, the chassis is a long wedge that initially starts off vertically (in order to fit in the starting area), which then falls down at the start of the match. This design gives C.A.E.S.A.R Bot a nice long ramp that can get underneath the opponent's robot’s wheels for easier pushing. It will most likely be built out of lasercut plywood or acrylic, depending on the strength of each material.

Design v0.2 will utilize a truncated pyramid (frustum) casing, where each of the four sides of the robot are inclined. This will allow defensive ramping on all sides, which will help deter attacks from the rear or from the side. There will also be a tall box on top of the casing that will house the ping sensor(s) and electronics. The wheels will be completely enclosed by the casing, so they will be kept out of the reach of the competing robot. The case will most likely be easy to remove, in order to provide access to the batteries, motors, and electronics between rounds.

Enemy Detection

Enemies need to be detected in order to design an effective algorithm to push the other robot out of the ring. Below are some of the sensor possibilities (will probably end up using a combination of both):

Sharp IR Sensor:

  • Benefits:
    • Long line of sight
    • Only one input pin needed
    • Fast measurements
  • Drawbacks:
    • Narrow beam width
    • Not effective against dark colored robots
    • Moderately costly
    • Measurements can be noisy, depending on the environment
  • Cost: $12.95 (one on hand)

Ping Sensor (Ultrasonic Distance Sensor):

  • Benefits:
    • Accurate
    • Wide beam width
    • Only two input pins needed
    • Low cost
  • Drawbacks:
    • Not effective against fuzzy robots
    • Echo problems
  • Cost: $2.39 (not purchased)

Edge Detection

Pololu QTR-1RC Reflectance Sensor:

  • Benefits:
    • Easy-to-use
    • Accurate
    • Quick
  • Drawbacks:
    • Small range
  • Cost: 3 @ $4.14 each (not purchased)

Materials

In v0.1, the C.A.E.S.A.R. Bot chassis is designed to be lasercut out of a single 9"x12" piece of material. The v0.1 testing prototype was made out of 5.2mm plywood, but the design can be easily modified to work with acrylic sheet.

Other materials needed for v0.1 include:

  • (4x) #6 Bolts - 1 1/2"
  • (4x) #6 Flat Washers
  • (4x) #6 Lock Washers

Electronics

In order to control and power the robot, a microcontroller, motor driver, and power source are needed. We are going to try to use parts that are currently on hand:

Microcontroller: Arduino Pro Mini 328 16MHz

  • Cost: $10.38 (purchased)

Motor Driver: L293 Compact Motor Driver

  • Cost: $4.29 (purchased)

Battery: 1300mAh LiPo 7.4v 2S 25C battery

  • Cost: $5.36 (purchased)

Cost Analysis

Listed below are the estimated costs associated with v0.1 of the robot. This does not include the cost of entry into the competition, and the motors are included with the entry fee.

Part Cost Each Qty. Needed Qty. Purchased
Sharp IR Sensor $12.95 1 1
Ping Sensor $2.39 1 0
Pololu QTR-1RC $4.14 3 0
5.2mm Plywood $0.90/sq.ft. 1 1
Arduino Pro Mini $10.38 1 1
L293 Motor Driver $4.29 1 1
1300mAh LiPo $5.36 1 1
Total $48.69

Progress Log

22:49, 30 September 2012 (CDT): I have created and cut out a basic chassis for the robot, and made some modifications to the design to add stability. Basic motor control has been programmed for the Arduino and motor board.

23:33, 1 October 2012 (CDT): Tested and wrote code for the Ultrasonic Distance Sensor. It works surprisingly well, and should be well-suited for enemy detection.

23:33, 24 October 2012 (CDT): Successfully programmed the Arduino Pro Mini with the USB-serial adapter I had gotten a while while back. Was also able to set up a wireless test-link (ping/pong) between the Pro Mini and an Arduino Uno using two NRF24L01+ modules, so that the robot can soon be wirelessly controlled for testing/other purposes.

23:54, 29 October 2012 (CDT): Coded and tested a basic wireless control protocol that is used between a "base station" and the robot. Right now, motor commands can be sent from the base station, and as more sensors are added, the robot will be able to send data back to the base station. Useful data may include sensor values, current state of the internal state machine, decision-making choices, etc.

22:38, 5 November 2012 (CST): Untethered the robot (battery powered, wirelessly controlled), and realized that the current design is not mechanically feasible. Because of it's long shape, with the wheels and motors located in the rear, there is very little weight applied to the wheels to create friction. During testing, the wheels just spun without moving the robot at all. A new design is currently in the works.

12:41, 25 November 2012 (CST): Two new identical 1/16" ABS chassis have been built and assembled, and Arduino code for autonomous control has been posted to the C.A.E.S.A.R. Bot GitHub repo. The bots drive around successfully, but need some motor control tweaking to allow for straight-line driving, and some modification to the chassis for the line sensors to work properly. The ultrasonic sensors work very well, and pick up on enemy robots reliably.

Design Files

TBA