Introduction: Programmable Aquarium Fish Feeder - Designed Granulated Food
Fish feeder - designed granulated food for aquarium fish.
Its very simple design of fully automatic fish feeder.
Its operated with small SG90 micro servo 9g and Arduino Nano.
You power whole feeder with USB cable (from USB charger or USB port of your PC)
By simple editing attached program you can set exact times of feeding set on exact hour minute.
Step 1: Aquarium Fish Feeder - Programmable - With 9g Servo
First you should print mechanical parts
Here is STL file.
https://www.thingiverse.com/thing:2761061
I used PET-G material because it’s very strong and isn’t affected by any chemicals or sunlight.
Also, there is no risk that some toxic chemicals will affect my aquarium.
Only one thing isn’t 3D printed and its tank for fish granules – there is used old PET bottle.
Step 2: Assembly Mechanical Parts
Step 3: Prepare Circuit
It is very simple circuit.
There is a mosfet tranzistor which is works like switch driven by arduino.
Reason is that we activate servo only for short time in very long period so it is not necessary to let it drain the battery. :)
You can use some universal soldering board
Step 4: Progrmming Arduiono I.
Servo is in two positions
1. – in place under food storage tank
2. – in position over feeding hole.
You can use this program servo_2_positioning.ino
You will play with 2 values
int ser_pos_feeder = 80; // position under food tank
int ser_pos_fishtank = 25; // position over feeding hole
Attachments
Step 5: Progrmming Arduiono II.
When you found optimal
position of servo, you can upload full program with timer.
Set the:
- - Current time
- - Feeding times
- - Number of doses
*(I am now working on version where will be display and you will be able to set it up with buttons and now with computer.)
char feeding_times[] = "08:00:00,12:00:00,18:30:10,21:30:00,18:32:00"; // time format is HH:MM:SS and with , you can add more values.
int count_of_doses = 10; // how many doses shoul fish get per feeding
// If you want that feeding is coresponding with real time you have to set the real time
String current_time = "18:30:00"; // Time is countent allways from this value after reset or power of
Attachments
Step 6: Putting All Together
Just close your box
Upload program and let your fish enjoy :)
Step 7: List of Materials
2x M3 5mm Screw
2x M3 20mm Screw
1x Arduino nano
1x SG90 9g Micro Servo
1x Single Row Pin Male Header (we will use 3 pins)
1x BS170 - mosfet tranzistor
------------------------------------------------------------------------------------
Optional
1x 9 V battery
1x 9V Battery Snap Power Cable