We know the GPS position of a Geostationry satellite and a sensor. We also know the sensor orientation relative to the magnetic North of Earth. How do we find the orientation of Satellite relative to the current plane of sensor?

When the sensor is calibrated, its calibrated-xyz axes orients such that the xy-plane is parralell with the Earth surface, (y pointing North, x pointing East) and z pointing up ( z will go through center of Earth).

When sensor rotates, it will give out a quaternion, Q=(w, a,b,c) that descirbes its current orientatation (current-xyz) relatively to its calibrated-xyz.

To find out the relative orientation of sat on the current-xyz axes. We need to define a global coordinate, ABC.

I defined ABC such that AB is in the equatorial plane with A passes through the 0° longitude, and B passes through +90° East, C passes through Earth North Pole.

I then convert the position of satellite and sensor into this ABC-coordinate.

The next step is to transform the ABC-coordinate to the current-xyz coordinate by mean of a single rotation ideally in quaternion form.

To do this, first I need the Q1 that describes rotation from current-xyz to calibrated-xyz. Q1 is the output of sensor.

Second, I need Q2 that describes rotation from calibrated-xyz to global axes ABC.

  • What is Q2 in this case ( possibly derive from its GPS coordinate and assumption that calibrated-xyz has xy tangential to sf of Earth)?

Let $(X,Y,Z)$ be the position of sensor in global coordinates. Three orthogonal unit vectors giving the orientations of local axes can be then expressed in global coordinates as: $$ \hat Z={(X,Y,Z)\over\sqrt{X^2+Y^2+Z^2}},\quad \hat X={(-Y,X,0)\over\sqrt{X^2+Y^2}},\quad \hat Y={(-XZ,-YZ,X^2+Y^2)\over\sqrt{(X^2+Y^2+Z^2)(X^2+Y^2)}}. $$ The rotation matrix $R$ you need must then satisfy $$ R(\hat X,\hat Y,\hat Z)=\pmatrix{1&0&0\\0&1&0\\0&0&1}, \quad\text{that is:}\quad R=(\hat X,\hat Y,\hat Z)^{-1}=(\hat X,\hat Y,\hat Z)^{T}. $$ In the above formula $(\hat X,\hat Y,\hat Z)$ is the matrix having $\hat X$, $\hat Y$, $\hat Z$ as column vectors, hence $R$ is the matrix having $\hat X$, $\hat Y$, $\hat Z$ as row vectors.

  • $\begingroup$ Hi Aretino, Thanks for your prompt response. I understand how you get Z( align with gravity) and Y( cross product of Z and X) axes. But, How did you derive the X axis? Also, Since your proposed method involve the inversion of Matrix (X^,Y^,Z^), Do you know what is the best way to go about it? This is because Matrix inversion could introduce an unacceptable margine of error. $\endgroup$ – Benphan19 Jul 27 '18 at 10:53
  • $\begingroup$ Vector $\hat X$ is $(0,0,1)\times \hat Z$ normalized, so it is directed eastwards. As for the errors, sorry but I'm not an expert of numerical algorithms. $\endgroup$ – Aretino Jul 27 '18 at 13:39
  • $\begingroup$ But on better thinking, you simply have $R^{-1}=R^T$ (the transpose), as with any orthogonal matrix. I also added that to the answer. $\endgroup$ – Aretino Jul 27 '18 at 13:49
  • $\begingroup$ Now this makes sense. Thanks Aretino. $\endgroup$ – Benphan19 Jul 30 '18 at 7:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.