L3 — All Terrain Strugglebot

Members of the Illustrious Group #21: “Dohan Yucht Cheong Saha”

  • Miles Yucht

  • David Dohan

  • Andrew Cheong

  • Shubhro Saha


Short Description

This week we were in a Southern mood in anticipation of Spring Break, so we initially decided to build a LassoBot. This robot throws a lasso in a circle until an object in the lasso’s path is grabbed on to. At that point, LassoBot reels itself closer to the object it caught. Late in development, we realized that making LassoBot hook itself onto stationary was extraordinarily difficult given the weakness of the DC motor. At that point, we switched to building a StruggleBot that constantly rotates a lasso in an effort to move forward in a particular direction. The final product was a great success. The StruggleBot is amusing to watch, as it struggles, and it’s a creative means of locomotion. There were a few initial difficulties while creating our robot.  Our initial plan to create a lasso bot did not work because the DC motors are too weak to reliably pull the robot along (although it did work in some cases).  Additionally, it was difficult to spin up the lasso without it tangling with itself.  Other plans for the “tumble weed” robot fell through because we found that the Arduino is incapable of adequately powering four servo motors simultaneously as required.


Idea Brainstorm

  1. A snake like robot that moves by curling and uncurling

  2. Attach random objects to it and watch it go berzerk

  3. Flying robot that has rotor blade attached underneath

  4. Moves with caterpillar treads made of… banana peels? Newspaper?

  5. Two-wheeled robot, kinda like a segway, but without the balancing complexity

  6. A robotic “hand” that drags itself across the table, as in Toy Story

  7. A robot that throws a lasso rope and rolls the rope to pull itself closer to the hitched destination

  8. A motorboat! Moves across water, obviously

  9. A robot that pulls itself up a table/wall by raveling a spool of rope hanging from a point… like a cliffhanging robot… even attach a person to make it look creative

  10. Slinky robot, that can move up a staircase by throwing a hook onto the next stair

  11. Window-climbing robot… give it suction cups to go up a window

  12. Shufflebot… by design, it rolls 2 steps forward, 1 step back

  13. Tumbleweed bot.  Looks like a hamster wheel, but has servo motors attached around the edges to roll it forward.  Alternatively, have a single servo motor and a counterweight at the center.


Design Sketches

Final Schematic of Strugglebot

Final System Video


List of Parts

1 AC motor

1 330-ohm resistor

1 potentiometer

1 zener diode

1 PN2222 transistor

2 jumpers

1 6-inch length of string

1 inch of wire

1 Arduino UNO

Electrical tape


Assembly Instructions

1. Set up the potentiometer element to control the rate of rotation of the motor. Connect pin 1 with +5V, pin 2 with A0 on the Arduino, and pin 3 to ground.

2. Set up the motor circuit. To pin 3 on the Arduino, connect a 330-ohm resistor, and connect this to the base on the transistor. Connect the emitter to ground. Connect the motor in parallel with a Zener diode, and connect both of these elements in series with the collector.

3. Mount the motor on the bottom of a circuit board using electrical tape, and use two jumpers in the circuit board to elevate the circuit board off of the ground, face down. Make sure the motor is inclined at 45 degrees.

4. Attach a thread to the motor using tape, and to the other end of the thread attach a piece of wire bent into a hook shape.

5. Upload the code, and use the potentiometer to control the rate of rotation.

Final Source Code

int motorPin = 3;
void setup() {
pinMode(motorPin, OUTPUT);
analogWrite(motorPin, 255);
void loop() {}