自制 Arduino Nano 智能宠物喂食器
组件与供应
![]() |
Arduino Nano R3(紧凑外壳首选) | × | 1 |
![]() |
Adafruit RGB 背光 LCD 16x2 | × | 1 |
![]() |
Adafruit DS3231 实时时钟(极高精度) | × | 1 |
![]() |
连续旋转舵机 | × | 1 |
![]() |
谷物分配器 | × | 1 |
![]() |
霍尔传感器 (单极性) | × | 1 |
![]() |
圆柱磁铁 3mm 直径, 5mm 长 | × | 6 |
![]() |
LCD I2C 背包 | × | 1 |
![]() |
Apem 防水轻触按钮 IP67 | × | 1 |
![]() |
小型轻触按钮 | × | 1 |
![]() |
LED (通用) | × | 6 |
![]() |
Hammond ABS 带法兰外壳 | × | 1 |
应用与在线服务
![]() |
LCD 字符生成器 |
关于项目
2018-09-06 更新
我的两台喂食器已完美运行 7 个月。白天我们照顾宠物,现在它们能按固定时间自动进食。非常满意!
为什么又做一个宠物喂食器?
基于 Arduino 单片机,材料便宜且易构建。网上虽有许多版本,但找不到具备我需要功能的完整项目,所以从头开始。
功能特点:
- 每次精准定量(霍尔传感器反馈)
- 每天两个喂食时段
- 极高精度实时时钟(需正品 DS3231 芯片)
- 可单独取消两个定时器的下一次喂食,配显示和 LED 指示,过时自动复位
- 手动喂食功能(每按一次投一份)
- 两个喂食时段份数可调(1-9 份)
- 主界面总览所有设置参数
- 易用的菜单系统
- 喂食成功 LED 指示
- LCD 背光定时器(30 秒无操作熄灭,任意按键点亮)
- 时间和设置安全存储在 EEPROM
演示视频
视频链接:点击 HERE
详细讲解视频:点击 HERE
慢动作喂食演示:点击 HERE
照片


所需零件
- 1x 谷物分配器(eBay 便宜)
- 废木料制作分配器支架
- 1x Arduino Uno
- 1x I2C DS3231(极高精度)或 DS1307 RTC
- 1x 16x2 LCD 显示屏
- 1x LCD I2C 背包
- 1x 连续旋转舵机(买好货!)
- 1x Honeywell SS443R 单极性霍尔传感器
- 1x 12V/1A 外接电源适配器
- 7x 轻触按钮
- 6x LED(2 红、3 绿、1 黄)
- 2x 1kΩ 电阻(红 LED)
- 4x 560Ω 电阻(绿/黄 LED)
- 1x 电子外壳
- 电源插座母头及连接器(连接外置舵机和霍尔传感器)
- 大量热熔胶
舵机最好用高电压供电以获更大扭矩。我的 HSR-2645CRH 支持 7.4V,若想这样需额外:
- 万用板
- LM317T 可调稳压器
- 3 个电阻设定输出电压(1kΩ、150kΩ、4.7kΩ)
- 2 个极性电容(220µF、10µF)
- 散热片不需要,舵机每天只转 1-2 秒

网上有很多 LM317 计算器。
宠物粮仓
最便宜易用的是谷物分配器,许多商店和 eBay 有售。我买双仓谷物分配器 15 欧元含运费(英国到荷兰)。

挑战是制作支架。网上搜寻无果,翻找棚子发现漂亮雪松木料。支撑分配器的木板厚 3cm 绝不晃动。安装孔(我分配器底座 86mm)必须紧配,先钻小孔再修整。看照片理解结构。

















舵机与分配器拨轮连接
务必买好舵机。我先买 MG996R 改连续旋转,浪费钱。后来买优质 HSR-2645CRH。
必须买连续旋转型号!! 别尝试改装普通舵机,表现差且停止不即时。
舵机试验视频:点击 HERE
舵机连接分配器拨轮
如何连接舵机与拨轮?看似最难实则简单。
取 5mm 聚碳酸酯板,细锯切直径约 6cm 圆盘。中心钻 8mm 孔(拨轮轴厚度,轴可从拨轮拆下)。

外圆钻 6 个 3mm 孔(磁铁直径),均匀分布。拨轮有 6 个橡胶叶片,用 6 个磁铁,360°/6=60° 间隔。磁铁紧配。

霍尔传感器检测 6 个磁铁,精确定位停止拨轮。舵机停止延时变量用于喂食后延迟停止,微调拨轮准确位置。若停止位置不对,粮食无法完全落出。霍尔传感器位置可能不同,调节延时变量解决。

将拨轮轴粘入圆盘中心孔。




白色圆形舵机舵盘用 3 颗 M3 螺栓固定在圆盘上,垫额外螺母作间隔,别拧太紧。



现在舵机成了喂食器组件一部分,放入木支架测量舵机下方木块高度。



霍尔传感器
用单极性霍尔传感器。磁铁靠近输出低电平,不需要反向磁场复位输出高电平。单极性更简单。
!!! 霍尔传感器需 10kΩ 上拉电阻。
我用 0805 贴片电阻直接焊在传感器上,你可自行方式。别漏这电阻!
用废弃圆珠笔塑料管做传感器支架。



电子外壳
用 Hammond ABS 带法兰外壳,120 x 65 x 40 mm。






外部连接用精密母插座,非廉价山寨货。我所有项目都用,劣质连接导致难排查故障最糟。












为方便编程,预留外置 FTDI 接口:


前面板制作
尝试过多种廉价美观面板方案...
- Mod Podge 胶水贴激光打印纸再刷层 Mod Podge → 失败
- 聚氨酯丙烯酸酯清漆,干后极耐用。纸贴得很牢,上层清漆效果好,但不粘激光打印碳粉部分 → 失败
- 激光打印前面板仅表面覆膜 PVC,效果极佳,保护前面且色彩提亮。再用清漆粘贴,想让清漆渗透纸张防水。但纸太厚不渗透,测试防水时纸卷边脱落 → 部分失败,待改进
- 买激光打印专用铝箔纸,2.25 欧/张。效果好但想用透明膜保护碳粉,无法消除照片 1 所示瑕疵
- 再试清漆保护,铝箔变高光!但清漆仍不粘碳粉,彻底放弃清漆
- 最终:直接用铝箔打印无保护... 常摸会留指纹(看本页顶部照片 BACK 键下方,外壳在鸡饲料中)不完美但够用

照片上传限制,就这些了。
各位玩得开心!
代码
- Pet Feed-O-Matic v 1.1 - 20-02-2018
Pet Feed-O-Matic v 1.1 - 20-02-2018 Arduino
v 1.1:按下 Cancel1 或 Cancel2 显示说明
// c++ stuff...
#include <Arduino.h>
// 代码过长已截断,完整代码请下载附件
// 主要功能:有限状态机菜单、RTC 时间同步、霍尔传感器中断计数、舵机精准控制、EEPROM 存储设置、LCD 显示与背光管理
// 关键库:LiquidCrystal_I2C, Button, DS3232RTC, Time, Wire, EEPROM
// 引脚定义、按键消抖、状态机、喂食逻辑、时间设置、菜单导航等完整实现
原理图
Arduino 宠物喂食器
使用 Arduino IDE 1.8.2。小心库文件夹中不要有同一库的两个版本!!
arduino_pet_feeder_final_eng_v1_0-ino_hex_libraries_dsoo0HscCr.zip
制造工艺
- 宠物食品生产全解析:从原料到法规的完整指南
- DIY Photoshop 硬件控制台:Arduino Nano RP2040 实现快捷键外设
- DIY 蓝牙控制 Arduino 间谍小车
- Arduino Nano 智能礼服:心率感应 LED 装饰,融合 CrazyCircuits 与 DFRobot 传感器
- 自制 16×8 LED 矩阵俄罗斯方块游戏机:Arduino Nano + 74HC595 驱动
- 自制 Arduino 电子宠物「Tamaguino」:复刻经典 Tamagotchi 全攻略
- Arduino Nano + 摇杆控制双步进电机:Visuino 图形化教程
- Arduino 红外遥控宠物喂食器:DIY 套件与完整构建指南
- Arduino Nano 手持盖革计数器:DIY 核辐射检测仪
- Arduino Nano 专用 2.8 英寸 TFT 扩展板 – 320×240 SPI 显示屏
- Arduino Nano 智能 3D 打印宠物喂食器:定时、防卡粮、断电补喂
- 手把手打造Arduino Nano喂食机器人


