Outils pour utilisateurs

Outils du site


cours:picaxe3c

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:picaxe3c [2022/04/08 12:27]
mrcjl
— (Version actuelle)
Ligne 1: Ligne 1:
-~~NOTOC~~ 
-=======Maquette de porte automatisée (Correction programmation PICAXE)======== 
-{{ :cours:maqpicporte.jpg?200|}} 
-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.  
- 
-<WRAP round info> 
-[[cours:picaxe1|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) 
-</WRAP> 
- 
-Les contraintes de programmations sont rappelées au début de la fiche activité. 
- 
-=====Acti 3 : Ouvrir/Fermer la porte avec les boutons===== 
-<WRAP round tip>  
-**Acti 3 : Ouvrir/Fermer la porte avec les boutons** 
- 
-<WRAP group><WRAP half column> 
-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]. 
- 
-<code> 
-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 
-</code> 
-</WRAP><WRAP half column> 
-{{ :cours:picaxe3img1.jpg?400 |Cliquer sur le programme pour l'agrandir}} 
-//Cliquer sur le programme pour l'agrandir// 
-</WRAP></WRAP></WRAP> 
- 
-Éléments à tenir compte pour la programmation : 
-  * Il faut **configurer le PICAXE 28X1** 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 et agir sur les LEDs===== 
-<WRAP round tip> 
-**Acti 4-1 : Utiliser des sous programme/fonction et agir sur les LEDs** 
- 
-<WRAP group><WRAP half column> 
-  * 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. 
- 
-<code> 
-   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 
-</code> 
-</WRAP><WRAP half column> 
-{{ :cours:porte_acti41.png?400 |Cliquer sur le programme pour l'agrandir}} 
-//Cliquer sur le programme pour l'agrandir// 
-</WRAP></WRAP></WRAP> 
- 
-  * Les actions "OUVRIR" et "FERMER" la porte sont re écrite en utilisant des procédures qui sont appelées dans le programme principal. 
-  * 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 pour se rappeler d'un état==== 
-<WRAP round tip>  
-**Acti 4-2 : Utiliser une variable pour se rappeler d'un état** 
- 
-<WRAP group><WRAP half column> 
-  * 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. 
- 
-<code> 
-FERMER-05 Mettre ETAT à "Fermer" 
- 
-OUVRIR-04 Mettre ETAT à "Ouvrir" 
- 
-PROG-06a  Mettre ETAT à "Fermée" 
- 
-PROG-09a  Mettre ETAT à "Ouverte" 
- 
-PROG-16    Si barrière I/R franchie 
-PROG-17      Si ETAT = 3 
-PROG-18        Fonction Ouvrir la porte 
- 
-</code> 
-</WRAP><WRAP half column> 
-{{ :cours:porte_acti42.png?400 |Cliquer sur le programme pour l'agrandir}} 
-//Cliquer sur le programme pour l'agrandir// 
-</WRAP></WRAP></WRAP> 
-  * 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.1649413653.txt.gz · Dernière modification: 2022/04/08 12:27 de mrcjl