SGP.NET
SGP.NET copied to clipboard
The time of the satellite's flight over the Ground Station is calculated incorrectly
Hello, I want to calculate the inclined azimuth, the angle of the place, the horizontal azimuth, the distance to the spacecraft.
I downloaded this file, and I want to calculate these parameters for the entire flight time over my territory of this spacecraft with an interval of 10 seconds.
Interested TLE:
METEOR-M2 2
1 44387U 19038A 21271.50223226 -.00000033 00000-0 45685-5 0 9992
2 44387 98.6813 229.9490 0001279 8.2385 351.8808 14.23691261116133
Code for calculation:
var tle = new []
{
"METEOR-M2 2",
"1 44387U 19038A 21271.50223226 -.00000033 00000-0 45685-5 0 9992",
"2 44387 98.6813 229.9490 0001279 8.2385 351.8808 14.23691261116133"
};
var sat = new Satellite(tle[0], tle[1], tle[2]);
Console.WriteLine(sat.Tle);
var location = new GeodeticCoordinate(Angle.FromDegrees(54.795188), Angle.FromDegrees(83.125048), 0.18);
var groundStation = new GroundStation(location);
var observations = groundStation.Observe(sat, new DateTime(2021, 9, 30, 1, 1, 1, DateTimeKind.Utc), new DateTime(2021, 10, 1, 1, 1, 1, DateTimeKind.Utc), TimeSpan.FromSeconds(10), clipToEndTime:true, resolution: 2);
foreach (var item in observations)
{
Console.WriteLine(item.Satellite.Name);
Console.WriteLine(item.Start);
var current = item.Start;
var end = item.End;
#do
#{
# var result = groundStation.Observe(sat, current);
# Console.WriteLine(current);
# Console.WriteLine(result.Range);
# Console.WriteLine(result.Elevation.Radians);
# Console.WriteLine(result.Azimuth.Degrees);
# current += TimeSpan.FromSeconds(10);
#} while (current <= end);
Console.WriteLine(item.End);
#Console.WriteLine(item.MaxElevation.Degrees);
#Console.WriteLine("\n");
}
Code output UTC date format:
METEOR-M2 2
30.09.2021 1:34:55
30.09.2021 1:43:13
METEOR-M2 2
30.09.2021 3:14:01
30.09.2021 3:18:21
METEOR-M2 2
30.09.2021 4:49:13
30.09.2021 4:57:23
METEOR-M2 2
30.09.2021 6:24:45
30.09.2021 6:37:41
METEOR-M2 2
30.09.2021 8:02:43
30.09.2021 8:17:59
METEOR-M2 2
30.09.2021 9:43:44
30.09.2021 9:57:52
METEOR-M2 2
30.09.2021 11:30:09
30.09.2021 11:35:26
METEOR-M2 2
30.09.2021 20:11:44
30.09.2021 20:24:48
METEOR-M2 2
30.09.2021 21:51:24
30.09.2021 22:06:46
METEOR-M2 2
30.09.2021 23:31:38
30.09.2021 23:45:27
But this time is not true. The correct time value is calculated on a third-party receiving complex The following columns are shown in the image:
satellite name, start date, start time, duration, max angle, destination azimuth, azimuth of the terminal, turn number
:
Hi Denis, my sincerest apologies for delaying this issue for so long. My university semester did not afford me enough time to track down the issue. I've started looking into it and will report back with my progress.
I was unable to reproduce this specific issue using the most recent Meteor M2 2 TLE in both Gpredict and SGP.NET. Here are the next eight passes to the specified location as predicted by Gpredict and SGP.NET, starting 2022/01/20 18:00 UTC.
METEOR-M2 2
1 44387U 19038A 22020.42537854 -.00000016 00000+0 12442-4 0 9995
2 44387 98.7019 342.5606 0001778 28.0144 332.1128 14.23697302132340
What software generated the prediction in the image? Are you still able to generate a similar discrepancy using newer TLEs?