1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2025-11-17 15:47:15 +00:00

beidou b1i: renaming objects of nav decoding

This commit is contained in:
Damian Miralles
2018-10-22 15:12:50 -05:00
parent 8c16d945f8
commit e22f8e57c1
26 changed files with 135 additions and 174 deletions

View File

@@ -232,11 +232,11 @@ void rtklib_pvt_cc::msg_handler_telemetry(pmt::pmt_t msg)
<< ", GLONASS GNAV Slot Number =" << glonass_gnav_almanac->d_n_A;
}
// ************* BEIDOU telemetry *****************
if (pmt::any_ref(msg).type() == typeid(std::shared_ptr<Beidou_Ephemeris>))
if (pmt::any_ref(msg).type() == typeid(std::shared_ptr<Beidou_Dnav_Ephemeris>))
{
// ### BEIDOU EPHEMERIS ###
std::shared_ptr<Beidou_Ephemeris> beidou_eph;
beidou_eph = boost::any_cast<std::shared_ptr<Beidou_Ephemeris>>(pmt::any_ref(msg));
std::shared_ptr<Beidou_Dnav_Ephemeris> beidou_eph;
beidou_eph = boost::any_cast<std::shared_ptr<Beidou_Dnav_Ephemeris>>(pmt::any_ref(msg));
DLOG(INFO) << "Ephemeris record has arrived from SAT ID "
<< beidou_eph->i_satellite_PRN << " (Block "
<< beidou_eph->satelliteBlock[beidou_eph->i_satellite_PRN] << ")"
@@ -245,19 +245,19 @@ void rtklib_pvt_cc::msg_handler_telemetry(pmt::pmt_t msg)
// update/insert new ephemeris record to the global ephemeris map
d_ls_pvt->beidou_ephemeris_map[beidou_eph->i_satellite_PRN] = *beidou_eph;
}
else if (pmt::any_ref(msg).type() == typeid(std::shared_ptr<Beidou_Iono>))
else if (pmt::any_ref(msg).type() == typeid(std::shared_ptr<Beidou_Dnav_Iono>))
{
// ### BEIDOU IONO ###
std::shared_ptr<Beidou_Iono> beidou_iono;
beidou_iono = boost::any_cast<std::shared_ptr<Beidou_Iono>>(pmt::any_ref(msg));
std::shared_ptr<Beidou_Dnav_Iono> beidou_iono;
beidou_iono = boost::any_cast<std::shared_ptr<Beidou_Dnav_Iono>>(pmt::any_ref(msg));
d_ls_pvt->beidou_iono = *beidou_iono;
DLOG(INFO) << "New IONO record has arrived ";
}
else if (pmt::any_ref(msg).type() == typeid(std::shared_ptr<Beidou_Utc_Model>))
else if (pmt::any_ref(msg).type() == typeid(std::shared_ptr<Beidou_Dnav_Utc_Model>))
{
// ### BEIDOU UTC MODEL ###
std::shared_ptr<Beidou_Utc_Model> beidou_utc_model;
beidou_utc_model = boost::any_cast<std::shared_ptr<Beidou_Utc_Model>>(pmt::any_ref(msg));
std::shared_ptr<Beidou_Dnav_Utc_Model> beidou_utc_model;
beidou_utc_model = boost::any_cast<std::shared_ptr<Beidou_Dnav_Utc_Model>>(pmt::any_ref(msg));
d_ls_pvt->beidou_utc_model = *beidou_utc_model;
DLOG(INFO) << "New UTC record has arrived ";
}
@@ -942,7 +942,7 @@ int rtklib_pvt_cc::work(int noutput_items, gr_vector_const_void_star& input_item
std::map<int, Gps_Ephemeris>::const_iterator gps_ephemeris_iter;
std::map<int, Gps_CNAV_Ephemeris>::const_iterator gps_cnav_ephemeris_iter;
std::map<int, Glonass_Gnav_Ephemeris>::const_iterator glonass_gnav_ephemeris_iter;
std::map<int, Beidou_Ephemeris>::const_iterator beidou_ephemeris_iter;
std::map<int, Beidou_Dnav_Ephemeris>::const_iterator beidou_ephemeris_iter;
std::map<int, Gnss_Synchro>::const_iterator gnss_observables_iter;

View File

@@ -141,7 +141,7 @@ bool rtklib_solver::get_PVT(const std::map<int, Gnss_Synchro>& gnss_observables_
std::map<int, Gps_Ephemeris>::const_iterator gps_ephemeris_iter;
std::map<int, Gps_CNAV_Ephemeris>::const_iterator gps_cnav_ephemeris_iter;
std::map<int, Glonass_Gnav_Ephemeris>::const_iterator glonass_gnav_ephemeris_iter;
std::map<int, Beidou_Ephemeris>::const_iterator beidou_ephemeris_iter;
std::map<int, Beidou_Dnav_Ephemeris>::const_iterator beidou_ephemeris_iter;
const Glonass_Gnav_Utc_Model gnav_utc = this->glonass_gnav_utc_model;

View File

@@ -97,7 +97,7 @@ public:
std::map<int, Gps_Ephemeris> gps_ephemeris_map; //!< Map storing new GPS_Ephemeris
std::map<int, Gps_CNAV_Ephemeris> gps_cnav_ephemeris_map; //!< Map storing new GPS_CNAV_Ephemeris
std::map<int, Glonass_Gnav_Ephemeris> glonass_gnav_ephemeris_map; //!< Map storing new GLONASS GNAV Ephmeris
std::map<int, Beidou_Ephemeris> beidou_ephemeris_map; //!< Map storing new GLONASS GNAV Ephmeris
std::map<int, Beidou_Dnav_Ephemeris> beidou_ephemeris_map; //!< Map storing new GLONASS GNAV Ephmeris
Galileo_Utc_Model galileo_utc_model;
Galileo_Iono galileo_iono;
@@ -112,9 +112,9 @@ public:
Glonass_Gnav_Utc_Model glonass_gnav_utc_model; //!< Map storing GLONASS GNAV UTC Model
Glonass_Gnav_Almanac glonass_gnav_almanac; //!< Map storing GLONASS GNAV Almanac Model
Beidou_Utc_Model beidou_utc_model;
Beidou_Iono beidou_iono;
Beidou_Almanac beidou_almanac;
Beidou_Dnav_Utc_Model beidou_utc_model;
Beidou_Dnav_Iono beidou_iono;
Beidou_Dnav_Almanac beidou_almanac;
int count_valid_position;
};

View File

@@ -33,11 +33,12 @@
#include "beidou_b1i_pcps_acquisition.h"
#include "configuration_interface.h"
#include "beidou_b1I_signal_processing.h"
#include "gnss_sdr_flags.h"
#include "acq_conf.h"
#include <boost/math/distributions/exponential.hpp>
#include <glog/logging.h>
#include "../../libs/beidou_b1i_signal_processing.h"
#include "Beidou_B1I.h"

View File

@@ -30,7 +30,7 @@ add_subdirectory(rtklib)
glonass_l2_signal_processing.cc
pass_through.cc
galileo_e5_signal_processing.cc
beidou_b1I_signal_processing.cc
beidou_b1i_signal_processing.cc
complex_byte_to_float_x2.cc
byte_x2_to_complex_byte.cc
cshort_to_float_x2.cc
@@ -53,7 +53,7 @@ set(GNSS_SPLIBS_HEADERS
glonass_l2_signal_processing.h
pass_through.h
galileo_e5_signal_processing.h
beidou_b1I_signal_processing.h
beidou_b1i_signal_processing.h
complex_byte_to_float_x2.h
byte_x2_to_complex_byte.h
cshort_to_float_x2.h

View File

@@ -1,5 +1,5 @@
/*!
* \file beidou_b1I_signal_processing.cc
* \file beidou_b1i_signal_processing.cc
* \brief This class implements various functions for BeiDou B1I signal
* \author Sergi Segura, 2018. sergi.segura.munoz(at)gmail.com
*
@@ -30,7 +30,7 @@
* -------------------------------------------------------------------------
*/
#include "beidou_b1I_signal_processing.h"
#include "beidou_b1i_signal_processing.h"
auto auxCeil = [](float x) { return static_cast<int>(static_cast<long>((x) + 1)); };

View File

@@ -1,5 +1,5 @@
/*!
* \file beidou_b1I_signal_processing.h
* \file beidou_b1i_signal_processing.h
* \brief This class implements various functions for BeiDou B1I signals
* \author Sergi Segura, 2018. sergi.segura.munoz(at)gmail.com
*

View File

@@ -230,7 +230,7 @@ eph_t eph_to_rtklib(const Gps_Ephemeris& gps_eph)
return rtklib_sat;
}
eph_t eph_to_rtklib(const Beidou_Ephemeris& bei_eph)
eph_t eph_to_rtklib(const Beidou_Dnav_Ephemeris& bei_eph)
{
eph_t rtklib_sat = {0, 0, 0, 0, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, {}, {}, 0.0, 0.0 };

View File

@@ -43,7 +43,7 @@
eph_t eph_to_rtklib(const Galileo_Ephemeris& gal_eph);
eph_t eph_to_rtklib(const Gps_Ephemeris& gps_eph);
eph_t eph_to_rtklib(const Gps_CNAV_Ephemeris& gps_cnav_eph);
eph_t eph_to_rtklib(const Beidou_Ephemeris& bei_eph);
eph_t eph_to_rtklib(const Beidou_Dnav_Ephemeris& bei_eph);
/*!
* \brief Transforms a Glonass_Gnav_Ephemeris to its RTKLIB counterpart

View File

@@ -463,7 +463,7 @@ int beidou_b1i_telemetry_decoder_cc::general_work(int noutput_items __attribute_
{
// get ephemeris object for this SV (mandatory)
std::shared_ptr<Beidou_Ephemeris> tmp_obj = std::make_shared<Beidou_Ephemeris>(d_BEIDOU_FSM.d_nav.get_ephemeris());
std::shared_ptr<Beidou_Dnav_Ephemeris> tmp_obj = std::make_shared<Beidou_Dnav_Ephemeris>(d_BEIDOU_FSM.d_nav.get_ephemeris());
this->message_port_pub(pmt::mp("telemetry"), pmt::make_any(tmp_obj));
}
/* break;
@@ -471,14 +471,14 @@ int beidou_b1i_telemetry_decoder_cc::general_work(int noutput_items __attribute_
*/ if (d_BEIDOU_FSM.d_nav.flag_iono_valid == true)
{
std::shared_ptr<Beidou_Iono> tmp_obj = std::make_shared<Beidou_Iono>(d_BEIDOU_FSM.d_nav.get_iono());
std::shared_ptr<Beidou_Dnav_Iono> tmp_obj = std::make_shared<Beidou_Dnav_Iono>(d_BEIDOU_FSM.d_nav.get_iono());
this->message_port_pub(pmt::mp("telemetry"), pmt::make_any(tmp_obj));
}
if (d_BEIDOU_FSM.d_nav.flag_utc_model_valid == true)
{
std::cout << " we have a new set of utc data for the current SV "<< std::endl;
std::shared_ptr<Beidou_Utc_Model> tmp_obj = std::make_shared<Beidou_Utc_Model>(d_BEIDOU_FSM.d_nav.get_utc_model());
std::shared_ptr<Beidou_Dnav_Utc_Model> tmp_obj = std::make_shared<Beidou_Dnav_Utc_Model>(d_BEIDOU_FSM.d_nav.get_utc_model());
this->message_port_pub(pmt::mp("telemetry"), pmt::make_any(tmp_obj));
}
/* break;

View File

@@ -105,7 +105,7 @@ private:
int d_word_number;
// navigation message vars
Beidou_Navigation_Message_D1 d_nav;
Beidou_Dnav_Navigation_Message d_nav;
BeidouB1iSubframeFsm d_BEIDOU_FSM;
bool d_dump;

View File

@@ -70,13 +70,13 @@ public:
int i_channel_ID; //!< Channel id
unsigned int i_satellite_PRN; //!< Satellite PRN number
Beidou_Navigation_Message_D1 d_nav; //!< GPS L1 C/A navigation message object
Beidou_Dnav_Navigation_Message d_nav; //!< GPS L1 C/A navigation message object
// GPS SV and System parameters
Beidou_Ephemeris ephemeris; //!< Object that handles GPS ephemeris parameters
Beidou_Almanac almanac; //!< Object that handles GPS almanac data
Beidou_Utc_Model utc_model; //!< Object that handles UTM model parameters
Beidou_Iono iono; //!< Object that handles ionospheric parameters
Beidou_Dnav_Ephemeris ephemeris; //!< Object that handles GPS ephemeris parameters
Beidou_Dnav_Almanac almanac; //!< Object that handles GPS almanac data
Beidou_Dnav_Utc_Model utc_model; //!< Object that handles UTM model parameters
Beidou_Dnav_Iono iono; //!< Object that handles ionospheric parameters
char d_subframe[BEIDOU_SUBFRAME_LENGTH];
int d_subframe_ID;

View File

@@ -49,7 +49,6 @@
#include "gps_l2c_signal.h"
#include "GPS_L5.h"
#include "gps_l5_signal.h"
#include "beidou_b1I_signal_processing.h"
#include <boost/lexical_cast.hpp>
#include <glog/logging.h>
#include <gnuradio/io_signature.h>
@@ -61,6 +60,7 @@
#include <sstream>
#include <numeric>
#include "../../../core/system_parameters/Beidou_B1I.h"
#include "../../libs/beidou_b1i_signal_processing.h"
using google::LogMessage;