Smarter Cat Toy: Part 2

Smarter Cat Toy: Part 2

Smarter Cat Toy: Part 2

I own a cat named Ophelia. She is about 4 years old and I’ve had her since she was 12 weeks. She is my fuzzy companion and it is important to me that she is happy.
Recently I moved from a house in a neighborhood where she could go outside and play which to a cat is to run, stalk and ultimately kill things, to an apartment in an urban city where she is trapped inside all day, everyday. I can see that she is bored and I want to do everything I can do change that.
This led me to my idea for a smarter cat toy. An autonomous little robot that behaved, looked, sounded, felt, and maybe even tasted like real prey.

I made this video to help explain why I am so passionate about my pets and why I think their happiness is so important.

Pets from Jim Murphy on Vimeo.


Recap

In the first post about my Smarter Cat Toy project I talked about using a pressure sensor to manipulate a motor to simulate prey behavior. I also talked about getting a Sphero and doing a bit of reverse engineering to see how they worked.

Well, the pressure sensor bit proved to be kind of difficult, although possible. I struggled to get the motor to respond the way I wanted.

The Sphero route proved much more advantageous. I bought two Spehro Minis. Small little remote controlled robots and Ophelia enjoyed playing with them.

Ophelia and Sphero from Jim Murphy on Vimeo.

There were two changes to the Sphero Mini I would need to perform in order to have a working prototype of my cat toy.

  • Add a more life-like skin to the Sphero’s current plastic shell.
  • Re-program the Sphero for autonomous movement and behavior akin to that of prey.

Life-Like Skin

The Sphero Mini is currently encased in a hard plastic case that protects the slightly more delicate inner workings.

Imgur

While Ophelia enjoys chasing the Sphero, she does not know what to do with it when she catches it because she cannot sink her claws or teeth into it.

The larger Sphero has a variety of different skins that can be applied to it. I don’t see a reason why I can’t do the same to the Mini.

Imgur

Choosing A Material
While I want to make the toy as life-like as possible, I also don’t want Ophelia to be able to tear it apart too easily.

In the four years I have been playing with her I have been able to identify what her favorite toys are and one of them is a leather belt. She loves to chase it and when she catches it, she can really grip it with her claws and chew on it without too much damage to the belt. So, for the prototype I have decided to find some kind of leather to skin the toy with.

To Do: visit Reynolds Advanced Materials shop to see what kind of leathers or leather-like materials are available. I may then use a laser cutter to cut the design needed out of the material I choose.


Re-Program Sphero Mini

There are a couple key features the toy will need, autonomy and prey-like behavior. As it comes, the Sphero Mini is strictly remote control. However, with Sphero EDU I can begin to design programs for the Sphero.

The programs are done via and app. I can use blocks or code directly in Java.

Imgur

Imgur

Imgur

Since I don’t know Java very well, I opted to start with the block builder and exploring with very simple programs.

Here is the first I made:

Imgur

This one has the Sphero roll forward at about half speed for 3 seconds, stop, roll at 45 degree angle for 3 seconds, stop then roll at 315 degree angle for 3 seconds. Additionally, on a collision, it is to shift it’s heading 90 degrees.

The problem was at half speed, the Sphero did not know it had a collision and just continued to try to roll into the wall.

My second program was meant to test the collision logic.

Imgur

This program simply had the Sphero roll straight at full speed for 30 seconds. On collision, reverse direction.

This worked really well. Sphero ran right into the wall and immediately came right back to me.

Learning Sphero EDU
There are a lot of different ways to program the Sphero and some I need to learn. The app is designed for a younger crowd so I don’t anticipate a steep learning curve. Mainly, I need to learn how to apply the different sensors in the Mini like the accelerometer or gyroscope.

Imgur

Imgur

Imgur

These are just three of the many options.

To Do: Use the videos on the Sphero EDU site to learn how to program the Sphero. I will also need to study how prey behaves then translate that into behavior for the Sphero.


As I continue to advance my prototype I will add additional features. It is my hope that future models will be able to mimic the sounds of prey and maybe even the taste.

Author face

Jim Murphy

Michigan born and raised. Colorado for grad school at CU-Boulder.

Recent post