Outils pour utilisateurs

Outils du site


cours:picaxe3c

Ceci est une ancienne révision du document !


Maquette de porte automatisée (Correction programmation PICAXE)

Nous avons utilisé “Blockly pour Picaxe” et le “Simulateur Picaxe” pour la maquette de porte automatisée afin de programmer et tester différents fonctionnements possibles.

Logiciels utiles pour la programmation PICAXE (Peuvent être utilisés à la maison)

  • PICAXE BLOCKLY : programmation des microcontrôleurs PICAXE
  • Simulateur de maquette PICAXE : test des programmes (les maquettes utilisées au collège sont incluses)

Les contraintes de programmations sont rappelées au début de la fiche activité.

Acti 3 : Ouvrir/Fermer la porte avec les boutons

Une 1ère version du programme fonctionne de la manière suivante :

  • Le moteur [C] s'arrête automatiquement si la porte est entièrement ouverte ou fermée (sécurité pour les moteurs). L'information est fourni par les capteurs de fins de course [C.2= fermé ; C.3 = ouvert].
  • La porte s'ouvre ou se ferme si j'appuie sur le bouton correspondant et qu'elle n'est pas déjà ouverte ou fermée (sécurité pour les moteurs). L'information est fourni par les boutons [C.0= fermer ; C.1 = ouvrir].
01 Mettre le moteur a l'arrêt 
02 Répéter indéfiniment
03     Si Porte fermée
04         Mettre le moteur à l'arrêt
05     Si demande de fermeture
06         Si porte non fermée
07             Démarrer la fermeture
08     Si Porte ouverte
09         Mettre le moteur à l'arrêt
10     Si demande ouverture
11         Si porte non ouverte
12             Démarrer ouverture

Cliquer sur le programme pour l'agrandir Cliquer sur le programme pour l'agrandir

Éléments à tenir compte pour la programmation :

  • Il faut configurer le PICAXE 28×1 dans Blockly (Paramètres - type de Picaxe)
  • Il est écrit que le moteur à utiliser est repéré C
  • La porte est fermée si elle appuie sur le fin de course C.2 (ouverte → C.3)
  • Je demande la fermeture en appuyant sur le bouton “Fermer” C.O (ouverture → C.1)
  • Il a été appris que appuyer = activé sinon c'est désactivé (ex. porte pas fermé = désactivé)
  • Il est écrit que si le moteur avance, il ferme la porte (reculer → ouvrir)

Acti 4-1 : Utiliser des sous programme/fonction

J'utilise des procédures pour les parties de programme “OUVRIR” et “FERMER”. J'allume la led verte lorsque j'ouvre la porte et la rouge lorsque je la ferme. J'attends une seconde entre la led rouge et la fermeture.

   OUVRIR
01 Allumer LED verte
02 Éteindre LED rouge
03 Démarrer ouverture

   FERMER
01 Éteindre LED verte
02 Allumer LED rouge
03 Attendre 1000 ms
04 Démarrer fermeture

Cliquer sur le programme pour l'agrandir Cliquer sur le programme pour l'agrandir

  • Les actions “OUVRIR” et “FERMER” la porte sont re écrite en utilisant des procédures.
  • L'allumage des leds rouge [B.1] et verte [B.0] est ajouté dans les procédures. Il faut penser que si une les n'est pas allumée, elle doit être éteinte.

Acti 4-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.)

Coup de pousse :

  • Je crée une variable ETAT qui prendra les valeurs : 0 Fermée ; 1 S'ouvre ; 2 Ouverte et 3 Se ferme.
  • 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.

Acti 4-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 pour les essais). Attention, il ne faut pas bloquer le programme pendant la temporisation car on peut appuyer sur fermeture pour ne pas attendre.

Coup de pousse :

  • Je crée une variable TEMPO que j'initialise à 5000 ms (5s) lorsque la porte termine de s'ouvrir.
  • Si la porte est en position “Ouverte”, j'attends 100 ms et je diminue TEMPO d'autant.
  • Lorsque la TEMPO est ⇐ 0, je referme la porte comme si j'avais appuyé sur le bouton.
cours/picaxe3c.1649412141.txt.gz · Dernière modification: 2022/04/08 12:02 de mrcjl