If you wish to contribute or participate in the discussions about articles you are invited to contact the Editor

Transformations between ECEF and ENU coordinates: Difference between revisions

From Navipedia
Jump to navigation Jump to search
No edit summary
(Fixed the inconsistency between the intermediate and last note.)
 
(13 intermediate revisions by 3 users not shown)
Line 4: Line 4:
|Level=Advanced
|Level=Advanced
|YearOfPublication=2011
|YearOfPublication=2011
|Logo=gAGE
|Title={{PAGENAME}}
|Title={{PAGENAME}}
}}
}}
The relation between the the local East, North, Up (ENU) coordinates and the <math>(x,y,z)</math> ECEF coordinates are illustrated in the next figure:
The relation between the local East, North, Up (ENU) coordinates and the <math>(x,y,z)</math> Earth Centred Earth Fixed (ECEF) coordinates is illustrated in the next figure:




::[[File: Transf_ECEF_&_ENU_Coord_Fig_1.png|none|thumb|480px|'''''Figure 2:''''': Transformations between ENU and ECEF coordinates.]]
::[[File: Transf_ECEF_&_ENU_Coord_Fig_1.png|none|thumb|480px|'''''Figure 1:''''': Transformations between ENU and ECEF coordinates.]]






From the figure 1 it follows that the <math>(x,y,z)</math> ECEF coordinates can be transformed to the ENU by two rotations:
From the figure 1 it follows that the ENU coordinates can be transformed to the  <math>(x,y,z)</math> ECEF by two rotations, where <math>\varphi</math> and <math>\lambda</math> are, respectively, the latitude and  longitude from the ellipsoid:




: 1. An anticlockwise rotation over East-west direction (i.e., the "E" axis of ENU coordinates)  by an angle <math>90-\varphi</math> to align the <math>Z</math>-axis with the Zenith direction (i.e., the "U" axis of ENU coordinates). That is <math>{\mathbf R}_1[-(\pi/2-\varphi)]</math>.
: 1. A clockwise rotation over east-axis by an angle <math>90-\varphi</math> to align the up-axis with the <math>z</math>-axis. That is <math>{\mathbf R}_1[-(\pi/2-\varphi)]</math>.




: 2. An anticlockwise rotation over the Up-Down direction (i.e., the "U" axis of ENU coordinates) by and angle <math>90+\lambda</math> to align the <math>x</math>-axis with the East direction. That is  <math>{\mathbf R}_3[-(\pi/2+\lambda)]</math>.
: 2. A clockwise rotation over the <math>z</math>-axis by an angle <math>90+\lambda</math> to align the east-axis with the <math>x</math>-axis. That is  <math>{\mathbf R}_3[-(\pi/2+\lambda)]</math>.




Line 50: Line 49:
:<math>
:<math>
\begin{array}{l}
\begin{array}{l}
\mathbb{\mathbf R_1}[\theta]=\left [
\mathbb{\mathbf R}_1[\theta]=\left [
\begin{array}{ccc}
\begin{array}{ccc}
1 & 0 & 0\\
1 & 0 & 0\\
Line 93: Line 92:




The unit vectors in local East, North, Up directions as expressed in ECEF Cartesian coordinates are given by the columns of matrix (3). That is:
The unit vectors in local East, North and Up directions as expressed in ECEF cartesian coordinates are given by the columns of matrix (3). That is:


:<math>
:<math>
Line 105: Line 104:




''Note:'' If <math>(\lambda,\varphi)</math> are ellipsoidal coordinates, thence, the vector <math>\hat{\mathbf u}</math> is orthogonal to the tangent plane to the ellipsoid, which is defined by  <math>(\hat{\mathbf e}, \hat{\mathbf n})</math>. If <math>(\lambda,\varphi)</math> are taken as the spherical latitude and longitude, thence, the vector  <math>\hat{\mathbf u}</math> is in the radial direction and  <math>(\hat{\mathbf e}, \hat{\mathbf n})</math> defines the tangent plane to the sphere.
''Note:'' If <math>(\lambda,\varphi)</math> are ellipsoidal coordinates, thence, the vector <math>\hat{\mathbf u}</math> is orthogonal to the tangent plane to the ellipsoid, which is defined by  <math>(\hat{\mathbf e}, \hat{\mathbf n})</math>. If <math>(\lambda,\varphi)</math> are taken as the spherical longitude and latitude, thence, the vector  <math>\hat{\mathbf u}</math> is in the radial direction and  <math>(\hat{\mathbf e}, \hat{\mathbf n})</math> defines the tangent plane to the sphere.




Line 172: Line 171:




where <math>{\mathbf r}^{sat}</math> and <math>{\mathbf r}_{rcv}</math> are the geocentric position of the satellite and receive, respectively, the elevation and azimuth in the local system coordinates (ENU), defined by the unit vectors <math>\hat{\mathbf e}</math>, <math>\hat{\mathbf n}</math> and <math>\hat{\mathbf u}</math> can be computed from (see figure 2):
where <math>{\mathbf r}^{sat}</math> and <math>{\mathbf r}_{rcv}</math> are the geocentric position of the satellite and receiver, respectively, the elevation and azimuth in the local system coordinates (ENU), defined by the unit vectors <math>\hat{\mathbf e}</math>, <math>\hat{\mathbf n}</math> and <math>\hat{\mathbf u}</math> can be computed from (see figure 2):


:<math>
:<math>
Line 200: Line 199:




''Note:'' If <math>(\lambda,\varphi)</math> are ellipsoidal coordinates, thence, the vector <math>\hat{\mathbf u}</math> is orthogonal to the tangent plane to the ellipsoid, which is defined by  <math>(\hat{\mathbf e}, \hat{\mathbf n})</math>. If <math>(\lambda,\varphi)</math> are taken as the spherical latitude and longitude, thence, the vector  <math>\hat{\mathbf u}</math> is in the radial direction and  <math>(\hat{\mathbf e}, \hat{\mathbf n})</math> defines the tangent plane to the sphere.
''Note:'' If <math>(\lambda,\varphi)</math> are ellipsoidal coordinates, thence, the vector <math>\hat{\mathbf u}</math> is orthogonal to the tangent plane to the ellipsoid, which is defined by  <math>(\hat{\mathbf e}, \hat{\mathbf n})</math>. If <math>(\lambda,\varphi)</math> are taken as the spherical longitude and latitude, thence, the vector  <math>\hat{\mathbf u}</math> is in the radial direction and  <math>(\hat{\mathbf e}, \hat{\mathbf n})</math> defines the tangent plane to the sphere.





Latest revision as of 06:09, 9 May 2022


FundamentalsFundamentals
Title Transformations between ECEF and ENU coordinates
Author(s) J. Sanz Subirana, J.M. Juan Zornoza and M. Hernández-Pajares, Technical University of Catalonia, Spain.
Level Advanced
Year of Publication 2011

The relation between the local East, North, Up (ENU) coordinates and the [math]\displaystyle{ (x,y,z) }[/math] Earth Centred Earth Fixed (ECEF) coordinates is illustrated in the next figure:


Figure 1:: Transformations between ENU and ECEF coordinates.


From the figure 1 it follows that the ENU coordinates can be transformed to the [math]\displaystyle{ (x,y,z) }[/math] ECEF by two rotations, where [math]\displaystyle{ \varphi }[/math] and [math]\displaystyle{ \lambda }[/math] are, respectively, the latitude and longitude from the ellipsoid:


1. A clockwise rotation over east-axis by an angle [math]\displaystyle{ 90-\varphi }[/math] to align the up-axis with the [math]\displaystyle{ z }[/math]-axis. That is [math]\displaystyle{ {\mathbf R}_1[-(\pi/2-\varphi)] }[/math].


2. A clockwise rotation over the [math]\displaystyle{ z }[/math]-axis by an angle [math]\displaystyle{ 90+\lambda }[/math] to align the east-axis with the [math]\displaystyle{ x }[/math]-axis. That is [math]\displaystyle{ {\mathbf R}_3[-(\pi/2+\lambda)] }[/math].


That is:

[math]\displaystyle{ \left [ \begin{array}{l} x\\ y\\ z\\ \end{array} \right ] = {\mathbf R}_3[-(\pi/2+\lambda)]\,{\mathbf R}_1[-(\pi/2-\varphi)] \left [ \begin{array}{l} E\\ N\\ U\\ \end{array} \right ] \qquad \mbox{(1)} }[/math]


where, according to the expressions (2) (see Transformation between Terrestrial Frames)


[math]\displaystyle{ \begin{array}{l} \mathbb{\mathbf R}_1[\theta]=\left [ \begin{array}{ccc} 1 & 0 & 0\\ 0 & \cos \theta & \sin \theta \\ 0 & -\sin \theta & \cos \theta \\ \end{array} \right ] \;;\;\; \mathbb{\mathbf R}_2[\theta]=\left [ \begin{array}{ccc} \cos \theta & 0 & -\sin \theta \\ 0 & 1 & 0\\ \sin \theta &0 & \cos \theta \\ \end{array} \right ]\\ \\ \mathbb{\mathbf R}_3[\theta]=\left [ \begin{array}{ccc} \cos \theta & \sin \theta &0\\ -\sin \theta & \cos \theta & 0\\ 0 & 0 & 1\\ \end{array} \right ] \end{array} \qquad \mbox{(2)} }[/math]


yields:

[math]\displaystyle{ {\mathbf R}_3[-(\pi/2+\lambda)]\,{\mathbf R}_1[-(\pi/2-\varphi)]= \left ( \begin{array}{ccc} -\sin \lambda & -\cos \lambda \sin \varphi &\cos \lambda \cos \varphi\\ \cos \lambda & -\sin \lambda \sin \varphi & \sin \lambda \cos \varphi\\ 0 & \cos \varphi & \sin \varphi\\ \end{array} \right ) \qquad \mbox{(3)} }[/math]


The unit vectors in local East, North and Up directions as expressed in ECEF cartesian coordinates are given by the columns of matrix (3). That is:

[math]\displaystyle{ \begin{array}{l} \hat{\mathbf e}=\left ( -\sin \lambda \,,\,\cos \lambda\,,\, 0 \right )\\ \hat{\mathbf n}=\left ( - \cos \lambda \sin \varphi \,,\,- \sin \lambda \sin \varphi\,,\, \cos \varphi \right)\\ \hat{\mathbf u}=\left ( \cos \lambda \cos \varphi \,,\,\sin \lambda\ \cos \varphi\,,\, \sin \varphi \right) \qquad \mbox{(4)} \end{array} }[/math]


Note: If [math]\displaystyle{ (\lambda,\varphi) }[/math] are ellipsoidal coordinates, thence, the vector [math]\displaystyle{ \hat{\mathbf u} }[/math] is orthogonal to the tangent plane to the ellipsoid, which is defined by [math]\displaystyle{ (\hat{\mathbf e}, \hat{\mathbf n}) }[/math]. If [math]\displaystyle{ (\lambda,\varphi) }[/math] are taken as the spherical longitude and latitude, thence, the vector [math]\displaystyle{ \hat{\mathbf u} }[/math] is in the radial direction and [math]\displaystyle{ (\hat{\mathbf e}, \hat{\mathbf n}) }[/math] defines the tangent plane to the sphere.


From ECEF to ENU coordinates

Taking into account the properties of the rotation matrices [math]\displaystyle{ {\mathbf R}_i(\alpha) }[/math],i.e., [math]\displaystyle{ {\mathbf R}_i^{-1}(\alpha)= {\mathbf R}_i(-\alpha)={\mathbf R}_i^T(\alpha) }[/math], thence, the inverse transformation of (1) is given by:

[math]\displaystyle{ \left [ \begin{array}{l} E\\ N\\ U\\ \end{array} \right ] = {\mathbf R}_1[\pi/2-\varphi]\,{\mathbf R}_3[\pi/2+\lambda] \left [ \begin{array}{l} x\\ y\\ z\\ \end{array} \right ] \qquad \mbox{(5)} }[/math]


where the transformation matrix of (5) is the transpose of matrix (3):


[math]\displaystyle{ {\mathbf R}_1[\pi/2-\varphi]\,{\mathbf R}_3[\pi/2+\lambda]= \left ( \begin{array}{ccc} -\sin \lambda & \cos \lambda &0\\ - \cos \lambda \sin \varphi & -\sin \lambda \sin \varphi & \cos \varphi\\ \cos \lambda \cos \varphi & \sin \lambda \cos \varphi & \sin \varphi\\ \end{array} \right ) \qquad \mbox{(6)} }[/math]


The unit vectors in the ECEF [math]\displaystyle{ \hat{\mathbf x} }[/math], [math]\displaystyle{ \hat{\mathbf y} }[/math] and [math]\displaystyle{ \hat{\mathbf z} }[/math] directions, as expressed in ENU coordinates, are given by the columns of matrix (6). That is:

[math]\displaystyle{ \begin{array}{l} \hat{\mathbf x}=\left ( -\sin \lambda \,,\,-\cos \lambda \sin \varphi\,,\, \cos \lambda \cos \varphi \right )\\ \hat{\mathbf y}=\left (\cos \lambda\,,\,- \sin \lambda \sin \varphi\,,\, \sin \lambda \cos \varphi \right)\\ \hat{\mathbf z}=\left ( 0 \,,\, \cos \varphi \,,\,\sin \varphi \right) \end{array} \qquad \mbox{(7)} }[/math]


Elevation and azimuth computation

Given the line of sight unit vector

[math]\displaystyle{ \hat {\boldsymbol \rho}=\displaystyle \frac{{\mathbf r}^{sat}-{\mathbf r}_{rcv}}{\| {\mathbf r}^{sat}-{\mathbf r}_{rcv} \|} \qquad \mbox{(8)} }[/math]


where [math]\displaystyle{ {\mathbf r}^{sat} }[/math] and [math]\displaystyle{ {\mathbf r}_{rcv} }[/math] are the geocentric position of the satellite and receiver, respectively, the elevation and azimuth in the local system coordinates (ENU), defined by the unit vectors [math]\displaystyle{ \hat{\mathbf e} }[/math], [math]\displaystyle{ \hat{\mathbf n} }[/math] and [math]\displaystyle{ \hat{\mathbf u} }[/math] can be computed from (see figure 2):

[math]\displaystyle{ \begin{array}{l} \hat {\boldsymbol \rho}\cdot \hat{\mathbf e} =\cos E \sin A\\ \hat {\boldsymbol \rho}\cdot \hat{\mathbf n}=\cos E \cos A\\ \hat {\boldsymbol \rho}\cdot \hat{\mathbf u} = \sin E \end{array} \qquad \mbox{(9)} }[/math]


Thence the elevation and azimuth of satellite in the local coordinates system are given by:

[math]\displaystyle{ E=\arcsin(\hat {\boldsymbol \rho}\cdot \hat{\mathbf u}) \qquad \mbox{(10)} }[/math]
[math]\displaystyle{ A=\arctan \left (\frac{\hat {\boldsymbol \rho}\cdot \hat{\mathbf e}}{\hat {\boldsymbol \rho}\cdot \hat{\mathbf n}}\right ) \qquad \mbox{(11)} }[/math]


Figure 2:: Local coordinate frame showing the elevation ([math]\displaystyle{ E }[/math]) and azimuth ([math]\displaystyle{ A }[/math]).


Note: If [math]\displaystyle{ (\lambda,\varphi) }[/math] are ellipsoidal coordinates, thence, the vector [math]\displaystyle{ \hat{\mathbf u} }[/math] is orthogonal to the tangent plane to the ellipsoid, which is defined by [math]\displaystyle{ (\hat{\mathbf e}, \hat{\mathbf n}) }[/math]. If [math]\displaystyle{ (\lambda,\varphi) }[/math] are taken as the spherical longitude and latitude, thence, the vector [math]\displaystyle{ \hat{\mathbf u} }[/math] is in the radial direction and [math]\displaystyle{ (\hat{\mathbf e}, \hat{\mathbf n}) }[/math] defines the tangent plane to the sphere.