We’ve featured quite a few aquarium and fish feeder hacks on our blog. [RoboPandaPDX] thought of taking it up a notch and make an interactive fish feeder. He built a Fish feeder that train’s them to feed themselves.
A copper bar hangs from the middle of a metal cylinder – much like a bell. The end of the bar has a fish lure. When a fish pushes the lure, the copper bar touches the metal cylinder and closes the circuit. This signal goes to an Arduino. To catch the attention of the fishes and to “teach” them, an RGB LED is used. The fish need to figure out that the feeder will dispense food only when the LED is ON and the Lure is pushed. If the fish figure that out, and push the lure when the LED is on, a servo is activated which pushes the feeder to deliver 1 unit of fish food. While at it, he added a couple of bells and whistles. A buzzer to indicate when the Lure switch is closed and a 2 line LCD shows how many times the switch has been activated and how long the program has been running.
A Sparkfun open logger stores the hit count and the minutes and seconds of the hit for data analysis later on. The good news is that it seems to be working. The current code activates the feeder for 30 to 60 minutes every day, which is indicated by the LED. At the end of 9 days, [RoboPandaPDX] found that the goldfish would hit the Lure when the LED turned on, and then turn around to face where the feeder would dispense food in to the tank. His next plan is to put up some obstacles along the path to see if the fish learn some new tricks. His schematic looks a little iffy (the Lure switch is connected to the RST pin of the Arduino), and it seems he cannot remember why he ever did that. He’s happy that it works though, but we’re sure that’s not the right way to wire it up.
[RoboPandaPDX] is looking for suggestions on improving his interactive feeder, so if you have any, do add them in the comments below.
If you need some more fish feeder ideas, check out this and this that we blogged about earlier.
If you give a fish its feed, it eats for a day, if you teach a fish to feed…
Light a man a fire and he’ll be warm for a day.
Light a man on fire and he’ll be warm for the rest of his life.
This is golden.
This is gold.
No, that is white. The user name and timestamp above it are gold.
It looks blue and brown to me… B^)
What if the fish had the option to choose between 2 or more types/brands of food each time the LED is turned on?
What if the fish pushed the wrong button and got sucked into a larger tank to be food for a larger fish?
^ This guy, asking the important questions here.
Goldfish are easy to train, even Adam Savage can do it.
Training the fish to feed themselves is great, and I will definitely take a longer look at this project tomorrow when my brain is back in service.
My only concern would be having the fish overfeed, which results in obesity (fat and happy), and fouled water chemistry (sick and unhappy).
Pretty sure Adam Savage actually failed to train his fish, or at least didn’t do it very well. Jamie Hyneman managed it, but he’d done it before
Also he mentioned that the feeder only activates at set time intervals, indicated by an LED which the fish can see, so overfeeding shouldn’t be an issue
I was being a bit sarcastic in my comment. :)
My comment regarding fat fish comes from the fact that I have a 90 gallon tank which contains some of the fattest synodontis catfish that you will probably ever see,
Clarification: I was being a bit sarcastic in my comment regarding Adam Savage. :)
Copper is not good for a lot of aquatic organisms. If you have scaleless fish eg clown loaches you may want to use something inert and a micro switch.
Seems like a quick way to fat fish, best put a hourly limit to the number of times the fish can activate the feeder.
It can only be activated when the light is on. The fish learns to push the lever when the light turns on, that’s the entire point
Copper is highly toxic to fish. Dirty water tends to go acidic. Acidic water dissolves the copper. I would not have that copper wire in there.
That. As a (former) fishkeeper the word “copper” immediately rings an alarm bell. And fish aren’t even the most sensitive, but even trace amounts of copper will kill off your crustacean inhabitants. Bottom line is you don’t want anything copper anywhere near your fish tank.
Nah, just coat the copper with some cyanide and the fish will be fine.
(I’m kidding, for those of you who might not get my brand of sarcasm.)
No, cyanide is for chickens; for fish, you use arsenic.
Aw, shoot. I always get that backwards.
You can use detergent for that. :P
Yup. I know that’s meant in jest, but in fact there is a product called Algaefix, which few folks realize is just detergent. Does a good job as an algaecide. And despite the tiny dose, sometimes a good job of killing fish, if they’re not fortunate enough to survive the shock due to instantaneous reduction of gill gas exchange when it’s dosed. (Splitting the dose into fractions added over many hours, contrary to the directions on the label, is somewhat safer. And gives you a chance to spot signs of excessive respiratory distress before it results in fatalities, in which case you stop the treatment and add oxygen to reverse the problem.)
Thinking about it a bit more, I also don’t entirely trust having a direct conductive path straight from the water to an MCU pin. An aquarium is very nearly a Leyden jar, which may give the MCU a jolt when initially connected. Aquarium heaters and other submersible electrical devices can develop insulation faults (rare but not unheard of). Fluorescent lights with electronic ballasts can impart charge to the tank capacitively (especially if metal reflectors/cases aren’t properly grounded). All another reason to replace the submersed part of the sensor with something non-conductive and non-toxic, which should be easy since the majority of the existing wire is only required to transmit motion, not electricity.
Yep. I’ve measure static charges in my own tanks as high as 70v above ground, and that was with no insulation faults or other issues.
You should always have a protection circuit at the signal entry point. e.g. a high value series resistance (to limit current) with *switching* diodes or *low capacitance* TVS diodes to VCC/Gnd (to clip the signal) at the uP side of the resistor. (Don’t use ordinary rectifier or zener diodes as their capacitance are very high and are really slow to turn on.)
Do you want an Otto? Because this is how you get an Otto!! http://en.wikipedia.org/wiki/A_Fish_out_of_Water_(book)
An otto? http://en.wikipedia.org/wiki/Otocinclus
No apostrophe in “trains”.
Is that a sentence?
Yes, it is. It has an implied subject and verb of “there is” preceding the written words. English language makes use of implied subjects and verbs, though rarely would you use both together. Learn it. Or not.
An implied subject is only technically correct in dialog. In narration or instruction, Andrew’s sentence is incomplete.
Very cool idea! I like the integration of LED lights. I’m sure certain types of fish are better at this than others, though. Would be fun to see some data. :)
[RoboPandaPDX] needs to source his parts more wisely: Arduino Uno for 25$? An LCD for 30$? Then again a 9V2A Wallwart for 3$? I would suggest paying more for the Wallwart and get one that does not cost 3$ and will probably burn down your house (boil the fish) and not pay 50$ for a uC and a 2 line Display. I could guess that those are Sparkfun prices right?
Better yet, use a cheap smartphone. And the least the fish could do is move a stylus around and earn some points on Perk.
If my cichlids could feed themselves, I’d go through a lot of fishfood.
They’re definitely trainable, though. I have the filter configured to turn off 1 minute before feeding time (so the food doesn’t get sucked down the skimmer), and after a couple of days of that, they go into a frenzy up near the water’s surface every time the filter stops.
i have something similar to feed my cat using a distance sensor painted yellow.
the cat knows that a yellow dot means food.
This reminds me of [BullwinkleII]’s on demand fish feeder from the backyardaquaponics forums. He used a PICAXE to control it.
[youtube http://www.youtube.com/watch?v=O–yB1QBpsI?feature=player_embedded&w=640&h=360%5D
If I remember correctly, he designed his to bolus (my term) so there was a daily hard limit that the feeder would stop at to prevent greedy fish from killing themselves with food.
Forum project thread: http://www.backyardaquaponics.com/forum/viewtopic.php?f=50&t=14584
Seems like you could just make sure the copper part is above water and hang the lure on some fishing line
The Cooper will kill your fish…
I made a similar project, but after weeks of fish training, determined that my fish couldn’t see the LED. We also had to put in long delays so the fish didn’t overfeed themselves to death! http://mix-engineering.com/projects/fish-circus/