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 !

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