mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-11-19 08:14:55 +00:00
Merge branch 'next' of https://github.com/carlesfernandez/gnss-sdr into next
This commit is contained in:
commit
6d6d5e9f9c
@ -31,14 +31,19 @@
|
||||
|
||||
|
||||
#include "geojson_printer.h"
|
||||
#include "pvt_solution.h"
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
#include <boost/filesystem/operations.hpp> // for create_directories, exists
|
||||
#include <boost/filesystem/path.hpp> // for path, operator<<
|
||||
#include <boost/filesystem/path_traits.hpp> // for filesystem
|
||||
#include <boost/system/error_code.hpp> // for error_code
|
||||
#include <glog/logging.h>
|
||||
#include <exception>
|
||||
#include <iomanip>
|
||||
#include <sstream>
|
||||
#include <cstdio> // for remove
|
||||
#include <ctime> // for tm
|
||||
#include <exception> // for exception
|
||||
#include <iomanip> // for operator<<
|
||||
#include <iostream> // for cout, cerr
|
||||
#include <sstream> // for stringstream
|
||||
|
||||
|
||||
GeoJSON_Printer::GeoJSON_Printer(const std::string& base_path)
|
||||
|
@ -33,11 +33,12 @@
|
||||
#ifndef GNSS_SDR_GEOJSON_PRINTER_H_
|
||||
#define GNSS_SDR_GEOJSON_PRINTER_H_
|
||||
|
||||
#include "pvt_solution.h"
|
||||
|
||||
#include <fstream>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
class Pvt_Solution;
|
||||
|
||||
/*!
|
||||
* \brief Prints PVT solutions in GeoJSON format file
|
||||
|
@ -31,13 +31,19 @@
|
||||
|
||||
|
||||
#include "gpx_printer.h"
|
||||
#include "rtklib_solver.h"
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
#include <boost/filesystem/operations.hpp> // for create_directories, exists
|
||||
#include <boost/filesystem/path.hpp> // for path, operator<<
|
||||
#include <boost/filesystem/path_traits.hpp> // for filesystem
|
||||
#include <boost/system/error_code.hpp> // for error_code
|
||||
#include <glog/logging.h>
|
||||
#include <exception>
|
||||
#include <sstream>
|
||||
#include <cstdio> // for remove
|
||||
#include <ctime> // for tm
|
||||
#include <exception> // for exception
|
||||
#include <iomanip> // for operator<<
|
||||
#include <iostream> // for cout, cerr
|
||||
#include <sstream> // for stringstream
|
||||
|
||||
|
||||
Gpx_Printer::Gpx_Printer(const std::string& base_path)
|
||||
|
@ -33,11 +33,12 @@
|
||||
#ifndef GNSS_SDR_GPX_PRINTER_H_
|
||||
#define GNSS_SDR_GPX_PRINTER_H_
|
||||
|
||||
#include "rtklib_solver.h"
|
||||
|
||||
#include <fstream>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
class Rtklib_Solver;
|
||||
|
||||
/*!
|
||||
* \brief Prints PVT information to GPX format file
|
||||
|
@ -31,13 +31,19 @@
|
||||
*/
|
||||
|
||||
#include "kml_printer.h"
|
||||
#include "rtklib_solver.h"
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
#include <boost/filesystem/operations.hpp> // for create_directories, exists
|
||||
#include <boost/filesystem/path.hpp> // for path, operator<<
|
||||
#include <boost/filesystem/path_traits.hpp> // for filesystem
|
||||
#include <boost/system/error_code.hpp> // for error_code
|
||||
#include <glog/logging.h>
|
||||
#include <exception>
|
||||
#include <cstdio> // for remove
|
||||
#include <ctime> // for tm
|
||||
#include <exception> // for exception
|
||||
#include <iostream> // for cout, cerr
|
||||
#include <sstream>
|
||||
#include <string>
|
||||
|
||||
|
||||
Kml_Printer::Kml_Printer(const std::string& base_path)
|
||||
|
@ -33,12 +33,12 @@
|
||||
#ifndef GNSS_SDR_KML_PRINTER_H_
|
||||
#define GNSS_SDR_KML_PRINTER_H_
|
||||
|
||||
#include "rtklib_solver.h"
|
||||
#include <fstream>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <fstream> // for ofstream
|
||||
#include <memory> // for shared_ptr
|
||||
|
||||
|
||||
class Rtklib_Solver;
|
||||
|
||||
/*!
|
||||
* \brief Prints PVT information to OGC KML format file (can be viewed with Google Earth)
|
||||
*
|
||||
|
@ -35,14 +35,16 @@
|
||||
|
||||
#include "nmea_printer.h"
|
||||
#include "rtklib_solution.h"
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
#include "rtklib_solver.h"
|
||||
#include <boost/filesystem/operations.hpp> // for create_directories, exists
|
||||
#include <boost/filesystem/path.hpp> // for path, operator<<
|
||||
#include <boost/filesystem/path_traits.hpp> // for filesystem
|
||||
#include <boost/system/error_code.hpp> // for error_code
|
||||
#include <glog/logging.h>
|
||||
#include <cstdint>
|
||||
#include <exception>
|
||||
#include <fcntl.h>
|
||||
#include <iostream> // for cout, cerr
|
||||
#include <termios.h>
|
||||
|
||||
|
||||
|
@ -36,11 +36,12 @@
|
||||
#ifndef GNSS_SDR_NMEA_PRINTER_H_
|
||||
#define GNSS_SDR_NMEA_PRINTER_H_
|
||||
|
||||
#include "rtklib_solver.h"
|
||||
#include <fstream>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <boost/date_time/posix_time/ptime.hpp> // for ptime
|
||||
#include <fstream> // for ofstream
|
||||
#include <memory> // for shared_ptr
|
||||
#include <string> // for string
|
||||
|
||||
class Rtklib_Solver;
|
||||
|
||||
/*!
|
||||
* \brief This class provides a implementation of a subset of the NMEA-0183 standard for interfacing
|
||||
|
@ -29,6 +29,27 @@
|
||||
*/
|
||||
|
||||
#include "rinex_printer.h"
|
||||
#include "Beidou_B1I.h"
|
||||
#include "GLONASS_L1_L2_CA.h"
|
||||
#include "GPS_L1_CA.h"
|
||||
#include "Galileo_E1.h"
|
||||
#include "beidou_dnav_ephemeris.h"
|
||||
#include "beidou_dnav_iono.h"
|
||||
#include "beidou_dnav_utc_model.h"
|
||||
#include "galileo_ephemeris.h"
|
||||
#include "galileo_iono.h"
|
||||
#include "galileo_utc_model.h"
|
||||
#include "glonass_gnav_almanac.h"
|
||||
#include "glonass_gnav_ephemeris.h"
|
||||
#include "glonass_gnav_utc_model.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_cnav_ephemeris.h"
|
||||
#include "gps_cnav_iono.h"
|
||||
#include "gps_cnav_utc_model.h"
|
||||
#include "gps_ephemeris.h"
|
||||
#include "gps_iono.h"
|
||||
#include "gps_navigation_message.h"
|
||||
#include "gps_utc_model.h"
|
||||
#include <boost/date_time/gregorian/gregorian.hpp>
|
||||
#include <boost/date_time/local_time/local_time.hpp>
|
||||
#include <boost/date_time/time_zone_base.hpp>
|
||||
@ -38,8 +59,9 @@
|
||||
#include <glog/logging.h>
|
||||
#include <algorithm> // for min and max
|
||||
#include <cmath> // for floor
|
||||
#include <cstdlib> // for getenv()
|
||||
#include <cstring> // for memcpy
|
||||
#include <exception>
|
||||
#include <iostream> // for cout
|
||||
#include <iterator>
|
||||
#include <ostream>
|
||||
#include <set>
|
||||
|
@ -51,25 +51,33 @@
|
||||
#ifndef GNSS_SDR_RINEX_PRINTER_H_
|
||||
#define GNSS_SDR_RINEX_PRINTER_H_
|
||||
|
||||
#include "Beidou_B1I.h"
|
||||
#include "GLONASS_L1_L2_CA.h"
|
||||
#include "GPS_L1_CA.h"
|
||||
#include "Galileo_E1.h"
|
||||
#include "beidou_dnav_navigation_message.h"
|
||||
#include "galileo_navigation_message.h"
|
||||
#include "glonass_gnav_navigation_message.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_cnav_navigation_message.h"
|
||||
#include "gps_navigation_message.h"
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
#include <cstdint>
|
||||
#include <fstream>
|
||||
#include <cstdint> // for int32_t
|
||||
#include <cstdlib> // for strtol, strtod
|
||||
#include <fstream> // for fstream
|
||||
#include <iomanip> // for setprecision
|
||||
#include <map>
|
||||
#include <map> // for map
|
||||
#include <sstream> // for stringstream
|
||||
#include <string>
|
||||
#include <string> // for string
|
||||
|
||||
class Beidou_Dnav_Ephemeris;
|
||||
class Beidou_Dnav_Iono;
|
||||
class Beidou_Dnav_Utc_Model;
|
||||
class Galileo_Ephemeris;
|
||||
class Galileo_Iono;
|
||||
class Galileo_Utc_Model;
|
||||
class Glonass_Gnav_Almanac;
|
||||
class Glonass_Gnav_Ephemeris;
|
||||
class Glonass_Gnav_Utc_Model;
|
||||
class Gnss_Synchro;
|
||||
class Gps_CNAV_Ephemeris;
|
||||
class Gps_CNAV_Iono;
|
||||
class Gps_CNAV_Utc_Model;
|
||||
class Gps_Ephemeris;
|
||||
class Gps_Iono;
|
||||
class Gps_Navigation_Message;
|
||||
class Gps_Utc_Model;
|
||||
|
||||
class Sbas_Raw_Msg;
|
||||
|
||||
/*!
|
||||
* \brief Class that handles the generation of Receiver
|
||||
|
@ -29,8 +29,11 @@
|
||||
*/
|
||||
|
||||
#include "rtcm.h"
|
||||
#include "GLONASS_L1_L2_CA.h"
|
||||
#include "GPS_L1_CA.h"
|
||||
#include "GPS_L2C.h"
|
||||
#include "Galileo_E1.h"
|
||||
#include "Galileo_E5a.h"
|
||||
#include <boost/algorithm/string.hpp> // for to_upper_copy
|
||||
#include <boost/crc.hpp>
|
||||
#include <boost/date_time/gregorian/gregorian.hpp>
|
||||
@ -39,6 +42,7 @@
|
||||
#include <chrono> // std::chrono::seconds
|
||||
#include <cmath> // for std::fmod
|
||||
#include <cstdlib> // for strtol
|
||||
#include <iostream> // for cout
|
||||
#include <sstream> // for std::stringstream
|
||||
|
||||
|
||||
|
@ -34,11 +34,12 @@
|
||||
|
||||
|
||||
#include "concurrent_queue.h"
|
||||
#include "galileo_fnav_message.h"
|
||||
#include "glonass_gnav_navigation_message.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_cnav_navigation_message.h"
|
||||
#include "gps_navigation_message.h"
|
||||
#include <galileo_ephemeris.h>
|
||||
#include <gps_ephemeris.h>
|
||||
#include <gps_cnav_ephemeris.h>
|
||||
#include <glonass_gnav_ephemeris.h>
|
||||
#include <glonass_gnav_utc_model.h>
|
||||
#include <boost/asio.hpp>
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
#include <glog/logging.h>
|
||||
|
@ -32,17 +32,26 @@
|
||||
*/
|
||||
|
||||
#include "rtcm_printer.h"
|
||||
#include "galileo_ephemeris.h"
|
||||
#include "glonass_gnav_ephemeris.h"
|
||||
#include "glonass_gnav_utc_model.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_cnav_ephemeris.h"
|
||||
#include "gps_ephemeris.h"
|
||||
#include "rtcm.h"
|
||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||
#include <boost/filesystem/operations.hpp> // for create_directories, exists
|
||||
#include <boost/filesystem/path.hpp> // for path, operator<<
|
||||
#include <boost/filesystem/path_traits.hpp> // for filesystem
|
||||
#include <boost/system/error_code.hpp> // for error_codes
|
||||
#include <glog/logging.h>
|
||||
#include <cstdint>
|
||||
#include <exception>
|
||||
#include <fcntl.h> // for O_RDWR
|
||||
#include <iomanip>
|
||||
#include <cstdio> // for remove
|
||||
#include <ctime> // for tm
|
||||
#include <exception> // for exception
|
||||
#include <fcntl.h> // for O_RDWR
|
||||
#include <iostream> // for cout, cerr
|
||||
#include <termios.h> // for tcgetattr
|
||||
#include <utility>
|
||||
#include <unistd.h> // for close, write
|
||||
|
||||
|
||||
Rtcm_Printer::Rtcm_Printer(const std::string& filename, bool flag_rtcm_file_dump, bool flag_rtcm_server, bool flag_rtcm_tty_port, uint16_t rtcm_tcp_port, uint16_t rtcm_station_id, const std::string& rtcm_dump_devname, bool time_tag_name, const std::string& base_path)
|
||||
|
@ -34,10 +34,18 @@
|
||||
#ifndef GNSS_SDR_RTCM_PRINTER_H_
|
||||
#define GNSS_SDR_RTCM_PRINTER_H_
|
||||
|
||||
#include "rtcm.h"
|
||||
#include <fstream> // std::ofstream
|
||||
#include <map>
|
||||
#include <memory> // std::shared_ptr
|
||||
#include <cstdint> // for int32_t
|
||||
#include <fstream> // for std::ofstream
|
||||
#include <map> // for std::map
|
||||
#include <memory> // std::shared_ptr
|
||||
|
||||
class Galileo_Ephemeris;
|
||||
class Glonass_Gnav_Ephemeris;
|
||||
class Glonass_Gnav_Utc_Model;
|
||||
class Gnss_Synchro;
|
||||
class Gps_CNAV_Ephemeris;
|
||||
class Gps_Ephemeris;
|
||||
class Rtcm;
|
||||
|
||||
/*!
|
||||
* \brief This class provides a implementation of a subset of the RTCM Standard 10403.2 messages
|
||||
|
@ -92,15 +92,17 @@ add_library(acquisition_adapters ${ACQ_ADAPTER_SOURCES} ${ACQ_ADAPTER_HEADERS})
|
||||
|
||||
target_link_libraries(acquisition_adapters
|
||||
PUBLIC
|
||||
Gnuradio::blocks
|
||||
algorithms_libs
|
||||
gnss_sdr_flags
|
||||
acquisition_gr_blocks
|
||||
core_system_parameters
|
||||
Gnuradio::blocks
|
||||
Volk::volk
|
||||
PRIVATE
|
||||
Boost::boost
|
||||
Gflags::gflags
|
||||
Glog::glog
|
||||
Gnuradio::fft
|
||||
Volkgnsssdr::volkgnsssdr
|
||||
acquisition_libs
|
||||
)
|
||||
|
@ -34,7 +34,15 @@
|
||||
#include "configuration_interface.h"
|
||||
#include "galileo_e1_signal_processing.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/fft/fft.h> // for fft_complex
|
||||
#include <gnuradio/gr_complex.h> // for gr_complex
|
||||
#include <volk/volk.h> // for volk_32fc_conjugate_32fc
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for abs, pow, floor
|
||||
#include <complex> // for complex
|
||||
#include <cstring> // for memcpy
|
||||
|
||||
|
||||
GalileoE1PcpsAmbiguousAcquisitionFpga::GalileoE1PcpsAmbiguousAcquisitionFpga(
|
||||
|
@ -34,14 +34,15 @@
|
||||
|
||||
#include "acquisition_interface.h"
|
||||
#include "complex_byte_to_float_x2.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "pcps_acquisition_fpga.h"
|
||||
#include <gnuradio/blocks/float_to_complex.h>
|
||||
#include <gnuradio/blocks/stream_to_vector.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <gnuradio/runtime_types.h> // for basic_block_sptr, top_...
|
||||
#include <volk/volk_complex.h> // for lv_16sc_t
|
||||
#include <cstddef> // for size_t
|
||||
#include <string>
|
||||
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
|
@ -34,9 +34,15 @@
|
||||
#include "configuration_interface.h"
|
||||
#include "galileo_e5_signal_processing.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include <boost/math/distributions/exponential.hpp>
|
||||
#include "gnss_synchro.h"
|
||||
#include <glog/logging.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr_complex.h>
|
||||
#include <gnuradio/fft/fft.h> // for fft_complex
|
||||
#include <gnuradio/gr_complex.h> // for gr_complex
|
||||
#include <volk/volk.h> // for volk_32fc_conjugate_32fc
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for abs, pow, floor
|
||||
#include <complex> // for complex
|
||||
#include <cstring> // for strcpy, memcpy
|
||||
|
||||
|
||||
GalileoE5aPcpsAcquisitionFpga::GalileoE5aPcpsAcquisitionFpga(ConfigurationInterface* configuration,
|
||||
|
@ -34,12 +34,15 @@
|
||||
|
||||
|
||||
#include "acquisition_interface.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "pcps_acquisition_fpga.h"
|
||||
#include <gnuradio/blocks/stream_to_vector.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <gnuradio/runtime_types.h> // for basic_block_sptr, top_...
|
||||
#include <volk/volk_complex.h> // for lv_16sc_t
|
||||
#include <cstddef> // for size_t
|
||||
#include <cstdint>
|
||||
#include <string>
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
class GalileoE5aPcpsAcquisitionFpga : public AcquisitionInterface
|
||||
|
@ -36,10 +36,16 @@
|
||||
#include "GPS_L1_CA.h"
|
||||
#include "configuration_interface.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_sdr_signal_processing.h"
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/fft/fft.h>
|
||||
#include <new>
|
||||
#include <gnuradio/gr_complex.h> // for gr_complex
|
||||
#include <volk/volk.h> // for volk_32fc_conjugate_32fc
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for abs, pow, floor
|
||||
#include <complex> // for complex
|
||||
#include <cstring> // for memcpy
|
||||
|
||||
|
||||
#define NUM_PRNs 32
|
||||
|
@ -36,11 +36,13 @@
|
||||
#define GNSS_SDR_GPS_L1_CA_PCPS_ACQUISITION_FPGA_H_
|
||||
|
||||
#include "acquisition_interface.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "pcps_acquisition_fpga.h"
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <gnuradio/runtime_types.h> // for basic_block_sptr, top_block_sptr
|
||||
#include <volk/volk_complex.h> // for lv_16sc_t
|
||||
#include <cstddef>
|
||||
#include <string>
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
|
@ -35,9 +35,16 @@
|
||||
#include "GPS_L2C.h"
|
||||
#include "configuration_interface.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_l2c_signal.h"
|
||||
#include <boost/math/distributions/exponential.hpp>
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/fft/fft.h> // for fft_complex
|
||||
#include <gnuradio/gr_complex.h> // for gr_complex
|
||||
#include <volk/volk.h> // for volk_32fc_conjugate_32fc
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for abs, pow, floor
|
||||
#include <complex> // for complex
|
||||
#include <cstring> // for memcpy
|
||||
|
||||
#define NUM_PRNs 32
|
||||
|
||||
|
@ -36,14 +36,15 @@
|
||||
|
||||
#include "acquisition_interface.h"
|
||||
#include "complex_byte_to_float_x2.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "pcps_acquisition_fpga.h"
|
||||
#include <gnuradio/blocks/float_to_complex.h>
|
||||
#include <gnuradio/blocks/stream_to_vector.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <gnuradio/runtime_types.h>
|
||||
#include <volk/volk_complex.h> // for lv_16sc_t
|
||||
#include <cstddef>
|
||||
#include <string>
|
||||
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
|
@ -36,9 +36,16 @@
|
||||
#include "GPS_L5.h"
|
||||
#include "configuration_interface.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_l5_signal.h"
|
||||
#include <boost/math/distributions/exponential.hpp>
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/fft/fft.h> // for fft_complex
|
||||
#include <gnuradio/gr_complex.h> // for gr_complex
|
||||
#include <volk/volk.h> // for volk_32fc_conjugate_32fc
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for abs, pow, floor
|
||||
#include <complex> // for complex
|
||||
#include <cstring> // for memcpy
|
||||
|
||||
#define NUM_PRNs 32
|
||||
|
||||
|
@ -37,14 +37,15 @@
|
||||
|
||||
#include "acquisition_interface.h"
|
||||
#include "complex_byte_to_float_x2.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "pcps_acquisition_fpga.h"
|
||||
#include <gnuradio/blocks/float_to_complex.h>
|
||||
#include <gnuradio/blocks/stream_to_vector.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <gnuradio/runtime_types.h> // for basic_block_sptr, top_...
|
||||
#include <volk/volk_complex.h> // for lv_16sc_t
|
||||
#include <cstddef> // for size_t
|
||||
#include <string>
|
||||
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
|
@ -36,13 +36,22 @@
|
||||
#include "pcps_acquisition.h"
|
||||
#include "GLONASS_L1_L2_CA.h" // for GLONASS_TWO_PI
|
||||
#include "GPS_L1_CA.h" // for GPS_TWO_PI
|
||||
#include "gnss_frequencies.h"
|
||||
#include "gnss_sdr_create_directory.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <matio.h>
|
||||
#include <pmt/pmt.h> // for from_long
|
||||
#include <pmt/pmt_sugar.h> // for mp
|
||||
#include <volk/volk.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cstring>
|
||||
#include <algorithm> // for fill_n, min
|
||||
#include <cmath> // for floor, fmod, rint, ceil
|
||||
#include <cstring> // for memcpy
|
||||
#include <iostream>
|
||||
#include <map>
|
||||
|
||||
|
||||
pcps_acquisition_sptr pcps_make_acquisition(const Acq_Conf& conf_)
|
||||
|
@ -53,14 +53,17 @@
|
||||
#define GNSS_SDR_PCPS_ACQUISITION_H_
|
||||
|
||||
#include "acq_conf.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <armadillo>
|
||||
#include <gnuradio/block.h>
|
||||
#include <gnuradio/fft/fft.h>
|
||||
#include <volk/volk.h>
|
||||
#include <gnuradio/gr_complex.h> // for gr_complex
|
||||
#include <gnuradio/thread/thread.h> // for scoped_lock
|
||||
#include <gnuradio/types.h> // for gr_vector_const_void_star
|
||||
#include <volk/volk_complex.h> // for lv_16sc_t
|
||||
#include <cstdint>
|
||||
#include <string>
|
||||
|
||||
|
||||
class Gnss_Synchro;
|
||||
class pcps_acquisition;
|
||||
|
||||
using pcps_acquisition_sptr = boost::shared_ptr<pcps_acquisition>;
|
||||
|
@ -33,9 +33,15 @@
|
||||
|
||||
|
||||
#include "pcps_acquisition_fpga.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <utility>
|
||||
#include <pmt/pmt.h> // for from_long
|
||||
#include <pmt/pmt_sugar.h> // for mp
|
||||
#include <cmath> // for ceil
|
||||
#include <iostream> // for operator<<
|
||||
#include <utility> // for move
|
||||
|
||||
|
||||
#define AQ_DOWNSAMPLING_DELAY 40 // delay due to the downsampling filter in the acquisition
|
||||
|
||||
@ -133,7 +139,7 @@ void pcps_acquisition_fpga::set_state(int32_t state)
|
||||
void pcps_acquisition_fpga::send_positive_acquisition()
|
||||
{
|
||||
// Declare positive acquisition using a message port
|
||||
//0=STOP_CHANNEL 1=ACQ_SUCCEES 2=ACQ_FAIL
|
||||
// 0=STOP_CHANNEL 1=ACQ_SUCCEES 2=ACQ_FAIL
|
||||
DLOG(INFO) << "positive acquisition"
|
||||
<< ", satellite " << d_gnss_synchro->System << " " << d_gnss_synchro->PRN
|
||||
<< ", sample_stamp " << d_sample_counter
|
||||
|
@ -42,8 +42,15 @@
|
||||
|
||||
|
||||
#include "fpga_acquisition.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <gnuradio/block.h>
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <gnuradio/block.h> // for block
|
||||
#include <gnuradio/types.h> // for gr_vector_const_void_star
|
||||
#include <volk/volk_complex.h> // for lv_16sc_t
|
||||
#include <cstdint> // for uint32_t
|
||||
#include <memory> // for shared_ptr
|
||||
#include <string> // for string
|
||||
|
||||
class Gnss_Synchro;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
@ -78,9 +85,7 @@ pcps_make_acquisition_fpga(pcpsconf_fpga_t conf_);
|
||||
class pcps_acquisition_fpga : public gr::block
|
||||
{
|
||||
private:
|
||||
friend pcps_acquisition_fpga_sptr
|
||||
|
||||
pcps_make_acquisition_fpga(pcpsconf_fpga_t conf_);
|
||||
friend pcps_acquisition_fpga_sptr pcps_make_acquisition_fpga(pcpsconf_fpga_t conf_);
|
||||
|
||||
pcps_acquisition_fpga(pcpsconf_fpga_t conf_);
|
||||
|
||||
@ -115,10 +120,10 @@ public:
|
||||
~pcps_acquisition_fpga();
|
||||
|
||||
/*!
|
||||
* \brief Set acquisition/tracking common Gnss_Synchro object pointer
|
||||
* to exchange synchronization data between acquisition and tracking blocks.
|
||||
* \param p_gnss_synchro Satellite information shared by the processing blocks.
|
||||
*/
|
||||
* \brief Set acquisition/tracking common Gnss_Synchro object pointer
|
||||
* to exchange synchronization data between acquisition and tracking blocks.
|
||||
* \param p_gnss_synchro Satellite information shared by the processing blocks.
|
||||
*/
|
||||
inline void set_gnss_synchro(Gnss_Synchro* p_gnss_synchro)
|
||||
{
|
||||
d_gnss_synchro = p_gnss_synchro;
|
||||
@ -133,53 +138,53 @@ public:
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Initializes acquisition algorithm.
|
||||
*/
|
||||
* \brief Initializes acquisition algorithm.
|
||||
*/
|
||||
void init();
|
||||
|
||||
/*!
|
||||
* \brief Sets local code for PCPS acquisition algorithm.
|
||||
* \param code - Pointer to the PRN code.
|
||||
*/
|
||||
* \brief Sets local code for PCPS acquisition algorithm.
|
||||
* \param code - Pointer to the PRN code.
|
||||
*/
|
||||
void set_local_code();
|
||||
|
||||
/*!
|
||||
* \brief If set to 1, ensures that acquisition starts at the
|
||||
* first available sample.
|
||||
* \param state - int=1 forces start of acquisition
|
||||
*/
|
||||
* \brief If set to 1, ensures that acquisition starts at the
|
||||
* first available sample.
|
||||
* \param state - int=1 forces start of acquisition
|
||||
*/
|
||||
void set_state(int32_t state);
|
||||
|
||||
/*!
|
||||
* \brief Starts acquisition algorithm, turning from standby mode to
|
||||
* active mode
|
||||
* \param active - bool that activates/deactivates the block.
|
||||
*/
|
||||
* \brief Starts acquisition algorithm, turning from standby mode to
|
||||
* active mode
|
||||
* \param active - bool that activates/deactivates the block.
|
||||
*/
|
||||
void set_active(bool active);
|
||||
|
||||
/*!
|
||||
* \brief Set acquisition channel unique ID
|
||||
* \param channel - receiver channel.
|
||||
*/
|
||||
* \brief Set acquisition channel unique ID
|
||||
* \param channel - receiver channel.
|
||||
*/
|
||||
inline void set_channel(uint32_t channel)
|
||||
{
|
||||
d_channel = channel;
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Set statistics threshold of PCPS algorithm.
|
||||
* \param threshold - Threshold for signal detection (check \ref Navitec2012,
|
||||
* Algorithm 1, for a definition of this threshold).
|
||||
*/
|
||||
* \brief Set statistics threshold of PCPS algorithm.
|
||||
* \param threshold - Threshold for signal detection (check \ref Navitec2012,
|
||||
* Algorithm 1, for a definition of this threshold).
|
||||
*/
|
||||
inline void set_threshold(float threshold)
|
||||
{
|
||||
d_threshold = threshold;
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Set maximum Doppler grid search
|
||||
* \param doppler_max - Maximum Doppler shift considered in the grid search [Hz].
|
||||
*/
|
||||
* \brief Set maximum Doppler grid search
|
||||
* \param doppler_max - Maximum Doppler shift considered in the grid search [Hz].
|
||||
*/
|
||||
inline void set_doppler_max(uint32_t doppler_max)
|
||||
{
|
||||
acq_parameters.doppler_max = doppler_max;
|
||||
@ -187,22 +192,15 @@ public:
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Set Doppler steps for the grid search
|
||||
* \param doppler_step - Frequency bin of the search grid [Hz].
|
||||
*/
|
||||
* \brief Set Doppler steps for the grid search
|
||||
* \param doppler_step - Frequency bin of the search grid [Hz].
|
||||
*/
|
||||
inline void set_doppler_step(uint32_t doppler_step)
|
||||
{
|
||||
d_doppler_step = doppler_step;
|
||||
acquisition_fpga->set_doppler_step(doppler_step);
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Parallel Code Phase Search Acquisition signal processing.
|
||||
*/
|
||||
int general_work(int noutput_items, gr_vector_int& ninput_items,
|
||||
gr_vector_const_void_star& input_items,
|
||||
gr_vector_void_star& output_items);
|
||||
|
||||
/*!
|
||||
* \brief This funciton triggers a HW reset of the FPGA PL.
|
||||
*/
|
||||
@ -212,6 +210,13 @@ public:
|
||||
* \brief This funciton is only used for the unit tests
|
||||
*/
|
||||
void read_fpga_total_scale_factor(uint32_t* total_scale_factor, uint32_t* fw_scale_factor);
|
||||
|
||||
/*!
|
||||
* \brief Parallel Code Phase Search Acquisition signal processing.
|
||||
*/
|
||||
int general_work(int noutput_items, gr_vector_int& ninput_items,
|
||||
gr_vector_const_void_star& input_items,
|
||||
gr_vector_void_star& output_items);
|
||||
};
|
||||
|
||||
#endif /* GNSS_SDR_PCPS_ACQUISITION_FPGA_H_*/
|
||||
|
@ -37,7 +37,6 @@ add_library(acquisition_libs
|
||||
target_link_libraries(acquisition_libs
|
||||
PUBLIC
|
||||
Volk::volk
|
||||
Gnuradio::fft
|
||||
PRIVATE
|
||||
Gflags::gflags
|
||||
Glog::glog
|
||||
|
@ -1,16 +1,16 @@
|
||||
/*!
|
||||
* \file fpga_acquisition.cc
|
||||
* \brief High optimized FPGA vector correlator class
|
||||
* \brief Highly optimized FPGA vector correlator class
|
||||
* \authors <ul>
|
||||
* <li> Marc Majoral, 2019. mmajoral(at)cttc.cat
|
||||
* </ul>
|
||||
*
|
||||
* Class that controls and executes a high optimized acquisition HW
|
||||
* Class that controls and executes a highly optimized acquisition HW
|
||||
* accelerator in the FPGA
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
*
|
||||
* Copyright (C) 2010-2018 (see AUTHORS file for a list of contributors)
|
||||
* Copyright (C) 2010-2019 (see AUTHORS file for a list of contributors)
|
||||
*
|
||||
* GNSS-SDR is a software defined Global Navigation
|
||||
* Satellite Systems receiver
|
||||
@ -34,13 +34,14 @@
|
||||
*/
|
||||
|
||||
#include "fpga_acquisition.h"
|
||||
#include "GPS_L1_CA.h"
|
||||
#include "gps_sdr_signal_processing.h"
|
||||
#include <glog/logging.h>
|
||||
#include <fcntl.h> // libraries used by the GIPO
|
||||
#include <iostream>
|
||||
#include <sys/mman.h> // libraries used by the GIPO
|
||||
#include <utility>
|
||||
#include "GPS_L1_CA.h" // for GPS_TWO_PI
|
||||
#include <glog/logging.h> // for LOG
|
||||
#include <cmath> // for log2
|
||||
#include <fcntl.h> // libraries used by the GIPO
|
||||
#include <iostream> // for operator<<
|
||||
#include <sys/mman.h> // libraries used by the GIPO
|
||||
#include <unistd.h> // for write, close, read, ssize_t
|
||||
#include <utility> // for move
|
||||
|
||||
|
||||
// FPGA register parameters
|
||||
@ -75,26 +76,6 @@
|
||||
})
|
||||
#endif
|
||||
|
||||
bool Fpga_Acquisition::init()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool Fpga_Acquisition::set_local_code(uint32_t PRN)
|
||||
{
|
||||
// select the code with the chosen PRN
|
||||
d_PRN = PRN;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void Fpga_Acquisition::write_local_code()
|
||||
{
|
||||
Fpga_Acquisition::fpga_configure_acquisition_local_code(
|
||||
&d_all_fft_codes[d_nsamples_total * (d_PRN - 1)]);
|
||||
}
|
||||
|
||||
|
||||
Fpga_Acquisition::Fpga_Acquisition(std::string device_name,
|
||||
uint32_t nsamples,
|
||||
@ -132,6 +113,30 @@ Fpga_Acquisition::Fpga_Acquisition(std::string device_name,
|
||||
}
|
||||
|
||||
|
||||
Fpga_Acquisition::~Fpga_Acquisition() = default;
|
||||
|
||||
|
||||
bool Fpga_Acquisition::init()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool Fpga_Acquisition::set_local_code(uint32_t PRN)
|
||||
{
|
||||
// select the code with the chosen PRN
|
||||
d_PRN = PRN;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void Fpga_Acquisition::write_local_code()
|
||||
{
|
||||
Fpga_Acquisition::fpga_configure_acquisition_local_code(
|
||||
&d_all_fft_codes[d_nsamples_total * (d_PRN - 1)]);
|
||||
}
|
||||
|
||||
|
||||
void Fpga_Acquisition::open_device()
|
||||
{
|
||||
// open communication with HW accelerator
|
||||
@ -151,9 +156,6 @@ void Fpga_Acquisition::open_device()
|
||||
}
|
||||
|
||||
|
||||
Fpga_Acquisition::~Fpga_Acquisition() = default;
|
||||
|
||||
|
||||
bool Fpga_Acquisition::free()
|
||||
{
|
||||
return true;
|
||||
|
@ -1,11 +1,11 @@
|
||||
/*!
|
||||
* \file fpga_acquisition.h
|
||||
* \brief High optimized FPGA vector correlator class
|
||||
* \brief Highly optimized FPGA vector correlator class
|
||||
* \authors <ul>
|
||||
* <li> Marc Majoral, 2019. mmajoral(at)cttc.cat
|
||||
* </ul>
|
||||
*
|
||||
* Class that controls and executes a high optimized acquisition HW
|
||||
* Class that controls and executes a highly optimized acquisition HW
|
||||
* accelerator in the FPGA
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
@ -36,9 +36,9 @@
|
||||
#ifndef GNSS_SDR_FPGA_ACQUISITION_H_
|
||||
#define GNSS_SDR_FPGA_ACQUISITION_H_
|
||||
|
||||
#include <gnuradio/fft/fft.h>
|
||||
#include <volk/volk.h>
|
||||
#include <volk/volk_complex.h> // for lv_16sc_t
|
||||
#include <cstdint>
|
||||
#include <string>
|
||||
|
||||
/*!
|
||||
* \brief Class that implements carrier wipe-off and correlators.
|
||||
|
@ -35,7 +35,7 @@
|
||||
|
||||
#include <complex>
|
||||
#include <cstdint>
|
||||
#include <iostream>
|
||||
|
||||
|
||||
//! Generates int32_t GPS L1 C/A code for the desired SV ID and code shift
|
||||
void beidou_b1i_code_gen_int(int32_t* _dest, int32_t _prn, uint32_t _chip_shift);
|
||||
|
@ -33,12 +33,13 @@
|
||||
#include "gnss_synchro.h"
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <cinttypes>
|
||||
#include <cmath>
|
||||
#include <fcntl.h> // libraries used by the GIPO
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
#include <sys/mman.h> // libraries used by the GIPO
|
||||
#include <pmt/pmt.h> // for from_double
|
||||
#include <pmt/pmt_sugar.h> // for mp
|
||||
#include <cmath> // for round
|
||||
#include <fcntl.h> // for O_RDWR, libraries used by the GIPO
|
||||
#include <iostream> // for operator<<, endl
|
||||
#include <sys/mman.h> // libraries used by the GIPO
|
||||
#include <unistd.h> // for write, close, read, ssize_t
|
||||
|
||||
|
||||
#define PAGE_SIZE 0x10000 // default page size for the multicorrelator memory map
|
||||
|
@ -35,6 +35,7 @@
|
||||
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <gnuradio/block.h>
|
||||
#include <gnuradio/types.h> // for gr_vector_const_void_star
|
||||
#include <cstdint>
|
||||
#include <string>
|
||||
|
||||
|
@ -32,9 +32,11 @@
|
||||
#include "gnss_sdr_sample_counter.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <cmath>
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
#include <pmt/pmt.h> // for from_double
|
||||
#include <pmt/pmt_sugar.h> // for mp
|
||||
#include <cmath> // for round
|
||||
#include <iostream> // for operator<<
|
||||
#include <string> // for string
|
||||
|
||||
gnss_sdr_sample_counter::gnss_sdr_sample_counter(
|
||||
double _fs,
|
||||
|
@ -33,6 +33,8 @@
|
||||
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <gnuradio/sync_decimator.h>
|
||||
#include <gnuradio/types.h> // for gr_vector_const_void_star
|
||||
#include <cstddef> // for size_t
|
||||
#include <cstdint>
|
||||
|
||||
|
||||
|
@ -32,7 +32,6 @@
|
||||
#include "gnss_sdr_time_counter.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <cmath>
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
|
||||
|
@ -33,6 +33,7 @@
|
||||
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <gnuradio/block.h>
|
||||
#include <gnuradio/types.h> // for gr_vector_const_void_star
|
||||
#include <cstdint>
|
||||
|
||||
class gnss_sdr_time_counter;
|
||||
|
@ -33,11 +33,9 @@
|
||||
|
||||
#include "beidou_b1i_telemetry_decoder_gs.h"
|
||||
#include "Beidou_B1I.h"
|
||||
#include "beidou_dnav_almanac.h"
|
||||
#include "beidou_dnav_ephemeris.h"
|
||||
#include "beidou_dnav_iono.h"
|
||||
#include "beidou_dnav_utc_model.h"
|
||||
#include "convolutional.h"
|
||||
#include "display.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/io_signature.h>
|
||||
@ -321,8 +319,12 @@ void beidou_b1i_telemetry_decoder_gs::set_satellite(const Gnss_Satellite &satell
|
||||
volk_gnsssdr_free(d_secondary_code_symbols);
|
||||
volk_gnsssdr_free(d_subframe_symbols);
|
||||
|
||||
d_samples_per_symbol = (BEIDOU_B1I_CODE_RATE_HZ / BEIDOU_B1I_CODE_LENGTH_CHIPS) / BEIDOU_D2NAV_SYMBOL_RATE_SPS;
|
||||
d_symbols_per_preamble = BEIDOU_DNAV_PREAMBLE_LENGTH_SYMBOLS;
|
||||
d_samples_per_preamble = BEIDOU_DNAV_PREAMBLE_LENGTH_SYMBOLS * d_samples_per_symbol;
|
||||
d_secondary_code_symbols = nullptr;
|
||||
d_preamble_samples = static_cast<int32_t *>(volk_gnsssdr_malloc(d_samples_per_preamble * sizeof(int32_t), volk_gnsssdr_get_alignment()));
|
||||
d_preamble_period_samples = BEIDOU_DNAV_PREAMBLE_PERIOD_SYMBOLS * d_samples_per_symbol;
|
||||
|
||||
// Setting samples of preamble code
|
||||
int32_t n = 0;
|
||||
|
@ -33,18 +33,11 @@
|
||||
#define GNSS_SDR_GALILEO_TELEMETRY_DECODER_GS_H
|
||||
|
||||
|
||||
//#include "Galileo_E1.h"
|
||||
//#include "Galileo_E5a.h"
|
||||
//#include "galileo_almanac_helper.h"
|
||||
//#include "galileo_ephemeris.h"
|
||||
#include "galileo_fnav_message.h"
|
||||
#include <boost/shared_ptr.hpp> // for boost::shared_ptr
|
||||
#include <gnuradio/types.h> // for gr_vector_const_void_star
|
||||
//#include "galileo_iono.h"
|
||||
#include "galileo_navigation_message.h"
|
||||
//#include "galileo_utc_model.h"
|
||||
#include "gnss_satellite.h"
|
||||
//#include "gnss_synchro.h"
|
||||
#include <boost/circular_buffer.hpp>
|
||||
#include <gnuradio/block.h>
|
||||
#include <fstream>
|
||||
|
@ -30,7 +30,6 @@
|
||||
*/
|
||||
|
||||
#include "gps_l1_ca_telemetry_decoder_gs.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_ephemeris.h" // for Gps_Ephemeris
|
||||
#include "gps_iono.h" // for Gps_Iono
|
||||
#include "gps_utc_model.h" // for Gps_Utc_Model
|
||||
|
@ -32,11 +32,10 @@
|
||||
#define GNSS_SDR_SBAS_L1_TELEMETRY_DECODER_GS_H
|
||||
|
||||
#include "gnss_satellite.h"
|
||||
#include <boost/crc.hpp>
|
||||
#include <boost/crc.hpp> // for crc_optimal
|
||||
#include <boost/shared_ptr.hpp> // for boost::shared_ptr
|
||||
#include <gnuradio/block.h>
|
||||
#include <gnuradio/types.h> // for gr_vector_const_void_star
|
||||
#include <algorithm> // for copy
|
||||
#include <cstddef> // for size_t
|
||||
#include <cstdint>
|
||||
#include <deque>
|
||||
|
@ -98,6 +98,7 @@ target_link_libraries(tracking_adapters
|
||||
tracking_gr_blocks
|
||||
algorithms_libs
|
||||
gnss_sdr_flags
|
||||
Gnuradio::runtime
|
||||
PRIVATE
|
||||
Volkgnsssdr::volkgnsssdr
|
||||
)
|
||||
|
@ -38,10 +38,15 @@
|
||||
#include "Galileo_E1.h"
|
||||
#include "configuration_interface.h"
|
||||
#include "display.h"
|
||||
#include "dll_pll_conf_fpga.h"
|
||||
#include "galileo_e1_signal_processing.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <glog/logging.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for round
|
||||
#include <cstring> // for memcpy
|
||||
#include <iostream> // for operator<<,
|
||||
|
||||
|
||||
GalileoE1DllPllVemlTrackingFpga::GalileoE1DllPllVemlTrackingFpga(
|
||||
|
@ -39,9 +39,12 @@
|
||||
|
||||
#include "dll_pll_veml_tracking_fpga.h"
|
||||
#include "tracking_interface.h"
|
||||
#include <gnuradio/runtime_types.h> // for basic_block_sptr, top_block_...
|
||||
#include <cstddef> // for size_t
|
||||
#include <cstdint>
|
||||
#include <string>
|
||||
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
|
@ -33,10 +33,17 @@
|
||||
#include "Galileo_E5a.h"
|
||||
#include "configuration_interface.h"
|
||||
#include "display.h"
|
||||
#include "dll_pll_conf_fpga.h"
|
||||
#include "galileo_e5_signal_processing.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/gr_complex.h> // for gr_complex
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for round
|
||||
#include <complex>
|
||||
#include <cstring> // for memcpy
|
||||
#include <iostream>
|
||||
|
||||
|
||||
GalileoE5aDllPllTrackingFpga::GalileoE5aDllPllTrackingFpga(
|
||||
|
@ -34,9 +34,12 @@
|
||||
|
||||
#include "dll_pll_veml_tracking_fpga.h"
|
||||
#include "tracking_interface.h"
|
||||
#include <string>
|
||||
#include <gnuradio/runtime_types.h> // for basic_block_sptr
|
||||
#include <cstdint>
|
||||
#include <stddef.h> // for size_t
|
||||
#include <string>
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
|
@ -38,10 +38,15 @@
|
||||
#include "GPS_L1_CA.h"
|
||||
#include "configuration_interface.h"
|
||||
#include "display.h"
|
||||
#include "dll_pll_conf_fpga.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_sdr_signal_processing.h"
|
||||
#include <glog/logging.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for round
|
||||
#include <cstring> // for memcpy
|
||||
#include <iostream>
|
||||
|
||||
#define NUM_PRNs 32
|
||||
|
||||
|
@ -39,9 +39,12 @@
|
||||
|
||||
#include "dll_pll_veml_tracking_fpga.h"
|
||||
#include "tracking_interface.h"
|
||||
#include <gnuradio/runtime_types.h>
|
||||
#include <cstddef>
|
||||
#include <string>
|
||||
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
|
@ -39,10 +39,16 @@
|
||||
#include "GPS_L2C.h"
|
||||
#include "configuration_interface.h"
|
||||
#include "display.h"
|
||||
#include "dll_pll_conf_fpga.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_l2c_signal.h"
|
||||
#include <glog/logging.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for round
|
||||
#include <cstring> // for memcpy
|
||||
#include <iostream>
|
||||
|
||||
|
||||
#define NUM_PRNs 32
|
||||
|
||||
|
@ -37,11 +37,13 @@
|
||||
#ifndef GNSS_SDR_gps_l2_m_dll_pll_tracking_FPGA_H_
|
||||
#define GNSS_SDR_gps_l2_m_dll_pll_tracking_FPGA_H_
|
||||
|
||||
#include "tracking_interface.h"
|
||||
//#include "dll_pll_veml_tracking.h"
|
||||
#include "dll_pll_veml_tracking_fpga.h"
|
||||
#include "tracking_interface.h"
|
||||
#include <gnuradio/runtime_types.h>
|
||||
#include <cstddef>
|
||||
#include <string>
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
|
@ -40,10 +40,15 @@
|
||||
#include "GPS_L5.h"
|
||||
#include "configuration_interface.h"
|
||||
#include "display.h"
|
||||
#include "dll_pll_conf_fpga.h"
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_l5_signal.h"
|
||||
#include <glog/logging.h>
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <cmath> // for round
|
||||
#include <cstring> // for memcpy
|
||||
#include <iostream>
|
||||
|
||||
#define NUM_PRNs 32
|
||||
|
||||
|
@ -40,8 +40,12 @@
|
||||
|
||||
#include "dll_pll_veml_tracking_fpga.h"
|
||||
#include "tracking_interface.h"
|
||||
#include <gnuradio/runtime_types.h>
|
||||
#include <cstddef>
|
||||
#include <cstdint>
|
||||
#include <string>
|
||||
|
||||
class Gnss_Synchro;
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
|
@ -45,6 +45,7 @@
|
||||
#include "beidou_b1i_signal_processing.h"
|
||||
#include "galileo_e1_signal_processing.h"
|
||||
#include "galileo_e5_signal_processing.h"
|
||||
#include "gnss_satellite.h"
|
||||
#include "gnss_sdr_create_directory.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_l2c_signal.h"
|
||||
@ -61,9 +62,11 @@
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <algorithm> // for fill_n
|
||||
#include <cmath> // for fmod, round, floor
|
||||
#include <complex> // for complex
|
||||
#include <cstdlib> // for abs, size_t
|
||||
#include <exception> // for exception
|
||||
#include <iostream> // for cout, cerr
|
||||
#include <map>
|
||||
#include <map> // for map
|
||||
|
||||
|
||||
dll_pll_veml_tracking_sptr dll_pll_veml_make_tracking(const Dll_Pll_Conf &conf_)
|
||||
|
@ -44,8 +44,10 @@
|
||||
#include <pmt/pmt.h> // for pmt_t
|
||||
#include <cstdint> // for int32_t
|
||||
#include <fstream> // for string, ofstream
|
||||
#include <string> // for string
|
||||
#include <utility> // for pair
|
||||
|
||||
|
||||
class Gnss_Synchro;
|
||||
class dll_pll_veml_tracking;
|
||||
|
||||
|
@ -41,25 +41,25 @@
|
||||
#include "Galileo_E1.h"
|
||||
#include "Galileo_E5a.h"
|
||||
#include "MATH_CONSTANTS.h"
|
||||
#include "galileo_e1_signal_processing.h"
|
||||
#include "galileo_e5_signal_processing.h"
|
||||
#include "fpga_multicorrelator.h"
|
||||
#include "gnss_satellite.h"
|
||||
#include "gnss_sdr_create_directory.h"
|
||||
#include "gps_l2c_signal.h"
|
||||
#include "gps_l5_signal.h"
|
||||
#include "gps_sdr_signal_processing.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "lock_detectors.h"
|
||||
#include "tracking_discriminators.h"
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/io_signature.h>
|
||||
#include <matio.h>
|
||||
#include <pmt/pmt_sugar.h> // for mp
|
||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||
#include <algorithm>
|
||||
#include <cmath>
|
||||
#include <complex>
|
||||
#include <cstdlib> // for abs, size_t
|
||||
#include <exception>
|
||||
#include <iostream>
|
||||
#include <numeric>
|
||||
#include <sstream>
|
||||
#include <map>
|
||||
|
||||
|
||||
dll_pll_veml_tracking_fpga_sptr dll_pll_veml_make_tracking_fpga(const Dll_Pll_Conf_Fpga &conf_)
|
||||
|
@ -33,18 +33,23 @@
|
||||
#define GNSS_SDR_DLL_PLL_VEML_TRACKING_FPGA_H
|
||||
|
||||
#include "dll_pll_conf_fpga.h"
|
||||
#include "fpga_multicorrelator.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "tracking_2nd_DLL_filter.h"
|
||||
#include "tracking_2nd_PLL_filter.h"
|
||||
#include <boost/circular_buffer.hpp>
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <gnuradio/block.h>
|
||||
#include <fstream>
|
||||
#include <map>
|
||||
#include <queue>
|
||||
#include <gnuradio/gr_complex.h> // for gr_complex
|
||||
#include <gnuradio/types.h> // for gr_vector_const_void_star
|
||||
#include <pmt/pmt.h> // for pmt_t
|
||||
#include <cstdint>
|
||||
#include <deque> // for deque
|
||||
#include <fstream> // for ofstream
|
||||
#include <memory> // for shared_ptr
|
||||
#include <string>
|
||||
#include <utility>
|
||||
//#include <string>
|
||||
|
||||
class Fpga_Multicorrelator_8sc;
|
||||
class Gnss_Synchro;
|
||||
class dll_pll_veml_tracking_fpga;
|
||||
|
||||
using dll_pll_veml_tracking_fpga_sptr = boost::shared_ptr<dll_pll_veml_tracking_fpga>;
|
||||
|
@ -31,6 +31,7 @@
|
||||
|
||||
#include "nmea_printer.h"
|
||||
#include "rtklib_rtkpos.h"
|
||||
#include "rtklib_solver.h"
|
||||
#include <cstdio>
|
||||
#include <fstream>
|
||||
#include <string>
|
||||
|
@ -30,20 +30,21 @@
|
||||
*/
|
||||
|
||||
#include "front_end_cal.h"
|
||||
#include "GPS_L1_CA.h" // for GPS_L1_FREQ_HZ
|
||||
#include "concurrent_map.h"
|
||||
#include "configuration_interface.h"
|
||||
#include "gnss_sdr_supl_client.h"
|
||||
#include "gps_acq_assist.h" // for Gps_Acq_Assist
|
||||
#include "gps_almanac.h"
|
||||
#include "gps_cnav_ephemeris.h"
|
||||
#include "gps_cnav_iono.h"
|
||||
#include "gps_ephemeris.h"
|
||||
#include "gps_iono.h"
|
||||
#include "gps_navigation_message.h"
|
||||
#include "gps_utc_model.h"
|
||||
#include <boost/lexical_cast.hpp>
|
||||
#include <glog/logging.h>
|
||||
#include <algorithm> // for min
|
||||
#include <cmath>
|
||||
#include <exception>
|
||||
#include <memory>
|
||||
#include <iostream> // for operator<<
|
||||
#include <map>
|
||||
#include <utility>
|
||||
|
||||
extern Concurrent_Map<Gps_Ephemeris> global_gps_ephemeris_map;
|
||||
|
@ -32,9 +32,11 @@
|
||||
#ifndef GNSS_SDR_FRONT_END_CAL_H_
|
||||
#define GNSS_SDR_FRONT_END_CAL_H_
|
||||
|
||||
#include "file_configuration.h"
|
||||
#include <armadillo>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
class ConfigurationInterface;
|
||||
|
||||
class FrontEndCal
|
||||
{
|
||||
|
@ -32,51 +32,57 @@
|
||||
#define FRONT_END_CAL_VERSION "0.0.1"
|
||||
#endif
|
||||
|
||||
#include "GPS_L1_CA.h" // for GPS_L1_CA_COD...
|
||||
#include "concurrent_map.h"
|
||||
#include "concurrent_queue.h"
|
||||
#include "configuration_interface.h" // for Configuration...
|
||||
#include "file_configuration.h"
|
||||
#include "front_end_cal.h"
|
||||
#include "galileo_almanac.h"
|
||||
#include "galileo_ephemeris.h"
|
||||
#include "galileo_iono.h"
|
||||
#include "galileo_utc_model.h"
|
||||
#include "gnss_block_factory.h"
|
||||
#include "gnss_block_interface.h" // for GNSSBlockInte...
|
||||
#include "gnss_sdr_flags.h"
|
||||
#include "gnss_sdr_supl_client.h"
|
||||
#include "gnss_signal.h"
|
||||
#include "gnss_synchro.h"
|
||||
#include "gps_acq_assist.h" // for Gps_Acq_Assist
|
||||
#include "gps_almanac.h"
|
||||
#include "gps_cnav_ephemeris.h"
|
||||
#include "gps_cnav_iono.h"
|
||||
#include "gps_ephemeris.h"
|
||||
#include "gps_iono.h"
|
||||
#include "gps_l1_ca_pcps_acquisition_fine_doppler.h"
|
||||
#include "gps_navigation_message.h"
|
||||
#include "gps_utc_model.h"
|
||||
#include "sbas_ephemeris.h"
|
||||
#include <boost/exception/detail/exception_ptr.hpp>
|
||||
#include <boost/any.hpp> // for bad_any_cast
|
||||
#include <boost/bind.hpp>
|
||||
#include <boost/exception/exception.hpp>
|
||||
#include <boost/filesystem.hpp>
|
||||
#include <boost/lexical_cast.hpp>
|
||||
#include <gflags/gflags.h>
|
||||
#include <glog/logging.h>
|
||||
#include <gnuradio/block.h> // for block
|
||||
#include <gnuradio/blocks/file_sink.h>
|
||||
#include <gnuradio/blocks/file_source.h>
|
||||
#include <gnuradio/blocks/head.h>
|
||||
#include <gnuradio/blocks/null_sink.h>
|
||||
#include <gnuradio/blocks/skiphead.h>
|
||||
#include <gnuradio/gr_complex.h> // for gr_complex
|
||||
#include <gnuradio/io_signature.h> // for io_signature
|
||||
#include <gnuradio/msg_queue.h>
|
||||
#include <gnuradio/runtime_types.h> // for block_sptr
|
||||
#include <gnuradio/top_block.h>
|
||||
#include <pmt/pmt.h> // for pmt_t, to_long
|
||||
#include <pmt/pmt_sugar.h> // for mp
|
||||
#include <chrono>
|
||||
#include <cmath> // for round
|
||||
#include <cstdint>
|
||||
#include <cstdlib>
|
||||
#include <ctime> // for ctime
|
||||
#include <exception>
|
||||
#include <iostream>
|
||||
#include <map>
|
||||
#include <memory>
|
||||
#include <queue>
|
||||
#include <stdexcept> // for logic_error
|
||||
#include <string>
|
||||
#include <thread>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
|
||||
DECLARE_string(log_dir);
|
||||
|
||||
Concurrent_Map<Gps_Ephemeris> global_gps_ephemeris_map;
|
||||
|
@ -29,10 +29,10 @@
|
||||
clearvars;
|
||||
close all;
|
||||
addpath('./libs');
|
||||
samplingFreq = 6625000; %[Hz]
|
||||
channels=5;
|
||||
path='/archive/';
|
||||
observables_log_path=[path 'glo_observables.dat'];
|
||||
samplingFreq = 25000000; %[Hz]
|
||||
channels=10;
|
||||
path='/home/dmiralles/Documents/gnss-sdr/';
|
||||
observables_log_path=[path 'observables.dat'];
|
||||
GNSS_observables= read_hybrid_observables_dump(channels,observables_log_path);
|
||||
|
||||
%%
|
||||
|
Loading…
Reference in New Issue
Block a user