• Document the machine building process to the group page
  • Documented your individual contribution to this project on your own website
  • Linked to the group page from your individual page as well as from group page to your individual pages

robot friends

Brainstorming

robot ideation

robot ideation

robot ideation

robot ideation

Group plan

Introverted Robot AKA Wa(a)ge(n)tje

**Main parts:**

- eyes (Spiral 2)
- wheels / driving components
- structure / base
- body - ESP32 frame (Spiral 2)

**Character traits (Spiral 1):**

- moves away from you (but knows when it's stuck in a corner?)
  - moving into other areas?
- eyes: watches you as you approach / look around (Spiral 3)
  - moves on servos
- eyes: hides when you get too close (Spiral 2)
- LEDs that convey mood (Spiral 2)

**Character traits (Spiral 3):**

- doesn't like sound
- shakes
- snores when being left alone
- wheels: lock when you get too close

**Sensors:**

- distance (microwave / TOF) (Spiral 1)
- sound [Spiral 3]
- light [Spiral 3]

**Output:**

- servos (eyes / top closing) (Spiral 3)
- dc (wheels)
- steppers?
- LEDs (mood) (Spiral 2)

**Communication:**

- I2C
- ESP-now
  - what MCUs are we using?

**Power:**

???

**Other:**

- Sensor input communicated to eyes (3) and wheels
- Moods -- LEDs / shakes (which scenarios)
  - approaching too quickly (orange)
  - stuck in a corner (red)
  - happy (green)

**Bill of Materials:**

- MCUs (what kinds)
- sensors
- Omniwheels
- servos

**Spiral 1:**

- decide on base size
- build base (designed to have the ESP32 body attach to it)
- build wheel system
- test sensors and get them to communicate with environment / wheels
- power (with plan for more power consumption)
- document / take videos
- consider movie ideas
- prep spiral 2 designs

**Spiral 2:**

- create the eyes (servos)
- eye box
- make the ESP32 body
- connected LEDs
- work on making Spiral 1 more efficient / debug
- document / take videos
- movie compiling

Roles:

Irja - wheel and base assembly / body design and compilation / eye lights / video shooter and editor

Patrick - wheel + base + eye design and assembly / sensor holders

Dylan - CNC shield set up / servo set up / eye box assembly / documentation / video storyline

Sam - wheel programming / sensor code / protocol management / multiplexer

eye servo

We begun the week by greeting Patrick. Previously we had had calls to discuss the idea for Machine building week, but there wasn't any solid plan in place.

Here is the brainstorming process that we followed, mapped out in drawings, made by Irja.

To start, Irja and Patrick would focus on the base and wheel assembly.

Sam and Dylan would figure out the sensors and the code required to get the machine to sense what was around it and move accordingly.

As the week progressed, each team member found themselves on a path that was maybe a bit different from what was initially planned.

wheels turn

Dylan worked on assembling the CNC shield. Sam focused on coding the wheel movement and creating a way to incorporate multiple sensor readings. The sensors were originally going to be TOF distance sensors, but ultimately the ultrasonic sensor was more available and more realistic with the time scope of the project.

eyes move

Patrick, who had printed parts in his lab in Belgium, headed the design of the eye mechanism. He designed a 3 servo, rotational to linear eye movement system. From the beginning we had hoped to give the monster, I mean machine, some personality. The eyes were our primary means of doing so.

body of esp

Irja was in charge of designing the body, along with putting together the based of the machine. The body was to be a large scale replication of a XIAO ESP32. The final design incorporated plexi pin pads, laser-cut plywood body outline, metal pin rods out the back, as well as the clip and frame design / assembly.

TOF issues

Sam's role grew to include power management and an even larger pile of coding that previously intended.

Irja designed a circuit for lighting the machine's eyes with neopixels.

Dylan shifted focus to help set up the servos and eye container construction.

Patrick helped everyone with everything, all of the time. It was a solid team effort. And in the end, the sum of all efforts were just enough to get the project over the line!

Problems and solutions

  • There turned out to be too much friction for the motors driving the omniwheels for them to work properly. They still worked as regular wheels. So we proceeded with that functionality.
  • The motors can't drive slow because they need a lot of power to start turning.
  • TOF sensors were difficult to have multiple of. We swapped to ultrasonic.
  • Cables melting from pulling too much current through them (we didn't solve this)

burnt cables

Possible improvements

The eyes:

  • The eyes movements could be programmed to buttons on a remote.
  • A more spacious eye-box / the box for the eyes (eyes not hidden + it does not go up as high as a real USB-C)
  • LED soldering fix: the eye wiring was falling off, we could figure out something more sturdy
  • The gear system of the eyes could also be improved -- something less wobbly

The structure:

  • Being less dependent on glue
  • Structural improvements (ie. suspension -- the machine didn't handle driving over bricks very well)

The wheels:

  • More power / stronger motors
  • Different stepsticks -- the DRV8825 can handle more current
  • The sturdiness of the wheel components as the screws were often falling out

What worked:

  • The eye movement gave the machine personality
  • Sensor reading (even though we did not use that for the video since it was so crowded out there)
  • Remote control movement
  • XIAO-look alike

Design files

Video storyboard

storyboard 1

storyboard 2

storyboard 3

Video

Machine building week

Song credit: "Someday" - The Strokes

extra credit