So here is my next goofy project idea. Thought i would throw this out there to see what people thought…
The basic elements are: A laser pointer mounted to two servos controlling the direction in which its beam is pointed, a small ultrasonic transmitter that can be attatched to a cat, three ultrasonic receivers placed at a fixed geometry. The transmitter sends out a regular stream of signals, which the system detects and triangulates to find the position of the receiver, then calculates the angle and azimuth necessary to point the laser one meter to the left of the receiver. Result: a machine designed to drive my girlfriends cat insane.
Cats are already born insane, their job is to make you insane!
On a cat tv show, these people put a little cam around the collar of their outdoor cat, and the cam took a pic once every 2 minutes. The few they showed were kinda cool.
How do you know if the dot is following the cat, or the cat is following the dot?
Regardless, I like the idea, especially since chasing a laser dot is my cat’s favorite game. He really misses it when I don’t play with him. My cat seems to have figured out that it is me moving the dot, but doesn’t care. He gets excited just by the noise that the chain on the laser pointer makes, and starts looking for it.
I actually did a project similar to this in college (you clap and a laser points at your hands). What you want to make is a microphone array. the cat only needs one chirping transmitter. Measure the time difference of arrival (TDOA) between microphones and solve [Appollonius’ Tangency Problem where the first microphone to receive the signal has an internal radius of 0 and the other two or three circles have a radius related to their TDOA. You’ll find that TDOA triangulation is based on non linear equations (not good). So you may need to store solutions in look-up tables that are indexed by the TDOAs you measure.
example:
Let TDOA1n be the TDOA from the first mic to register a chirp to the nth mic to register a chirp.
TDOA12 indexes a look-up table. The value returned by the look up table is the address to yet another Look-up table that is indexed by TDOA13. and so on. until TDOA1n finally indexes a look up table for the solution.
you should need 3-4 microphones in the array, but the look-up table approach can easily result in megabytes (or even gigabytes) of code, so you might want a micro-controller with a large serial flash or SD card slot.
Microphone array triangulation is one of those problems that gets vastly more intricate and involved the more you look at it.
Remember that cats can hear ultrasonics (up to 64kHz) so it’s possible the chirping locator beacon will drive it crazy and it may even find the beacon painful.
Until they got used to it my three cats would jump and run whenever I turned on my Canon Powershot camera. Turns out they were reacting to the sound made by the Canon USM motor used to move the lens out. Over time they got used to it but their reaction demonstrates the animals’ sensitivity to that sound.
Most cats I’ve ever known have been decidedly averse to having anything “attached” to them. You might get a collar to work but if it’s got a heavy dongle with an ultrasonic transducer, battery and drive circuit it may spend its time trying to remove the collar rather than chasing the laser dot.
Also, be careful with laser pointers and animals. Even though most pointers are a pretty safe classification, I don’t know if the “blink reflex” applies to animals with walnut-sized brains.
Yeah, I thought about that too (although i had no idea they could hear up to 64kHz!). It might be easier to put an IR LED or two on the cat’s collar and track it with a camera. Then you’re no longer in the realm of micro controllers though. Also, it would be harder to make it omni-directional, but I’m sure the cat would get just as much fun out of it even if it only turns on when the cat is only in a certain part of the room.
You could use a Wiimote if you’ve got one. It might take care of some of the processing for you. I’m not sure, I haven’t played around with one. I think you might also be able to modify a cheap web cam to see only the IR spectrum (take out the IR filter and replace it with film that has been exposed to bright light). I’m pretty sure there’s open source software to help take care of some of the processing, but I don’t remember where I’ve seen it used before. I think there’s an Instructable where a guy makes a multi-touch drafting table based on IR frustration. The software he used was called something like touchlib if I recall correctly.
I still like the ultra sonic thing, it’s a fun project even if it’s not a practical cat toy. Unfortunately, my college project was never anywhere near functional because I messed up the circuit design somewhere and bricked my micro controller I might have to revisit it some time and see if I can get it to work. My original design was a tetrahedral that actually gave the angle, azimuth, and distance to the source. I designed it to demonstrate distance by focusing two laser pointers on one spot (kind of like going cross eyed when you try to stare at something close to your face, if that makes any sense).