Mini Raspberry Pi Boston Dynamics–inspired robot
This is a ‘Spot Micro’ walking quadruped robot running on Raspberry Pi 3B. By building this project, redditor /thetrueonion (aka Mike) wanted to teach themself robotic software development in C++ and Python, get the robot walking, and master velocity and directional control.
Mike was inspired by Spot, one of Boston Dynamics’ robots developed for industry to perform remote operation and autonomous sensing.
What’s it made of?
- Raspberry Pi 3B
- Servo control board: PCA9685, controlled via I2C
- Servos: 12 × PDI-HV5523MG
- LCD Panel: 16×2 I2C LCD panel
- Battery: 2s 4000 mAh LiPo, direct connection to power servos
- UBEC: HKU5 5V/5A ubec, used as 5V voltage regulator to power Raspberry Pi, LCD panel, PCA9685 control board
- Thingiverse 3D-printed Spot Micro frame
How does it walk?
The mini ‘Spot Micro’ bot rocks a three-axis angle command/body pose control mode via keyboard and can achieve ‘trot gait’ or ‘walk gait’. The former is a four-phase gait with symmetric motion of two legs at a time (like a horse trotting). The latter is an eight-phase gait with one leg swinging at a time and a body shift in between for balance (like humans walking).
Mike breaks down how they got the robot walking, right down to the order the servos need to be connected to the PCA9685 control board, in this extensive walkthrough.
Here’s the code
And yes, this is one of those magical projects with all the code you need stored on GitHub. The software is implemented on a Raspberry Pi 3B running Ubuntu 16.04. It’s composed on C++ and Python nodes in a ROS framework.
Mike isn’t finished yet: they are looking to improve their yellow beast by incorporating a lidar to achieve simple 2D mapping of a room. Also on the list is developing an autonomous motion-planning module to guide the robot to execute a simple task around a sensed 2D environment. And finally, adding a camera or webcam to conduct basic image classification would finesse their creation.
Hey, that’s my robot :) I’m flattered you featured it on raspberry pi’s website. Thanks!
Great Job, Michael!
Dr. Isaac Andy
Awesome job, Micheal!
I was wondering if the original solidworks files are available anywhere as we’re looking to do a 3d rendering of the robot for an engineering project at university.
Diego L Malpica
Amazing job, this has a lot of work and I congratulate the maker. Hands down the best I’ve seen in a while
This is awesome, great work! I had started something way less impressive last year (head mounted on wheels, RPi with openCV) but had to stop due to work priorities. I had kept raspianOS but here you’ve used Ubuntu. Is it more lightweight or does it have more development facilities?
Indy, I used Ubuntu because I found a prebuilt raspberry pi image with ubuntu 16.04 and ROS kinetic installed. This took a lot of headache out of getting ROS up and working on the pi. I first tried building it from source on Raspbian but it was a pain. See the wiki for more info
Hey,Michael,to install ROS,you can use Ubuntu Mate instead of Raspian
This is beautiful.
Please keep it up, and i am sure that ROS is involved here as well.
This is pretty cool. Would love to see the 2D mapping of a room.
I have been looking at a number of opensource designs over the past few months and this has to be right up there as one of the best I’ve, seen good job!
I’m a little confused… this says it is for Pi3B but the make file linked to is for Arduino.
“The mini ‘Spot Micro’ bot rocks a three-axis angle command/body pose control” using the word rocks for “has” or “contains” had me puzzled for a while. Rocking a position detector would have an adverse effect on on its ability to determine the robot’s position.
possible to have the source file, not only the stl ?
STL?Is this c++?
Gigel De Hohenzollern
Perhaps my grasp of the language isn’t what it used to be, so please be so kind as to enlighten me… Is there a team working on this project or is it just one person i.e. Mike? I don’t quite get the phrasing “Mike isn’t finished yet: they are looking to improve their yellow beast…”. Of course, in the end it’s just a rhetorical question as I’m sure all the people already know the answer. Yuck!
One of the best projects featuring a Raspberry Pi. I like the use of concept of Boston Dynamics robots. To see it implement with a Raspberry Pi is inspiring.
Very impressive. I can appreciate all that went I to it.
Perhaps a shout out to Deok-yeon Kim is in order here. He designed the spot micro and uploaded the files to thingsverse.
Excellent staff，eager to have a try. Thanks !
My QQ: 31856573.
great!this so cool!
Michael, great project!
You might be interested in the OpenCV AI Kit (https://opencv.org/introducing-oak-spatial-ai-powered-by-opencv/) when adding a camera. The OAK-D comes with a main camera as well as stereo cameras that can be used for 3D positioning and mapping, with a dedicated AI chip so your RPi control computer doesn’t have to get overwhelmed with your image classification.
this is so cool, Micheal
Comments are closed