Courtesy of All About Circuits
The Beaglebone Treat-Feeder allows you to keep track of your pet's diet by sending you notifications when they eat! The enclosure is a little ruff (har har har), but it gets the job done.
BOM and Schematic
Ryan Jones, the treat feeder’s creator and on-screen goofball shown above, had been out of the house more than usual lately. Feeling a little guilty about his pets being home alone, he attempted to build build a Beaglebone Beagle-Feeding device hoping to ensure their health and wellness. His skillset was a little lacking in the mechanical engineering department, so it turned out to be more of a treat dispenser since his prototype couldn't dispense very much food at once.
Your pet will have to press the button a lot to eat a full meal, but at least they’ll have some company! This particular model includes an OLED display that asks your pet if they're hungry. All you’ll need to do is send them away to pet-boarding school to learn to read English and they'll be on their way to home automation! (It isn’t called the Maker Institute of Terrible Innovations for nothing!)
Seeed Studio's Beaglebone Green Wireless Google IoT Kit comes with a handy "Grove Cape" that makes connecting the components and Beaglebone easy. The Grove Cape connects to the Grove mini-PCBs included in the kit without any extra components. This includes: the pushbutton, PIR sensor, and OLED display. This spares us the hassle of building each individual sensor's circuits.
The Seeed Studio IoT kit!
Before moving forward with the program and circuitry, you’ll need to make sure your board is updated and includes everything needed to run the program. Ryan used Python within the included Cloud 9 IDE. You’ll just need to execute a few commands within Cloud 9's terminal in the following order:
apt-get install links
apt-get install libssl-dev tcltls swaks
Now it’s time to plug the PIR sensor into GPIO 115, the pushbutton into GPIO 117, and OLED into any of the I2C connectors. When the PIR detects motion, the OLED display will say "Are you hungry?" If your pet steps onto the platform, a solenoid is triggered and releases food into the bowl. The OLED will reads "Enjoy, Hal!" and you’ll receive an email informing you of your pet's eating habits.
The Grove connectors worked great for most of the project, but there wasn’t one capable of driving a solenoid. Ryan had to create a custom relay circuit attached to GPIO 51, as shown below.
The included Grove Cape for easy connection
Most transistors require a base-emitter voltage of at least 0.6V to leave cutoff in order to allow current to flow from collector to emitter. The resistor limits current to the transistors base (too much current can burn it out), but it still allows enough voltage to forward-bias the base.
With the transistor out of cutoff, the 5V supply powering the relay’s coil now has a direct path to ground via the collector-emitter junction. Thanks to the properly-oriented diode, the transistor is protected from dangerous voltage spikes caused by the coil discharging,.
With current flowing through the junction, the relay coil energizes, causing the solenoid's isolated circuit to switch from normally-open to closed. This allows current from the 12V power supply to flow through the solenoid, which actuates its plunger.
This will need to be attached to some sort of lever or armerture to let food fall into your pet’s dish. You should receive an email notification within seconds that your pet is chowing down! For more information on sending and receiving emails, please visit: https://easyengine.io/tutorials/mail/swaks-smtp-test-tool/
This contraption is only a prototype. The enclosure could use some love… and materials more sturdy that paper. Have any ideas to improve this pet feeder? Have you made a pet feeder yourself? Please share your designs in the comments!
You can find more MIT-i innovations on Youtube.
Ryan’s state of the art mechanical design...