SDK Question Get Attitude/Angles of Orbitsystem

Currently in work. It is a complete rewrite so it is taking a while. User interface and manager classes are complete, guidance class is about 50% and RCS control module is about 10%. The attitude control will be via pluggable modules as I plan to also write a control moment gyro attitude control module.

Excellent, this MFD was the base of my own autopilots (in progress too). I've worked a while with lazyD (lolamfd) that used it also.
Just one trouble with the previous version. You can only orient the front of the vessel. to orient the hover, it was impossible.
But it is so accurate and quicker than other orientation tools. really fantastic.

what is the control moment gyro ??????
 
Just one trouble with the previous version. You can only orient the front of the vessel. to orient the hover, it was impossible.
Well not impossible, you just need to do calculate the bias in your head when defining the target attitude. That said, one of the items on my own wish list is to implement a axis-sense feature so you can define your own set of local vessel axes relative to the current ones (this is like in Shuttle Fleet how the RCS controls are redefined when you are using the ODS camera). The plan was to enable to user to manually define the axes or alternatively use a camera sense, so the axes are aligned with the current camera view. That is in the future though. First step is to get a robust and flexible code base that will enable the addition of such features (which the v3.2 code does not provide). That was the main driver behind implementing a separate guidance class.

what is the control moment gyro ??????
http://en.wikipedia.org/wiki/Control_Moment_Gyro
 
Here is a bit of a description of how I am doing it in the new Attitude MFD.
thanks a lot , but I'm not sure if I got this... I will try it out the next days :).

Surface: use functions VESSEL::GetPitch, GetBank and GetSideSlip.

this is not quite right. "side slip" is to yaw, as "angle of attack" is to pitch.
it took me a long time to find the correct function but here it is:
Code:
oapiGetHeading(this->GetHandle(),&YawAngle);
don't know why it is not included in the usual functions.

i've got one more question ;)
Code:
this->GetRelativeVel(this->GetSurfaceRef(),Velocity);
this gets the velocity relative to the earth inertial system. (the modulus of the vector fits exactly the orbitvelocity)
But in which system is it displayed?
And which transformation matrix can I use to transform the coordinates to my Vessel or to the NorthEastDown-system :(??

edit: to the vessel the transformation matrix is just the inversion (here also transposition) of "getrotationmatrix" as tofitouf already said.
to get it relative to the NED-system I'll probably have to get my own matrix ;)
 
Last edited:
this is not quite right. "side slip" is to yaw, as "angle of attack" is to pitch.
it took me a long time to find the correct function but here it is:
Yes, you are right there. Sorry about the confusion.

this gets the velocity relative to the earth inertial system. (the modulus of the vector fits exactly the orbitvelocity)
But in which system is it displayed?
Global ecliptic frame.

And which transformation matrix can I use to transform the coordinates to my Vessel or to the NorthEastDown-system :(??
You could use VESSEL::HorizonRot but you will need to do a further conversion from that frame into your NED frame (should only be 90 deg rotations about principle axes, therefore fairly easy). How do you define your NED frame? Is it left or right handed? In which direction do the axes point?
 
First step is to get a robust and flexible code base that will enable the addition of such features (which the v3.2 code does not provide). That was the main driver behind implementing a separate guidance class.

This would be excellent if this class could be reused in different projects, Attitude mfd was a great help to me.
 
This would be excellent if this class could be reused in different projects, Attitude mfd was a great help to me.
It will be LGPL, so you can have at it once it is released :speakcool:
 
Back
Top