mirror of
				https://github.com/gnss-sdr/gnss-sdr
				synced 2025-10-31 07:13:03 +00:00 
			
		
		
		
	Merge branch 'mmajoral-flag_PLL_180_deg_phase_locked' into next
This commit is contained in:
		| @@ -36,6 +36,7 @@ message GnssSynchro { | ||||
|    double rx_time = 23;  // Receiving time after the start of the week, in s | ||||
|    bool flag_valid_pseudorange = 24;  // Pseudorange computation status | ||||
|    double interp_tow_ms = 25;  // Interpolated time of week, in ms | ||||
|    bool flag_PLL_180_deg_phase_locked = 26; // PLL lock at 180º | ||||
| } | ||||
|  | ||||
| /* Observables represents a collection of GnssSynchro annotations */ | ||||
|   | ||||
| @@ -1032,6 +1032,11 @@ int galileo_telemetry_decoder_gs::general_work(int noutput_items __attribute__(( | ||||
|                 { | ||||
|                     // correct the accumulated phase for the Costas loop phase shift, if required | ||||
|                     current_symbol.Carrier_phase_rads += GNSS_PI; | ||||
|                     current_symbol.Flag_PLL_180_deg_phase_locked = true; | ||||
|                 } | ||||
|             else | ||||
|                 { | ||||
|                     current_symbol.Flag_PLL_180_deg_phase_locked = false; | ||||
|                 } | ||||
|  | ||||
|             if (d_dump == true) | ||||
|   | ||||
| @@ -574,6 +574,11 @@ int gps_l1_ca_telemetry_decoder_gs::general_work(int noutput_items __attribute__ | ||||
|                 { | ||||
|                     // correct the accumulated phase for the Costas loop phase shift, if required | ||||
|                     current_symbol.Carrier_phase_rads += GNSS_PI; | ||||
|                     current_symbol.Flag_PLL_180_deg_phase_locked = true; | ||||
|                 } | ||||
|             else | ||||
|                 { | ||||
|                     current_symbol.Flag_PLL_180_deg_phase_locked = false; | ||||
|                 } | ||||
|  | ||||
|             if (d_dump == true) | ||||
|   | ||||
| @@ -311,6 +311,11 @@ int gps_l2c_telemetry_decoder_gs::general_work(int noutput_items __attribute__(( | ||||
|         { | ||||
|             // correct the accumulated phase for the Costas loop phase shift, if required | ||||
|             current_synchro_data.Carrier_phase_rads += GNSS_PI; | ||||
|             current_synchro_data.Flag_PLL_180_deg_phase_locked = true; | ||||
|         } | ||||
|     else | ||||
|         { | ||||
|             current_synchro_data.Flag_PLL_180_deg_phase_locked = false; | ||||
|         } | ||||
|  | ||||
|     current_synchro_data.TOW_at_current_symbol_ms = round(d_TOW_at_current_symbol * 1000.0); | ||||
|   | ||||
| @@ -325,6 +325,11 @@ int gps_l5_telemetry_decoder_gs::general_work(int noutput_items __attribute__((u | ||||
|                 { | ||||
|                     // correct the accumulated phase for the Costas loop phase shift, if required | ||||
|                     current_synchro_data.Carrier_phase_rads += GNSS_PI; | ||||
|                     current_synchro_data.Flag_PLL_180_deg_phase_locked = true; | ||||
|                 } | ||||
|             else | ||||
|                 { | ||||
|                     current_synchro_data.Flag_PLL_180_deg_phase_locked = false; | ||||
|                 } | ||||
|             current_synchro_data.TOW_at_current_symbol_ms = d_TOW_at_current_symbol_ms; | ||||
|             current_synchro_data.Flag_valid_word = d_flag_valid_word; | ||||
|   | ||||
| @@ -112,6 +112,7 @@ public: | ||||
|                 obs->set_pseudorange_m(gs.Pseudorange_m); | ||||
|                 obs->set_rx_time(gs.RX_time); | ||||
|                 obs->set_flag_valid_pseudorange(gs.Flag_valid_pseudorange); | ||||
|                 obs->set_flag_pll_180_deg_phase_locked(gs.Flag_PLL_180_deg_phase_locked); | ||||
|                 obs->set_interp_tow_ms(gs.interp_TOW_ms); | ||||
|             } | ||||
|         observables.SerializeToString(&data); | ||||
| @@ -156,6 +157,7 @@ public: | ||||
|                 gs.Pseudorange_m = gs_read.pseudorange_m(); | ||||
|                 gs.RX_time = gs_read.rx_time(); | ||||
|                 gs.Flag_valid_pseudorange = gs_read.flag_valid_pseudorange(); | ||||
|                 gs.Flag_PLL_180_deg_phase_locked = gs_read.flag_pll_180_deg_phase_locked(); | ||||
|                 gs.interp_TOW_ms = gs_read.interp_tow_ms(); | ||||
|  | ||||
|                 vgs.push_back(gs); | ||||
|   | ||||
| @@ -78,6 +78,7 @@ public: | ||||
|     bool Flag_valid_symbol_output{};       //!< Set by Tracking processing block | ||||
|     bool Flag_valid_word{};                //!< Set by Telemetry Decoder processing block | ||||
|     bool Flag_valid_pseudorange{};         //!< Set by Observables processing block | ||||
|     bool Flag_PLL_180_deg_phase_locked{};  //!< Set by Telemetry Decoder processing block | ||||
|  | ||||
|     /// Copy constructor | ||||
|     Gnss_Synchro(const Gnss_Synchro& other) noexcept | ||||
| @@ -118,6 +119,7 @@ public: | ||||
|                 this->Flag_valid_symbol_output = rhs.Flag_valid_symbol_output; | ||||
|                 this->Flag_valid_word = rhs.Flag_valid_word; | ||||
|                 this->Flag_valid_pseudorange = rhs.Flag_valid_pseudorange; | ||||
|                 this->Flag_PLL_180_deg_phase_locked = rhs.Flag_PLL_180_deg_phase_locked; | ||||
|             } | ||||
|         return *this; | ||||
|     }; | ||||
| @@ -160,6 +162,7 @@ public: | ||||
|                 this->Flag_valid_symbol_output = other.Flag_valid_symbol_output; | ||||
|                 this->Flag_valid_word = other.Flag_valid_word; | ||||
|                 this->Flag_valid_pseudorange = other.Flag_valid_pseudorange; | ||||
|                 this->Flag_PLL_180_deg_phase_locked = other.Flag_PLL_180_deg_phase_locked; | ||||
|             } | ||||
|         return *this; | ||||
|     }; | ||||
| @@ -206,6 +209,7 @@ public: | ||||
|         ar& BOOST_SERIALIZATION_NVP(Flag_valid_symbol_output); | ||||
|         ar& BOOST_SERIALIZATION_NVP(Flag_valid_word); | ||||
|         ar& BOOST_SERIALIZATION_NVP(Flag_valid_pseudorange); | ||||
|         ar& BOOST_SERIALIZATION_NVP(Flag_PLL_180_deg_phase_locked); | ||||
|     } | ||||
| }; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Carles Fernandez
					Carles Fernandez