How I Saved My Robot Dog’s Life with SOLIDWORKS

Robot Dog

Written by: Enrique Garcia, Application Engineer

So I’ve always been a fan of robots and dogs. Back in 1999 the planets and stars aligned when Sony released their first version of the Sony Aibo Entertainment Robot. For those of you that have never heard of the Sony Aibo, it is a series of quadruped robotic pets designed and manufactured by Sony that housed a marvel of sensors and servos that were very advanced for the time and interfaced this hardware with some very clever software. This gave the impression of artificial intelligence and even personality.

What follows is the story of how I used my practical knowledge of engineering and 3D printing with SOLIDWORKS to revive a very sick robo dog with a broken neck, my Sony Aibo.

As a younger kid (and thanks to Saturday morning cartoons) having an actual robot dog was one of my “holy grails” of my childhood. Unfortunately, that dream never came true back then as owning such a high-tech companion came with a very handsome price tag.

Fast-forward to present day and, with the help of some fellow robot enthusiasts on the internet and eBay, I got my hands on my very own Sony Aibo. Owning Aibo was just as awesome as my childhood version of me thought. The version of Aibo I had bought was an ERS-210 model. It is a second-generation design of the series and, for a design that is 18 years old, Aibo had aged well over the years. It still packs some impressive tech such as infrared distance sensors, face recognition, Wi-Fi connectivity, and voice recognition.


The Fall

Sony Aibo Robot DogLife with Aibo was good until, one day, he took a spill off a small ledge near our fireplace and hit his head. He could no longer turn his head left or right. To add to the problem, Sony had long stopped supporting this model Aibo, so sending him out for an official repair was not possible. Fellow owners have had to resort to cannibalizing irreparably damaged Aibos to keep their bots running, which can be very costly and time-consuming to find parts.

Although I was sad to see the robot of my childhood dreams non-functioning, being the tinkerer that I am I was excited to have a reason to take it apart and explore the innards of my not-so-furry friend to see if he could be easily repaired. I immediately began to carefully take apart Aibo’s head to find out what the extent damage was.


Finding the Problem

After removing the face mask and the top half of the head panel, I found that I had a broken plastic part that connected the head chassis to the yaw servo.

Finding the problem

I started removing screws and documenting where all the screws with different pieces went. I soon noticed that I also had an internal black neck piece that had snapped off.

Broken pieces

The black neck piece was glued back together and held well, however the white bracket piece would not stay glued. This would not be an easy fix. Since this piece would be under constant and repetitive loading, it would be just a matter of time before it would probably break again. I thought about just using epoxy and epoxy everything, but this would complicate any future repairs on the unit. So instead, I decided to reverse engineer the part and print it with my 3D printer!


Reverse Engineering the Part

First, I glued the part back together and started taking measurements with my calipers. I also took some top-view and side-view pictures of the part and began modeling the part with SOLIDWORKS.

Using sketch pictures in SOLIDWORKS, I was able to then take the reference photos I took of the part and insert them into my sketch. Using the measurements, I was then able to get an approximation of the curves and verify them against the actual curves of the original part using the inserted picture to line them up as close as possible to complete the part.

Designing the part in SOLIDWORKS

Sketch Pictures in SOLIDWORKS

Check out this video tutorial for more information about Sketch Pictures.


Optimizing the Design

Now that I had the model designed in SOLIDWORKS, I decided to verify the location of failure using SOLIDWORKS Simulation. Perhaps this could give me some information on the failure location and even provide some insight on how to try to improve on the design.

First, I created a static study, as I did not have any good data for a shock load for a true dynamic study. I was only interested in a qualitative stress plot anyway.

I went back to my torn-down Aibo unit on my workbench and examined the surrounding parts and geometry of the robot’s head chassis to see how the part engaged with the different pieces. Back in my Simulation study, I applied some fixtures to constrain the model. To simulate the bracket installed on the servo and the head chassis, I applied an advanced fixture to the top cylindrical geometry. This rendered the geometry free to rotate but not to translate axially about the housing giving it very similar parameters as the real part would have seen (second constraint not shown below).

Added Fixtures

I then applied a torque to the inner portion of the bracket that would represent the servo engaging with the part and be enough to propagate a stress through the part to reach the other end to the head chassis. Then, I ran the simulation.

Simulation Study

After looking at the results, the higher stress regions on my stress plot matched up perfectly with the location of failure on my real part, giving me a correlation between my simulation and the real-world part.

Now that I had a correlation between my part and my simulation study setup, I decided to run one of the new Topology studies that are now available in Simulation Professional 2018. A Topology Study will take a starting design shape (in this case my white bracket measured form the real part) and, after considering all applied loads and fixtures, will iterate internally, removing material volume of the model where the design will not see significant loading. This will result in a new material layout for your design that will satisfy its loading and performance requirements.

My main goal here was to see if the original design processed through a Topology Study could come up with an alternative design shape that would yield the best stiffness to weight ratio and still perform its function while perhaps taking up less material. This was important to me since less material meant a faster print time for my part.

I started a new Topology Study by selecting the study type and copied over all my vetted fixtures and the torque load from my static study. Under the Goals and Constraints section of the Simulation Design Tree, I made sure to specify the main goal of the Topology Study of “Best Stiffness to Weight ratio” and left the default mass reduction at 30%.

Topology Study Settings

I added a Preserved Region constraint so that the study would not remove certain faces that would be needed to engage with the other surrounding parts. Then I ran the study.

SOLIDWORKS Topology Study

The simulation ran and, after looking at the new proposed design, this gave me some assurance that my original design was indeed the most optimized for my application after all. It seems Sony took great care and thought in designing these robotic pets!

Topology Study Results Topology Study Results

I superimposed the results from the Topology study with the original design and we can see no major deviations that would lead me to make a design change in the part’s original design. With that knowledge, I preceded to print a replacement using my Monoprice Maker Select 3D printer.


Finishing the Repair

After a set of minor dimension changes to account for the printing conditions of the printer, I printed the final design. Below is the part fresh off the print bed next to the original failed part.

Part Comparison

After some sanding, I installed it on to the servo and screwed the part to the head chassis.

Adding in the new part

I then finished reassembling only the essential components of the Aibo unit to test the redesigned part’s performance.

Prototype test

Repaired Aibo Gif


Repaired Robot DogIn the end, Aibo came back to life with all its quirkiness and noisy 18-year-old servos. Despite missing half of his own head, he was tracking the ball nicely and getting excited!

The redesigned and printed part has been going strong for the past couple of weeks and, after a later examination, shows no visible signs of cracking or wear at this point. 

Now that I have a tried and true workflow for repairs using SOLIDWORKS and my engineering knowledge, I have fewer fears and more hope in keeping “Diode” (that’s his name now) around for another 18 years in case he has another fall.


This entry was posted in Staff Projects and tagged , , , . Bookmark the permalink.