bandeau

Gestion automatique d'une trappe de poulailler



Mes poules sont beaucoup plus matinales que moi, je cupabilise de les laisser enfermées parce que je suis un lève-tard. Je leur ai fait une trappe automatique qui s'ouvre aux premières lueurs du jour et se ferme au coucher du soleil.


Petit coin de paradis pour poulettes, elles pourront se balader à l'intérieur de leur enclos dés le lever du jour en attendant que je vienne en baillant leur donner accès au terrain.


Poulailler




On a fait un deal: je leur fait un super poulailler 2.0 et elles me remboursent en nature.


Poulailler




Le projet paraît à priori assez simple, on mesure la lumière extérieure avec une LDR et on commande la trappe en fonction, que nenni, il s'avère finalement un peu plus complexe que prévu. Il s'agit d'êtres vivants et je me dois de penser à tous les cas de figure possibles, pas question de prendre le risque de laisser mes poulettes bloquées dehors à la merci des prédateurs pendant une absence prolongée. Pas de souci pour le réveil mais la trappe doit se fermer impérativement quand elles sont rentrées au bercail, heureusement contrairement à moi ce sont des couche-tôt, le seuil de déclenchement des LDR sera paramétrable.

La simplicité aurait été d'utiliser une seule LDR pour la mesure de la lumière ambiante à l'extérieur du poulailler mais j'ai préféré en mettre deux chacune ajustable sur une plage de 1v, ce qui m'a permis de peaufiner indépendamment le moment de l'ouverture et celui de la fermeture. Ce choix complique un peu l'algorithme mais apporte un confort d'utilisation. La position de la trappe Le tout est géré par un PIC 16F88 programmé en assembleur. J'ai rajouté une fonction pour avoir la possibilité de fermer la trappe avant la nuit, il fallu prendre en compte le fait que lors de cette manipulation il fait toujours jour et ne doit pas remonter, elle ne doit s'ouvrir que le lendemain matin au lever du jour. Donc déclaration de flags qu'on surveillera dans le programme.
Le poulailler se trouvant assez éloigné de la maison il est alimenté par un panneau solaire, un régulateur de charge qui gère une batterie de moto 12v. Le moteur utilisé est un 12vcc 30Rpm. La position de la trappe est validée par deux micro-rupteurs, un haut et un bas, il faut prendre en compte le fait que lors du mouvement montée/descente à un moment donné les deux micr-rupteurs ne sont pas validés. Le driver moteur est un module L298.





------------------------------------------------------------------------------ Poulailler V.1 ------------------------------------------------------------------------------






Poulailler

A priori sans penser plus avant on pourrait se dire qu'il suffit que la LDR detecte la nuit pour baisser la trappe, puis détecte le jour pour la lever... çà ne fonctionne pas aussi simplement. Quand la trappe arrive en haut il faut détecter la position pour couper le moteur, quand elle arrive en bas détecter pour couper le moteur, donc deux micro-rupteurs, dés que l'un est enfoncé le moteur coupe. Si celui du bas est validé on sait qu'il faut monter, si c'est celui du haut il faut descendre, mais quand elle est en mouvement pour monter ou descendre les deux micro-rupteurs sont libres, comme on ne peut pas se contenter des états des microrupteurs il faut utiliser des variables (VarJour et VarNuit), qui sont en fait les bits 0 et 1 de la variable Lumi.
J'ai rajouté une fonction pour pouvoir fermer volontairement la trappe en plein jour par appui sur un poussoir, on borde les poulettes, on leur raconte une histoire, bisou et on éteint la lumière. Mais comme la LDR détecte encore le jour il ne faut pas que la trappe se relève aussitôt, la variable 'Forcage' (bit 3 de la variable Lumi) est là pour çà, la trappe ne doit se relever que le lendemain matin au lever du jour.


La bonne gestion d'une trappe de poulailler n'est donc pas aussi simple qu'on pourrait le penser de prime abord, l'algo est assez étoffé pour respecter toutes ces conditions:


Poulailler

Tournage de la poulie d'entraînement de la trappe.


Poulailler

Boitier construit avec des chutes qui traînaient dans l'atelier.


Poulailler

Agencement intérieur, il manque le PCB. Le boitier bleu c'est le régulateur de charge du panneau solaire.


Poulailler

Pour la mise au point sur platine d'expérimentation j'ai construis un petit simulateur de trappe avec deux micro-rupteurs prélevés dans un four micro-ondes. La languette en bois coulisse pour simuler la trappe presse sur l'un ou l'autre microrupteur.


Poulailler

Le projet est développé sur ma platine d'expérimentation V.3, les deux LDR sont placées dans le tube en carton pour pouvoir simuler simplement le processus nuit/jour.


Poulailler


Le programme du 16F88:






Projet validé sur table, reste à graver le PCB et procéder à l'installation sur place.








------------------------------------------------------------------------------ Poulailler V.2 ------------------------------------------------------------------------------






Le système à été installé dans le poulailler et les premiers vrais essais en place effectués.
Cà fonctionne mais il y a un petit hic. Le matin la trappe s'ouvre bien d'elle-même aux premières lueurs du jour et reste sagement en haut toute la journée, par contre le soir pendant la période "entre chiens et loups" la trappe effectue des aller-retours incessants jusqu'à la nuit noire, moment ou elle se stabilise en position fermée. Chose que je n'avais pas envisagée aux essais sur table ou je simulais la tombée de la nuit par une tension fixe.

Réfléchissement Jean-Pierre... le souci vient du fait de la zone non définie entre un état bas et un état haut, en logique TTL l'état bas est compris entre 0 et 1,4v et l'état haut entre 2,4v et 5v. Entre 1,4v et 2,4v c'est une zone transitoire, un No Man's Land et mon programme qui était assez intolérant fonctionnait ainsi: état bas: trappe ouverte, état haut: trappe fermée, dans la zone transitoire il ne savait plus ou il campait et faisait n'importe quoi. J'aurai pu laisser les choses dans l'état et la trappe aurait bien fini par se fermer définitivement au seuil de nuit noire mais l'idée est de faire un système confortable pour les poules, pas une guillotine. Il faut aussi penser à l'usure du moteur.


Sur la version V.2 j'utilise le convertisseur analogique digital du 16F88 (ce petit PIC est fabuleux !!!) pour déclencher la trappe sur des valeurs bien définies. A telle valeur de consigne (declenchLever) on ouvre la trappe, elle le reste jusqu'à passer par l'autre valeur (declenchCoucher), moment ou on la referme, sinon on ne fait rien. Il faut repenser le PCB car les pins qui étaient dédiées aux LDR ne sont pas A/D. De plus avec cette méthode une seule LDR suffit.


Nouvel algorithme, l'appel à la tempo100ms est finalement inutile et n'est pas implémenté:


Poulailler

Schéma V.2:


Poulailler



Programme V.2, fonctionnel sur table. Cette fois j'ai simulé la LDR avec un pot 10K pour ne pas me faire avoir une deuxième fois. Tous les nop ne servent à rien, ils étaient utilisés pour poser des points d'arrêt lors de la mise au point du programme et j'ai oublié de les enlever. Ca marche aussi bien avec.






Pour ceux qui ne seraient pas familier avec le code assembleur ou pas en mesure de le compiler voici le code hexa du programme:








La trappe équipée de ses deux micro-rupteurs.


Poulailler

Le boitier équipé du nouveau PCB.


Poulailler

La cellule LDR placée à l'extérieur à l'abri des intempéries et le panneau solaire sur le toit.


Poulailler

Il y a deux cellules, vestige de la première version, une seule est fonctionnelle dans la version V.2


Poulailler

A demain de bonne heure...


Poulailler




------------------------------------------------------------------------------ Poulailler V.3 ---------------------------------------------------------------------------






Le système fonctionne à merveille, au petit jour la trappe se lève automatiquement, ces demoiselles sortent dans leur enclos et je les libère dans la matinée pour qu'elles ailles balader sur le terrain. Le soir la trappe se ferme à la tombée de la nuit, moment ou ces couche-tôt de poules sont déjà rentrées. Dans la journée la trappe reste levée, les poules peuvent ainsi aller faire leurs oeufs, manger et boire à l'intérieur.
Pour le fun, histoire de faire un nouveau projet je vais tester un autre système en gardant le déclenchement du matin mais la fermeture du soir ne se faisant qu'à la condition que les deux poules soient perchées sur leur barre.
Pour cela je vais placer un capteur de pression sous chaque extrémité du perchoir, montés en pont diviseur les tensions issues seront traitées par le convertisseur A/D du PIC.




---o0O (#) O0o---



Les capteurs de pression se présentent comme de petites espèces de languettes plastifiées qui semblent assez fragiles. Ceux que j'ai reçu de Chine (sans aucun marquage) présentent une résistance infinie qui diminue à quelques centaines de Kohms si exerce une pression sur leurs surfaces. Pour augmenter leur durée de vie et avoir une pression uniforme j'ai usiné deux petits corps avec un piston qui pressera bien verticalement. L'alu n'étant pas le top en ce qui concerne le glissement j'ai chemisé et usiné chemise et piston en laiton.


Poulailler

Taille des pistons par rapport à une fraise tagada:


Poulailler

Le capteur est collé sur le corps alu par une goutte de superglue.


Poulailler

Capteurs insérés sous le perchoir


Poulailler

Ca fonctionne mais la répétabilité n'est pas au rendez-vous malgré ponçage et frottage à la parafine des extrémités de la barre et des supports muraux. J'ai fais une version améliorée du système en fixant la barre perchoir directement sur les pistons et pour le coup çà va beaucoup mieux.


Poulailler

C'est nettement mieux avec ce système, les capteurs donnent une centaine de Kohms avec le poids de la barre vide, la résistance baisse en appuyant et revient aux environs des mêmes valeurs en relâchant. Reste à faire des mesures sur quelques soirs pour relever les valeurs des capteurs avec une poule perchée, puis deux poules perchées.


Poulailler

Petite amélioration pour la répétabilité, la barre remontait entre 80k et 100k à vide, encore quelques frottements. Un système à ressort d'imprimante placé de chaque coté lui fournit une petite aide à la remise en place, il est taré à la limite de la tension, juste pour donner un petit coup de pouce à la remontée.

Poulailler


---o0O (#) O0o---




Projet barre suspendue abandonné !!!!


Pas pour une cause technique, tout était pratiquement abouti, la méca du perchoir était validée, les mesures avec perchoir vide, une poule perchée, deux poules perchées étaient probantes, l'implantation de la nouvelle carte était prête, les câbles tirés, il ne restait plus qu'à faire quelques modifs au programme, cerise sur le gâteau. Dommage c'était un projet passionnant.
C'est les poules qui en ont décidé autrement, je suis un newbie en technologie poule et quand on les a achetées je n'ai pas fait la différence entre poules pondeuses et poules couveuses. Il se trouve que les notres sont les deux, qu'elles aiment çà, et Carla est en train de nous faire sa crise. Elle s'est mise à couver à longueur de journée, ses oeufs, ceux de Brigitte et elle continue même sans oeufs quand je lui les enlève, il faut que je la prenne en poids et en volume pour la mettre dans le champ et qu'elle aille se nourrir, pas longtemps car elle repart vite couver à vide. Et cette situation risque de se reproduite n'importe quand, il parait qu'elles font çà de temps en temps. Du coup le soir j'ai Brigitte perchée et Carla qui couve sur son lit de paille. Donc pas bon, le système exigeant la condition des deux perchées pour baisser la trappe ne peut plus fonctionner correctement avec ce souci, je ne vais pas prendre le risque de laisser le poulailler ouvert la nuit à la merci des prédateurs.


Le poulailler continue de fonctionner avec la LDR qui ouvre au petit jour et ferme à la nuit, çà au moins c'est fiable.





------------------------------------------------------------------------------ Poulailler V.2.01 ------------------------------------------------------------------------------



Quelques petites modifications mineures.


Tout le système à très bien fonctionné pendant toute la belle période de l'été et début d'automne, les limites sont arrivées dès les mauvais jours. Le manque de luminosité en hiver ne suffisait plus à alimenter les panneaux solaires et la batterie ne chargeait plus assez, ces batteries au plomb n'étant pas conçues pour se vider complètement la mienne est rapidement devenue H.S et elle ne tenait plus la charge. J'aurai pu la remplacer par une batterie au lithium mais les tarifs m'ont fait reculer. J'ai résolu le problème en faisant une tranchée et enterrer une gaine entre le poulailler et mon atelier pour amener le secteur et m'affranchir du système panneaux/batterie.
AVANTAGE: je ne suis plus limité par le faible débit des panneaux solaires et je vais pouvoir me pencher sur un distributeur automatique de grains couplé au système d'ouverture. Le jour et la trappe se lèvent: une ration pour deux poules est distribuée.
INCONVENIENT: En cas d'absence on est dépendant d'une coupure de courant, les poules risquent de ne pas apprécier.


Autre petit déboire: La LDR à progressivement changée de valeur, sa résistance max (nuit) à progressivement baissé de 350K à 5K ce qui évidemment perturbait le bon fonctionnement, achetée sur Aliexpress, pratique mais la qualité n'est pas toujours au rendez-vous. Je l'ai remplacée et la nouvelle semble vouloir faire le job. J'en aussi profité pour améliorer le système en remplaçant la résistance R1 du diviseur de tension d'entrée par un potar de 1M, ce qui me permet d'affiner le moment de fermeture de la trappe.


Poulailler
Poulailler
Poulailler






--------------------------------------------------------------------- 3 années après, améliorations sur le hard ---------------------------------------------------------------
Le soft n'a pas changé



La première version était un prototype, après un test sur trois années d'utilisation, j'ai relevé quelques points à améliorer.


L'ancienne trappe guillotine a été remplacée par une plaque en plastique, l'ancienne en OSB avait gonflée avec les pluies incessantes et l'humidité, glissait mal et m'a valu un moteur grillé. La poulie a été modifiée, je lui ai adapté une flasque démontable, plus pratique pour le changement de corde. J'ai déporté la carte électronique qui était mal placée juste en dessous du bloc moteur, pour démonter le moteur on risquait de tordre les pins de branchement des périphériques.
Installation d'un contre-poids pour alléger l'effort du moteur lors de la remontée.


Poulailler

Partie électronique


Gravure d'une nouvelle carte pour remplacer l'ancienne qui avait subie toutes les modifs de mise au point. J'en ai profité pour améliorer certains détails.
Le L298 équipé d'un radiateur plus conséquent lui permettra de mieux vieillir.
Le potentiomètre à été rapporté et était branché avec des pinces croco, c'était plus pratique pour faire les essais de valeur des résistances du pont diviseur cellule/potar/résistance talon fixe (non dessinée sur le schéma), il est maintenant branché proprement sur la nouvelle carte et un petit connecteur SIL permet de changer rapidement la R talon additionnelle sur la carte. Rajout d'un poussoir pour faire une RAZ sur le PIC, plus pratique pour faire des tests que de débrancher l'alim. Abandon du système de charge par batterie/panneau solaire car pas assez de production l'hiver pour la conso normale le poulailler est un peu caché par les arbres, j'ai tiré une gaine enterrée et j'ai maintenant du 230v secteur, depuis le système est alimenté par un petit transfo 230/12vcc. Un inter sur le dessus du boitier permet de couper l'alim.


L'électronique modifiée


Poulailler
Poulailler

Un poulailler placé dans une zone dégagée se fermera plus tard qu'un placé à l'ombre des frondaisons, pour régler ce problème j'ai rajouté une résistance talon facilement remplacable par enfichement dans le circuit diviseur potentiomètre/LDR.


Poulailler

Comment calculer la valeur de la résistance talon ? Les LDR n'ayant pas toutes la même valeur ohmique il faut effectuer des mesures en place de jour et de nuit, la LDR placée dans son futur environnement, des mesures faites en labo n'aurait pas de sens. Pour exemple la mienne mesure 140k la nuit et descend à 1k le jour. Il s'agit ensuite de déterminer la valeur de la résistance talon pour obtenir un niveau 0 de nuit et un niveau 1 de jour pour commander la pin du microcontrôleur. Pour l'explication on ne tiendra pas compte ici des seuils TTL, de toute façon vu le delta de variation c'est peanuts, on passera forcément dans la fourchette
Nuit=140k et niveau 0 pour monter la trappe, jour=1k et niveau 1 pour baisser la trappe, il faut trouver une Rx qui soit comprise en 140k et 1k de façon à ce que le pont diviseur LDR/(talon+potentiomètre) nous donne le bon niveau TTL au bon moment, j'ai mis une 47k et un pot de 22kohms ce qui nous fait une Rx de 69k, milieu de fourchette et petite plage de réglage pour la lumi de fermeture. R talon =22k et pot de 47k auraient aussi bien marché avec une plage de réglage plus grande.


Sur le schéma ci-dessous Rx désigne l'ensemble (Rtalon+potentiomètre) en série


Poulailler

L'ensemble du système rénové.


Poulailler

L'ancien couvercle du boitier n'était pas pratique, changement de la porte en OSB pour une porte découpée dans une plaque de plastique sur charnières. La led rouge du module L298 diffuse une douce lumière rouge, ambiance bâtiment de guerre de nuit.


Poulailler











---o0O (#) O0o---






Poulailler







retour