Arduino 舵机制作自动宠物喂食器
最近这段时间一直在折腾养了几年的小宠物,今天介绍一下计划添加的自动喂食器, 这是最简单的宠物喂食器,可以定时投放适当的食物。喂养宠物宠物的朋友,都想自己喂养的宠物健康强壮,但是由于忙碌的生活,我们经常会怀疑自己,“我能照顾我的宠物吗?”于是自动喂食器应运而生了。
Arduino 宠物自动喂食机

下面我们分享最简单,但最有效和成本最低的宠物自动喂食机。有效减少宠物因暴饮暴食而引发的疾病。让宠物更加健康快乐!
需要准备的硬件包含Arduino开发板,UNO或者其他类型产品,当然舵机是必不可少的。舵机的作用是控制实物出口的打开和关闭,Arduino是机器的大脑。舵机通过旋转一定的角度,从而实现打开和关闭实物盒子,确保一定量的实物自动流出。简而言之,这需要舵机和arduino之间的密切配合。下图展示了硬件的连接原理图。

Arduino 编程
自动喂食器的程序是应该是最简单的程序之一,总共就那么几句。可以根据实际的需要对其进行修改,首先我们要对宠物的进食规律习惯进行梳理。 假设猫一天喂食三次,每次大概50克。因此,食物容器出口的盖子应该打开假设一分钟(这个时间需要实际实验得出)。在这一分钟里,食物会持续掉进猫碗里,一旦碗里的食物达到50克,盖子就会关上。这个过程中的出口打开时间需要重复实验验证。 现在,我们假设猫在早上6点、下午1点和晚上8点吃东西。换句话说,就是从第一次喂食开始间隔7小时进行第二次喂食,第二次喂食与第三次喂食间隔7小时,第三次喂食后间隔10小时,再开始新的循环。例程如下:
#include<Servo.h> Servo servo_test; void setup() { servo_test.attach(8); // 舵机信号脚8 pinMode(8, OUTPUT); } void loop() { // 在早上6点: servo_test.write(80); //舵机旋转80度,打开出口 delay(60000); //出口的打开持续时间 servo_test.write(0); // 关闭 delay(25200000UL); //7小时后再次打开出口 //下午1点: servo_test.write(80); //舵机旋转80度,打开出口 delay(60000); //出口的打开持续时间 servo_test.write(0); // 关闭 delay(25200000UL); //7小时后再次打开出口 // 晚上8点: servo_test.write(80); delay(60000); servo_test.write(0); delay(36000000UL); //10小时后再次打开出口 }
喂食器设计
在设计的问题上,每个人都有自己的创意。你可以参考一些成品喂食器结构采用3D打印机或者其他材料(塑料瓶、饮水桶等等)自己diy一个,或者现有的成品进行改造,下面给出一个可参考的结构,供参考。
