Sprint 3

Summary

In this sprint our goal was to achieve our MVP by integrating all of our learning from Sprint 2. We did it!

We addressed a number of project challenges in this sprint:

  • Smooth walking motion with non-traditional leg arrangement
  • Strength of magnets versus the weight of the robot
  • Developing a clear plan for interesting sensing system: accelerometer
Sketch Model Bot
Our robot walking!

Progress

Mechanical Leg Design

  • Stronger servos
  • Stronger magnets
  • More friction grips on the bottom of the feet
  • Longer sliders for longer strides
  • Constant force springs
CAD of slider mechanism CAD of the slider mechanism
CAD of the foot mechanism Top of the prototype magnetic foot, rotating 180 degrees with the servos causes the fields to cancel internally

Robot Movement

  • Tested 3 different modes of walking, determined the speediest involves lifting with only two legs at once
  • Determined mathematically that the maximum turn in one step is 36 degrees and adjusted code accordingly
  • Added capability to turn to any angle based off accelerometer readings
CAD of the foot mechanism Whiteboard math to determine the maximum turn in one step
CAD of slider mechanism Graph of the accelerometer angle versus acceleration in the y direction

User Control

  • Prototyped wired control
  • User can control robot walking and turning through elementary text-based interface in Arduino IDE
  • System where user can only input about once every ten seconds is very clunky

Non-rotational Unconstrained two-axis Motion

  • Developing motion model to calculate optimal leg placement for movement in any direction
  • Pygame visual
  • Janky collision detection created
  • Only a few directions functional due to lack of slider restrictions in program
Collision detection program visual Pygame visual

Computer Vision (OpenCV)

This was not included in the final bot for the sake of time, but it was a valuable part of our learning process.

  • Added capability to capture on laptop
  • Isolating based on color in the image
  • Drawing on videos in real time - can use for troubleshooting and a fun visual
  • Experimenting with tracking objects (such as hands)
Collision detection program visual Pygame visual