2

How can I compute the attitude of a satellite given its yaw, pitch, roll, and velocity?

Yaw, Pitch, and Roll are given with respect to the velocity vector (A vector whose origin is the satellite's center towards to the direction of motion).

The velocity is given in ECEF.

By attitude I mean the direction of the satellite's body after the rotations along different axes caused by yaw/pitch/roll steering.

user10638
  • 41
  • 2
  • What is ECEF? I know earth centered inertial frame, but I can't come up with the 2nd E. – Organic Marble Jun 30 '15 at 21:32
  • 2
    "Earth-Centered, Earth-Fixed" – duzzy Jun 30 '15 at 21:40
  • 1
    How can I compute the attitude of a satellite given its yaw, pitch, roll, and velocity? You can't. At an absolute minimum, you need to satellite's angular velocity. Velocity doesn't provide that information. – David Hammen Jul 01 '15 at 01:03
  • @DavidHammen Thanks. we know the satellite's angular velocity as well. – Mahdi Khosravi Jul 01 '15 at 03:57
  • It is a bit confusing. Yaw, pitch and roll should identify a reference frame that moves with the satellite along the orbit and usually roll is aligned with the velocity vector, yaw points towards the Earth and pitch to form a right-handed frame. Is this the case? Than you may want to know the final orientation of the satellite given the 3 angles about yaw, pitch and roll axes. Correct? – tuspazio Jul 01 '15 at 09:12
  • Btw angular velocity is not necessary if the dynamics of the satellite is not involved – tuspazio Jul 01 '15 at 09:13
  • @tuspazio Yes, you are right. Then, how can I determine the new attitude (after steering)? – Mahdi Khosravi Jul 01 '15 at 17:12

1 Answers1

3

You can combine the 3 successive rotations to obtain the rotation matrix from the initial to the final attitude.

Let's name $\vartheta$, $\varphi$ and $\psi$ the angles respectively about roll, pitch and yaw. And suppose we want to combine the rotations in exactly this order. The rotation matrices related to each rotation are: $$ A_{\rm r} = \begin{bmatrix} 1 & 0 & 0 \\ 0 & c_\vartheta & s_\vartheta \\ 0 & -s_\vartheta & c_\vartheta \end{bmatrix}, \; A_{\rm p} = \begin{bmatrix} c_\varphi & 0 & -s_\varphi \\ 0 & 1 & 0 \\ s_\varphi & 0 & c_\varphi \end{bmatrix}, \; A_{\rm y} = \begin{bmatrix} c_\psi & s_\psi & 0 \\ -s_\psi & c_\psi & 0 \\ 0 & 0 & 1 \end{bmatrix} $$

Then just perform the product of the 3 matrices in the reverse order (successive rotations rule): $$ A(\vartheta, \varphi, \phi) = A_{\rm y}A_{\rm p}A_{\rm r} $$

A couple of notes

  • If you change the order, the final attitude will be different
  • I suppose that RPY reference frame rotates while the satellite moves along the orbit (i.e. the roll axis is always aligned with the velocity vector). This means that the attitude matrix you compute describes actually the orientation of a body fixed reference frame (initially coincident with RPY) wrt RPY related to a particular position of the satellite.

Hope this helps

tuspazio
  • 371
  • 1
  • 5