Voici une possibilité d'algorithme. D'autres stratégies sont possibles pour permettre au rover de se déplacer sans jamais se bloquer. 

Une boucle principale détermine l'état des capteurs de fin de course FCD et FCG.

En Fonction, le rover devra sûrement reculer pour repartir dans une autre direction.

Mais la question est de reculer pendant combien de temps ?

Il faut bien définir une durée !

Attendre 4s
Avancer_tourner_gauche
FCD activé
Début
Avancer_tourner_droite
Reculer_tourner_droite
Avancer
Attendre 4s
Reculer_tourner_gauche
Avancer
FCG activé
Reculer