mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2025-10-23 03:27:39 +00:00
Added velocity and clock drift to PVT
Interestingly RTKLIB does not store the clock drift in its sol_t datatype, so I added this to the unused element dtr[5]. This may not be compatible with future versions of RTKLIB. Here we store velocity in ENU coordinates and the clock drift in parts per million (PPM)
This commit is contained in:
@@ -1071,6 +1071,23 @@ bool Rtklib_Solver::get_PVT(const std::map<int, Gnss_Synchro> &gnss_observables_
|
||||
monitor_pvt.pdop = dop_[1];
|
||||
monitor_pvt.hdop = dop_[2];
|
||||
monitor_pvt.vdop = dop_[3];
|
||||
double vel_enu[3];
|
||||
double pos[3];
|
||||
pos[0] = rx_position_and_time(0);
|
||||
pos[1] = rx_position_and_time(1);
|
||||
pos[2] = rx_position_and_time(2);
|
||||
ecef2enu( pos, &pvt_sol.rr[3], vel_enu );
|
||||
|
||||
arma::vec rx_vel_enu(3);
|
||||
rx_vel_enu(0) = vel_enu[ 0 ];
|
||||
rx_vel_enu(1) = vel_enu[ 1 ];
|
||||
rx_vel_enu(2) = vel_enu[ 2 ];
|
||||
|
||||
this->set_rx_vel( rx_vel_enu );
|
||||
|
||||
double clock_drift_ppm = pvt_sol.dtr[5] / GPS_C_m_s *1e6;
|
||||
|
||||
this->set_clock_drift_ppm( clock_drift_ppm );
|
||||
|
||||
// ######## LOG FILE #########
|
||||
if (d_flag_dump_enabled == true)
|
||||
|
Reference in New Issue
Block a user