3D-printable Arduino Pet Robot

by ilia_o in Circuits > Arduino

1985 Views, 32 Favorites, 0 Comments

3D-printable Arduino Pet Robot

large0.jpg
large (1).jpg
large (2).jpg
large (3).jpg
large (4).jpg
large (5).jpg
PXL_20230916_012313227.jpg

Snoopy was designed in Fusion 360 and printed using a Voron 2.4r2 350mm and a Prusa MK3S. It has an ESP32 micro-controller, Arduino firmware, two motors with a caster, a laser scanner sensor (and in a next revision a Raspberry Pi Pico with servos). It has an old smartphone or 7" tablet as display, microphone, audio and IMU.

Once finished, it will act as a pet - play ball, hide-and-seek, chase, demand its owners' attention and greet its owners happily at the door. Utilitary functions will include patrolling the house. Here is a preview of Snoopy playing ball in a simulation.

Snoopy runs on kaia.ai software platform developed at remake.ai.

Please note:

If you are reasonably pleased with this design, please leave a like to help others discover this contribution!

Happy 3D printing!

Supplies

You will need

  • a 3D printed with a 310x310mm minimum print dimensions
  • around 1Kg of PETG or PLA filament
  • a soldering iron
  • a 2-3 year old smartphone as display/microphone/sound/IMU
  • a local Windows or Linux PC for processing
  • BoM parts (up-to-date description is here)
  • 1x ESP32 ESP-WROOM-32
  • 1x voltage regulator 24V-to-USB module, see here
  • 1x laser scanner, see here
  • 2x motors, see here
  • 4x resistors, see here
  • 4x connectors, see here
  • 2x tire and hex shaft adaptor, see here
  • 1x 24V battery
  • 1x breadboard

3D Print Parts

PXL_20230530_021024946-scaled.jpg
PXL_20230529_041408418.jpg

Download and 3D-print 3MF or STL files. See this post for most up-to-date links to files.

Assemble the 3D Printed Parts

378548109_10161187913503817_5127163645380091040_n.jpg
PXL_20230530_031143988-scaled.jpg
PXL_20230609_174802983-scaled.jpg
PXL_20230916_012313227.jpg
screenshot2.jpg

Assemble the 3D printed parts, motors. Use Fusion 360 design files to see how things fit together (links here).

Assemble the Electronics

PXL_20230916_012313227.jpg

Follow the schematic (link here) to connect the electronics. Connect the two motors and the laser scanner to the ESP32. Connect the battery to the voltage regulator input and to the motors power. Connect the voltage regulator USB output to the ESP32 and the laser scanner.

Set Up Your PC

Follow instructions here to set up your PC and install Docker.

Upload Firmware

Download the ESP32 firmware (link in this post). Use Arduino IDE to compile and upload the firmware to your ESP32.

Bring Up Your Robot

esp32-wifi-manager.png

Follow instructions here and here to

  • launch the Kaia.ai software Docker image
  • power up your robot's ESP32
  • connect your ESP32 to your home WiFi network using a browser.

Drive Robot Manually

snoopy_sim_ball.jpg

Follow these instructions to open another shell window and connect to your running Docker image. Follow this tutorial to drive your robot around manually - but skip launching the Gazebo ROS2 simulator.

Create a Map of Your Room

snoopy-mapping-gazebo.jpg

Follow this tutorial to create a map of your room - except, don't run the Gazebo simulator and drive your robot around the room manually. Once the map is created, have your robot self-drive anywhere you want.