During the DSLWP-B (Longjiang-2) mission, we made a number of VLBI observations of the spacecraft’s UHF signal by performing GPS-synchronized recordings at Dwingeloo (The Netherlands), Shahe and Harbin (China), and Wakayama (Japan). The basic measurement for these observations is the time difference of arrival (TDOA), which measures the differences between the time that it takes the spacecraft’s signal to arrive to each of the groundstations. This can be interpreted in terms of the difference of distances between the spacecraft and each groundstation, so this measurement is also called delta-range.
One very interesting practical application of the VLBI observations is to perform orbit determination. The delta-range measurements can be used to constrain and determine the state vector of the spacecraft. This would give us an autonomous means of tracking Amateur deep-space satellites, without relying on ranging by a professional deep-space network. Even though the measurements we made showed good agreement with the ephemerides computed by the Chinese deep-space network, during the mission we never ran orbit determination with the VLBI observations, mainly due to the lack of appropriate software.
While GMAT has good support for orbit determination, it doesn’t support delta-range measurements. Its basic orbit determination data type is two-way round-trip time between a groundstation (or two) and the satellite, as shown in the orbit determination tutorial.
I have started to modify GMAT in the gmat-dswlp Github repository to implement the support for this kind of VLBI observations. As a first step, I am now able to create and simulate delta-range observations.
Our plan is to get in contact with the LRO team and try to find the crash site in future LRO images. We are confident that this can be done, since they were able to locate the Beresheet impact site a few months ago. However, to help in the search we need to compute the location of the impact point as accurately as possible, and also come up with some estimate of the error to define a search area where we are likely to find the crash. This post is a detailed account of my calculations.
In one of my previous posts, I used measurements from the GPS receiver on-board the Lucky-7 cubesat in order to find the TLE that best matched its orbit, and help determine which NORAD ID corresponded to Lucky-7.
Now I have used the same GPS measurements to perform precise orbit determination with GMAT. Here I describe the results of this experiment.
Es’hail 2 is the second communications satellite operated by the Qatari company Es’hailSat. It was built by Mitsubishi Electric Corporation (MELCO). It carries several Ku and Ka band transponders intended for digital television, Internet access and other data services. It also carries an Amateur radio payload designed by AMSAT-DL, in collaboration with the Qatar Amateur Radio Society. The payload has two transponders, with S-band uplink and X-band downlink. One of the transponders is 250kHz wide and intended for narrowband modes, and the other one is 8MHz wide and intended for DVB-S and other wideband data modes.
SpaceX live-streamed the launch, and the recording can be seen in YouTube. Today, Space-Track has published the first TLEs for Es’hail 2 and the second stage of the Falcon 9 rocket. Here I look at these TLEs using GMAT.
I have made a Python script to plot the Doppler and geometry for a DSLWP-B observation. This can be useful for several things: predicting the downlink and uplink Doppler corrections, checking for the Doppler of the Moonbounce signal, checking the position of DSLWP-B in the sky, and studying Moonbounce geometry.
In my last post I commented that one of the motivations for the periapsis raise manoeuvre of DSLWP-B on July 20 was to prevent the satellite from crashing into the Moon in a few months. When Wei Mingchuan BG2BHC told me this, I found it a bit surprising, since I had the impression that the periapsis had been raising naturally since the satellite was injected in lunar orbit on May 25. Thus, I decided to propagate the orbit for a period of 2 years using GMAT and study the long-term effects in the Keplerian elements.
A few days ago I discussed the manoeuvre performed by DSLWP-B in preparation for the lunar eclipse. The manoueuvre raised the periapsis of DSLWP-B by around 385km. Wei Mingchuan BG2BHC has now informed me that the manoeuvre was performed on 20 Jul 2018 10:47:09.657. There were two motivations for this manoeuvre: first, to avoid eclipse, as I showed in the previous post; second, as Wei tells me, to prevent DSLWP-B from crashing into the Moon in a few months (more on this in a future post).
Wei doesn’t know the delta-v used for the manoeuvre, but estimating it is an easy exercise using GMAT, which is what I will do in this short post. In this simulation I am taking the orbital state for DSLWP-B from the first line of the 20180714 tracking file published in dslwp_dev. I will assume that the manoeuvre was a prograde burn performed at apoapsis that raised the periapsis by 385km. The GMAT script I have used is lunar_eclipse_manoeuvre.script.
First I propagte the orbit to the date mentioned by Wei. I note that the spacecraft is a little short of apoapsis, so I propagate to apoapsis, which happens at 20 Jul 2018 10:49:33.178 UTC. Then I propagate to periapsis and take note of the periapsis radius, which is 3030.91km. Finally, I use GMAT to estimate a burn that will achieve a periapsis radius of 3415.91km using a differential corrector.
The differential corrector finds a delta-v of 17.2m/s. The iterations of the differential corrector can be seen in the figure and text below. A more difficult exercise is to find a burn that stitches together the orbits described by the 20180714 and 20180727a tracking files. I will leave this as an exercise for the reader. Something very similar was done in DSLWP-B’s journey to the Moon: part II.
As you may well know, last Friday 27th July there was a total lunar eclipse. This is an interesting event for lunar-orbiting spacecraft such as DSLWP-B. In fact, depending on the spacecraft’s orbit, it may also pass through the Earth’s umbra or penumbra. Here I look at the trajectory taken by DSLWP-B during the eclipse.
In the last post I compared the results of my orbit determination for DSLWP-B using one lunar month of Doppler data with the observations in the VLBI experiment done on June 10. In this post I will compare my orbit determination with the tracking files published by Wei Mingchuan BG2BHC in gr-dslwp. These tracking files are produced from the orbit determination performed by the Chinese Deep Space Network using two-way S-band Doppler measurements.
The tracking files contain a listing of the position \(x\) and velocity \(v\) vectors for DSLWP-B in ECEF coordinates. The entries are given at intervals of one second. The tracking files can be used directly to compute Doppler as received in a groundstation. In fact, if the ECEF coordinates of the groundstation are \(x_0\), then \(R = \langle x – x_0, v\rangle/\|x-x_0\|\) is the range-rate, and so the Doppler can be computed as \(D=-fR/c\), where \(f\) is the downlink frequency and \(c\) is the speed of light in vacuum. Here I have used this method to compute the Doppler according to the tracking files.
All the tracking files published so far have been considered in this study, except for the first two, which contained an incorrect anomaly at epoch. The figure below shows the residuals between the Doppler measurements made by Scott Tilley VE7TIL and my orbit determination (called “new elements”) and each of the tracking files. It seems that the residuals are quite similar.
The figure below shows the difference between the Doppler according to each of the tracking files and the Doppler predicted by my orbit determination.
It seems that the match is quite good for the central days, but not so good towards the edges. My orbit determination is numerically propagated from a single set of elements at MJD 28264.5 for the whole period, while the tracking files probably use different sets of elements that are propagated numerically over a few days only. Therefore it might happen that my orbit determination is affected by some accumulative error due to numerical integration or an inaccuracy in the force model.