Rendezvous plans

In reality, a rendezvous trajectory from a phasing orbit is usually not done as a two burn sequence. First of all, accuracy is an issue, there are often residual forces which alter the trajectory slightly, the position of the target is not known with infinite precision - so generally it makes sense to keep the option to refine the approach and plan a correction once the target is in sight (or on the radar).

Another consideration is that one might like to have the intercept point during the daylight portion of the orbit. Dependent on the phasing angle, this can be an awkward constraint as the most efficient transfer trajectories from a lower orbit are of Hohmann type and take approximately half an orbit - so if the optimal ignition time for the transfer burn is already during the day, the arrival would have to be delayed by a large radial burn which makes for an inefficient transfer.

Using multiple burns with suitable offsets, it is quite possible to define a step-by-step approach to the target in which the trajectory can be controlled for each segment. Of course, if we want to approach the target via a number of such waypoints, we would not actually want to come to a rest relative to the target at each of these points - we'd just use the first burn of the Lambert sequence to get to the waypoint but follow up with the suitable burn to get smoothly to the next waypoint. The instruction to do that is font face="monospace">disable auto_burn2 - when this is used, the software will only compute the second burn of the Lambert sequence but not actually apply it.

Another advantage of such a rendezvous target sequence is that the plane adjustments can be deferred - remember that close to a half orbital period transfer changing the orbital plane is very inefficient? Using a sequence, this can be done at any point. Below is an example of a three point sequence which delays rendezvous quite a bit:

position
lat 0.0
lon 0.0
alt 300000
heading 45.0
vup 0.02
vtot 7729.90

target_position
lat 1.999
lon 2.0
alt 320000
heading 44.95
vup 0.02
vtot 7718.35

burn_lambert
name NB
t1 8150
t2 10500
offset_x 15000
offset_z -12000
disable auto_burn2
disable y_fit

burn_lambert
name NM
t1 10550
t2 13000
offset_x 5000
offset_z -5000
disable auto_burn2
disable y_fit

burn_lambert
name NF
t1 13050
t2 14000
offset_x 10
offset_z 0
enable auto_burn2
enable y_fit

Of course, the fact that the solver finds a solution for the trajectory does not imply that this would be a reasonable or efficient solution. Like for a single Lambert sequence, there are many less than optimal solutions, and a sequence might lead to weird stops and jerks if the offsets and times aren't chosen to be reasonably close to an efficient Hohmann-like transfer. Ultimately, it's part of the mission planning to decide what the important constraints are - arrival time or fuel efficiency.

Some words on the fit procedure

By default, the fit procedure tries to achieve an accuracy of 10 m when targeting. When the problem is ill-posed, the fit routine can get into an iterative pattern in which it circles the optimal solution. When a Lambert fit has not converged by half the specified maximal number of iterations (50 by default), the routine tries to reduce gains to break out of the iterative pattern and at the same time widens the window in which a solution is considered acceptable. The final window after 100 iterations can be as wide as 10 km, at which point the fit tends to converge.

In this situation, it usually is advisable to replace the two-burn transfer by a rendezvous sequence with a second sequence used to improve accuracy when already close to the target.

Generally, if the difference in orbital radius between chaser and target is large, the phase angle changes quite quickly. This means that the window for an optimal transfer is relatively narrow, and hence any deviation from the optimal ignition time will quickly require large radial velocity components. This in turn requires long burn durations, which makes the problem yet more complicated.

Another difficulty for the fit is to target a high-eccentricity orbit. In this situation, linearizing around the arrival point (as the fit routine does to improve the next iteration) is not a particularly good strategy and convergence tends to be slow. If the fit is seen to converge, albeit slowly, simply giving it more iterations might be a good idea.

You can test the following situation, which is a fairly awkward targeting problem already so that a second burn is used when close to the target for good accuracy.

config
units SI
gravity_model J3
earth_model spherical
burn_model constant
timestep 0.01
fit verbose
plot2d_resolution 1000
max_time 20000
fit_max_iterations 100

position
lat 0.0
lon 0.0
alt 300000
heading 60.0
vup 0.02
vtot 7729.90

target_position
lat 1.999
lon 2.0
alt 380000
heading 60.15
vup 0.02
vtot 7738.35

burn_lambert
name rendezvous
t1 100
t2 4000
offset_x 0
offset_z -10
enable auto_burn2
enable y_fit

burn_lambert
name fine_adjust
t1 4500
t2 6500
offset_x 0
offset_z -10
enable auto_burn2
enable y_fit


Back to main index     Back to science     Back to LEO targeting

Created by Thorsten Renk 2019 - see the disclaimer, privacy statement and contact information.