Latency not working when platform is the target

4 vues (au cours des 30 derniers jours)
Carlos
Carlos le 6 Mai 2024
Réponse apportée : Ashok le 11 Oct 2024
I was trying to replicate the example
where the latency and the Doppler is calculated in a satellite scenario. I can replicate it perfectly, but when I try to substitute the Ground Station in the example for a Platform (i.e. a plane moving represented by a geoTrajectory), the delay output of the latency function comes out as all-NaN.
This is how I define my trajectory:
%% Aircraft Trajectory
waypoints = [... % Latitude (deg), Longitude (deg), Altitude (meters)
40.6289,-73.7738,3;...
40.6289,-75.4618,10000;...
40.6289,-78.8618,10000;...
];
timeOfArrival = duration([... % time (HH:mm:ss)
"00:00:00";...
"00:13:40";...
"10:00:00"]);
aircraft.trajectory = geoTrajectory(waypoints,seconds(timeOfArrival),AutoPitch=true,AutoBank=true);
This is how I add it to the scenario and create the access:
aircraft.obj = platform(mission.scenario,aircraft.trajectory);
ac = access(iridiumSatellites,aircraft.obj);
And then this is how I calculate the delay:
[delay,time] = latency(iridiumSatellites,gs);
The funny thing is that dopplershift function works just fine, and it is able to calculate observed doppler and doppler rate using the Platform object as the target, so I'm guessing there is something wrong with the latency function implementation.
EDIT 1 (6th May 24)
There is a workaround to this issue that consists in defining the aircraft as a satellite object instead of a platform object (you can do this by specifying a positiontable with the trajectory - see https://www.mathworks.com/help/aerotbx/ug/satellitescenario.satellite.html)
This approach presents other issues because if you consider the aircraft a satellite, the orbit will obey the laws of Kepler and its motion will be propagated around the Earth, but it works for the latency analysis. Of course this doesn't solve the issue but it lets you work in the meantime.
Another thing that I noticed is that the latency function takes considerably longer to run when the target is a platform than when I use the satellite workaround (it takes 11 seconds to run with a constellation of 66 source satellites at 3600 samples each and a target satellite object, whereas if I define the aircraft as a target platform object, it takes 95 seconds). I am guessing this reinforces my idea that the latency implementation might have a bug when targeting platform objects.

Réponses (1)

Ashok
Ashok le 11 Oct 2024
Hey @Carlos,
I was facing the same issue with MATLAB R2024a, and I have been using a similar workaround. I have upgraded to MATLAB R2024b and I no longer face the issue. The functions “latency” and “dopplerShift” work as expected.
I recommend upgrading to MATLAB R2024b. I am also attaching the obtained plots for your reference.
I hope this resolves your query!

Catégories

En savoir plus sur Scenario Generation and Visualization dans Help Center et File Exchange

Produits


Version

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by