Adding Galileo HAS status output to PVT monitor

This commit is contained in:
Javier Arribas 2023-10-02 10:23:58 +02:00
parent d487e4ce2c
commit 8019f067e6
4 changed files with 17 additions and 0 deletions

View File

@ -49,4 +49,6 @@ double vel_n = 32; // Velocity North component in the local frame, in m/s
double vel_u = 33; // Velocity Up component in the local frame, in m/s
double cog = 34; // Course Over Ground (cog) [deg]
uint32 galhas_status = 35; // Galileo HAS status: 1- HAS messages decoded and applied, 0 - HAS not avaliable
}

View File

@ -72,6 +72,9 @@ public:
// Course Over Ground (COG) [deg]
double cog;
// Galileo HAS status: 1- HAS messages decoded and applied, 0 - HAS not avaliable
uint32_t galhas_status;
// NUMBER OF VALID SATS
uint8_t valid_sats;
// RTKLIB solution status

View File

@ -1688,6 +1688,16 @@ bool Rtklib_Solver::get_PVT(const std::map<int, Gnss_Synchro> &gnss_observables_
// Course Over Ground (cog) [deg]
d_monitor_pvt.cog = new_cog;
// Galileo HAS status: 1- HAS messages decoded and applied, 0 - HAS not avaliable
if (d_has_obs_corr_map.empty())
{
d_monitor_pvt.galhas_status = 0;
}
else
{
d_monitor_pvt.galhas_status = 1;
}
const double clock_drift_ppm = pvt_sol.dtr[5] / SPEED_OF_LIGHT_M_S * 1e6;
this->set_clock_drift_ppm(clock_drift_ppm);

View File

@ -117,6 +117,7 @@ public:
monitor_.set_vel_n(monitor->vel_n);
monitor_.set_vel_u(monitor->vel_u);
monitor_.set_cog(monitor->cog);
monitor_.set_galhas_status(monitor->galhas_status);
monitor_.SerializeToString(&data);
return data;
}
@ -159,6 +160,7 @@ public:
monitor.vel_n = mon.vel_n();
monitor.vel_u = mon.vel_u();
monitor.cog = mon.cog();
monitor.galhas_status = mon.galhas_status();
return monitor;
}