Automatic fish feeder with bottle hopper and SG90 Adapter
Obliczymy ostateczną cenę na podstawie wybranego pliku. Sprawdzisz ją i zaakceptujesz przed płatnością.
Zapisane na tym urządzeniu.
remix of Andy Frosbergs fantastic fish feeder to suit a classroom deployment
- Ocena
- 5 / 5
- Polubienia
- 16
- Pobrania
- 106
- Wydruki
- 2
- Wyświetlenia
- 1132
- Oceny
- 1
Aktualizacja u źródła:
Informacje o modelu
- Źródło
- Printables
- Kategoria
- Pets
- Licencja
- Creative Commons — Attribution
Remix of Andy Forsberg's fantastic fish feeder for a classroom deployment.
Due to the little fingers and general clumsiness inherent to the primary classroom environment, I figured some slight tweaks were necessary my wish list came down to:
Enclosed fish food hopper
optional Arduino enclosure to suit the USB mini Arduino nano I had lying around ( have to keep little fingers off my terminals)
a way of using the far cheaper and more ubiquitous SG90 servo (I had one lying around from my first Arduino starter kit that is now 12 years old and has never been used).
So here we are; my solution for the Arduino nano enclosure was this fantastic work from EA3D: https://www.printables.com/model/308536-arduino-nano-case. There is no need to reinvent the wheel after all.
I used M3 heat certs in the base for the bottle hopper and the tank adapter, with M3 cap head, screws 6mm long for the hopper and 5mm long for the tank adapter. For the servo adapter, I used 2 course screws approximately 2.5-3mm in diameter salvaged from a TV years ago. The servo-to-slide hardware was the screws supplied in the SG90.
To mount the Arduino case, I used super glue, having cut the Arduino clips off the original base model with a pair of side cutters to make room for the case (the weekend was running out of time). I recommend uploading the code to the Arduino before soldering in the servo motor as it had a bit of a conniption, having pre-soldered it up and then programmed it. Servo is soldered to the following terminals on an Arduino Nano:
Orange → D9
Brown → ground
Red → 5v
code I used the following again credit to Andy:
#include <Servo.h>
/***********************************************************************************
Small fish feeder
code is set to have the feeder run 1x per day. It runs once immediatley upon startup,
then waits 24 hours for next run. For testing comment out the DAY (24*HOUR) line
and uncomment Day (2*SECOND) line
*****************************************************************************************/
#define SECOND 1000L
#define MINUTE (60*SECOND)
#define HOUR (60*MINUTE)
#define DAY (24*HOUR) //uncomment for actual run
//#define DAY (2*SECOND) //test setup
const int SERVO_PIN = 9; //pin number for the led pin - this is 'const' since it will not change during code, and saves Arduino memory
const int FILL_DEGREE=50; //starting hole location, fill slider with fish food
const int DISPENSE_DEGREE=1; //dispensing hole location
Servo servo1;
//setup runs once when the Arduino is turned on
void setup()
{
servo1.attach(SERVO_PIN); //attach the servo on pin SERVO_PIN
} //setup() is done, go to loop()
//loop runs forever once setup is complete
void loop()
{
//******************************************************************************
//NOTE: YOU WILL HAVE TO CHANGE THESE VALUES based on your servo horn alignment.
//******************************************************************************
servo1.write(FILL_DEGREE); // tell servo to go to fill position
delay(1000); // delay for 1 second
servo1.write(DISPENSE_DEGREE); // tell servo to go to dispense location
delay(1000);
servo1.write(FILL_DEGREE); // tell servo to go back to fill position
delay(DAY); // delay for 1 day
}
Other credits must go to wdvc for the PET bottle Spout, which I borrowed for the hoppers bottle thread