Outils pour utilisateurs

Outils du site


cours:picaxe3

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cours:picaxe3 [2025/04/03 09:00]
mrcjl [Acti 2-2 : Utiliser une variable]
cours:picaxe3 [2025/04/04 13:49] (Version actuelle)
mrcjl [Acti 2-2 : Utiliser une variable]
Ligne 68: Ligne 68:
 02 Répéter indéfiniment 02 Répéter indéfiniment
  
-03     Si Porte fermée+03     Si Fin de course porte fermée activé
 04         Mettre le moteur à l'arrêt 04         Mettre le moteur à l'arrêt
 05     Sinon  05     Sinon 
-06         Si demande de fermeture+06         Si bouton fermer appuyé
 07             Démarrer la fermeture 07             Démarrer la fermeture
  
-08     Si Porte ouverte+08     Si Fin de course porte ouverte activé
 09         Mettre le moteur à l'arrêt 09         Mettre le moteur à l'arrêt
 10     Sinon 10     Sinon
-11         Si demande ouverture+11         Si bouton ouvrir appuyé
 12             Démarrer ouverture 12             Démarrer ouverture
 . .
Ligne 129: Ligne 129:
 02 PROC-ARRÊTER 02 PROC-ARRÊTER
 03 Répéter indéfiniment 03 Répéter indéfiniment
-04     Si porte fermée+04     Si fin de course porte fermée activé
 05         PROC-ARRÊTER 05         PROC-ARRÊTER
 06     Sinon 06     Sinon
-07         Si demande fermeture+07         Si bouton fermer appuyé
 08             PROC-FERMER 08             PROC-FERMER
-09     Si porte ouverte+09     Si fin de course porte ouverte activé
 10         PROC-ARRÊTER 10         PROC-ARRÊTER
 11         Allumer LED verte (Éteindre rouge) 11         Allumer LED verte (Éteindre rouge)
 12     Sinon 12     Sinon
-13         Si demande ouverture+13         Si bouton ouvrir appuyé
 14             PROC-OUVRIR 14             PROC-OUVRIR
 </code> </code>
Ligne 159: Ligne 159:
 ++++ ++++
 ====Acti 2-2 : Utiliser une variable==== ====Acti 2-2 : Utiliser une variable====
-Nous voulons que la barrière infra rouge provoque la réouverture de la porte si elle détecte une personne lors de la fermeture. (//Il faut donc se rappeler que la porte est en train de se fermer et utiliser une variable pour cela. en effet, aucun capteur n'indique le sens du mouvement, seule la fin de celui-ci est détecté par les fins de course.//) \\+Nous voulons que la barrière infra rouge provoque la réouverture de la porte si elle __détecte une personne lors de la fermeture__. (//Il faut donc se rappeler que la porte est en train de se fermer et utiliser une variable pour cela. en effet, aucun capteur n'indique le sens du mouvement, seule la fin de celui-ci est détecté par les fins de course.//) \\
 **ATTENTION : Le capteur infrarouge est __désactivé__ si une personne est présente.** **ATTENTION : Le capteur infrarouge est __désactivé__ si une personne est présente.**
  
Ligne 168: Ligne 168:
   * Je crée une variable ETAT qui prendra les valeurs : 0 Arrêté ; 1 S'ouvre ; 2 Se ferme.   * Je crée une variable ETAT qui prendra les valeurs : 0 Arrêté ; 1 S'ouvre ; 2 Se ferme.
   * Modifier le programme et les sous programmes pour tenir compte des différents états.   * Modifier le programme et les sous programmes pour tenir compte des différents états.
-  * Ajouter dans le programme principal l'utilisation de la barrière infra rouge.+  * Ajouter dans le programme principal l'utilisation de la barrière infra rouge qui remplace alors le bouton ouvrir si besoin.
 </WRAP> </WRAP>
 ++++ ++++
Ligne 178: Ligne 178:
 02 PROC-ARRÊTER 02 PROC-ARRÊTER
 03 Répéter indéfiniment 03 Répéter indéfiniment
-04     Si porte fermée+04     Si fin de course porte fermée activé
 05         PROC-ARRÊTER 05         PROC-ARRÊTER
 06     Sinon 06     Sinon
-07         Si demande fermeture+07         Si bouton fermer appuyé
 08             PROC-FERMER                           08             PROC-FERMER                          
-09     Si porte ouverte+09     Si fin de course porte ouverte activé
 10         PROC-ARRÊTER 10         PROC-ARRÊTER
 11         Allumer LED verte (Éteindre rouge) 11         Allumer LED verte (Éteindre rouge)
 12     Sinon 12     Sinon
-13         Si demande ouverture+13         Si bouton ouvrir appuyé
 14             PROC-OUVRIR 14             PROC-OUVRIR
-14     Si porte se ferme+14     Si porte se ferme (voir variable ETAT)
 16         Si barrière I/R désactivé 16         Si barrière I/R désactivé
 17             PROC-OUVRIR 17             PROC-OUVRIR
Ligne 215: Ligne 215:
  
 ====Acti 2-3 : Créer une temporisation==== ====Acti 2-3 : Créer une temporisation====
-Nous voulons que sans appui sur le bouton de fermeture la porte se referme seule au bout d'un temps défini (5s). **Attention, il ne faut pas bloquer le programme pendant la temporisation** et pouvoir conserver l'utilisation du bouton "Fermer". On utilise donc un compteur.+Nous voulons que sans appui sur le bouton de fermeture la porte se referme seule au bout d'un temps défini (5s). **Attention, il ne faut pas bloquer le programme pendant la temporisation** et pouvoir utiliser le bouton "Fermer" à tout moment. On utilise donc un compteur avec un petit temps d'attente (< 0.5 s) pour ne pas bloquer le programme.
  
 ===Coup de pousse :=== ===Coup de pousse :===
Ligne 236: Ligne 236:
 02 PROC-ARRÊTER 02 PROC-ARRÊTER
 03 Répéter indéfiniment 03 Répéter indéfiniment
-04     Si porte fermée +04     Si fin de course porte fermée activé 
-05         Allumer LED rouge (Éteindre verte) +05         PROC-ARRÊTER 
-06         Attendre 3s                               +06     Sinon 
-07         PROC-ARRÊTER +07         Si bouton fermer appuyé 
-08     Sinon +08             PROC-FERMER                           
-09         Si demande fermeture +09     Si fin de course porte ouverte activé 
-10             PROC-FERMER                           +10         PROC-ARRÊTER 
-11     Si porte ouverte +11         Allumer LED verte (Éteindre rouge) 
-12         PROC-ARRÊTER +12         Si variable TEMPO <=0 
-13         Allumer LED verte (Éteindre rouge) +13             PROC-FERMER 
-14         Si variable TEMPO <=0 +14         Sinon 
-15             PROC-FERMER +15             Attendre 100ms 
-16         Sinon +16             Variable TEMPO = TEMPO - 100 
-17             Attendre 100ms +17     Sinon 
-18             Variable TEMPO = TEMPO - 100 +18         Si bouton ouvrir appuyé 
-19     Sinon +19             PROC-OUVRIR 
-20         Si demande ouverture +20     Si porte se ferme (voir variable ETAT) 
-21             PROC-OUVRIR +21         Si barrière I/R désactivée 
-22     Si porte se ferme +22             PROC-OUVRIR
-23         Si barrière I/R active +
-24             PROC-OUVRIR+
 </code> </code>
 </WRAP><WRAP half column> </WRAP><WRAP half column>
Ligne 271: Ligne 269:
  
 -- [PROC : FERMER] -- [PROC : FERMER]
-01 Moteur sens fermeture +01 Allumer LED rouge (Éteindre verte) 
-02 Variable ETAT = 2+02 Attendre 3s                               
 +03 Moteur sens fermeture 
 +04 Variable ETAT = 2
  
 </code> </code>
cours/picaxe3.1743663610.txt.gz · Dernière modification: 2025/04/03 09:00 de mrcjl