Hacer el recorrido a la inversa

Lo que quiero hacer es una "grua"(un robot con una pinza) teledirigida, esto es fácil, pero lo que quiero de verdad es que vuelva sola, es decir: Yo la dirigo con un mando por toda la casa y que coja algo con la pinza, y lo que quiero es que vuelva al lugar del cual ha ha venido ella sola.He pensado en hacerlo haciendo que la grua ejecute los botones contrarios a los que he pulsado en orden inverso ( y con un os sensores para que no se choque). Esto se puede hacer o necesitaría un GPS o algo similar.

EJ: pulso: -delante -derecha -izquierda -atras. - girar 20 grados.

Lo que tendria que hacer: -girar 340 grados -adelante -derecha -izquierda -adelante

Gracias