Programme en blocs pour un portail coulissant

pdevisme1

Senior Member
Bonjour à tous, j'ai fait le programme suivant en blocs pour une maquette de portail coulissant sous Picaxe Editor 6.

J'ai un détecteur de fermeture de portail ( un fin de course ) et un détecteur d'obstacle si un piéton passe lors de la fermeture du portail.

Je souhaiterais que le portail s'arrête lors de la détection du fin de course de fermeture évidemment mais aussi lors de la détection d'un piéton.

23279

Pour la version organigramme pas de souci, le programme fonctionne très bien et est facile à réaliser.

Là où je bloque un peu c'est sur le programme en blocs justement...

Lors de la fermeture, il faudrait que je puisse mettre un OU logique entre "tant que entrée Obstacle ? est désactivée" et "tant que entrée Portail fermé ? est désactivée" mais ce blocs logique n'existe pas donc j'ai fait le programme ci-dessus sans être sûr que ce dernier soit correct...

Je mets le fichier du programme aussi en téléchargement au cas où.

Merci d'avance si vous avez une idée.
 

Attachments

pdevisme1

Senior Member
Bonjour, je n'ai pas de fichier .aia ( d'App Inventor donc ). Il y a juste un BP pour ouvrir/fermer le portail. Le fichier xml que j'ai joint est à ouvrir dans PE6 en blocs.
 

PieM

Senior Member
Ouais, pas très souple ce Blocky !
A mon avis la seule possibilité pour avoir une double condition est de passer par une variable auxiliaire :
23286
et ta condition de boucle teste varA.

Mais j'aurais bien vu plutôt ça:
23287
 
Last edited:

PieM

Senior Member
Ton "tant que entrée Portail fermé ? est désactivée" est inutile puisque c'est la condition sinon du portail fermé activé ...

23288
 
Last edited:

pdevisme1

Senior Member
Bonjour Piem, dans ton programme #6 ci-dessus, le détecteur d'obstacle est testé au LANCEMENT de la fermeture du portail puis PLUS PENDANT la fermeture ? Donc si un obstacle est détecté lors de la fermeture, le portail ne s'arrête pas. Non ?

Je ne peux pas essayer ce jour, je n'ai pas la maquette chez moi cet après-midi.
 

pdevisme1

Senior Member
C'est bien ce que je me disais... Il faudrait un "bloc logique OU" ( comme dans mBlock pur les cartes Arduino ) pour détecter l'obstacle OU la fermeture complète du portail.

J'ai testé le programme ci-dessous ce matin mais sans succès... en pensant que le bloc "fixer var_obstacle à entrée Portail fermé? OU entrée Obstacle ?" s'incrémenter de 1 ( puisque l'on parle d'une variable ) si l'une des 2 conditions était réunie.

Quand un obstacle est détecté lors de la fermeture du portail ce dernier se ré-ouvre complétement, donc impecc, mais quand il n'y a pas d'obstacle le portail se ré-ouvre aussitôt quand il atteint le fin de course de fermeture...

23290

Ouais, pas évident Blockly et encore moins quand il faut expliquer ça à des gamins de 3ème... Franchement je préfère l'organigramme mais ce n'est malheureusement pas ce qui nous est demandé.

Même les élèves trouvent l'organigramme plus facile...
 

PieM

Senior Member
Il faudrait se contenter d'arrêter la fermeture lors de la détection, sans repartir sur une ouverture, non ?
 
Top