Tianwen-1 TCM3 final trajectory

A few days ago I posted about TCM3, the fourth trajectory correction made by Tianwen-1 so far. After some days, the Chinese DSN has performed precise orbit determination and updated the on-board ephemerides, so that we are now seeing the final trajectory in the telemetry state vectors.

The figure below shows how the state vectors have been updated a couple of times following the TCM, as the DSN computes and uploads an improved trajectory solution. I have plotted this graph in the following way: I have taken the first state vector received after TCM3, on the UTC afternoon of 2020-10-28, and used it to propagate a trajectory in GMAT. The plot shows the difference between the state vectors and the GMAT trajectory.

TCM3 happened on 2020-10-28 at 14:00 UTC, so the reference trajectory computed in GMAT corresponds to the trajectory of the state vectors immediately following the TCM. These are based on a prediction of the burn performance, rather than on the actual results. The graph above shows clearly two changes in the trajectory, one on 2020-10-29, and another one on 2020-11-01.

Since we have already seen the same trajectory for three days without updates, I am confident that this trajectory is now final. The latest state vector we have today is

[0163f5396aeb] 2020-11-04 03:25:57.092300 160383830.37880394 94290296.68475787 45404213.83552203 -9.17821106231485 22.96506090856966 10.332601544380973

As always, this gives the UTC timestamp and the ICRF heliocentric position and velocity coordinates in km and km/s respectively.

I have re-run the calculations in the previous post by back-propagating a state vector from the UTC evening of 2020-11-01, which already belongs to the final trajectory. The change in delta-V in comparison to what I should in the previous post is small. The new delta-V is 2.13 m/s rather than 2.09 m/s, and the components have changed around 5%. The detailed calculations and data can be found in the updated Jupyter notebook.

ATA polarimetry test with GNSS satellites

This post belongs to a series about the activities of the GNU Radio community at Allen Telescope Array. For more information about these activities, see my first post.

The feeds in the ATA dishes are dual polarization linear feeds, giving two orthogonal linear polarizations that are called X and Y and (corresponding to the horizontal and vertical polarizations). In the setup we currently have, the two RF signals from a single dish are downconverted to an IF around 512 MHz using common LOs and then sampled by the two channels of a USRP N32x. Since we have two USRPs, we are able to receive dual polarization signals from two dishes simultaneously.

The two USRPs are synchronized with the 10MHz and PPS signals from the observatory, but even in these conditions there will be random phase offsets between the different channels. These offsets are caused by fractional-N PLL states and other factors, and change with every device reset. To solve this problem, it is possible to distribute the LO from the first channel of a USRP N321 into its second channel and both channels of a second USRP N320. In fact, it is possible to daisy chain several USRPs to achieve a massive MIMO configuration. By sharing the LO between all the channels, we achieve repeatable phase offsets in every run.

During the first weekends of experiments at ATA we didn’t use LO sharing, and we finally set it up and tested it last weekend. After verifying that phase offsets were in fact repeatable between all the channels, I did some polarimetric observations of GNSS satellites to calibrate the phase offsets. The results are summarised in this post. The data has been published in Zenodo as “Allen Telescope Array polarimetric observation of GNSS satellites.

Continue reading “ATA polarimetry test with GNSS satellites”

Tianwen-1 TCM3

On 2020-10-28 at 14:00 UTC, Tianwen-1 has made its third trajectory correction manoeuvre. This has been the next manoeuvre after the deep space manoeuvre at the beginning of October. According to the press release, this was a firing of the eight 25N thrusters intended as a minor correction and as a test of this propulsion system. I haven’t found the duration of the burn in the news.

I have followed the same method as in previous burns to compute the moment of the burn and the delta-V vector by extrapolating the telemetry orbit state vectors received by AMSAT-DL in Bochum before and after the burn. This extrapolation locates the burn at 14:02:28 UTC. Note that this time is an approximation for the mid-point of the burn.

The delta-V vector was, in m/s

[-0.6575566 , -0.11513034,  1.97535319],

and the magnitude was 2.09m/s. Assuming a mass of 5000kg and eight 25N thrusters, it would take a burn of 52 seconds to achieve this delta-V.

Update 2020-10-30: according to this news article, the duration of the burn was 42.8 seconds which is some 18% smaller than my estimate. Note that my estimate didn’t take into account the mass of fuel spent by the deep space manoeuvre, which I estimated to be 457kg (giving a decrease in mass of 9%).

Apparently this burn has lowered the periares height significantly in comparison to the trajectory following the deep space manoeuvre, which was around 18000km. Thanks to Achim Vollhardt for noticing this. It’s difficult for me to give a good estimate of the new periares height, because it is quite sensitive to orbit perturbations. I’ve obtained anything between 30 and 800 km by enabling and disabling solar radiation pressure in the GMAT propagator, and we don’t have a good estimate of the spacecraft’s cross-section and reflection coefficient.

The figure below shows one of the GMAT simulations. Note that the periares is near the equator, which is good for insertion into a low inclination orbit.

Periares passage in GMAT

Keep in mind that according to the media still one more trajectory correction manoeuvre remains and that the data used in this post comes straight from the spacecraft’s telemetry, and as such is most likely based on a prediction of the burn rather than on the actual performance of the burn. In a few days, I will publish a new post when the Chinese DSN perform precise orbit determination and upload updated orbital information to the spacecraft.

The data and plots for this post can be found in this Jupyter notebook.

Galileo E24 differential code biases change

Back in July, I wrote about how the Galileo E24 differential code biases were abnormally large in comparison to other satellites from the constellation. This was initially noticed by Bert Hubert from galmon.eu in the large size of the BGDs of this satellite. In that post I did a study of the DCB products from the Chinese Academy of Science and the broadcast ephemeris BGDs, and explained the relation between them.

At the end of September, Bert tweeted that after some maintenance the BGDs of E24 had stopped being so large. That is not so surprising, since the payload on-board the satellite can adjust the relative delays between each of the navigation signals, in order to correct these kinds of problems.

After letting a few weeks go by so that the MGEX products get uploaded, I have now redone some of the plots in that study with the data surrounding the change.

Continue reading “Galileo E24 differential code biases change”

Tianwen-1 attitude change

A month ago, I wrote a post showing the evolution of Tianwen-1‘s attitude so far during its transfer orbit to Mars. For most of the mission, the spacecraft has maintained a fixed attitude where the spacecraft body Y axis was held orthogonal to the planed formed by the spacecraft, Earth and Sun, and the spacecraft to Sun vector had a constant angle of -20 degrees with the spacecraft body X axis.

The figure below shows how the spacecraft axes are labelled. Note the solar panels along the Y axis, the thruster on the -X face, and the high gain antenna on the -Z face.

Yesterday, on 2020-10-22, the spacecraft made an attitude change. The angle between the Sun vector and the X axis was changed back to 0 degrees, which was the angle maintained during the first days of the mission. This can be seen clearly in the figure below.

The angle between the Earth vector and the -Z axis (where the high gain antenna is located) is more interesting, as it gives the slew angle of the antenna. Throughout most of the mission, it was growing and I kept wondering if an attitude change would be done to prevent the antenna from running out of slew range. However, at some point the angle started decreasing. This is basically caused by the Earth “overtaking” Tianwen-1, since the Earth’s orbit is faster (you can see some pictures of this in the last slides of my talk in the AMSAT-UK colloquium).

In this graph we see that the change in attitude also causes a sudden increase of 20 degrees in this angle, so now it is 70 degrees. This shows that the possible slew range for the high gain antenna is much larger than I had initially thought. Perhaps it is not so surprising after we have seen the cut-out in the dish in the in-orbit images published on October 1.

If we zoom in to the last few days, we see that the change in attitude happened at some time when the spacecraft was not in view from Europe, so unfortunately we don’t have any telemetry of the change itself.

I’m not sure of the reason why this attitude change has been done now. It will be interesting to see if the attitude continues with this new 0 degree angle or it switches back to the previous -20 degree angle.

Thanks to AMSAT-DL‘s team at Bochum for continuing the daily collection of telemetry with the 20m antenna. Their effort makes it possible to detect events like this with short notice. The data and code to produce the plots in this post can be found in this Jupyter notebook.

Tianwen-1 DSM final trajectory

A few days ago I spoke about the deep space manoeuvre that Tianwen-1 had executed on 2020-10-09. As remarked in that post, the data we had from that manoeuvre came from extrapolating state vectors from before and after the burn. The state vectors that the spacecraft was broadcasting after the burn most likely came from a prediction rather than from the actual result of the burn. In a few days, we would see a small change in the trajectory as the Chinese DSN performed precise orbit determination and uploaded the results to the spacecraft.

In fact, we saw that change the next day. The figure below is generated in the following way. I have taken the first state vector that we have received after the burn, and propagated its trajectory in GMAT. Then I compute and plot the error in each of the ICRF coordinates between the state vectors broadcast by the spacecraft in the telemetry and this GMAT trajectory. This allows us to see whether the trajectory broadcast by the spacecraft has changed slightly at some point.

As we can see, during the first day the error is close to zero. Afterwards, the trajectory deviates and the error starts growing to several hundreds of km. The new trajectory seems to be stable over the last few days (sorry about the lack of data on the night between the 11th and 12th). This is best shown in the figure below, where the state vector used as a seed to generate the GMAT trajectory is taken from the UTC evening of 2020-10-10. The error is only a fraction of a km. Therefore, we can consider final this new trajectory.

I have updated the calculations I did in the last post to use a state vector from the updated final trajectory. The results don’t change much. The calculations now locate the burn (approximated as an impulse burn) at 15:03:54 UTC with a delta-V of

[-31.08193895,  40.28872314, 308.12845989]

in ICRF coordinates, while my previous calculations estimated a burn at 15:03:59 with a delta-V of

[-31.49477234,  39.29765307, 308.11690616]

The state vector describing the updated post-DSM trajectory in heliocentric ICRF coordinates and UTC epoch is

Tianwen1.Epoch = '10 Oct 2020 19:08:50.122';
Tianwen1.X = 172262669.5024532
Tianwen1.Y = 42536664.64589398
Tianwen1.Z = 21989467.534531824
Tianwen1.VX = -1.7753279668677469
Tianwen1.VY = 25.966616665124505
Tianwen1.VZ = 11.810575717885476

Decoding AMICal Sat in-orbit images

Back in March, I was helping Julien Nicolas F4HVX to test the S-band image transmitter of AMICal Sat before launch. In my post back then, I explained that AMICal Sat uses a Nordic Semiconductor nRF24L01+ 2.4GHz FSK transceiver chip to transmit Shockburst packets at 1Mbaud. I also explained how the Onyx EV76C664 CMOS image sensor works and how to process raw images.

AMICal Sat was finally launched on 2020-09-03, and since them the satellite team has been busy trying to downlink some images, both using the UHF transmitter (which uses the same protocol as Światowid) and the S-band transmitter. This has proven a bit difficult because the ADCS of the satellite is not working, and the downlink protocols are not very robust.

Julien has been sending me recordings done by their groundstation in Russia with the hope that we could be able to decode some of the data. Before several failed attempts where we were hardly able to decode a few packets, we got a particularly good S-band recording done on 2020-10-05. Using that recording, I have been able to decode a full image.

Continue reading “Decoding AMICal Sat in-orbit images”

Tianwen-1 deep space manoeuvre

As I have mentioned in several posts, the trajectory in which Tianwen-1 was launched had a closest approach to Mars of around 3 million km, so at some point a large correction manoeuvre was needed. We had already seen small manoeuvres TCM-1 and TCM-2, but we were expecting soon enough this large correction, which is called DSM (deep space manoeuvre). Some sources placed the DSM around the beginning of October, while others were more precise and mentioned that it would happen right after the Mid-Autumn festival holiday season, which this year ended on October 8.

This information turned out to be pretty accurate, since yesterday we heard news that Tianwen-1 had done its DSM at 15:00 UTC on 2020-10-09. This information quickly appeared in the news.

After the Bochum 20m antenna was able to acquire the spacecraft’s signal and gather telemetry at 19:09 UTC, we were able to confirm the manoeuvre in the state vectors transmitted by the spacecraft. Paul Marsh M0EYT was also able to receive telemetry confirming this, starting at 18:18 UTC. This post is an analysis of the data.

Continue reading “Tianwen-1 deep space manoeuvre”

Analysis of Object A’s S-band signal

On 2020-09-04, China launched a “reusable experimental spacecraft” of which very little is publicly known. The most popular hypothesis is that this is a robotic spaceplane similar to the X-37B. The spacecraft spent two days in orbit and landed back at Earth, most likely near Lop Nur nuclear test site. Marco Langbroek has a nice post detailing all we know about the mission.

During the time it spent in orbit, the spacecraft released an object which has been catalogued as 2020-063G and is commonly known as “Object A”. On 2020-09-14, Dmitry Pashkov R4UAB detected an S-band signal coming from Object A at around 2280 MHz. This was verified later by Scott Tilley VE7TIL, who received a strong signal with lots of fading, suggesting that the object is tumbling. Marco also did some optical observations of the object.

Scott has sent me a recording of the S-band signal that he did on 2020-09-15 so that I can analyse it and we can learn more about this mysterious object. This post shows the results of my analysis.

Continue reading “Analysis of Object A’s S-band signal”

Tianwen-1 selfie and attitude

Today, the Chinese National Space Agency and the Chinese Lunar Exploration Program have released some “selfies” taken by Tianwen-1 to celebrate China’s National Day. Apparently, the images have appeared originally in this press release (Google translation), and many media in English have echoed the news.

The best image can be seen below. This kind of image might show us something about Tianwen-1’s attitude, or maybe not? Let’s try to find out.

Tianwen-1 selfie – CNSA and CLEP, original source
Continue reading “Tianwen-1 selfie and attitude”