Table of Contents
Perché costruire un alimentatore automatico per animali?
I sistemi di alimentazione automatica degli animali domestici si sono spostati da gadget di lusso a quasi-essenziale per i proprietari che gestiscono programmi, viaggi o animali domestici che richiedono regimi di alimentazione precisi. Utilizzando una piattaforma di microcontrollore per costruire il proprio alimentatore ti dà il controllo completo sulle dimensioni delle porzioni, tempi e connettività senza contare su sistemi proprietari che potrebbero non adattarsi alle esigenze specifiche del tuo animale domestico.
Oltre alla convenienza, un alimentatore a base di microcontroller è una solida introduzione ai sistemi incorporati nel mondo reale. Imparerai ad integrare sensori, attuatori e moduli di comunicazione, risolvendo un problema pratico. Questo articolo passa attraverso il processo completo, dalla selezione dei componenti alla prova finale, in modo da poter costruire un alimentatore affidabile adatto al tuo ambiente e ai requisiti di salute del tuo animale domestico.
Che cosa è un microcontroller e perché si occupa di alimentazione degli animali domestici?
A differenza di un computer generico, contiene un processore, una memoria e periferiche di ingresso/uscita programmabili su un singolo chip, che lo rendono ideale per il controllo dell'hardware come motori, sensori e display con un consumo energetico minimo e basso costo.
Per un alimentatore automatico, il microcontrollore agisce come cervello. Legge l'ora corrente da un orologio in tempo reale, controlla se è programmato un evento di alimentazione e invia i segnali appropriati a un motore per rilasciare cibo. Può anche monitorare i sensori per rilevare quando la tramoggia è in esecuzione bassa o se l'animale ha effettivamente mangiato la parte dismessa. Lo stesso chip può gestire la comunicazione Wi-Fi in modo da poter controllare lo stato di alimentazione dal telefono.
Le piattaforme più popolari per questo tipo di progetto includono Arduino, che offre un ecosistema amichevole principiante con ampie librerie, e il ESP32, che aggiunge Wi-Fi integrato e Bluetooth ad un prezzo simile.
Ripartizione completa dei componenti
La costruzione di un alimentatore affidabile richiede più di un semplice microcontrollore e un motore. Ogni parte deve lavorare insieme sotto il carico meccanico di chibble e il carico elettrico di funzionamento prolungato. Di seguito è un'occhiata dettagliata di ogni componente, che cercare quando l'acquisto, e potenziali insidie per evitare.
Scheda di microcontrollore
Scegli una scheda con i pin I/O digitali sufficienti per gestire un driver motore, modulo orologio in tempo reale, ingresso sensore e modulo di visualizzazione o comunicazione opzionale.Per un alimentatore di base, è sufficiente un Arduino Uno o Nano. Se si desidera un monitoraggio remoto senza aggiungere un modulo Wi-Fi separato, una scheda ESP32 DevKit è una scelta migliore.
Motore e driver
I motori Servo sono la scelta più comune per i alimentatori fai da te perché sono economici, facili da controllare con le librerie Arduino standard, e offrono una coppia sufficiente per ruotare un piccolo tamburo o aprire un portello. Tuttavia, i servocomandi a rotazione continua richiedono un'attenta taratura per fermarsi alla posizione giusta. I motori Stepper forniscono un controllo più preciso sulla quantità di cibo erogato e sono meno propensi a passare nel tempo, ma hanno bisogno di un bordo del driver dedicato come il DR88.
Dispensare il Meccanismo
Il design meccanico determina come scorrere in modo affidabile il cibo. I due approcci più comuni sono il tamburo rotante e la vite auger. Un tamburo con scomparti che si allineano con un'apertura funziona bene per il chibble secco di dimensioni uniformi. Una vite auger è migliore per il cibo a forma irregolare ma richiede una lavorazione più precisa. È possibile stampare queste parti o riutilizzare un contenitore di plastica con un coperchio che ruota.
Modulo orologio in tempo reale
L'accuratezza di Scheduling è essenziale per gli animali domestici che si aspettano cibo in un momento specifico. Il modulo di orologio DS3231 in tempo reale è altamente accurato e compensa la deriva della temperatura, mantenendo il tempo in pochi minuti all'anno anche senza una connessione di rete. Il più economico DS1307 funziona ma è più incline alla deriva.
Alimentazione elettrica
Un alimentatore USB 5V 2A funziona per un alimentatore basato su Arduino con un singolo servo, ma se si aggiunge un motore stepper o un modulo Wi-Fi che rimane attivo, si può avere bisogno di un alimentatore da 12V con una guida 5V regolamentata per il microcontrollore.
Sensori di pesatura e livello
Un sensore di peso sotto la ciotola alimentare può rilevare se l'animale domestico ha mangiato la porzione erogata. Una cella di carico di 5 kg abbinata ad un amplificatore HX711 è una scelta comune. Per il monitoraggio del livello di tramoggia, un sensore laser a tempo di volo VL53L0X o un semplice sensore di rottura a infrarossi può indicare quando il cibo è in esecuzione bassa.
Modulo di comunicazione e Wi-Fi
Se si sceglie un Arduino Uno o una scheda simile senza rete integrata, aggiungere un modulo ESP-01 o NodeMCU per inviare notifiche tramite Wi-Fi. L'architettura tipica utilizza l'Arduino per controllare il feeder localmente mentre il modulo ESP comunica con un servizio cloud o una rete locale. In alternativa, utilizzare un ESP32 come controller principale per eliminare la necessità di un modulo separato.
Progettazione del Meccanismo di Dispensing per Affidabilità
Se la batteria si blocca la rotazione media, il vostro animale potrebbe perdere un pasto, o peggio, il motore potrebbe bruciare. Quando si progetta il meccanismo di tramoggia e di erogazione, tenere a mente i seguenti principi.
Scegli il materiale giusto. Il filamento PLA per la stampa 3D è sicuro per il cibo per il kibble secco, ma può assorbire l'umidità nel tempo e diventare fragile. PETG o polipropilene alimentare sono scelte migliori per uso a lungo termine. Se si utilizza un contenitore di plastica dalla cucina, assicurarsi che sia privo di BPA e facile da sanitizzare.
Calcola il volume per rotazione. Sapere esattamente quanto kibble una rivoluzione completa o un'oscillazione di 180 gradi dispensa. Questo consente di impostare le dimensioni delle porzioni programmaticamente piuttosto che indovinare. Pesare un campione di kibble e misurare il volume spostato dal vostro tamburo o auger per stabilire un rapporto affidabile grammi per grado.
Include una funzione anti-ponte. Kibble può formare archi all'interno della tramoggia, impedendo la gravità di alimentare il distributore. Un semplice fondo di tramoggia a forma di cono con un'ampia apertura riduce il collegamento. Per un piccolo kibble, un agitatore rotante attaccato allo stesso motore può rompere qualsiasi arco prima di fermare il flusso.
Prova una porta pulita. Nel tempo, la polvere e il kibble rotto si accumulano nel meccanismo.Progettare una copertura rimovibile o una hatch che ti dà accesso alle parti rotanti senza smontare l'intero alimentatore. Pulire il meccanismo ogni due settimane per evitare l'accumulo che può causare marmellate o attirare parassiti.
Processo di costruzione passo-passo
La seguente sequenza ti porta da un panno nudo a un alimentatore funzionante. Regolare i numeri specifici del perno e gli angoli motore in base ai componenti scelti e al design fisico.
Passo 1: Fili il driver del motore e Orologio in tempo reale
Collegare il servo o il motore stepper alla fonte di alimentazione appropriata e i perni di segnale sul microcontrollore. Per un servo, il cavo di controllo (solitamente giallo o bianco) si collega a un perno PWM-capable come il perno 9 su un Arduino. Il cavo di alimentazione (rosso) si collega a 5V, e il cavo di terra (marrone o nero) si collega a GND.
Fase 2: Scrivere la logica di Scheduling
Inizializzare la RTC nel codice e impostare l'ora corrente manualmente tramite ingresso seriale o automaticamente utilizzando un server NTP se si dispone di Wi-Fi. Conservare i programmi di alimentazione in un array o in EEPROM in modo da persistere dopo la perdita di potenza. Un tipico programma di alimentazione potrebbe includere l'ora, il minuto e la dimensione della porzione in secondi di attivazione del motore o gradi di rotazione.
Passo 3: Implementare la routine di erogazione
Quando il programma si attiva, attivare il motore per spostare il meccanismo di erogazione attraverso la sua gamma calibrata. Per un tamburo a base di servo, utilizzare una lenta spazzata dalla posizione chiusa alla posizione aperta e indietro per evitare di gettare il chibble fuori dalla ciotola. Per un motore stepper, impostare la velocità e il numero di passi in base alla porzione desiderata. Dopo aver sospeso, attendere alcuni secondi per il cibo per sistemare e poi restituire il meccanismo alla posizione chiusa del motore.
Passo 4: Integrare il sensore di peso per la conferma
Place the food bowl on a platform supported by a load cell. Use the HX711 library to read the weight before and after dispensing. If the weight difference is less than 80% of the expected portion, trigger a refill or send a warning. This feedback loop catches cases where the mechanism jammed or the bowl was moved. It also lets you track how much your pet has eaten over the day, which is useful for detecting appetite changes that could indicate health issues.
Passo 5: Aggiungi connettività e notifiche
Se si utilizza un ESP32, si integra una connessione Wi-Fi e si imposta un client MQTT o HTTP leggero per pubblicare eventi di alimentazione su un server locale o su un dashboard cloud. È inoltre possibile inviare notifiche push tramite servizi come IFTTT o Blynk. Per un approccio più semplice, utilizzare l'ESP32 per servire una pagina web di base che mostra gli ultimi tre tempi di alimentazione, il livello di tramoggia attuale e un pulsante per attivare un sistema di visualizzazione indeman.
Passo 6: costruire e testare la custodia
Montare tutti i componenti all'interno di un contenitore resistente alle intemperie, soprattutto se il alimentatore sarà utilizzato su un portico o in un garage. Lasciare le griglie di ventilazione vicino all'alimentazione e al microcontrollore per evitare il surriscaldamento. Assicurarsi che la tramoggia alimentare sia sigillata contro insetti e roditori.
Modelli di programmazione per un'operazione robusta
Il firmware ben scritto separa il feeder da un giocattolo, i seguenti modelli ti aiuteranno ad evitare errori comuni che affliggono i feeder fai da te.
] Utilizzare ritardi non bloccanti. La funzione [] interrompe l'elaborazione, il che significa che il microcontrollore non può controllare la RTC o rispondere agli input dei sensori mentre il motore si muove. Invece, utilizzare per monitorare il tempo trascorso e inondare l'orario corrente contro il programma su ogni iterazione del ciclo.
Implementa un timer di watchdog. I microcontroller possono congelare a causa di rumore elettrico, scarico statico, o codice buggy. Abilitare il timer di watchdog incorporato per ripristinare la scheda se il programma smette di rispondere.
Store del programma in memoria non volatile.[ EEPROM o memoria flash dovrebbe tenere il programma di alimentazione e le dimensioni delle porzioni in modo da non dover riprogrammare la scheda dopo ogni ciclo di alimentazione. Includere una modalità di configurazione che consente all'utente di aggiornare il programma tramite comandi seriali o un'interfaccia semplice del pulsante senza ricompilare il firmware.
Agri errori di seriale o di buffer circolare. Quando si verifica un banco motore, una lettura del sensore non riesce, o un timeout di comunicazione accade, scrivere un codice di errore timestamp alla memoria. Se si collega il feeder a un computer o un cruscotto di registrazione in seguito, è possibile rivedere gli eventi per identificare i modelli che portano a guasti.
Calibrazione delle dimensioni della porta e delle soglie del sensore
Un alimentatore che eroga porzioni inconsistenti mina lo scopo dell'automazione. La calibrazione è un processo multi-step che dovrebbe essere ripetuto quando si scambiano i marchi di kibble o dopo che l'usura meccanica cambia l'attrito nel dispenser.
Correte senza kibble. Misurate l'angolo del servo o il numero di passi stepper necessari per passare da completamente chiuso a pieno aperto. Assicuratevi che il meccanismo si fermi esattamente alla stessa posizione ogni volta. Se si utilizza un servo di rotazione continua, calibrate la larghezza di impulso neutro in modo che il motore si fermi completamente quando si è inattivo.
Pesare cinque porzioni consecutive. Programmare il alimentatore per dispensare la stessa porzione cinque volte e pesare ogni porzione. Calcola la media e la deviazione standard. Se la deviazione standard è più del 15% della media, regolare il meccanismo. Le cause comuni di variazione sono pezzi di ciottoli che si rompono in modo irregolare, un tamburo sciolto che si appia o velocità del motore inconsistente.
Aggiungi la dimensione della porzione nel firmware. Una volta che conosci il peso medio per grado o per passo, memorizza il fattore in EEPROM. Nella routine di erogazione, moltiplicare la porzione desiderata per questo fattore per calcolare il movimento del motore. Ad esempio, se 1 grado di rotazione eroga 0,8 grammi e si desidera una porzione di 30 grammi, il motore deve ruotare 37.5 gradi.
Impostare la soglia di convalida del sensore di peso. Dopo aver sospeso, controllare il peso della ciotola. Se l'aumento è inferiore all'80% della parte prevista, assumere una marmellata e riprovare una volta. Se la riprova fallisce, saltare l'alimentazione, registrare un errore, e inviare una notifica.
Gestione e strategie di backup della batteria
Un alimentatore automatizzato che perde potenza durante un viaggio d'affari può causare stress sia per l'animale domestico che per il proprietario.
Potenza primaria con il backup della batteria.[] Utilizzare un adattatore 5V o 12V alimentato a rete come fonte primaria. Collegare l'uscita dell'adattatore al microcontroller attraverso un diodo Schottky per evitare il backflow. Collegare un pacchetto della batteria o una banca di alimentazione allo stesso ingresso attraverso un altro diodo.
L'alimentazione a bassa potenza tra gli alimenti. I moduli Wi-Fi disegnano 80 mA o più quando sono attivi. Se il tuo alimentatore non ha bisogno di essere sempre raggiungibile, metti l'ESP32 in sonno profondo tra gli alimenti e sveglialo solo per controllare il programma o rispondere a una pressione del pulsante.
Livello batteria del motorino.[] Utilizzare un divisore di tensione sull'ingresso della batteria per alimentare un pin analogico. Se la tensione della batteria scende sotto una soglia durante un controllo di alimentazione programmata, inviare un avviso prima che la batteria si esaurisca completamente.
Caratteristiche di sicurezza e sicurezza
Gli animali domestici non possono dirvi quando il alimentatore è malfunzionante, la costruzione di sicurezza non riuscita protegge sia l'animale che l'hardware.
Il rilevamento del rumore attraverso il rilevamento della corrente del motore] Monitora la corrente disegnata dal motore durante l'operazione. Un motore bloccato disegna una corrente significativamente più alta del normale movimento. Utilizzare un modulo sensore corrente come l'ACS712, o semplicemente monitorare la caduta della tensione attraverso una resistenza a shunt. Quando la corrente supera una soglia per più di 500 millisecondi, fermare il motore immediatamente e registrare un evento di plastica.
Pulsante di sovrascrittura manuale. Montare un pulsante fisico sull'armadio che innesca un'alimentazione immediata. Il pulsante dovrebbe funzionare anche se il programma principale è occupato, quindi collegarlo a un perno di interruzione. Questo ti dà un modo per alimentare il tuo animale manualmente senza aprire l'app o accedendo all'interfaccia web.
Rispondete alla fermata meccanica e alla posizione. Collegate un sensore microinterruttore o effetto sala per rilevare la posizione iniziale del tamburo o dell'auger. Dopo ogni movimento del motore, ritornate alla posizione iniziale e verificate i trigger del sensore. Se il sensore non si attiva dopo un numero ragionevole di passaggi, assumete che il meccanismo sia bloccato e arrestate ulteriori operazioni fino a quando un umano non interviene.
Zona non consumata durante le ore di pernottamento. Implementa un blocco software che impedisce il dispendio accidentale durante una finestra quando l'animale non deve mangiare, come ad esempio la notte tarda. Questo protegge dagli errori di pianificazione o dalle presse a pulsante accidentali che potrebbero interrompere la routine digestiva dell'animale domestico.
Caratteristiche avanzate Worth Implementing
Una volta che il alimentatore di base funziona in modo affidabile, considerare l'estensione del sistema con le capacità che migliorano la convenienza o fornire informazioni sulla salute.
Profili pasto multipli. Creare programmi diversi per i giorni feriali rispetto ai fine settimana, o per animali diversi se si dispone di più di uno. Conservare questi profili in EEPROM e consentire la selezione attraverso un pulsante o un'interfaccia web.
Integrazione Camera.[] Un Raspberry Pi Zero 2 W che esegue un modulo della fotocamera può catturare un'immagine ancora prima e dopo l'alimentazione. Inviare l'immagine a un secchio cloud o NAS locale in modo da poter verificare il cibo è stato mangiato.
Monitoraggio ambientale. Aggiungi un sensore di temperatura e umidità DHT22 all'interno della tramoggia. Il kibble secco può rovinare se conservato in alta umidità o ad alta temperatura. Se il sensore rileva le condizioni che superano le soglie di stoccaggio sicure, invia un avviso in modo da poter spostare il cibo in una posizione più fredda.
Voice o NFC attivazione.] Utilizzare un modulo microfono con un semplice rilevatore di parole chiave, o un lettore di tag NFC, per consentire l'alimentazione delle richieste dall'animale domestico (se addestrato).
Analisi dei costi: fai da te contro i feeder commerciali
Prima di impegnarsi a costruire fai da te, consideri il costo totale e l'investimento nel tempo. Un alimentatore automatizzato di base da un importante marchio di animali domestici costa tra $60 e $150, con caratteristiche come la pianificazione, il controllo delle porzioni, e talvolta Wi-Fi. Un alimentatore fai da te con caratteristiche simili costa tipicamente $40 a $ 80 in parti, non compresi gli strumenti come una stampante 3D o una stazione di saldatura.
Quando un alimentatore commerciale si rompe, spesso è necessario sostituire l'intera unità. Con un alimentatore fai da te, è possibile scambiare un servo o riflash il firmware con un nuovo programma. Inoltre, evitare ecosistemi di app proprietari che possono smettere di essere supportati dopo pochi anni.
Protocollo di prova prima della completa distribuzione
Non fidatevi del alimentatore con i pasti regolari del vostro animale domestico fino a quando non ha superato una sequenza di test strutturata.
Stage 1 — Test di banco senza cibo:[ Eseguire il dispenser per 50 cicli senza kibble. Verificare che il motore ritorni alla posizione domestica ogni volta. Misurare l'estrazione corrente per confermare che rimane all'interno spec. Verificare che il tempo di RTC rimane preciso dopo il test.
Stage 2 — Prova di cibo a breve durata:[ Riempire la tramoggia con un giorno di pepe. Programma tre alimentazioni oltre quattro ore. Verificare manualmente che la porzione corretta appare nella ciotola dopo ogni evento. Pesare la ciotola prima e dopo ogni alimentazione per confermare l'importo distribuito corrisponde al valore programmato entro il 10%.
Stage 3 — 72 ore di funzionamento continuo:[[] Impostare il alimentatore per distribuire quattro pasti al giorno per tre giorni. Non intervenire a meno che non si verifichi un errore critico. Dopo la prova, ispezionare il meccanismo per l'accumulo di polvere di chibble, controllare la temperatura del motore e verificare il tempo RTC contro un orologio di riferimento.
Stage 4 — Controllo Appetite con il tuo animale domestico: Usa il alimentatore per un giorno intero mentre sei a casa. Osserva se il tuo animale si avvicina alla ciotola quando il distributore si attiva e se l'animale finisce la porzione. Alcuni animali sono avvitati dal rumore di un servo o dal rumore del chiocciolo. Se il tuo animale sembra ansioso, regolare la velocità del motore o aggiungere un contenitore di suono.
Conclusioni
Costruire un sistema di alimentazione automatica per animali con microcontrollore è un progetto gratificante che produce un dispositivo veramente utile su misura per le abitudini e il programma del tuo animale domestico. Selezionando i componenti giusti, progettando un meccanismo di erogazione affidabile e implementando un firmware robusto con controlli di sicurezza, puoi creare un alimentatore che opera costantemente per mesi senza intervento.
Inizia con una versione semplice utilizzando un Arduino e un singolo servo, quindi gradualmente aggiungere il rilevamento del peso, le notifiche remote e il backup della batteria come la vostra fiducia cresce. Il vostro animale domestico beneficerà del programma di alimentazione coerente, e si otterrà la pace della mente che deriva dal sapere che il sistema è completamente sotto il vostro controllo.