by Thorsten » Sat Feb 27, 2016 7:36 pm
Docking is a bitch,,,
At days like today, I wish we had a genuine space engine, not a flightsim which needs to be tricked at every corner.
So, we have the Shuttle and ISS. We need to compute ISS orbit in inertial coordinates (because that's where the equations of motion hold). However, we need to tell FG to place it in Earth co-rotating coordinates (because the model placement code wants that rather than intertials). However, we need to tell FG about the ISS attitude in LVLH (local vertical, local horizon) coordinates, which vexingly change attitude all the time even if inertial attitude is simple constant. And since we need to check the docking collar location against the docking collar of the station, and the docking collar is displaced by a fixed amount in body coordinates from the reference location of the Shuttle, we have a transformation from body to inertial coordinates as well.
So there's a grand total of four different coordinate systems involved in making all of this work, as well as hand-overs from static to dynamically updated models (to get the equations of motion right when the Shuttle is docked, ISS becomes a displaced point mass - so you can actually yank the station around using thrusters...) - and of course when undocking, we need to leave the station in the changed attitude.
And of course to get the guidance information, we need to operate from a station-relative coordinate system...
It's a genuinely nasty problem by all accounts. It's not trivial to fly either, though I am getting better at this (had to do it more than a few times for testing purposes...).