1

I have a little problem finding a solution for this problem:

My position is unknown. I can see a landmark (angle, range) and so I know the position $LM_{local}$ in my local coordinate frame.
I recognized this landmark, and so I also know the global position of this landmark. LM(x,y, $\theta$)

But I have a problem finding my global position.
I only get a correct position at a specific orientation of myself. When I turn myself in place, the calculated position goes in a circle around the landmark...

I think my problem could be, not knowing the orientation of the landmark in my local coordinate system... But I am not sure...

Is this problem solvable with one landmark?

The green elements are known, and the red X is the position to be calculated.
enter image description here

madmax
  • 439

1 Answers1

1

In vector notation, you know the vector of the landmark $\vec{L}$ with respect to some origin $O$, and the position of the landmark relative to unknown position $\vec{R}$. The unknown position $\vec{P}$ with respect to $O$ is simply

$$\vec{P}=\vec{L}-\vec{R}$$

The vector subtraction means that, when a vector is expressed in terms of Cartesian coordinates, you subtract each component.

EDIT

I may have oversimplified this. Basically, I think you know a position of a landmark with respect to both a local and global origin, and you know how you are oriented. You just do not know where you are with respect to the global origin.

The relationship between the local and global coordinate system is as follows:

$$x'=x_0+x \cos{\theta}-y \sin{\theta}$$ $$y'=y_0+x \sin{\theta}+y \cos{\theta}$$

where $(x_0,y_0)$ is the unknown location of the local origin in the global coordinate system, $(x,y)$ is the location of the landmark in the global coordinate system, $(x',y')$ is the position of the landmark in the local coordinate system, and $\theta$ is your orientation angle. Knowing your data, it is straightforward to find your position.

Ron Gordon
  • 141,538