You are on page 1of 18

instructables

Robot Cat

by

This instructables show somethings about building a 8.4 v Lipo Charger:


robot cat. https://www.aliexpress.com/wholesale?SearchText=8....

Supplies: DC regulator for System:


https://www.aliexpress.com/item/4000016331112.htm
M5Stack PSRAM Camera Module:
l
https://m5stack.com/products/esp-32-camera-psram

Adafruit 16-Channel 12-bit PWM/Servo Driver:


https://www.adafruit.com/product/815
DC regulator for Servo:
https://www.aliexpress.com/item/32912982626.html
13 of EMAX ES08MA II Servo:
https://emaxmodel.com/es08ma-ii.html
Grove to 4 pin Female Jumper Conversion Cable:
https://www.seeedstudio.com/Grove-4-pin-Female-
8.4 v Lipo: https://www.aliexpress.com/wholesale?
Jum...
SearchText=8...

https://youtu.be/GxLuHmEjDJo

Step 1: Why Build My Own Robot Cat?

Robot Cat: Page 1


I am playing with the well known Strandbeest many Ref.:
years ago and really love the arti cial life. And then I
tried Trotbot, but sorry about not yet built Wadevag https://en.wikipedia.org/wiki/Theo_Jansen#The_str...
suggested Strider :P
https://www.strandbeest.com
Two years ago, I start saw many robot cats and dogs
projects on the web. They works, walk well and can do https://www.instructables.com/id/Design-Robot-
some pose. The only shortcoming is it does not look Legs...
like a cat or dog.
https://www.instructables.com/id/Lego-Trotbot/
So I try to build my own robot cat. The main target are
look like a cat, act like a cat. https://www.diywalkers.com/strider-linkage-plans.h...

Step 2: Bionics

Robot Cat: Page 2


In order to build a robot look like a cat, we need rst it actually combined by tens of joints and muscles. In
study the cat skeleton. rst phase, I would like concentrate on the 4 legs
movement rst. For simplicity, I just use 2 servos for
Cat is a digitigrade, that means they stands or walks turning and nodding the head and 1 servo to make
on its digits, or toes. So cat have noticeable 3 joints for some simple tail turning. Cat tail normally point to the
the back legs while human(Plantigrade) only have 2 ground, but I found a long tail pointing up make it
joints. For the cat front legs, the metacarpals is look vitality, so it always tail up.
relatively too short. So it is noticeable 2 joints for the
front legs. So the robot cat have 2 joints on the front Ref.:
legs and 3 joints on back legs, i.e. 10 servos. (most
other robot cats and dogs only have 2 joints for the https://en.wikipedia.org/wiki/Bionics
back legs)
https://en.wikipedia.org/wiki/Cat_anatomy
Head and neck should have many moving parts,
turning, nodding and also ears, eyes and month https://en.wikipedia.org/wiki/Digitigrade
motions; Tail motion is actual most di cult to imitate,

Robot Cat: Page 3


Robot Cat: Page 4
Step 3: 3D Printing

The robot cat 3D print prototype is already at the third iteration and may be more iteration later on.

Please download and print all the parts at thingiverse: https://www.thingiverse.com/thing:4164643

Step 4: Servo Driver Board

The rst phase of robot cat reduced many moving generate servo signal is much better.
parts, but it still requires 13 servos. In my previous
experience, direct driver servos with MCU GPIO is not PCA9685 driver board is a common solution, MCU
a good choice. The frequency signal may vary while simply use I2C interface communicate with the driver
MCU doing another job at the same time and the board and it can control 16 servos at the same time
servo may become unstable or introduce unexpected continuously.
behavior. Dedicate an individual driver board

Robot Cat: Page 5


Step 5: Robot Brain

Various MCU able to control a servo robot, here are some preference when I choose among them:

built-in vision sensor for future development


small enough to t in the robot cat head
wireless connective
I2C interface to communicate with servo driver board

I have a M5Stack Camera Module in hand and it can ful ll all the above requirements.

Step 6: Measure & Adjust DC Regulators

Robot Cat: Page 6


Like most dev device, M5Stack Camera Module brain and servos.
operate in 5 V.
The output voltage of both DC regulators in hand are
Most tiny servo operate in 5-6 V and each servo adjustable, s t icky re m e m be r a djus t t he o ut put
normal operate can draw 200 mA and more, operate v o lt a g e t o 5V a nd 6 V respectively before using it
13 servos at the same time are over 2.6 A. In order to or the components may be burn out.
avoid the robot brain a ected by power shortage, it is
better dedicate an individual DC regulator for the

Step 7: Servo Tester

In my experience, servo is very easy to damage. It is better buy few more spares in same order. Before using it, you
can use a servo tester to check it can works normal: https://www.instructables.com/id/Servo-Tester-2/

https://youtu.be/bTzfYoeTDcU

https://youtu.be/pJeJMNt-r1Y

Step 8: FSBrowserPlus

ESP32 have a bundled example called FSBrowser. It is a simple web server that host the web source les copied to
SPIFFS, it have a simple web editor for amend the source over WiFi and also it have a simple API to read the GPIO
values.

I have enhanced this example to FSBrowserPlus:

Added PCA9685 Servo Board API


Robot Cat: Page 7
Added a WebSocket server
Added Robot Cat Pose Design web page

https://github.com/moononournation/FSBrowserPlus

Step 9: Program

A r d ui n o I D E
Download and install Arduino IDE if you are not yet do it:

https://www.arduino.cc/en/main/software

ES P 3 2 S up p o r t
Follow the Installation Instructions to add ESP32 support if you re not yet do it:

https://github.com/espressif/arduino-esp32

FS B r o w s e r P l us
Download FSBrowserPlus: (press "Clone or Download" -> "Download ZIP")

https://github.com/moononournation/FSBrowserPlus

A r d ui n o W e b S o c k e t s Li b r a r y
Download latest arduinoWebSockets libraries: (press "Clone or Download" -> "Download ZIP")

https://github.com/Links2004/arduinoWebSockets

Import libraries in Arduino IDE. (Arduino IDE "Sketch" Menu -> "Include Library" -> "Add .ZIP Library" -> select
downloaded ZIP le)

C o mp i l e & Up l o a d
1. Connect the M5Stack Camera Module with USB cable
2. Open Arduino IDE
Robot Cat: Page 8
3. Open FSBrowserPlus
4. Edit the ssid and password to your own WiFi AP credential
5. Press Arduino IDE "Upload" button

Step 10: Install Power Circuit

Here are the power connect summary:

Lipo Battery plug


+ve pin -> 5V DC regulator INPUT +ve pin
6V DC regulator INPUT +ve pin
-ve pin -> 5V DC regulator INPUT -ve pin
6V DC regulator INPUT -ve pin

PCA9685 Servo Driver Board


GND pin -> 5V DC regulator OUTPUT -ve pin
6V DC regulator OUTPUT -ve pin
Grove cable black pin
SCL pin -> Grove cable yellow pin
SDA pin -> Grove cable white pin
VCC pin -> 5V DC regulator OUTPUT +ve pin
Grove cable red pin
V+ pin -> 6V DC regulator OUTPUT +ve pin

Use M2 screws and double adhesive tape to x all boards under the robot cat body.

Robot Cat: Page 9


Step 11: Servo Position & Connection

The FSBrowserPlus program have a servo initial process, it will set all the servos to the middle position of the
turning range. Before install the servos, it is better connect the servos to the driver board, connect the grove
connector to the M5Stack Camera Module and plug in the battery to reset all the servo position to the middle.

Here are the servo connection list:

Port 0: Left Front Leg Joint 1


Port 1: Left Front Leg Joint 2
Port 2: Left Back Leg Joint 1
Port 3: Left Back Leg Joint 2
Port 4: Left Back Leg Joint 3
Port 5: Head Turn
Port 6: Head Nod
Port 7: Not connected
Port 8: Not connected
Port 9: Not connected
Port 10: Tail
Port 11: Right Back Leg Joint 3
Port 12: Right Back Leg Joint 2
Port 13: Right Back Leg Joint 1
Port 14: Right Front Leg Joint 2
Port 15: Right Front Leg Joint 1

Step 12: Paw Friction

3D printed paws are easy to worn out and not enough friction to the ground. Simply add some rubber band on it
can x these problems.

Robot Cat: Page 10


Step 13: Install Joint

Use a 6 mm M3 screw to connect the joint. Insert a nylon or PET ring in the middle can reduce the friction.

Step 14: Install Servo

There are few type of nylon arm included in the servo package. Insert the shortest nylon arm to the servo, except
head turn require a cross arm.

1. insert the servo into the joint start from the arm side
2. push the other side in carefully
3. plug in the battery to ensure the servo position is in the middle of the turning range
4. unplug the battery
5. screw up 2 screws on both side
Robot Cat: Page 11
6. screw up the black screw together with the joint

Repeat Install Joint and servo steps for all 10 leg joints.

Robot Cat: Page 12


Step 15: Install Head & Tail

The head turn servo can install from the upper side or lower side depends on you would like to have a longer or
shorter neck.

The head nod servo install method is the same as the leg joint.

Then you can install the M5Stack Camera Module with two 12 mm M4 screws

The tail servo must install from the lower side and then you can use a 8 mm M2 screw to x the tail.

Robot Cat: Page 13


Step 16: Fix Battery

Fix the Battery on the Robot Cat back with some double adhesive tape.

Robot Cat: Page 14


Step 17: Tidy Up Wires

There are a hole near the head, the battery, Grove and head nod servo wires can pass though this hole to the power
or servo board.

There are reserved some rooms between front legs and the servo board, all wires can tidy up to this area.

Step 18: Robot Cat Pose Design

1. plug in the battery to power on the robot cat


2. browse to http://fsbrowserplus.local/pose.htm
3. adjust the slider value
4. robot cat will have real time response

Robot Cat: Page 15


https://youtu.be/gbzailE_dlw

Step 19: Gallery

Robot Cat: Page 16


Step 20: What's Next?

This project is started over 2 years, but it still at the beginning. Much more I want to do...

The rst phase of hardware just start to work, it's time to work with software part:

pose sequence design web page, combine a number of pose in sequence to make some motion
store motion data to ash
vision sensor, add some AI factor to make environment interaction
microphone for listening and even speech recognition
balance sensor to avoid unexpected falling (cat should have good balance)
foot touch sensor to ensure touched the ground
web remote control interface with camera image stream

Hardware part:

reduce weight
better weight balance design especially when only 2 legs touch the ground
more head and tail motions
speaker for MEOW!

Follow my twitter for the latest news: https://twitter.com/moononournation

Robot Cat: Page 17


Robot Cat: Page 18

You might also like