Leçon 2 : Résumé post-projet
Le bloc [If then else] est utilisé pour que le robot VR puisse prendre une décision. Si la condition booléenne est VRAIE, alors les blocs à l'intérieur de la branche ‘If Then’ s'exécuteront. Si la condition booléenne est FAUSSE, les blocs à l'intérieur de la branche ‘Else’ s'exécuteront.

Dans ce projet, le robot VR s'est dirigé vers un bâtiment lorsque le capteur de distance a détecté un objet et le <Distance found object> bloc signalé comme VRAI. Cela a demandé à la branche « Si alors » du projet de s'exécuter. Cette branche comprend le bloc [Drive]. Le Robot VR saute ensuite la branche « Else » du projet.

Parce que le bloc [If then else] est placé à l'intérieur d'un bloc [Forever], le projet reboucle en haut du bloc [Forever] pour vérifier l'état du bloc [If then else]. Cette boucle se poursuivra éternellement, demandant au robot VR de vérifier continuellement l'état [If then else] des centaines de fois par seconde.
Notez que les blocs [Drive] et [Turn] à l'intérieur du bloc [If then else] sont des blocs sans attente. Les blocs non en attente n'arrêtent pas le flux d'un projet pendant qu'ils sont en cours d'exécution. Un comportement sans attente qui est exécuté dans un bloc [If then else] (tel que Drive Forward si un objet est détecté) se poursuivra pendant que la condition est vérifiée et ne changera que lorsque la condition changera.

Si le <Distance found object> bloc est signalé comme FAUX, la branche « Autre » du projet est exécutée. La branche « Else » comprend le bloc [Turn].

Pour votre information
[Dans le cas contraire] des blocs sont utilisés pour s'assurer qu'une seule branche du projet est exécutée lorsque la condition est vérifiée. Une seule instance ou condition peut être vraie à tout moment. Cela rend le projet plus efficace.

Comparer le projet en cours avec le projet créé dans l'unité 7. Le projet Unit 7 utilise quatre blocs [If then].

Lorsque vous exécutez un projet avec plusieurs blocs [If then], il est possible que plusieurs conditions soient déclarées VRAIES et que le projet exécute les commandes du bloc [Forever]. Dans ce projet, les deux conditions peuvent indiquer VRAI au cours de la même boucle [Forever]. De tels conflits pourraient entraîner l'arrêt du projet ou le ralentissement de son exécution.

L'utilisation d'un bloc [If then else] éviterait les bugs comme celui-ci car une seule condition peut être VRAIE à un moment donné avec ce bloc.

Questions
Veuillez sélectionner un lien ci-dessous pour accéder au questionnaire de la leçon.
Google Doc / .docx / .pdf