Hey,

ich weiß nicht wie vertraut du mit der Vektorrechnung bist, aber ich glaube die wäre ein guter Ansatz.
Zum Verständnis:
Du hast zwei Punkte:
1. Zielpunkt
2. Den Punkt des Robos (GPS Modul)

Das GPS Modul deines Robos ist der Ursprung deines Koordinatensystems und mit Hilfe dieses Moduls kannst du den Differenzenvektor zwischen Ziel und Robo bestimmen.
Der Vektor sieht dann so aus:

r = Längengrad, Breitengrad

Du hast also einen Vektor der die Koordinaten des Ziels beschreibt und die Koordinaten deines GPS Moduls als Vektor, die den Nullpunkt darstellen.
Jetzt kannst du den Differenzenvektor berechnen: Differenzenvektor = Zielvektor - Koordinatenvektor deines Robos
Der Differenzenvektor beschreibt dann den Weg, den dein Robo noch gehen muss um zum Ziel zu kommen (also die Koordinatenentfernung in x und y Richtung).
Mit Hilfe dieser Koordinaten kannst du nun die Winkel zwischen x und y Achse ausrechnen und herausfinden in welchem Winkel der Robo zum Ziel steht.
Wenn du den Betrag beider Koordinaten ausrechnest, bekommst du die direkte Entfernung raus.

Weiß nicht ob es so klappt, aber das hört sich nach einer Aufgabe an, die ideal für Vektoren ist