Condition d'interruption (3)

Previous  home  Next   

example_search_and_approch_rotate

Le sous-programme est interrompu lorsqu'une valeur différente de 0 est affectée à la variable globale "next".

Si la grandeur réglante de la vitesse de rotation est égale à 0, le cylindre rouge se trouve au centre de l'image, c.-à-d. que Robotino s'est tourné vers le cylindre rouge. La grandeur réglante est comparée à 0.

Il est à noter que la présence d'une image de la caméra au démarrage du programme n'est pas garantie. Si aucune image de caméra n'a encore été reçue, l'information d'image indique une largeur de 0. Le traqueur de segment fournit également 0 comme coordonnée x de sorte que la grandeur réglante est dans ce cas également 0. La condition énoncée est donc vraie et conduirait à une interruption du sous-programme alors qu'aucun mouvement n'a été exécuté. C'est la raison pour laquelle on vérifie si le traqueur de segment a trouvé ou non un segment. La variable "next" ne peut être mise à vrai que si le nombre de segments trouvés est supérieur à 0.