# attitude determination TRIAD - how are orbital reference frame vectors constructed?

I am trying to fully understand the TRIAD algorithm for attitude determination of a satellite. https://en.wikipedia.org/wiki/Triad_method

So so far I know that the vectors $\vec{r}_1$ and $\vec{r}_2$ can be constructed using measurements from different sensors. For example: if you have a sunsensor on each side of a satellite (in the x- ,y- and z-direction) and only the x-side is facing the sun you could eventually have a vector as follows $\vec{r}_1 = [100,0,0,]^T$.

But what about the vectors which are not fixed to the body of the satellite itself? How do you construct vectors for such a reference frame (orbital reference frame)? Any alternatives are welcome.

The final goal is to get the rotation matrix A.

$$A = [\vec{R}_1;\vec{R}_2; (\vec{R}_1 \times \vec{R}_2)] [\vec{r}_1; \vec{r}_2;(\vec{r}_1 \times \vec{r}_2)]^T$$

EDIT: I know it has something to do with spherical harmonics

• You need two reference directions, for example one to the sun and one to another celestial body. These two vectors are needed with respect to two different reference systems, one being the spacecraft body ref system, the other one typically earth centered inertial. So you have a total of four vectors (vector components will be different for the two vectors pointing the same direction because of different reference). TRIAD is just a method to derive a matrix describing crafts attitude from these vectors. Direction from earth center to the sun is easily derived from observation time. – Andreas Oct 26 '16 at 21:08