mirror of
				https://github.com/gnss-sdr/gnss-sdr
				synced 2025-10-31 07:13:03 +00:00 
			
		
		
		
	beidou b1i: renaming objects of nav decoding
This commit is contained in:
		| @@ -16,7 +16,7 @@ ControlThread.wait_for_flowgraph=false | ||||
| 
 | ||||
| ;######### SIGNAL_SOURCE CONFIG ############ | ||||
| SignalSource.implementation=File_Signal_Source | ||||
| SignalSource.filename=/home/sergi/gnss-sdr/data/USRP_BDS_B1I_201805171123_fs_25e6_if0e3_ishort.bin | ||||
| SignalSource.filename=/media/dmiralles/Seagate Backup Plus Drive/GNSS Data/USRP_BDS_B1I_201805171123_fs_25e6_if0e3_ishort.bin | ||||
| SignalSource.item_type=ishort | ||||
| SignalSource.sampling_frequency=25000000 | ||||
| SignalSource.samples=0 | ||||
| @@ -38,7 +38,7 @@ Resampler.sample_freq_out=5000000 | ||||
| Resampler.item_type=gr_complex | ||||
|  | ||||
| ;######### CHANNELS GLOBAL CONFIG ############ | ||||
| Channels_B1.count=3 | ||||
| Channels_B1.count=5 | ||||
| Channels.in_acquisition=1 | ||||
| Channel.signal=B1 | ||||
|  | ||||
| @@ -50,7 +50,7 @@ Acquisition_B1.coherent_integration_time_ms=1 | ||||
| Acquisition_B1.threshold=20 | ||||
| ;Acquisition_B1.pfa=0.000001 | ||||
| Acquisition_B1.doppler_max=10000 | ||||
| Acquisition_B1.doppler_step=2500 | ||||
| Acquisition_B1.doppler_step=50 | ||||
| Acquisition_B1.dump=true | ||||
| Acquisition_B1.dump_filename=./acq_dump.dat | ||||
| Acquisition_B1.blocking=false; | ||||
|   | ||||
| @@ -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; | ||||
|  | ||||
|   | ||||
| @@ -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; | ||||
|  | ||||
|   | ||||
| @@ -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; | ||||
| }; | ||||
|   | ||||
| @@ -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" | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -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 | ||||
|   | ||||
| @@ -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)); }; | ||||
| 
 | ||||
| @@ -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 | ||||
|  * | ||||
| @@ -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 }; | ||||
|   | ||||
| @@ -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 | ||||
|   | ||||
| @@ -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; | ||||
|   | ||||
| @@ -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; | ||||
|   | ||||
| @@ -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; | ||||
|   | ||||
| @@ -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; | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| /*! | ||||
|  * \file gps_almanac.cc | ||||
|  * \brief  Interface of a BEIDOU ALMANAC storage | ||||
|  * \file beidou_dnav_almanac.cc | ||||
|  * \brief  Interface of a Beidou DNAV Almanac storage | ||||
|  * | ||||
|  * See http://www.gps.gov/technical/icwg/IS-GPS-200E.pdf Appendix II | ||||
|  * \author Sergi Segura, 2018. sergi.segura.munoz(at)gmail.com | ||||
| @@ -32,7 +32,7 @@ | ||||
|  | ||||
| #include "beidou_dnav_almanac.h" | ||||
|  | ||||
| Beidou_Almanac::Beidou_Almanac() | ||||
| Beidou_Dnav_Almanac::Beidou_Dnav_Almanac() | ||||
| { | ||||
|     i_satellite_PRN = 0; | ||||
|     d_Delta_i = 0.0; | ||||
|   | ||||
| @@ -1,7 +1,9 @@ | ||||
| /*! | ||||
|  * \file gps_almanac.h | ||||
|  * \brief  Interface of a GPS ALMANAC storage | ||||
|  * \author Javier Arribas, 2013. jarribas(at)cttc.es | ||||
|  * \file beidou_dnav_almanac.h | ||||
|  * \brief  Interface of a Beidou DNAV Almanac storage | ||||
|  * | ||||
|  * See http://www.gps.gov/technical/icwg/IS-GPS-200E.pdf Appendix II | ||||
|  * \author Sergi Segura, 2018. sergi.segura.munoz(at)gmail.com | ||||
|  * | ||||
|  * ------------------------------------------------------------------------- | ||||
|  * | ||||
| @@ -38,7 +40,7 @@ | ||||
|  * | ||||
|  * See http://www.gps.gov/technical/icwg/IS-GPS-200E.pdf Appendix II | ||||
|  */ | ||||
| class Beidou_Almanac | ||||
| class Beidou_Dnav_Almanac | ||||
| { | ||||
| public: | ||||
|     unsigned int i_satellite_PRN;  //!< SV PRN NUMBER | ||||
| @@ -57,7 +59,7 @@ public: | ||||
|     /*! | ||||
|      * Default constructor | ||||
|      */ | ||||
|     Beidou_Almanac(); | ||||
|     Beidou_Dnav_Almanac(); | ||||
| }; | ||||
|  | ||||
| #endif | ||||
|   | ||||
| @@ -36,7 +36,7 @@ | ||||
| #include "Beidou_B1I.h" | ||||
| #include "gnss_satellite.h" | ||||
|  | ||||
| Beidou_Ephemeris::Beidou_Ephemeris() | ||||
| Beidou_Dnav_Ephemeris::Beidou_Dnav_Ephemeris() | ||||
| { | ||||
|     i_satellite_PRN = 0; | ||||
|     d_TOW = 0; | ||||
| @@ -96,7 +96,7 @@ Beidou_Ephemeris::Beidou_Ephemeris() | ||||
| } | ||||
|  | ||||
|  | ||||
| double Beidou_Ephemeris::check_t(double time) | ||||
| double Beidou_Dnav_Ephemeris::check_t(double time) | ||||
| { | ||||
|     double corrTime; | ||||
|     double half_week = 302400.0;     // seconds | ||||
| @@ -114,7 +114,7 @@ double Beidou_Ephemeris::check_t(double time) | ||||
|  | ||||
|  | ||||
| // 20.3.3.3.3.1 User Algorithm for SV Clock Correction. | ||||
| double Beidou_Ephemeris::sv_clock_drift(double transmitTime) | ||||
| double Beidou_Dnav_Ephemeris::sv_clock_drift(double transmitTime) | ||||
| { | ||||
|     double dt; | ||||
|     dt = check_t(transmitTime - d_Toc); | ||||
| @@ -130,7 +130,7 @@ double Beidou_Ephemeris::sv_clock_drift(double transmitTime) | ||||
|  | ||||
|  | ||||
| // compute the relativistic correction term | ||||
| double Beidou_Ephemeris::sv_clock_relativistic_term(double transmitTime) | ||||
| double Beidou_Dnav_Ephemeris::sv_clock_relativistic_term(double transmitTime) | ||||
| { | ||||
|     double tk; | ||||
|     double a; | ||||
| @@ -179,7 +179,7 @@ double Beidou_Ephemeris::sv_clock_relativistic_term(double transmitTime) | ||||
| } | ||||
|  | ||||
|  | ||||
| double Beidou_Ephemeris::satellitePosition(double transmitTime) | ||||
| double Beidou_Dnav_Ephemeris::satellitePosition(double transmitTime) | ||||
| { | ||||
|     double tk; | ||||
|     double a; | ||||
|   | ||||
| @@ -29,8 +29,8 @@ | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #ifndef GNSS_SDR_BEIDOU_EPHEMERIS_H_ | ||||
| #define GNSS_SDR_BEIDOU_EPHEMERIS_H_ | ||||
| #ifndef GNSS_SDR_BEIDOU_DNAV_EPHEMERIS_H_ | ||||
| #define GNSS_SDR_BEIDOU_DNAV_EPHEMERIS_H_ | ||||
|  | ||||
|  | ||||
| #include <map> | ||||
| @@ -45,7 +45,7 @@ | ||||
|  * | ||||
|  * See http://www.gps.gov/technical/icwg/IS-GPS-200E.pdf Appendix II | ||||
|  */ | ||||
| class Beidou_Ephemeris | ||||
| class Beidou_Dnav_Ephemeris | ||||
| { | ||||
| private: | ||||
|     /* | ||||
| @@ -199,7 +199,7 @@ public: | ||||
|     /*! | ||||
|      * Default constructor | ||||
|      */ | ||||
|     Beidou_Ephemeris(); | ||||
|     Beidou_Dnav_Ephemeris(); | ||||
| }; | ||||
|  | ||||
| #endif | ||||
|   | ||||
| @@ -31,7 +31,7 @@ | ||||
|  | ||||
| #include "beidou_dnav_iono.h" | ||||
|  | ||||
| Beidou_Iono::Beidou_Iono() | ||||
| Beidou_Dnav_Iono::Beidou_Dnav_Iono() | ||||
| { | ||||
|     valid = false; | ||||
|     d_alpha0 = 0.0; | ||||
|   | ||||
| @@ -29,8 +29,8 @@ | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #ifndef GNSS_SDR_BEIDOU_IONO_H_ | ||||
| #define GNSS_SDR_BEIDOU_IONO_H_ | ||||
| #ifndef GNSS_SDR_BEIDOU_DNAV_IONO_H_ | ||||
| #define GNSS_SDR_BEIDOU_DNAV_IONO_H_ | ||||
|  | ||||
|  | ||||
| #include "boost/assign.hpp" | ||||
| @@ -41,7 +41,7 @@ | ||||
|  * \brief This class is a storage for the BEIDOU IONOSPHERIC data as described in ICD v2.1 | ||||
|  * | ||||
|  */ | ||||
| class Beidou_Iono | ||||
| class Beidou_Dnav_Iono | ||||
| { | ||||
| public: | ||||
|     bool valid;           //!< Valid flag | ||||
| @@ -55,7 +55,7 @@ public: | ||||
|     double d_beta2;       //!< Coefficient 2 of a cubic equation representing the period of the model [s(semi-circle)^2] | ||||
|     double d_beta3;       //!< Coefficient 3 of a cubic equation representing the period of the model [s(semi-circle)^3] | ||||
|  | ||||
|     Beidou_Iono();           //!< Default constructor | ||||
|     Beidou_Dnav_Iono();           //!< Default constructor | ||||
|  | ||||
|     template<class Archive> | ||||
|  | ||||
|   | ||||
| @@ -36,7 +36,7 @@ m * \file beidou_navigation_message.cc | ||||
| #include <gnss_satellite.h> | ||||
|  | ||||
|  | ||||
| void Beidou_Navigation_Message_D1::reset() | ||||
| void Beidou_Dnav_Navigation_Message::reset() | ||||
| { | ||||
|     b_valid_ephemeris_set_flag = false; | ||||
|     d_SOW = 0; | ||||
| @@ -167,14 +167,14 @@ void Beidou_Navigation_Message_D1::reset() | ||||
|  | ||||
|  | ||||
|  | ||||
| Beidou_Navigation_Message_D1::Beidou_Navigation_Message_D1() | ||||
| Beidou_Dnav_Navigation_Message::Beidou_Dnav_Navigation_Message() | ||||
| { | ||||
|     reset(); | ||||
| } | ||||
|  | ||||
|  | ||||
|  | ||||
| void Beidou_Navigation_Message_D1::print_beidou_word_bytes(unsigned int BEIDOU_word) | ||||
| void Beidou_Dnav_Navigation_Message::print_beidou_word_bytes(unsigned int BEIDOU_word) | ||||
| { | ||||
|     std::cout << " Word ="; | ||||
|     std::cout << std::bitset<32>(BEIDOU_word); | ||||
| @@ -183,7 +183,7 @@ void Beidou_Navigation_Message_D1::print_beidou_word_bytes(unsigned int BEIDOU_w | ||||
|  | ||||
|  | ||||
|  | ||||
| bool Beidou_Navigation_Message_D1::read_navigation_bool(std::bitset<BEIDOU_SUBFRAME_BITS> bits, const std::vector<std::pair<int,int>> parameter) | ||||
| bool Beidou_Dnav_Navigation_Message::read_navigation_bool(std::bitset<BEIDOU_SUBFRAME_BITS> bits, const std::vector<std::pair<int,int>> parameter) | ||||
| { | ||||
|     bool value; | ||||
|  | ||||
| @@ -199,7 +199,7 @@ bool Beidou_Navigation_Message_D1::read_navigation_bool(std::bitset<BEIDOU_SUBFR | ||||
| } | ||||
|  | ||||
|  | ||||
| unsigned long int Beidou_Navigation_Message_D1::read_navigation_unsigned(std::bitset<BEIDOU_SUBFRAME_BITS> bits, const std::vector<std::pair<int,int>> parameter) | ||||
| unsigned long int Beidou_Dnav_Navigation_Message::read_navigation_unsigned(std::bitset<BEIDOU_SUBFRAME_BITS> bits, const std::vector<std::pair<int,int>> parameter) | ||||
| { | ||||
|     unsigned long int value = 0; | ||||
|     int num_of_slices = parameter.size(); | ||||
| @@ -217,7 +217,7 @@ unsigned long int Beidou_Navigation_Message_D1::read_navigation_unsigned(std::bi | ||||
|     return value; | ||||
| } | ||||
|  | ||||
| signed long int Beidou_Navigation_Message_D1::read_navigation_signed(std::bitset<BEIDOU_SUBFRAME_BITS> bits, const std::vector<std::pair<int,int>> parameter) | ||||
| signed long int Beidou_Dnav_Navigation_Message::read_navigation_signed(std::bitset<BEIDOU_SUBFRAME_BITS> bits, const std::vector<std::pair<int,int>> parameter) | ||||
| { | ||||
|     signed long int value = 0; | ||||
|     int num_of_slices = parameter.size(); | ||||
| @@ -276,7 +276,7 @@ signed long int Beidou_Navigation_Message_D1::read_navigation_signed(std::bitset | ||||
|     return value; | ||||
| } | ||||
|  | ||||
| double Beidou_Navigation_Message_D1::check_t(double time) | ||||
| double Beidou_Dnav_Navigation_Message::check_t(double time) | ||||
| { | ||||
|     double corrTime; | ||||
|     double half_week = 302400;     // seconds | ||||
| @@ -293,7 +293,7 @@ double Beidou_Navigation_Message_D1::check_t(double time) | ||||
| } | ||||
|  | ||||
| // User Algorithm for SV Clock Correction. | ||||
| double Beidou_Navigation_Message_D1::sv_clock_correction(double transmitTime) | ||||
| double Beidou_Dnav_Navigation_Message::sv_clock_correction(double transmitTime) | ||||
| { | ||||
|     double dt; | ||||
|     dt = check_t(transmitTime - d_Toc); | ||||
| @@ -302,7 +302,7 @@ double Beidou_Navigation_Message_D1::sv_clock_correction(double transmitTime) | ||||
|     return correctedTime; | ||||
| } | ||||
|  | ||||
| void Beidou_Navigation_Message_D1::satellitePosition(double transmitTime) | ||||
| void Beidou_Dnav_Navigation_Message::satellitePosition(double transmitTime) | ||||
| { | ||||
|     double tk; | ||||
|     double a; | ||||
| @@ -400,7 +400,7 @@ void Beidou_Navigation_Message_D1::satellitePosition(double transmitTime) | ||||
|  | ||||
|  | ||||
|  | ||||
| int Beidou_Navigation_Message_D1::subframe_decoder(char *subframe) | ||||
| int Beidou_Dnav_Navigation_Message::subframe_decoder(char *subframe) | ||||
| { | ||||
|     int subframe_ID = 0; | ||||
|     std::bitset<BEIDOU_SUBFRAME_BITS> mysubframe_bits; | ||||
| @@ -789,7 +789,7 @@ int Beidou_Navigation_Message_D1::subframe_decoder(char *subframe) | ||||
|  | ||||
|  | ||||
|  | ||||
| double Beidou_Navigation_Message_D1::utc_time(const double beidoutime_corrected) const | ||||
| double Beidou_Dnav_Navigation_Message::utc_time(const double beidoutime_corrected) const | ||||
| { | ||||
|     double t_utc; | ||||
|     double t_utc_daytime; | ||||
| @@ -838,9 +838,9 @@ double Beidou_Navigation_Message_D1::utc_time(const double beidoutime_corrected) | ||||
|  | ||||
|  | ||||
|  | ||||
| Beidou_Ephemeris Beidou_Navigation_Message_D1::get_ephemeris() | ||||
| Beidou_Dnav_Ephemeris Beidou_Dnav_Navigation_Message::get_ephemeris() | ||||
| { | ||||
|     Beidou_Ephemeris ephemeris; | ||||
|     Beidou_Dnav_Ephemeris ephemeris; | ||||
|     ephemeris.i_satellite_PRN = i_satellite_PRN; | ||||
|     ephemeris.d_TOW = d_SOW; | ||||
|     ephemeris.d_Crs = d_Crs; | ||||
| @@ -890,9 +890,9 @@ Beidou_Ephemeris Beidou_Navigation_Message_D1::get_ephemeris() | ||||
| } | ||||
|  | ||||
|  | ||||
| Beidou_Iono Beidou_Navigation_Message_D1::get_iono() | ||||
| Beidou_Dnav_Iono Beidou_Dnav_Navigation_Message::get_iono() | ||||
| { | ||||
|     Beidou_Iono iono; | ||||
|     Beidou_Dnav_Iono iono; | ||||
|     iono.d_alpha0 = d_alpha0; | ||||
|     iono.d_alpha1 = d_alpha1; | ||||
|     iono.d_alpha2 = d_alpha2; | ||||
| @@ -908,9 +908,9 @@ Beidou_Iono Beidou_Navigation_Message_D1::get_iono() | ||||
| } | ||||
|  | ||||
|  | ||||
| Beidou_Utc_Model Beidou_Navigation_Message_D1::get_utc_model() | ||||
| Beidou_Dnav_Utc_Model Beidou_Dnav_Navigation_Message::get_utc_model() | ||||
| { | ||||
|     Beidou_Utc_Model utc_model; | ||||
|     Beidou_Dnav_Utc_Model utc_model; | ||||
|     utc_model.valid = flag_utc_model_valid; | ||||
|     // UTC parameters | ||||
|     utc_model.d_A1 = d_A1UTC; | ||||
| @@ -927,7 +927,7 @@ Beidou_Utc_Model Beidou_Navigation_Message_D1::get_utc_model() | ||||
| } | ||||
|  | ||||
|  | ||||
| bool Beidou_Navigation_Message_D1::satellite_validation() | ||||
| bool Beidou_Dnav_Navigation_Message::satellite_validation() | ||||
| { | ||||
|     bool flag_data_valid = false; | ||||
|     b_valid_ephemeris_set_flag = false; | ||||
|   | ||||
| @@ -29,8 +29,8 @@ | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #ifndef GNSS_SDR_BEIDOU_NAVIGATION_MESSAGE_H_ | ||||
| #define GNSS_SDR_BEIDOU_NAVIGATION_MESSAGE_H_ | ||||
| #ifndef GNSS_SDR_BEIDOU_DNAV_NAVIGATION_MESSAGE_H_ | ||||
| #define GNSS_SDR_BEIDOU_DNAV_NAVIGATION_MESSAGE_H_ | ||||
|  | ||||
|  | ||||
| #include <bitset> | ||||
| @@ -51,7 +51,7 @@ | ||||
|  * | ||||
|  * See http://www.gps.gov/technical/icwg/IS-GPS-200E.pdf Appendix II | ||||
|  */ | ||||
| class Beidou_Navigation_Message_D1 | ||||
| class Beidou_Dnav_Navigation_Message | ||||
| { | ||||
| private: | ||||
|     unsigned long int read_navigation_unsigned(std::bitset<BEIDOU_SUBFRAME_BITS> bits, const std::vector<std::pair<int,int>> parameter); | ||||
| @@ -224,17 +224,17 @@ public: | ||||
|     /*! | ||||
|      * \brief Obtain a GPS SV Ephemeris class filled with current SV data | ||||
|      */ | ||||
|     Beidou_Ephemeris get_ephemeris(); | ||||
|     Beidou_Dnav_Ephemeris get_ephemeris(); | ||||
|  | ||||
|     /*! | ||||
|      * \brief Obtain a GPS ionospheric correction parameters class filled with current SV data | ||||
|      */ | ||||
|     Beidou_Iono get_iono(); | ||||
|     Beidou_Dnav_Iono get_iono(); | ||||
|  | ||||
|     /*! | ||||
|      * \brief Obtain a GPS UTC model parameters class filled with current SV data | ||||
|      */ | ||||
|     Beidou_Utc_Model get_utc_model(); | ||||
|     Beidou_Dnav_Utc_Model get_utc_model(); | ||||
|  | ||||
|  | ||||
|     /*! | ||||
| @@ -266,7 +266,7 @@ public: | ||||
|     /*! | ||||
|      * Default constructor | ||||
|      */ | ||||
|     Beidou_Navigation_Message_D1(); | ||||
|     Beidou_Dnav_Navigation_Message(); | ||||
| }; | ||||
|  | ||||
| #endif | ||||
|   | ||||
| @@ -33,7 +33,7 @@ | ||||
| #include <cmath> | ||||
|  | ||||
|  | ||||
| Beidou_Utc_Model::Beidou_Utc_Model() | ||||
| Beidou_Dnav_Utc_Model::Beidou_Dnav_Utc_Model() | ||||
| { | ||||
|     valid = false; | ||||
|     d_A1 = 0; | ||||
| @@ -46,7 +46,7 @@ Beidou_Utc_Model::Beidou_Utc_Model() | ||||
|     d_DeltaT_LSF = 0; | ||||
| } | ||||
|  | ||||
| double Beidou_Utc_Model::utc_time(double beidoutime_corrected, int i_BEIDOU_week) | ||||
| double Beidou_Dnav_Utc_Model::utc_time(double beidoutime_corrected, int i_BEIDOU_week) | ||||
| { | ||||
|     double t_utc; | ||||
|     double t_utc_daytime; | ||||
|   | ||||
| @@ -29,8 +29,8 @@ | ||||
|  */ | ||||
|  | ||||
|  | ||||
| #ifndef GNSS_SDR_BEIDOU_UTC_MODEL_H_ | ||||
| #define GNSS_SDR_BEIDOU_UTC_MODEL_H_ | ||||
| #ifndef GNSS_SDR_BEIDOU_DNAV_UTC_MODEL_H_ | ||||
| #define GNSS_SDR_BEIDOU_DNAV_UTC_MODEL_H_ | ||||
|  | ||||
| #include <boost/assign.hpp> | ||||
| #include <boost/serialization/nvp.hpp> | ||||
| @@ -41,7 +41,7 @@ | ||||
|  * | ||||
|  * See http://www.gps.gov/technical/icwg/IS-GPS-200E.pdf Appendix II | ||||
|  */ | ||||
| class Beidou_Utc_Model | ||||
| class Beidou_Dnav_Utc_Model | ||||
| { | ||||
| public: | ||||
|     bool valid; | ||||
| @@ -58,7 +58,7 @@ public: | ||||
|     /*! | ||||
|      * Default constructor | ||||
|      */ | ||||
|     Beidou_Utc_Model(); | ||||
|     Beidou_Dnav_Utc_Model(); | ||||
|  | ||||
|     template <class Archive> | ||||
|     /* | ||||
|   | ||||
| @@ -622,91 +622,49 @@ std::string Gnss_Satellite::what_block(const std::string& system_, uint32_t PRN_ | ||||
|         { | ||||
|             // Check https://en.wikipedia.org/wiki/List_of_BeiDou_satellites | ||||
|             switch ( PRN_ ) | ||||
|             { | ||||
|             case 1: | ||||
|                 block_ = std::string("Compass-G1"); | ||||
|                 break; | ||||
|             case 2: | ||||
|                 block_ = std::string("Compass-G6"); | ||||
|                 break; | ||||
|             case 3: | ||||
|                 block_ = std::string("Compass-G3"); | ||||
|                 break; | ||||
|             case 4: | ||||
|                 block_ = std::string("Compass-G4"); | ||||
|                 break; | ||||
|             case 5: | ||||
|                 block_ = std::string("Compass-G5"); | ||||
|                 break; | ||||
|             case 6: | ||||
|                 block_ = std::string("Compass-IGSO1"); | ||||
|                 break; | ||||
|             case 7: | ||||
|                 block_ = std::string("Compass-IGSO2"); | ||||
|                 break; | ||||
|             case 8: | ||||
|                 block_ = std::string("Compass-IGSO3"); | ||||
|                 break; | ||||
|             case 9: | ||||
|                 block_ = std::string("Compass-IGSO4"); | ||||
|                 break; | ||||
|             case 10: | ||||
|                 block_ = std::string("Compass-IGSO5"); | ||||
|                 break; | ||||
|             case 11: | ||||
|                 block_ = std::string("Compass-M3"); | ||||
|                 break; | ||||
|             case 12: | ||||
|                 block_ = std::string("Compass-M4"); | ||||
|                 break; | ||||
|             case 13: | ||||
|                 block_ = std::string("Compass-M2"); | ||||
|                 break; | ||||
|             case 14: | ||||
|                 block_ = std::string("Compass-M5"); | ||||
|                 break; | ||||
|             case 17: | ||||
|                 block_ = std::string("Compass-G7"); | ||||
|                 break; | ||||
|             case 19: | ||||
|                 block_ = std::string("BeiDou-3 M1"); | ||||
|                 break; | ||||
|             case 20: | ||||
|                 block_ = std::string("BeiDou-3 M2"); | ||||
|                 break; | ||||
|             case 21: | ||||
|                 block_ = std::string("BeiDou-3 M3"); | ||||
|                 break; | ||||
|             case 22: | ||||
|                 block_ = std::string("BeiDou-3 M4"); | ||||
|                 break; | ||||
|             case 27: | ||||
|                 block_ = std::string("BeiDou-3 M7"); | ||||
|                 break; | ||||
|             case 28: | ||||
|                 block_ = std::string("BeiDou-3 M8"); | ||||
|                 break; | ||||
|             case 29: | ||||
|                 block_ = std::string("BeiDou-3 M9"); | ||||
|                 break; | ||||
|             case 30: | ||||
|                 block_ = std::string("BeiDou-3 M10"); | ||||
|                 break; | ||||
|             case 31: | ||||
|                 block_ = std::string("BDS I1-S"); | ||||
|                 break; | ||||
|             case 32: | ||||
|                 block_ = std::string("BDS I2-S"); | ||||
|                 break; | ||||
|             case 33: | ||||
|                 block_ = std::string("BDS M1-S"); | ||||
|                 break; | ||||
|             case 34: | ||||
|                 block_ = std::string("BDS M2-S"); | ||||
|                 break; | ||||
|             case 35: | ||||
|                 block_ = std::string("BDS M3-S"); | ||||
|                 break; | ||||
|             	{ | ||||
| 			case 19: | ||||
| 				block_ = std::string("BEIDOU-3 M1"); //!<Slot B-7; launched 2017/11/05 | ||||
| 				break; | ||||
| 			case 20: | ||||
| 				block_ = std::string("BEIDOU-3 M2"); //!<Slot B-5; launched 2017/11/05 | ||||
| 				break; | ||||
| 			case 21: | ||||
| 				block_ = std::string("BEIDOU 3M5");  //!<Slot B-?; launched 2018/02/12 | ||||
| 				break; | ||||
| 			case 22: | ||||
| 				block_ = std::string("BEIDOU 3M6");  //!<Slot B-6; launched 2018/02/12 | ||||
| 				break; | ||||
| 			case 23: | ||||
| 				block_ = std::string("BEIDOU 3M9");  //!<Slot C-7; launched 2018/07/29 | ||||
| 				break; | ||||
| 			case 24: | ||||
| 				block_ = std::string("BEIDOU 3M10");  //!<Slot C-1; launched 2018/07/29 | ||||
| 				break; | ||||
| 			case 25: | ||||
| 				block_ = std::string("BEIDOU 3M12");  //!<Slot C-8; launched 2018/08/24 | ||||
| 				break; | ||||
| 			case 26: | ||||
| 				block_ = std::string("BEIDOU 3M11");  //!<Slot C-2; launched 2018/08/24 | ||||
| 				break; | ||||
| 			case 27: | ||||
| 				block_ = std::string("BEIDOU 3M3");  //!<Slot A-?; launched 2018/01/11 | ||||
| 				break; | ||||
| 			case 28: | ||||
| 				block_ = std::string("BEIDOU 3M4");  //!<Slot A-?; launched 2018/01/11 | ||||
| 				break; | ||||
| 			case 29: | ||||
| 				block_ = std::string("BEIDOU 3M7");  //!<Slot A-?; launched 2018/03/29 | ||||
| 				break; | ||||
|         	case 30: | ||||
| 				block_ = std::string("BEIDOU 3M8");  //!<Slot A-?; launched 2018/03/29 | ||||
| 				break; | ||||
|         	case 32: | ||||
| 				block_ = std::string("BEIDOU 3M13");  //!<Slot B-1?; launched 2018/09/19 | ||||
| 				break; | ||||
|         	case 33: | ||||
| 				block_ = std::string("BEIDOU 3M14");  //!<Slot B-3; launched 2018/09/19 | ||||
| 				break; | ||||
|             default: | ||||
|                 block_ = std::string("Unknown(Simulated)"); | ||||
|                 } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Damian Miralles
					Damian Miralles