DIY : Distributeur automatisé de croquettes pour chat

image principale DIY : Distributeur automatisé de croquettes pour chat

Difficulté:

Ce tutoriel vous propose de fabriquer un distributeur automatisé de croquettes pour chats ou chiens permettant de réguler les repas de vos animaux, même lors de vos absences. Son principe est très simple : une vis d’Archimède entraînée par un moto-réducteur permet d'acheminer des croquettes de la trémie à la gamelle de l'animal. Le tout propulsé par un Arduino Uno Rev3. Par défaut, on peut programmer plusieurs horaires et quantités de distribution. Il peut être adapté en fonction de vos besoins (ex : plus grande capacité de stockage, plusieurs emplacements de gamelles ...) Ce dispositif ne craint pas les coupures de courant et sera toujours opérationnel sans aucune intervention.

Matériel :

Budget : Non défini

Etape 1 : Outillage

Un minimum d'outillage est nécessaire.

Etape 2 : Schéma électronique

L'arduino uno est une carte qui a l'avantage d'être peu onéreuse et qui possède suffisamment de mémoire et d'entrées-sorties pour réaliser ce projet. Pour les moins initiés, elle va nous permettre d'ajouter des fonctionnalités sans trop de soudure et sans connaissances poussées en électronique.


- L'alimentation se fait au travers d'une alimentation type PC portable de 12v matérialisée sur le schéma par un boitier de piles. (fig. 2)

- Un convertisseur 12v doit être branché entre l'alimentation de PC et la carte Arduino afin de garantir une tension stable. Pour ma part, le convertisseur que j'ai utilisé a nécessité un peu de soudure pour relier les câbles d'alimentation. 

Commencez par câbler l'alimentation 12v. Attention à ne pas inverser la polarité car ce module peut se mettre à chauffer. A l'aide d'un multimètre, mesurez le courant en sortie du convertisseur. Réglez le à 9v en tournant la petite vis jaune. (fig. 3)

- Soudez, sur le shield de prototypage, 2 connecteurs empilables à 3 et 4 broches sur {scl-sda-vcc-gnd} et {gnd-vcc-d2-d3} (fig. 4) Ce sont les seuls soudures du montage. On pourrait s'en passer en se branchant directement sur les broches de l'Arduino ou d'un des shields. 

- Enfichez le shield RTC sur la carte Arduino puis le shield de prototypage sur le shield RTC. (fig. 5)

- Connectez l'écran LCD sur le connecteur 4 broches. Respectez le sens de branchement !

- Reliez les boutons à la carte de prototypage sur les broches 6, 8, 11, 12. Un fil vers une entrée de l'Arduino, l'autre vers la masse de l'Arduino.

- Connectez la carte relais au connecteur 3 broches de la carte de prototypage. 2 broches pour le VCC et GND et une broche de pilotage du relais.

- Branchez le moteur sur l'alimentation et la carte relais : A l'aide de dominos, dérivez l'alimentation électrique vers le module convertisseur DC/DC et vers la carte relais. Ceci va nous permettre d'avoir une tension stable aux bornes de l'Arduino lorsque le moteur consomme du courant. Branchez la masse du moteur directement sur la carte relais.

La fig 6 représente le câblage de l'ensemble.


Etape 3 : Le firmware

Téléchargez ou clonez le firmware ici : firmware arduino

Téléchargez l'environnement arduino : https://www.arduino.cc/en/Main/Software

Créez un répertoire "catfeeder" et y copier toutes les sources .h / .ino

Ouvrez le projet via l'environnement arduino et flashez le dans la carte.


Attention :

L’adresse I2C du module LCD est 0x3F (norme 7 bits) : il faut donc vous assurer que votre module correspond bien à cette adresse. 

La datasheet du PCF8574 montre que trois pattes permettent de changer l’adresse. Certains shield peuvent avoir un sélecteur pour la modifier.

Dans le cas contraire, je vous invite à utiliser le sketch Arduino suivant afin de déterminer son adresse i2c. 

Reportez cette valeur dans le code source avant de programmer la carte Arduino. Dans le fichier lcd.ino, modifiez la ligne 15 par :

LiquidCrystal_I2C lcd(ADDRESSE_ICI,16,2);

Etape 4 : Réalisation du chassis

Par soucis de réduction des coûts, j'ai fait le choix d'utiliser des matériaux peu coûteux et dans la mesure du possible de récupération. Ce qui vous laisse une grande liberté dans la construction du boîtier. Le châssis 'bois' à l'avantage d'être facilement ajustable.


- Réalisez les découpes dans les figures suivantes dans le matériau de votre choix. J'ai choisi le contre plaqué d'épaisseur 8mm.

Dimensions :

Face avant - arrière : 30 x 40 cm

Côtés : 30 x 15 cm

Dessus - dessous : 15 x 40 cm


Le schéma n°3 représente les découpes pour la trémie.

Etape 5 : Receveur

L'acheminement des croquettes se fait au travers d'une vis sans fin dans un tuyau de PVC.

- Découpez des encoches 8x3cm sur le tuyau à chaque extrémité. Une face vers le haut, une face vers le bas. (fig. 1)

L'évacuation des croquettes se fait par un second tuyau en PVC .

- Découpez une encoche sur l'extrémité supérieur de façon à laisser passer l'axe principal (fig. 2)

- Découpez la deuxième extrémité de biais en faisant attention à l'angle par rapport au châssis.


Etape 6 : Assemblage

- Assemblez le châssis en commençant par fixer les 4 côtés et l'axe principal (vis sans fin).

- Collez le receveur au châssis à l'aide de la colle à bois en l’emboîtant autour de l'axe.

- Fixez le moteur à la paroi. Positionner une vis avec un roulement de même longueur que l'axe moteur à côté du moteur. Positionnez la courroie et tendez la avec la vis et son roulement. Le tendeur ne doit pas gêner le passage de la courroie. (fig.1, 2 )

- Collez la trémie au châssis en respectant les dimensions de l'encoche. J'ai utilisé du silicone alimentaire pour rendre étanche la trémie. (fig. 3)

- A l'aide de charnières piano, fixez le panneau supérieur. (fig. 7)

- Installez boutons, écran. (fig. 4)

- Collez à la glu le bloc d'alimentation. (fig. 5)

- Fixez chaque carte électronique sur la paroi à l'aide de vis.

- Branchez l'ensemble des éléments. (fig. 6)



Etape 7 : Fonctionnement

Fonctionnement :

A la première mise sous tension, il faut  régler l'heure. Pour cela, appuyez sur le bouton droit afin d'entrer dans le menu. Sélectionnez "Régler horloge" avec les boutons haut ou  bas. Appuyez sur le bouton droit pour valider.

Réglez l'heure en  faisant défiler avec les boutons haut ou bas. Bouton droit pour valider,  bouton gauche pour annuler et revenir au menu principal. Faire la même chose pour régler les minutes.

De la même façon, dans le menu "Régler alarme", vous pouvez choisir de régler jusque 5 alarmes différentes.

Le menu "Donner à manger" permet quant à lui de distribuer une quantité choisie de nourriture.


Après  30 secondes d'inactivité, l'écran s'éteint. Pour le rallumer, une  pression sur le bouton droit suffit. Les 3 autres boutons permettent de distribuer rapidement une quantité choisie de nourriture (haut : grande  quantité, gauche : quantité moyenne, bas : petite quantité)

Les quantités de distribution sont paramétrables directement dans le code source.

Etape 8 : La suite

Les prochaines évolutions possibles sont :

- Contrôle de l'intensité du moteur

- Capteur de présence de gamelle.

- Capteur de remplissage

- Modification des paramètres de quantité depuis l'interface utilisateur

Sources :

http://vdbvincent.github.io/catfeeder/


Super!!! Bien explique!

Tout est rentré dans l'ordre, grâce à l'intervention de l'auteur (Vincent) que je vous invite à suivre et encourager.

D'accord, mais je ne peux pas accéder aux menus autre que les réglages de l'heure. Avez-vous connu ce même problème ?

Sans doute une belle réalisation, ma

Sans doute une belle réalisation, mais je ne peux accéder qu'au seul menu du réglage de l'horloge.

Merci de me documenter si possible.

Bonne journée. 

Que se passe-t-il lorsque vous faites défiler le menu ?

Justement, le menu ne défile pas. Je peux régler la date et l'heure. Mais un appui sur la touche du menu principal, ou même une autre, ne f

Justement, le menu ne défile pas. Je peux régler la date et l'heure. Mais un appui sur la touche du menu principal, ou même une autre, ne fait rien sinon que l'affichage tressaute...

Pardonnez-moi, coupures intempestives sur le site. D'abord, bonjour et merci de votre intérêt. Justement, le menu ne défile pas. Je peux régler la date et l'heure. Mais un appui sur la touche du menu principal, ou même une autre, ne fait rien sinon que l'affichage tressaute...

Bonjour, Je n'ai toujours pas trouvé le problème, pas possible de faire défiler le menu... Au départ, j'ai déjà réalisé une gestion automatisée mais pour des poules. J'utilise un moteur pasàpas ou un DC. A vous lire, j'aurais aimé l'adapter pour la version gérée par horloge. Si j'arrive à débloquer votre programme, j'adapterai mon système et je pourrais le publier sur le site avec les modifications apportées. Pour les poules, la vis sans fin n'est pas adaptée : calages fréquents. Les graines, c'est dur. Ou alors il faudrait un gros moteur qui jouerait le rôle de broyeur... J'ai donc confectionné un distributeur rotatif en croix avec des lamelles en caoutchouc en bout des croix. Plus de coincements. Si cela intéresse certains, je peux prendre des photos du distributeur seul et les publier, mais je ne sait pas encore comment publier des photos sur ce site. Bonne journée.

genial! trop bon ce petit projet!

Bonjour,

Depuis 3 jours J'essaye vainement de compiler le sketch fourni sur le zip du github. Impossible d'aller jusqu'au bout à cause d'erreurs de librairie *.h.
 Je clique sur le programme "catfeeder.ino" , (tous les programmes et les *.h sont sans le même dossier comme indiqué). par exemple le compil me réclame un queuearray.h (que j'ai trouvé sur le git hub : Queuerarray-master.zip) et mis en librairie separée par le gestionnaire de arduino.ide   et dès le  lancement de la compilation par arduino.ide , j'ai un message d'erreur suivi de l'arret indiquant qu'il n'a pas trouvé les librairies!
 je suis complètement bloqué!
 pour info je debute sur arduino, avec arduino.ide sous ubuntu 20.04.
 avec mes remerciements...

J'ai poursuivi mes essais; la version arduino.ide chargée par la mise à jour est une 2.1.2. semble t il incompatible des librairies standards considéere comme anciennes. J'ai donc installé une  1.8.16.

alors ce sont d'autres problèmes! Si on compile, on s'appercoit que des erreurs nouvelles apparaissent avec les librairies! des variables ne sont pas compatibles avec les librairies qui ont evoluées dans le temps! Le programme catfeeder.ino  a manifestement été écrit en 2018. les librairies ont évolué depuis et ne sont plus compatibles du compilateur!

dommage car ce programme etait interessant!


Ces tutoriels devraient vous plaire

vignette Arduino Uno - Capteur d'humidité au sol.
Arduino Uno - Capteur d'humidité au sol.
vignette L’imprimante 3D pour 60€: EWaste
L’imprimante 3D pour 60€: EWaste
vignette Arduino et Porte automatique de poulailler
Arduino et Porte automatique de poulailler
avaatar vincent.vdb

vincent.vdb

Suivre

Vues: 8053
Mis en favoris: 29

Découvrez d'autres tutoriels de

vincent.vdb

Découvrez tous les tutoriels partagés sur Oui Are Makers

Powered by Oui Are Makers