Outils pour utilisateurs

Outils du site


Panneau latéral

Accès aux Documents

documentation:comment_faire_clignoter_une_led_pendant_l_ouverture_de_mon_portail

Comment faire clignoter une led pendant l'ouverture de mon portail ?

Niveau intermédiaire

Voici le scénario : Un appui sur un bouton poussoir déclenche l'ouverture d'un portail ( un moteur à  courant continu ). une led doit clignoter durant l'ouverture de celui-ci. Dés que le portail atteint un fin de course, le moteur du portail est arrété et la led s'éteinds. La difficulté réside dans le fait qu'il faut faire clignoter une led pendant que l'on teste en “même temps” le fin de course. La technique de programmation utilisée est le “pooling” qui consiste à  fractionner les délais d'attente qui suivent l'allumage ou l'extinction de la led en une multitude de délais plus petit entre lesquelles on effectue le test du Fin de course. Par exemple l'organigramme ci-dessous n'est pas opérationnel car entre deux test du fin de course , il s'écoule 1000ms+1000ms = 2 secondes dû au clignotement de la led. L'intervale de temps entre deux tests du Fin de course étant trop long, la maquette ne sera pas trés réactive.

Un organigramme pas trés réactif

L'idée est donc par exemple de fractionner chacun des délais de 1000ms en 10 délais de 100ms que l'on inclus dans une boucles avec un test du Fin de course qui s'effectuera donc toutes les 100ms : La maquette sera bien plus réactive à l'action du fin de course. Sur l'exemple ci dessous, chaque délai de 1000 ms a été remplacé par une boucle qui s'exécute 10 fois et dans laquelle il y a un délai de 100ms et un test du Fin de course.

Un organigramme beaucoup plus réactif

La technique du pooling permet de donner l'illusion que la led clignote en même temps que s'effectue le test du Fin de course.

Administrateur 13/05/2013 17:23

documentation/comment_faire_clignoter_une_led_pendant_l_ouverture_de_mon_portail.txt · Dernière modification: 2014/04/21 21:40 (modification externe)