Added new classes Gnss_Synchro and Gnss_Signal

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@145 64b25241-fba3-4117-9849-534c7e92360d
This commit is contained in:
Javier Arribas 2012-01-25 16:23:54 +00:00
parent 5170a9bc24
commit 22925909fd
7 changed files with 259 additions and 7 deletions

View File

@ -17,8 +17,7 @@ ControlThread.wait_for_flowgraph=false
SignalSource.implementation=File_Signal_Source
;#filename: path to file with the captured GNSS signal samples to be processed
SignalSource.filename=../data/sc2_d16.dat
SignalSource.filename=/media/DATALOGGER/Barcelona _ctae_cttc_logs/gps/ctae-cttc1_df16_tram5.dat
;#item_type: Type and resolution for each of the signal samples. Use only gr_complex in this version.
@ -94,7 +93,7 @@ Acquisition0.doppler_step=250
;######### ACQUISITION CH 1 CONFIG ############
Acquisition1.implementation=GPS_L1_CA_PCPS_Acquisition
Acquisition1.threshold=70
Acquisition1.threshold=40
Acquisition1.doppler_max=10000
Acquisition1.doppler_step=250
;Acquisition1.satellite=32
@ -102,7 +101,7 @@ Acquisition1.doppler_step=250
;######### ACQUISITION CH 2 CONFIG ############
Acquisition2.implementation=GPS_L1_CA_PCPS_Acquisition
Acquisition2.threshold=60
Acquisition2.threshold=40
Acquisition2.doppler_max=10000
Acquisition2.doppler_step=250
;Acquisition2.satellite=11
@ -110,7 +109,7 @@ Acquisition2.doppler_step=250
;######### ACQUISITION CH 3 CONFIG ############
Acquisition3.implementation=GPS_L1_CA_PCPS_Acquisition
Acquisition3.threshold=70
Acquisition3.threshold=40
Acquisition3.doppler_max=10000
Acquisition3.doppler_step=250
;Acquisition3.satellite=1
@ -118,7 +117,7 @@ Acquisition3.doppler_step=250
;######### ACQUISITION CH 4 CONFIG ############
Acquisition4.implementation=GPS_L1_CA_PCPS_Acquisition
Acquisition4.threshold=60
Acquisition4.threshold=40
Acquisition4.doppler_max=10000
Acquisition4.doppler_step=250
;Acquisition4.satellite=31

View File

@ -0,0 +1,54 @@
/*!
* \file gnss_satellite.cc
* \brief Implementation of the Gnss_Signal class
* \author
* Luis Esteve, 2012. luis(at)epsilon-formacion.com
* Javier Arribas, 2012. jarribas(at)cttc.es
* -------------------------------------------------------------------------
*
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
*
* GNSS-SDR is a software defined Global Navigation
* Satellite Systems receiver
*
* This file is part of GNSS-SDR.
*
* GNSS-SDR is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* at your option) any later version.
*
* GNSS-SDR is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
*
* -------------------------------------------------------------------------
*/
#include "gnss_signal.h"
Gnss_Signal::Gnss_Signal()
{
this->signal="";
}
Gnss_Signal::Gnss_Signal(Gnss_Satellite satellite_,std::string signal_)
{
this->satellite=satellite_;
this->signal=signal_;
}
Gnss_Signal::~Gnss_Signal()
{
}
std::string Gnss_Signal::get_signal()
{
return this->signal;
}
Gnss_Satellite Gnss_Signal::get_satellite()
{
return this->satellite;
}

View File

@ -0,0 +1,56 @@
/*!
* \file gnss_satellite.cc
* \brief Implementation of the Gnss_Signal class
* \author
* Luis Esteve, 2012. luis(at)epsilon-formacion.com
* Javier Arribas, 2012. jarribas(at)cttc.es
* -------------------------------------------------------------------------
*
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
*
* GNSS-SDR is a software defined Global Navigation
* Satellite Systems receiver
*
* This file is part of GNSS-SDR.
*
* GNSS-SDR is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* at your option) any later version.
*
* GNSS-SDR is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
*
* -------------------------------------------------------------------------
*/
#ifndef GNSS_SDR_GNSS_SIGNAL_H_
#define GNSS_SDR_GNSS_SIGNAL_H_
#include "gnss_satellite.h"
#include <string>
/*
* \brief This class represents a GNSS signal.
*
* It contains information about the space vehicle and the specific signal.
*/
class Gnss_Signal
{
private:
Gnss_Satellite satellite;
std::string signal;
public:
Gnss_Signal();
Gnss_Signal(Gnss_Satellite satellite_,std::string signal_);
~Gnss_Signal();
std::string get_signal();
Gnss_Satellite get_satellite();
};
#endif

View File

@ -0,0 +1,65 @@
/*!
* \file gnss_synchro.cc
* \brief Implementation of the Gnss_Synchro class
* \author
* Luis Esteve, 2012. luis(at)epsilon-formacion.com
* Javier Arribas, 2012. jarribas(at)cttc.es
* -------------------------------------------------------------------------
*
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
*
* GNSS-SDR is a software defined Global Navigation
* Satellite Systems receiver
*
* This file is part of GNSS-SDR.
*
* GNSS-SDR is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* at your option) any later version.
*
* GNSS-SDR is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
*
* -------------------------------------------------------------------------
*/
#include "gnss_synchro.h"
Gnss_Synchro::Gnss_Synchro()
{
// Acquisition
Acq_delay_samples=0.0;
Acq_doppler_hz=0.0;
Acq_samplestamp_samples=0;
Flag_valid_acquisition=false;
//Tracking
Prompt_I=0.0;
Prompt_Q=0.0;
Carrier_phase_rads=0.0;
Code_phase_secs=0.0;
Tracking_timestamp_secs=0.0;
CN0_dB_hz=0.0;
Flag_valid_tracking=false;
//Telemetry Decoder
Preamble_delay_ms=0.0;
Prn_delay_ms=0.0;
Preamble_code_phase_ms=0.0;
Preamble_code_phase_correction_ms=0.0;
Channel_ID=0;
Flag_valid_word=false;
Flag_preamble=false;
// Pseudorange
Pseudorange_m=0.0;
Pseudorange_timestamp_ms=0.0;
Flag_valid_pseudorange=false;
}
Gnss_Synchro::~Gnss_Synchro()
{
}

View File

@ -0,0 +1,74 @@
/*!
* \file gnss_synchro.h
* \brief Implementation of the Gnss_Synchro class
* \author
* Luis Esteve, 2012. luis(at)epsilon-formacion.com
* Javier Arribas, 2012. jarribas(at)cttc.es
* -------------------------------------------------------------------------
*
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
*
* GNSS-SDR is a software defined Global Navigation
* Satellite Systems receiver
*
* This file is part of GNSS-SDR.
*
* GNSS-SDR is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* at your option) any later version.
*
* GNSS-SDR is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
*
* -------------------------------------------------------------------------
*/
#ifndef GNSS_SDR_GNSS_SYNCHRO_H_
#define GNSS_SDR_GNSS_SYNCHRO_H_
#include "gnss_signal.h"
#include <string>
class Gnss_Synchro{
private:
public:
Gnss_Synchro();
~Gnss_Synchro();
Gnss_Signal Signal;
// Acquisition
double Acq_delay_samples;
double Acq_doppler_hz;
unsigned long int Acq_samplestamp_samples;
bool Flag_valid_acquisition;
//Tracking
double Prompt_I;
double Prompt_Q;
double Carrier_phase_rads;
double Code_phase_secs;
double Tracking_timestamp_secs;
double CN0_dB_hz;
bool Flag_valid_tracking;
//Telemetry Decoder
double Preamble_delay_ms;
double Prn_delay_ms;
double Preamble_code_phase_ms;
double Preamble_code_phase_correction_ms;
int Channel_ID;
bool Flag_valid_word;
bool Flag_preamble;
// Pseudorange
double Pseudorange_m;
double Pseudorange_timestamp_ms;
bool Flag_valid_pseudorange;
};
#endif

View File

@ -1,4 +1,6 @@
project : build-dir ../../../build ;
obj gps_navigation_message : gps_navigation_message.cc ;
obj gnss_satellite : gnss_satellite.cc ;
obj gnss_satellite : gnss_satellite.cc ;
obj gnss_signal : gnss_signal.cc ;
obj gnss_synchro : gnss_synchro.cc ;

View File

@ -54,6 +54,8 @@ exe gnss-sdr : main.cc
../core/receiver//gnss_flowgraph
../core/system_parameters//gps_navigation_message
../core/system_parameters//gnss_satellite
../core/system_parameters//gnss_signal
../core/system_parameters//gnss_synchro
../..//gflags
../..//glog
../..//gnuradio-core ;