Thursday, May 30, 2019

RFID activated bird feeder

Over the past weeks I have been working on a project for the Geography and Environmental Systems Department at the University of Maryland.

The idea is to study feeding habits of birds. Birds are equipped with very small RFID tags on their legs and the feeders will only open when they stand on the perch of the said feeder.

All in all not a very complex project code wise, more of a mechanical challenge. Also the feeders mush be autonomous (aka battery operated) and must record the time/date and RFID tag ID when birds come to feed on an SD card.

I started with a proof of concept showing my contact that it could be done. First activating the servo via an RFID tag:



And then activating a "door" with that servo:


One of the challenge was that their RFID tags were 125kHz tags so the choice of RFID reader was more limited. 

Bird leg RFIS tag


Turned our there were 2 models: RDM630 and RDM6300. The major difference between the 2 modules is that the RDM630 is superior in functionality and little more expensive, but the RDM6300 will read the same tag continuously if it's put near the reader for a long time.

So my choice was the RSM630 at first but turned out it did not work as expected for this application. We needed to know if the tag was present so that we kept the seed door open for the bird to feed.

So I ordered some RDM6300 from Robotshop and in conjunction with using interrupt on the Arduino it worked perfectly.

There was no budget or time to make an Aduino shield PCB to hold the RFID reader, RTC and SD module so I did a protoboard assembly:


Now that I had the code working as I wanted and the electronics assembly done I needed to work on the actual feeder assembly. A few hours of Sketchup and I came up with this design:





It allowed for a removable side panel to access the electronics and retrieve the SD card as well as a removable top to insert the seed bag and delivery system (which the final customer would be taking care of).

Because MDF is easy to work with I decided to use it for this build along with some 3D printed parts (all the parts you see in gray in the above picture are 3D printed). Here are some pictures of the build:




















I really suck at the painting process. But after final test I shipped it to the customer and here was their comment when they received it:



So I guess I did not do too bad on that job. It was fun and I learned new things.

No comments:

Post a Comment

Displaying a MySQL/Mariadb table on a web page using Ruby Sinatra and JS DataTables

My son was working on a project where he needed to display data from a MySQL/Mariadb table on a web page. Having no prior HTML/JS experience...