mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2026-10-10 17:51:49 +00:00
Report az/el for satellites excluded from the PVT fix, not just used ones
rescode() (rtklib_pntpos.cc) computes each satellite's azimuth/elevation via satazel() before checking it against PVT.elevation_mask, and pntpos() copies that azel into ssat[] unconditionally -- only ssat[].vs is gated by the mask (the same applies to a satellite dropped by RAIM FDE). The used_satellites loop in rtklib_solver.cc was keying its entire per-satellite entry on vs, so a tracked satellite excluded from the fix (below the elevation mask, or by RAIM) disappeared from MonitorPvt entirely -- indistinguishable from a genuine tracking problem. Key entries on whether azel was actually computed this epoch instead, and add a separate `used` flag (default true) reflecting vs. A satellite that is tracked but excluded from the fix now still reports its real az/el, with used = false.
This commit is contained in:
@@ -53,11 +53,14 @@ message MonitorPvt {
|
||||
uint32 galhas_status = 35; // Galileo HAS status: 1- HAS messages decoded and applied, 0 - HAS not available
|
||||
string geohash = 36; // Encoded geographic location. See https://en.wikipedia.org/wiki/Geohash
|
||||
|
||||
// One satellite/signal used in this fix, with its azimuth/elevation and
|
||||
// whether it was combined with another signal of the same satellite (e.g.
|
||||
// Galileo E1+E5a iono-free combination). Signals are listed individually,
|
||||
// not merged: a combined satellite appears as two entries, both with
|
||||
// combined = true.
|
||||
// One tracked satellite/signal with its azimuth/elevation, whether it was
|
||||
// combined with another signal of the same satellite (e.g. Galileo E1+E5a
|
||||
// iono-free combination), and whether it was actually used in this fix.
|
||||
// Signals are listed individually, not merged: a combined satellite
|
||||
// appears as two entries, both with combined = true. A satellite can have
|
||||
// azimuth_deg/elevation_deg populated with used = false when it was
|
||||
// tracked and had az/el computed but excluded from the fix itself (e.g.
|
||||
// below PVT.elevation_mask, or by RAIM FDE).
|
||||
message UsedSatellite {
|
||||
uint32 prn = 1;
|
||||
string system = 2; // "G" GPS, "E" Galileo, "R" GLONASS, "C" BeiDou, "S" SBAS, "J" QZSS
|
||||
@@ -65,6 +68,7 @@ message MonitorPvt {
|
||||
double azimuth_deg = 4;
|
||||
double elevation_deg = 5;
|
||||
bool combined = 6;
|
||||
bool used = 7;
|
||||
}
|
||||
repeated UsedSatellite used_satellites = 37;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user