Electromag1 Circuits électroniques et Picaxes

Petit site pour ceux qui bricolent en électronique en général et sur les PICAXES en particulier.
Les PICAXES sont des microprocesseurs (PIC de Microship) programmables en BASIC. Pleins de qualités, pas chers, ultra faciles à programmer.
Tout (ou presque) est sur le site du distributeur Gotronic (voir les liens).
Les pages  seront ajoutées ou modifiées petit à petit.
Dans le but d'améliorer ce blog, communiquez moi vos remarques et les erreurs que vous pouvez constater.
Pour me contacter: Envoyez un mail à l'adresse : mag1mic@free.fr .  Tout message reçoit une réponse
Pour retourner au menu, Cliquer sur "LISTE DES PAGES", ici ou en haut de la colonne de gauche
Pour laisser un message, allez dans le "LIVRE D'OR"
Bonne visite
 
 

Porte de poulailler

La porte de poulailler revient régulièrement sur les forums, voici une réponse générique à base de picaxe 20M2

Cahier des charges:
Le projet doit ouvrir et fermer une trappe en foncton de l'éclairement d'une cellule photorésistante "LDR".
Le moteur est ici un moteur à courant continu réversible, muni d'un système de démultiplication.
Deux interrupteurs fin de course, FCO (fin de course ouverture) et FCF (fin de course fermeture) délimitent le mouvement de la trappe.
La transition jour/nuit est définie par un seuil de luminosité réglé par un potentiomètre. Pour valider l'état jour ou nuit, la luminosité doit rester du même côté du seuil pendant un temps réglable (ici, de 0 à 40mn). Tout franchissement du seuil, dans un sens ou dans l'autre resette cette temposisation. Les variations aléatoires et temporaires ne sont pas prisent en compte.
Le moteur n'étant pas défini précisément, la solution d'une commande par relais 16A me semble la plus sûre, on peut la remplacer par un pont en H adapté au moteur.
Deux leds visualisent l'état du système:
Une led Jour/Nuit servira à régler le seuil de luminosité.
Une variable d'hystérésis (hyster) introduit un écart de seuil J/N. Un point d'hyster donne un écart de 0,1%
Un potar "hyster" est ajouté pour régler cette variable (modif 120717)
Une led "transition" signale l'enregistrement du franchissement du seuil et indique que le système est en phase transitoire Jour/Nuit. Si la transition est validée, la porte s'ouvre ou se ferme.

Un interrupteur à trois positions ON - OFF - ON  (ou plus exactement: "ouvert - auto - fermé") pour ouvrir et fermer la porte manuellement

Le schéma:


L'alimenttion est en 12v continu, les relais et le moteur aussi. Ici, le système est autonome, avec un panneau solaire, un régulateur à quelques euros et une batterie de 2 ou 5 A.h
Un polyswitch à choisir pour un basculement correspondant au courant de blocage moteur pendant env 5 secondes.
L'inter normal/éco (cavalier) supprime le mode sleep pour les réglages.
Le circuit "mesure courant moteur"  est une option (câblé ou non, selon le cas).
 
Le code:
Modif 060717: ajout d'une variable hystérésis réglable (hyster=0 donne la version précédente)
Modif 100717: remplacement readadc par readac10. Logique ouvre/ferme des relais
Modif 120717: déplacement FDC . Ajout potar hystérésis
Modif 260418: MàJ schéma ;potar hystérésis sur B.5
Modif 280418: Typon version éco
Modif 060518: Mesure courant moteur pour suppression des FDC ou détection blocage
Modif à venir: version code avec mode "sleep"
 
Code original pour alimentation par bloc secteur et gestion moteur par FDC
;Porte poules MM 120717
#picaxe 20M2
#no_data
symbol potarH=B.5       ;potar hystérésis
symbol potarT=C.2       ;potar tempo en C.2
symbol potarS=C.3       ;potar seuil en C.3
symbol FCO=pinC.4       ;FCO=0 ->FCO fermé-> porte ouverte
symbol FCF=pinC.5       ;FCF=0 ->FCF fermé -> porte fermée  
symbol LDR=C.7          ;LDR en C.7
symbol ouvre=B.0        ;sortie ouverture
symbol ferme=B.1        ;sortie fermeture
symbol led= B.3         ;led J/N
symbol trans=B.4        ;led état transitoire
symbol ouvman=pinB.6    ;ouverture manuelle
symbol ferman=pinB.7    ;fermeture manuelle
symbol JN=bit0          ;bit J/N 1=jour ; 0=nuit
symbol valJN=bit1       ;validation JN
symbol memoJN=bit2      ;mémo JN
symbol hyster=b1        ;valeur hystérésie (0 à 255) : 10=1% env.
symbol seuilH=w10       ;seuil haut avec hystérésis
symbol lum=w13          ;valeur lumière (0 à 1023)
symbol seuil=w12        ;valeur seuil (0 à 1023)
symbol tempo=w11        ;valeur tempo (0 à 1023)
dirsB=%1011             ;B.0,B.1,B.3 en sorties
dirsC=%0
pullup %11000011000000    ;pullup sur B.6,B.7,C.4,C.5
    Do
;****** lecture des réglages ***********
        readadc10 LDR, lum        ;lecture luminosité
        readadc10 potarS,seuil    ;lecture seuil J/N    
        readadc10 potarT,tempo    ;lecture temporisation J/N
        readadc potarH, hyster
        tempo=24*tempo/10        ;max=24*1023/10 = 2455 s (40mn),min=0
        seuilH=seuil+255 - hyster  ; 255-hyster parce que le potar est à l'envers sur le typon
;****** comparateur seuil *********************
        If lum >= seuilH then    ;comparateur LDR éclairée=val lum forte = jour
            JN=1 : high led      ;on est de jour      
        elseif lum <seuil then
             JN=0 : low led        ;sinon on est de nuit            
        endif
;****** mémorisation franchissement du seuil **********
       if memoJN<>JN then        ;si changement de sens -> RAZ time
            time=0
        endif
        memoJN=JN                  ;memo JN       
;******* validation état après temporisation *************
        if time>tempo then         ;si JN stable pendant un temps tempo (0 à 40 mn)
            valJN=JN              ;validation de JN dans valJN    
            time=tempo*2        ;limitation compteur time < 65535
            low trans              ;extinction led trans
        else high trans         ;allumage led trans    
        endif  
;********* ouverture / fermeture manuelle *************
        if ouvman=0 then         ;ouverture manuelle force valJN=1
            valJN=1
        elseif ferman=0 then ;fermeture manuelle force valJN=0
            valJN=0
        endif
;******* mouvement de la trappe en ft valJN et FDC **************       
        If valJN=1 and FCO=1 then            ;de jour et porte non ouverte  
               low ferme    
            high ouvre               
        elseif valJN=0 and FCF=1 then        ;de nuit et porte non fermée
            low ouvre
            high ferme            
        elseif FCF=0 OR FCO=0 then     ;Fermé ou ouvert, on arrête le moteur
            low ferme
            low ouvre        
        endif        
    loop

Autres versions de code:
Mode éco et gestion porte par FDC:    Code version éco pour alimentation par batterie et panneaux solaires

Réalisation:
Après essais, la version éco plus avec alimentation du pont pour la mesure (gain max 230µA de jour) est abandonnée


Téléchargement dernière version toutes options :  Typon porte poules

Des idées (enfin, les miennes...) sur la fabrication de la porte

Liste des composants à souder:
1 x support DIL20 (pour le picaxe)  :https://www.gotronic.fr/art-support-lyre-sup20l-4599.htm
1 x picaxe 20M2                             : https://www.gotronic.fr/art-microcontroleur-picaxe-20m2-17192.htm
2x BC337                                       :https://www.gotronic.fr/art-transistor-bc337-40-1323.htm
1 x LM7805                                    :https://www.gotronic.fr/art-l7805cv-1578.htm
3 x 1N4007                                    :https://www.gotronic.fr/art-1n4007-107.htm
2 x leds (R et V)                             :https://www.gotronic.fr/art-led-5mm-rouge-l51hd-2069.htm
3 x ajustables 10k                          :https://www.gotronic.fr/art-ajustable-horizontal-10k-8486-117.htm
2 x relais 16 A(ou 2x8):                  :https://www.gotronic.fr/art-relais-omron-g2rl1e-24-22862.htm
1 x condo 470µF 25V                      :https://www.gotronic.fr/art-condensateur-radial-470uf-25v-11352.htm
1 x condo 100µF 25V                      :https://www.gotronic.fr/art-condensateur-radial-100uf-25v-11348.htm
1 x condo 1µF 63v                           :https://www.gotronic.fr/art-condensateur-radial-1-0uf-63v-11341.htm
2 x condo céramique 100nF            :https://www.gotronic.fr/art-condensateur-multicouches-100-nf-3222.htm
Résistances : 390 ; 1k ; 10k ; 22k   :https://www.gotronic.fr/cat-resistances-carbone-1-4-w-266.htm
Résistance 1ohm 1W                       :https://www.gotronic.fr/art-resistance-carbone-1w-1-0-8486-2713.htm
1 x barrette HE14 MH100             :https://www.gotronic.fr/art-connecteur-he14-mh100-4457.htm
2 x borniers 3 plots                       :https://www.gotronic.fr/art-bornier-sc03-4536.htm
3 x borniers 2 plots                       :https://www.gotronic.fr/art-bornier-sc02-4535.htm
1 x polyswitch (ft du moteur)        :https://www.gotronic.fr/art-polyswitch-rxef075-5821.htm
1 x inverseur manuel                      :https://www.gotronic.fr/art-inverseur-unipolaire-tum5-4171.htm
1 x inter eco/normal                      :https://www.gotronic.fr/art-inverseur-unipolaire-tu5-4170.htm
1 x LDR                                          :https://www.gotronic.fr/art-photoresistance-ldr04-2150.htm
1 x inter on/off/on                        :https://www.gotronic.fr/art-inverseur-unipolaire-8014-4173.htm
2 x fin de course                           :https://www.gotronic.fr/art-microrupteur-ms12r-71.htm
polyswitch (ft moteur) Ex:             https://www.gotronic.fr/art-polyswitch-rxef050-5820.htm
Ex panneau solaire
     un autre  il y en a deux comme celui ci pour essai  
     régulateur  avec afficheur LCD, probablement plus lisible que celui utilisé pour les essais


 



Créer un site
Créer un site