Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
Forum général sur l'Assembleur !

Modérateur : mazertoc

[Realisation] Domotique pour poulailler
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2597
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#61 Message par paulfjujo » dim. 6 juin 2021 15:04

Bonjour,

F6FCO a écrit :Une chose de sure, je vais être obligé de refaire mon PCB parce que mes LDR sont sur B0 et B1. Je n'en mettrai cette fois qu'une seule et sans la RV qui ne servira plus à rien.



ne pas oublier qu'il existe les comparateurs dans un PIC
la mesure analogique provenant d'une LDDR peut etre comparée à 2 Seuils , permettant de valider un etat Jour ou Nuit
possibilité aussi de generer une interruption

exemple d'usage d'un joystick (analogique 2 potars)
pour faire défiler un menu Horizontal et Vertical sur LCD et aussi ajuster une consigne de frequence DDS

nota:
attention au choix de RB7 en analogique .. et l'ICSP connectable aussi sur RB7=Data
dans ce cas prévoir un switch ou strap d'isolation pour pouvoir programmer le MCU
Aide toi, le ciel ou FantasPic t'aidera

[Realisation] Domotique pour poulailler
Gérard
Avatar de l’utilisateur
Expert
Expert
Messages : 1644
Âge : 65
Enregistré en : septembre 2015
Localisation : Alsace - Haut-Rhin

#62 Message par Gérard » dim. 6 juin 2021 20:38

venom a écrit :
Temps-x a écrit :J'ai choppé cette saloperie de COVID-19.... pouah...


Aïe... Je l'ai eu il y a 1 mois. Perso j'ai casi rien eu. J'espère que ça sera ton cas. Bon rétablissement.







@++



Prenez soin de vous les gars et donnez de temps en temps des nouvelles de votre état.
Et vivement la vaccination pour tous.
Le 18/04/19 je suis devenu papy de jumeaux, le 01/09/23 une petite cousine des jumeaux est née.

[Realisation] Domotique pour poulailler
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#63 Message par F6FCO » lun. 7 juin 2021 01:04

Hello tous,

Pas eu le temps de revenir avant et çà fait beaucoup de posts auxquels répondre :wink:


Pourquoi ne pas faire un hysteresis en Soft !

Tu peux développer Jérémy stp ?

Pour éviter de refaire ton PCB il faut changer de Pic, voici un pic carrément identique au Pic16F88 c'est le Pic16F1847

Il est bien ce PIC mais une de mes LDR est sur B0 et je ne vois pas de conversion sur cette patte ?


ne pas oublier qu'il existe les comparateurs dans un PIC

Pas encore expérimenté non plus. Je viens d'aller voir ton lien et j'ai vu qu'il faut passer par la conversion A/D aussi, donc je vais me mettre au boulot.

attention au choix de RB7 en analogique .. et l'ICSP connectable aussi sur RB7=Data
dans ce cas prévoir un switch ou strap d'isolation pour pouvoir programmer le MCU

Dans la mesure du possible j'évite toujours de me servir de rb6 et rb7, je les réserve à la gestion du pickit.

Aïe... Je l'ai eu il y a 1 mois. Perso j'ai casi rien eu. J'espère que ça sera ton cas. Bon rétablissement.


Soignez vous bien les gars mais ne vous inquiétez pas outre mesure, ce truc n'est pas aussi méchant que ce que le matraquage médiatique veut nous faire croire. Moi aussi je crois bien l'avoir eu, enfin je suppose que c'était çà parce que je n'ai pas été voir le toubib, je préfère me soigner tout seul par d'autres moyens plus sains que de prendre les $*#!!! de Bigpharma, une santé c'est précieux. J'ai passé deux ou trois jours bien en vrac, pour moi c'est toujours un peu plus coton car j'avais pris le palu en Afrique quand j'étais jeune et il y a des restes qui reviennent dans ces cas-là. Une pastille de nivaquine et çà passe.
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:

[Realisation] Domotique pour poulailler
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#64 Message par F6FCO » mar. 15 juin 2021 17:06

Hello les gens,

Je reviens avec une version finalisée sur table, cette fois au lieu d'une LDR j'ai fais les essais avec pot 10k pour la simuler, j'ai pu ainsi constater que cette fois çà fonctionne parfaitement à la période entre chiens et loups.
Reste à faire le nouveau PCB puisque j'ai changé l'attributions des pins.

Algorithme V.2

Algo Poulailler ADC 10juin21.jpeg


Le nouveau schéma

Poulailler V.2.jpg


Code : Tout sélectionner

;**********************************************************************
;
                                                                     
;    NOM:    Commande trappe poulailler 16F88                                          
;    Date:    mai 2021                                           
;    Auteur:    F6FCO                                       
;         xtal:       8Mhz interne                                                 
;         
;                                                                     
;**********************************************************************
    List p=16F88                     
    
#include <p16F88.inc>

    ;__CONFIG    _CONFIG1, _CP_OFF & _CCP1_RB0 & _DEBUG_OFF & _WRT_PROTECT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_OFF & _WDT_OFF  &_HS_OSC
    __CONFIG    _CONFIG1
, _CP_OFF & _CCP1_RB0 & _DEBUG_OFF & _WRT_PROTECT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_OFF & _WDT_OFF  & _INTRC_IO
    __CONFIG    _CONFIG2
, _IESO_OFF & _FCMEN_OFF 
      
OPTIONVAL    EQU    H
'0008'            

; ---------------------------------------------------------------------

#DEFINE in1          PORTB,5 ; pont H
#DEFINE in2         PORTB,4 ; pont H
#define Poussoir    PORTB,3    ; poussoir forçage descente
#define SwitchBas    PORTB,2 ; micro-rupteur bas, pressé=0
#define SwitchHaut    PORTB,1    ; micro-rupteur haut, pressé=0
#define Ldr        PORTA,2 ; jour=0, nuit=1
#define VarNuit        Lumi,0    ; jour=0, nuit=1
#define VarJour        Lumi,1    ; jour=1, nuit=0    
#define Forcage        Lumi,3    ; passe à 1 en cas de fermeture volontaire par poussoir, reste à 1 tant qu'il fait encore jour    
#define declenchLever    0x11    ; valeur luminosité pour ouverture trappe (stockée dans ADRESH à l'issue de l'échantillonnage)
#define declenchCoucher    0xFA    ; valeur luminosité pour fermeture trappe (stockée dans ADRESH à l'issue de l'échantillonnage)

BANK0    macro
    bcf    STATUS
,RP0            ; passer banque0
    endm

BANK1    macro
    bsf    STATUS
,RP0            ; passer banque1
    endm

    CBLOCK 0x020                   
        Reg_1        
:1
        Reg_2        
:1
        Reg_3        
:1
        Reg_4        
:1
        Reg_5        
:1
        Lumi        
:1
        mem1        
:1    ; valeur de la lumière à la sortie échantillonnage
        mem2        
:1    ; consigne de lumière jour et nuit
    ENDC                                             

    org     0x0000            
; Adresse de départ après reset  
init
    BANK1    
    movlw    b
'01101110'
    movwf    OSCCON            ; Horloge interne à 4Mhz
    movlw    OPTIONVAL        
    movwf    OPTION_REG        
; initialiser registre option
    movlw    b
'00000100'
    movwf    TRISA
    movlw    b
'000001111'
    movwf    TRISB    
    
    
; ------------------- config ADC
    movlw    b
'00000100'        ; broche an2 en adc
    movwf    ANSEL
    movlw    b
'00000000'        ; Vref entre VDD et VSS
    movwf    ADCON1
    bcf    ADCON1
,6        ; frq 5MHz
    bcf    ADCON0
,7        ;
    bsf    ADCON0,6        ;
    BANK0

    bsf    ADCON0
,ADON        ; convertisseur ON
    
    bcf    ADCON0
,5        ; on 
    bsf    ADCON0
,4        ; échantillonne le 
    bcf    ADCON0
,3        ; canal an2
    

    clrf    PORTA            
; sorties portA à  0
    clrf    PORTB

    
;   vers main
    
    


Code : Tout sélectionner

#include <Poulailler_init_ADC.asm>
    
;***************************** Main ************************************

    ; Poussoir: relâché=1, pressé=0
    
; Switches: relâché=1, pressé=0    
    
; Ldr: jour=0vcc, nuit=5vcc
main    
    nop
    clrf    Lumi
    bcf    in1     
; stop moteur
    bcf    in2     
; stop moteur
    bcf    VarNuit
    bcf    VarJour
    
v1    nop
    nop

    
; -----------------------------------
    ; conversion A/N de la tension issue de la LDR
    bsf     ADCON0
,GO      ; on échantillonne, la capa interne charge    
testGO    btfsc    ADCON0
,GO     ; on boucle le temps que se fasse l'échantillonnage    
    goto    testGO         ; en vérifiant quand le bit GO passe à zéro
    ; on lit le résultat stocké dans ADRESH
    movf    ADRESH,w
    movwf    mem1
    
    
    ; ------- test lever du jour ------
    ; on initialise les variables de levée de trappe si on atteint 
    ; la consigne declenchlever
    nop
    movlw    declenchLever
    movwf    mem2    ; mem2 contient la consigne de lever
    movf    mem1,w    ; mem1 contient la valeur relevée par la LDR
    subwf    mem2,w
    btfss    STATUS,Z
    goto    v2
    bsf    VarJour
    bcf    VarNuit
    nop
    
    
    ; ------ test coucher du soleil ------
    ; on intialise les variable de descente de trappe si on atteint 
    ; la consigne declenchCoucher
v2    nop
    movlw    declenchCoucher
    movwf    mem2    ; mem2 contient la consigne de coucher
    movf    mem1,w    ; mem1 contient la valeur relevée par la LDR
    subwf    mem2,w
    btfss    STATUS,Z
    goto    gestpouss
    bsf    VarNuit
    bcf    VarJour
    nop
    
    ; -----------------------------------
    ; gestion du poussoir pour forcer la fermeture en plein jour
    ; et mise à 1 du flag Forcage
    ; RAZ du flag à la nuit tombée
gestpouss
    ;goto v1
    nop
    btfsc    Poussoir
    goto    gestTrappe
    btfss    VarJour
    goto    gestTrappe
    bsf    Forcage
    bcf    in1
    bsf    in2
p1    btfsc    SwitchBas
    goto    p1
    goto    motStop


    ; -----------------------------------
    ; gestion de la trappe suivant l'
état des différents flags    
gestTrappe
    
; S'il fait jour on monte la trappe
    btfss    VarJour
    goto    t1
    btfsc    Forcage
    goto    t1
    btfsc    SwitchBas
    goto    t1
    bsf    in1
    bcf    in2
t2    btfsc    SwitchHaut
    goto    t2
    goto    motStop

    ; S'
il fait nuit on baisse la trappe
t1    btfss    VarNuit
    goto    v1
    nop
    bcf    Forcage
    btfsc    SwitchHaut
    goto    v1
    nop
    bcf    in1
    bsf    in2    
t3    btfsc    SwitchBas
    goto    t3
    goto    motStop


    
; -----------------------------------
    ; Arrêt moteur    
motStop
    bcf    in1
    bcf    in2
    goto    v1
    
    
    END     

Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:

[Realisation] Domotique pour poulailler
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#65 Message par F6FCO » ven. 18 juin 2021 22:29

Bonsoir tous,
Projet terminé et fonctionnel, premier essai réel hier soir et j'ai procédé à quelques réglages dans le programme aujourd'hui, il a fallu affiner les valeurs de lever et coucher et çà a été mieux ce soir.

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


Le boitier installé
p11.JPG


A demain de bonne heure...

p12.JPG


Je vais pouvoir passer à autre chose :wink: .
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:

[Realisation] Domotique pour poulailler
venom
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 960
Âge : 38
Enregistré en : avril 2016
Localisation : Klyntar
Contact :

#66 Message par venom » ven. 18 juin 2021 22:44

Bravo F6FC0 :bravo:

Trop cool pour tes poulettes :langue: Tu n'aurai pas pu faire un système avec une photorésistance pour le lever et coucher ?

Bientôt des bons oeufs frais :wink:

PS: sympa le p'tit autocollant :lol:






@++
Mon site web
Mon discord : venom#4888

[Realisation] Domotique pour poulailler
Gérard
Avatar de l’utilisateur
Expert
Expert
Messages : 1644
Âge : 65
Enregistré en : septembre 2015
Localisation : Alsace - Haut-Rhin

#67 Message par Gérard » ven. 18 juin 2021 23:03

Elles sont bien gardées les poulettes.

Bravo F6. :bravo:
Le 18/04/19 je suis devenu papy de jumeaux, le 01/09/23 une petite cousine des jumeaux est née.

[Realisation] Domotique pour poulailler
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2617
Enregistré en : juillet 2016
Localisation : Terre

#68 Message par Temps-x » ven. 18 juin 2021 23:32

Bonsoir Gérard, F6FCO, venom, et tout le forum,

venom a écrit :Source du message PS: sympa le p'tit autocollant :lol:

:sifflotte: c'est un autocollant que seule les poules savent lire.... c'est fait avec passion... et on le voit bien.... l'humour est au rendez-vous :bravo:

Sympa de voir les cocotes, toujours à essayer de se percher le plus haut possible, pour échapper au prédateur, c'est leurs instinct qui veut ça, et l'expérience de leurs ancêtre.

F6FCO a écrit :Source du message Je vais pouvoir passer à autre chose :wink: .

:sifflotte: récolter des œufs...... exit

==> A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

[Realisation] Domotique pour poulailler
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#69 Message par F6FCO » sam. 19 juin 2021 22:43

Hello tous,
Ce matin elles gambadaient dans leur enclos quand je suis allé les voir, la trappe à bien fonctionné au lever du jour :-D

venom a écrit :Bravo F6FC0 :bravo:
Tu n'aurai pas pu faire un système avec une photorésistance pour le lever et coucher ?
@++


Si, c'est justement comme cela que çà fonctionne :wink:, regarde le schéma plus haut. Sur la photo du boitier ouvert plus haut c'est les fils vert et noir qui sortent du poulailler, la LDR est placée en-dehors. Mais elle déclenche le système 1/4 d'heure trop tôt parce qu'elle est masquée par du feuillage et c'est un coin sombre, demain je fais un peu d'élagage. Les poules sont déjà rentrées quand çà déclenche mais il ne fait pas encore assez sombre à mon gout, je préfèrerai avoir une bonne marge.

:sifflotte: c'est un autocollant que seule les poules savent lire.... c'est fait avec passion... et on le voit bien.... l'humour est au rendez-vous :bravo:

Oui avec passion c'est le mot juste, rien n'est trop beau pour elles. J'en suis déjà fou de ces deux poulettes, dés qu'elles m'entendent arriver elles arrivent à fond vers moi et elles viennent manger dans ma main. Je n'aurai jamais cru que ce soit aussi attachant comme animal :-D .
Par contre toujours pas d'œufs.
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:

[Realisation] Domotique pour poulailler
venom
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 960
Âge : 38
Enregistré en : avril 2016
Localisation : Klyntar
Contact :

#70 Message par venom » dim. 20 juin 2021 07:57

F6FCO a écrit :Si, c'est justement comme cela que çà fonctionne :wink:, regarde le schéma plus haut. Sur la photo du boitier ouvert plus haut c'est les fils vert et noir qui sortent du poulailler, la LDR est placée en-dehors.


:oops: C'est ce qui s'appel la boulette. Je n'avais as fait attention.
Tant mieux si c'est poulettes sont au ange :bravo:






@++
Mon site web
Mon discord : venom#4888


Retourner vers « Langage ASM »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 95 invités