Go Down

Topic: Trappe poulaillier sans contacts fin de course (Read 52509 times) previous topic - next topic

Phil073

Re !

Je comprend mieux petit cachottier ! :D
Oupss ! j'ai oublié de préciser que pour que la courbe soit la même que pour le panneau; c'est à dire en cloche, j'ai disposé la LDR( 20 kohm) entre A3 et Vcc et une résistance entre A3 et 0V. (Je n'avais pas fait attention), d'ou le problème d'ouverture- fermeture en boucle que vous avez rencontré.  :smiley-confuse:
De cette manière, vous obtenez la tension aux bornes de votre résistance 150 K et non à celles de la LDR, ce qui explique l'inversion de la courbe qui suit celle de la luminosité... dito le PV.

Dans mon cas, c'est l'inverse (voir croquis joint)

J'ai donc adapté le programme en conséquence :

Séquence d'origine suivant votre code :
Code: [Select]

  //Serial.begin(9600);
  LDR = analogRead(pinldr);
  // Pour forcer la trappe à se fermer la nuit ou a s'ouvrir le jour.
  if (LDR > nuit) {// le jour
    trappe = 1; // fermee
  }
  else  {//la nuit
    trappe = 0; // ouverte
  }
  // active le compteur watchdog pour interruption toutes les 8 secondes
  setup_watchdog(9);
}

void loop() {
  if (rotation == 1) { // moteur tourne
    if ((millis() - debut_blocage) > delai_max) {
      digitalWrite(ouvrir, 0); digitalWrite(fermer, 0);
      trappe = !trappe; rotation = 0; sommeil();
    }
  }
  else  {
    LDR = analogRead(pinldr);
    if (LDR > jour) { // jour
      switch (trappe) {
        case 0 : sommeil(); break;
        case 1 : retard ++; ouverture(); break;
      }
    }//jour
    else {
      retard = 0; // éclairage momentane
    }

    if (LDR < nuit) {
      switch (trappe) {
        case 1 : sommeil(); break; // fermee
        case 0 : fermeture(); break;
      }
    }
  }
}// fin de loop()



Nouvelle séquence adaptée pour mon montage :
Code: [Select]

  //Serial.begin(9600);
  LDR = analogRead(pinldr);
  // Pour forcer la trappe à se fermer la nuit ou a s'ouvrir le jour.
  if (LDR > nuit) {// la nuit
    trappe = 1; // fermee
  }
  else  {//le jour
    trappe = 0; // ouverte
  }
  // active le compteur watchdog pour interruption toutes les 8 secondes
  setup_watchdog(9);
}

void loop() {
  if (rotation == 1) { // moteur tourne
    if ((millis() - debut_blocage) > delai_max) {
      digitalWrite(ouvrir, 0); digitalWrite(fermer, 0);
      trappe = !trappe; rotation = 0; sommeil();
    }
  }
  else  {
    LDR = analogRead(pinldr);
    if (LDR < jour) { // jour
      switch (trappe) {
        case 0 : sommeil(); break;
        case 1 : retard ++; ouverture(); break;
      }
    }//jour
    else {
      retard = 0; // éclairage momentane
    }

    if (LDR > nuit) {
      switch (trappe) {
        case 1 : sommeil(); break; // fermee
        case 0 : fermeture(); break;
      }
    }
  }
}// fin de loop()



Ne vendons pas la peau de l'ours avant de l'avoir tué... je laisse en test pendant 2 ou trois jours avant montage définitif en place.

Je donnerai des nouvelles d'ici peu de temps
A suivre...

achess

#316
May 27, 2019, 11:24 pm Last Edit: May 27, 2019, 11:26 pm by achess
Bravo, vous avez compris le principe, sauf qu'il faut aussi inverser l'initialisation.

Sans l'inverser, ça  fonctionne parce que vous initialisez le jour, porte ouverte. Mais le programme ne le sait pas que c'est ouvert. Sans contact fin de course, il fonctionne à l'aveugle.

Par exemple, si vous initialisez porte fermée ou pour une raison ou une autre le programme se réinitialise à n'importe quel moment, la trappe risque de se fermer au jour et inversement.

En programmant
Code: [Select]
  if (LDR > nuit) {// la nuit
    trappe = 0; // ouverte
  }
  else  {//le jour
    trappe = 1;
  }

A l'initialisation, si il fait jour et que la trappe est ouverte, le système tente quand même de l'ouvrir, pour se mettre en concordance avec l'état réel de la trappe en fin du cycle d'ouverture, puis se met en attente du seuil "nuit" et inversement s'il fait nuit.

Phil073

Bonsoir!

Oui effectivement, l'initialisation ne s'était pas faite correctement.

J'ai donc corrigé cette petite erreur.
Tout fonctionne maintenant  :D

Merci pour votre grande aide! ;)

Bonne soirée!

achess

#318
May 29, 2019, 12:29 am Last Edit: May 29, 2019, 01:17 am by achess

Question mécanique, vous êtes un pro. Je n'avais pas pensé à cette astuce. De mémoire j'avais ovalisé un tube. Je fait bricolo à côté de ça ;)

On pourrait compléter le programme avec un contact fin de course, mais si un obstacle quelconque empêche la porte de se fermer, ça ne changerait rien.
 Et puis des poules, on vient les voir au moins une fois par jour, donc la panne n'est jamais bien grave.

Les seuls problèmes qui me soient arrivées étaient batterie déchargée une fois, suite à du temps couvert sans soleil 2 mois de suite (décembre, janvier).
Une autre fois suite à une panne du PV.
 Dans les 2 cas, les cocotes étaient restées enfermées. Avec ma trappe verticale, le moteur peine à l'ouverture et pas à la fermeture. ;)

Phil073

Merci!

La mécanique n'est pas mon domaine de compétence, je fais plutôt dans l'usinage du bois (c'est mon métier) donc ça aide quand même 8)

Oui, effectivement on pourrait mettre des contacteurs fin de course. La logique serait celle ci :

Rotation
     Si contact fin de course atteint
          arrêt rotation
     Si délai dépassé et si fin de course non atteinte
          retourne sens inverse
          Nouvelle tentative après délai (2 min par ex)

Facile à dire!  :smiley-lol:

Pour ma part, le système me convient parfaitement comme ça

Par contre, avant l'hiver prochain, il faut que je me penche sur un système automatique de dégivrage de l'abreuvoir. Je ne peux pas laisser mon câble chauffant en permanence, il consomme 500mA, à ce rythme là, mes 14 Ah de réserve batterie partent très vite  :smiley-eek-blue:

Je pense mettre un programmateur électronique pour ne déclencher qu'en fin de nuit et couper en milieu de matinée. Et si je trouve une astuce, même ajouter un mise en route par capteur température...
J'ai de quoi cogiter un moment... ;D

Bonne soirée


achess

#320
May 30, 2019, 02:32 pm Last Edit: May 30, 2019, 02:36 pm by achess
Bonjour,

On voit bien que vous êtes habitué au travail du bois bien fait ;)

La fonction "porte d'ascenceur" ne fonctionnerait pas non plus sur un obstacle genre caillou ou bout de bois coincée. La porte ferait des va et vient jusqu'à épuisement de la batterie.
il faudrait programmer un robot qui vienne enlever le caillou, ou une sirène vous prévenant que la porte est restée ouverte :)
En fait, il y a plein d'options possible, genre objet connecté.

Je leur ai mis un petit abreuvoir automatique alimenté par une réserve que je rempli tout les 2 mois environ. Elle boivent très peu en fait. ce genre là
Comme j'ai construit le poulailler à l'intérieur  d'un abri de jardin, il gèle rarement dedans.
Cet hiver, j'ai du leur mettre à boire 2 ou 3 fois, donc pas utile pour moi.

Sinon déjà isoler votre réserve d'eau avec une bonne épaisseur d'isolant et la résistance déclenchera rarement.

Phil073

Bonsoir!

Ah oui effectivement, l'effet porte d'ascenseur, c'est une fausse bonne idée... :(
J'aime bien l'idée du robot ! ;D

Leur habitation est un poulailler du commerce trop petit pour y mettre l'abreuvoir, c'est pour ça qu'il craint le gel.

J'ai procédé au montage définitif de la trappe aujourd'hui. A priori tout fonctionne :
Les cocotes ont regagné leur habitat vers 21h30, et la trappe vient de se fermer, il est 21h50.

Merci de votre aide précieuse sur ce projet! ;)

Bonne soirée

achess

Un abreuvoir de ce type, pour oiseaux doit faire dans les 5 cm de diamètre.
Le réservoir peut être fixé à l'extérieur.
Fabriquer une enveloppe isotherme autour,  avec un panneau de polystyrène extrudé ne me semble pas un problème ? Ou du polyuréthane.

Quoique ça gèlerait quand même à l'embouchure  :smiley-twist:
Quote
Les cocotes ont regagné leur habitat vers 21h30, et la trappe vient de se fermer, il est 21h50.
20 mn de marge, correct comme réglage. ;) Jamais eu de problème de prédateur depuis que c'est installé.

On pourrait faire plus précis, avec un système RFID avec bague d'identification aux pattes.
J'ai fait le test, mais la distance de détection est trop courte pour les systèmes à prix abordable.

solar23

Bonjour,
je viens de recevoir ma commande, dont le mosfet N: AO3402 et comme tu le disais  #43 "J'ai acheté des AO3402 (http://www.aosmd.com/pdfs/datasheet/AO3402.pdf), capables de commuter 4 A. Par contre ce sont des CMS minuscules et pas facile à souder. Un peu comme traire une puce avec des gants de boxe "
effectivement, pour une 1° expérience, je ne me vois pas souder ce minuscule truc; comme je n'y connais absolument rien en électronique, j'ai vu sur le net ce mosfet N :STP16NF06 qui pourrait convenir, qu'en penses tu?  ma réalisation serait avec servo moteur MG995.
merci
thierry

achess

Bonjour,
Ce n'est pas la mer à boire ;)
Je l'avais soudé sur un bout de circuit imprimé à pastilles, entre 3 pastilles. Le circuit peut-être maintenu dans un étau.

Avant de le souder, tu peux coller le composant, si tu n'arrive pas à le maintenir avec une pointe.

solar23

merci achess de ta réponse; je vais essayer mais c'est pas dans la poche;

Vincentm1

#326
Aug 13, 2019, 09:15 pm Last Edit: Aug 13, 2019, 09:23 pm by Vincentm1 Reason: Erreur
Bonsoir à tous

Après un moment d'euphorie, mes 5 accus nimh ne tiennent pas dans la durée (du moins je pense qu'il ne se rechargent pas assez vite et/ou que le panneau ne donne pas assez...

Je sollicite donc votre avis éclairé (en tout cas beaucoup plus que le mien)

J'ai 5 accus 1.2 nimh, un panneau 6 v 2w 330 ma
Un servo moteur mg 995 gear metal

 Première réflexion , mon chargeur de pile (qui me dépanne du coup régulièrement ) donne pour 2 accus 2,8 v 150ma donc par ration pour 5      7 v 750 ma   Ce qui est très loin de ce que donne mon panneau photovoltaïque... je pense donc que mon panneau galère beaucoup pour faire une charger ou entretenir mes accus du coup tous les 15 jours , il faut que je les recharge.

Ma première réflexion est elle juste?

Deuxième réflexion (je rappelle que je n'ai pas de formation en électronique, ce sera donc peut être bizarre).
Il semblerait que le servo moteur accepte 7.2 v au Max
Je pensais donc mettre un deuxième panneaux  en série( pour doubler la tension) et en parallèle (pour doubler l'intensité ) , je devrait donc avoir en sortie du grosse modo 12/13 volts et 660 ma

Juste ou pas ?

Ensuite mette un régulateur de tension qui limiterait la tension de sortie à 8v ( description A la fin je devrais donc toujours avoir 8v peut importe la météo...?

Est ce que cela se tient pour l'instant ( cela m'tonnerait)

Si oui, ne faut il pas ensuite faire redescendre un eu la tension aux environs de 7.2v pour le bien des accus et du servomoteur?

Si oui, simple résistance ou pont diviseur ( dans les 2 cas mon niveau ne me permet pas d'arriver à déterminer les valeurs

Vincentm1


Caractéristiques générales
RoHS   oui
Boitier   TO220
Isortie Max   1500mA
Ventrée max   35V
Vsortie   8V
Type   Tension fixe positive
D/out max V   2.5
Caractéristiques   Current-limit, thermal shutdown
Régulation de charge   100mV
Régulation secteur   80mV
Température d'utilisation   0 +125°C

hbachetti

#328
Aug 14, 2019, 12:20 am Last Edit: Aug 14, 2019, 12:38 am by hbachetti
Quote
Ensuite mette un régulateur de tension qui limiterait la tension de sortie à 8v ( description A la fin je devrais donc toujours avoir 8v peut importe la météo...?
Un accu NIMH ne se recharge pas à tension constante.

Relis ceci : https://forum.arduino.cc/index.php?topic=379566.msg3870674#msg3870674

Commentaires auxquels j'ajouterai ceci :
https://datasheets.maximintegrated.com/en/ds/MAX712-MAX713.pdf

Un chargeur NI-MH ne se bricole pas sur un coin de table sans circuit intelligent.
Sinon cela ne s'appelle pas un chargeur mais un tueur de batterie.
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

Vincentm1

Bonjour et merci Hbachetti

Certes aucune solution technique n'est meilleure qu'un chargeur mais je n'ai pas de 220 v dans mon poulailler . De plus ( je ne mets aucunement en doute tes arguments, je n'ai pas le niveau pour) , j'ai du acheter un chargeur (pour le dépannage) qui recharge un certain nombre d'heure peu importe l'état de charge de la batterie donc je me dit pourquoi pas ....

En fait je cherche plutôt une solution à peu près viable et j'ai bien conscience que ce sera loin de la solution  parfaite ....

Bon'e Journée

Go Up