# How can a deep-space spacecraft determine in real time the direction of delta-v?

My spacecraft knows it wants to add a certain delta-v in a certain direction to its motion, relative to the stars. It will calculate current mass based on propellant usage history, which hasn't been much so far, and it knows the engine's well-characterized thrust, so taken together, it knows that it needs to burn for a time T in order to produce the correct magnitude of delta-v.

Its internal contents tend to shift, so that the precise location of the spacecraft's center of mass is unpredictable. Luckily the engine is gimbaled, and it can adjust the gimbals continuously during the maneuver to make sure it keeps the center of mass directly on the thrust axis. It does this by detecting rotation with the star cameras and/or gyros and gimbaling to null the rotation.

How does my spacecraft know if the thrust is actually pointing in the right direction? The stars are very far away and there are no handy planets or asteroids nearby, so while it knows attitude, how can it determine that the direction of the delta-v vector is correct?

I suppose internal accelerometers (inertial guidance) that have been cross-calibrated with the star cameras would be one solution, and exchange of radio communication and doppler information with Earth would be another.

Is that it? Inertial sensors and doppler, or is there any other currently used deep-space spacecraft technology that can measure the direction of delta-v in real time?

• Nov 29, 2016 at 19:13
• "It does this by detecting rotation with the star cameras and gyros and gimbaling to null the rotation." I don't think they use star trackers for gimbal control. That's probably all gyros. The star trackers serve only to periodically correct for drift in the gyros...
– user36480
Aug 19, 2020 at 6:24
• @Alex ya I'll change that to "and/or", thanks! I don't mean to propose it to be a practical solution, just that it is possible to measure rotation somehow.
– uhoh
Aug 19, 2020 at 7:08

I see the caveat of your question... and simultaneosly, I don't.

The problem: randomly, non-deterministically shifting center of mass.

Solution: as craft tries to turn, this is detected and compensated by engine gimbal, so that the thrust vector always points through CoM, unless it's compensating for the tilt right now.

Side effect: discrepancy between heading and bearing; thrust misaligned with ship's geometrical axis (which is misaligned with the misplaced CoM), propelling it in a different direction than originally intended.

Resulting problem: how to determine the value of the error - shift in velocity vs intended?

Solution: using exactly the same software that is used to drive the gimbal.

You know the value of thrust (force), you have a very good idea about mass (fuel mass flow and ship's total mass), and you know the direction of thrust at any point of time, along with direction of the exhaust-CoM vector (calculated from shift vs stars, necessary to drive the gimbal operation.)

Split the thrust vector into component vectors along the exhaust-COM axis and perpendicular. Integrate force $\rightarrow$ acceleration resultant from the parallel component over time to get the velocity change; integrate (2nd degree) displacement from the perpendicular component (perpendicular component of velocity afterwards will be near zero since the rotation is extinguished, and never allowed to grow significantly).

• How can I know the direction of the thrust? With respect to what? Is it a perfect engine and a perfect nozzle and there's a star cam pointing out the nozzle getting a fix? I understand the gimbal control should mostly prevent the spacecraft from spinning out of control, but even if I wanted to target Alpha Centauri and I could see it, how do I know that I'm accelerating in that (essentially) exact direction? Do I need a star/navigation camera that has been previously aligned with respect to a set of accelerometers? Or instructions from Earth based on doppler? Or is there any other option?
– uhoh
Dec 21, 2016 at 14:07
• I'm not questioning your answer, I am just thoroughly flummoxed by my own question. These are the only two things I can think of. 1) Accelerometers pre-aligned to star cameras, or 2) regular updates from Earth (or some proxy) based on doppler measurements relative to a known body for which a good ephemeris exits (e.g. Earth).
– uhoh
Dec 21, 2016 at 14:10
• @Uhoh: The thrust goes according to thrust profile, which is very well known, or your engine would blow up (combustion stability and thrust profile are inexplicably bound; you provide X fuel, Y oxidizer, get Z thrust in void.). As for direction: you drive the gimbal motors! If you tell the gimbal motor to turn by 2.3 degree starboard, your thrust goes 2.3 degree starboard!
– SF.
Dec 21, 2016 at 16:41
• Also: this is to immediately obtain delta-V. To obtain precise locaction and velocity vectors, you use ground contact and get the reply when the signal completes the round-trip. But to get the change in current velocity, you can simply calculate using the thrust from the burn (thrust is very precise as function of fuel dosage - matters of combustion stability) and direction (the gimbals have a very precise feedback on positioning of the nozzle.)
– SF.
Dec 21, 2016 at 16:47
• OK got it! If there are pre-calibrated absolute encoders measuring the 2D angles of the engine/nozzle with respect to the spacecraft frame, and star cameras pre-calibrated with respect to the spacecraft frame, then I have a good estimate of the direction of the thrust with respect to the stars. It's not quite the same as an actual measurement of the direction of the delta-v, but it's going to be quite close. Great! A third method beyond accelerometers and doppler data reported from Earth. Thank you!!
– uhoh
Dec 22, 2016 at 0:56

How does my spacecraft know if the thrust is actually pointing in the right direction? The stars are very far away and there are no handy planets or asteroids nearby.

That the stars are very far away is a huge advantage. Parallax will not be an issue for a star tracker that looks for distant bright stars, at least not within the solar system. The inherent errors in even state-of-the-art star trackers are significantly larger than the errors induced by parallax. Parallax might become an issue in the distant future, but by then our children's children's spacecraft will be using quasar trackers.

So while it knows attitude, how can it determine that the direction of the delta-v vector is correct?

In many cases, the spacecraft does not know that the direction of the delta-v vector is correct. Their flight software is rather primitive. Deep space probes typically receive delta-V commands from Earth. These spacecraft have rather limited autonomy and intelligence, and simply execute the commands transmitted to them. Suppose the Applied Physics Lab had mistaken commanded the New Horizons spacecraft to perform a maneuver that would have made that spacecraft smack into Pluto. The spacecraft would have done exactly what it had been commanded to do.

Making a spacecraft truly autonomous is a task for the next generation of rocket scientists. For now, autonomy is limited to those phases of flight where intervention from Earth is impossible. This includes automated rendezvous; automated entry, descent and landing; and autonomous pointing (e.g., New Horizons pointing towards Pluto). In all of these cases, the vehicle will have more than the standard set of navigation sensors, and the flight software will be rather complex.

• I'm asking how it can measure it's velocity or change in velocity. Stars give attitude. Unless It passes something that's close enough to give substantial parallax and for which It has an ephemeris, cameras won't give any information relating to velocity.
– uhoh
Nov 30, 2016 at 6:41
• @uhoh -- That is not what you asked in either the title or the body of the question. Your question asks about the direction. Now you are asking about the magnitude. Which is it? Nov 30, 2016 at 23:22
• OK you are right, I only am asking about the normal of the change in velocity. "direction of delta-v". Thanks. If it's in deep space and executes a burn, but the spacecraft has a center of mass that is uncertain, how can it determine the direction of the change in the velocity vector - "the direction of delta-v"?
– uhoh
Dec 1, 2016 at 0:56
• Actually this is a good and interesting answer for a question about present and future spacecraft autonomy - if it hasn't been asked before I can ask about that explicitly in another question. It may be of greater general interest than this question!
– uhoh
Dec 1, 2016 at 21:59
• David this answer is really interesting, I've asked a spacecraft autonomy question that needs some perspective.
– uhoh
Dec 3, 2016 at 0:28

Generally a spacecraft will use a gyroscopic inertial platform — a set of powered gyroscopes holding a fixed orientation in space, mounted in nested gimbals allowing the spacecraft to rotate around it. The relative rotation of the gimbals is measured several times a second to determine the direction the craft is pointing and how fast the direction is changing, which lets the guidance system adjust the engine gimbal to keep the craft on course in a continuous feedback loop.

• And just to explicitly answer "How does my spacecraft know if the thrust is actually pointing in the right direction", a burn attitude will be computed prior to the burn and fed into the guidance system as the target attitude. The attitude control system as described by @Russell Borogove will then keep the craft pointed in that direction. Nov 29, 2016 at 23:27
• @OrganicMarble is that just wrapping my question with the phrase "calculate a burn attitude"? For a spacecraft with a gimbaled engine and uncertain center of mass due to movement of mass internal to the rigid structure, how exactly would the burn attitude be calculated ahead of time without knowledge of the exact center of mass?
– uhoh
Nov 30, 2016 at 0:59
• If I understand you, yes. Nov 30, 2016 at 2:13
• Inertial platforms are so last millennium. That's what the Apollo program used. Too expensive, and not that accurate. There are more modern alternatives, all of which were developed in the previous millennium (but post Apollo). Nov 30, 2016 at 4:21
• @RussellBorogove -- Strapdown systems. Nov 30, 2016 at 23:19

I understand your question can be summarised into, how exactly one knows in Inertial frame where one is moving. I understand there are subtle caveats here.

So suppose I know in Inertial frame where I need to fire and onboard can be aligned to this frame using Inertial sensors. Now question is how does one know exact alignment of star sensor to body? and gyro to body? and accelerometer to body? These small misalignments which can be slightly different from ground measurements can not be measured but only statistically corrected such as by rotating spacecraft and comparing values of star sensor and gyro for example.

So once this calibration is done. We only have to see, whether by giving delta-v spacecraft is in ground calculated state vectors or not. Otherwise one can keep the variable which accumulates inertial acceleration and downlinks to ground.

For such inertial navigation integrator one needs a gravity model and any other forces if present.

• the offset part can be estimated as when not firing, it should show zero. The scale factor part, you rotate the spacecraft you know exact rotation speed you know the mounting location of accelerometer calibrate with centrifugal force. May 28, 2020 at 5:03
• Using rotation to calibrate a linear accelerometer requires an accurate distance to the center of rotation. The question text and drawing highlight that we don't know how the center of mass shifts as we use propellant for example.
– uhoh
May 28, 2020 at 8:12
• Do it before you use propellant, rotate by reaction wheels.. now hopefuly the scale factor and offset are not function of time. May 28, 2020 at 8:25
• Now I am thinking, since doppler shift are very accurate we can estimate CG accurately by having a transmitter on one arm, so via rotation maybe we can capture max and min doppler. Wondering if gravity gradient can estimate scale factor for highly sensitive accelerometer May 28, 2020 at 8:31
• I actually thought about it, but then scale factor will be different for both accelerometer adding one more variable into equation May 28, 2020 at 9:05