class mrpt::hwdrivers::CGPS_NTRIP

A combination of GPS receiver + NTRIP receiver capable of submitting GGA frames to enable RTCM 3.0.

This class holds instances of two classes, publicly exposed as member variables:

and acts as a “joint sensor”, calling both objects’ doProcess() inside the doProcess() loop, etc.

The goal of this class is automatically gather GGA frames from the gps sensor and upload them to the NTRIP server.

Configuration file format is a combination of the original parameters for both classes, each with a prefix: "gps_ for CGPSInterface params and ntrip_ for CNTRIPEmitter.

 PARAMETERS IN THE ".INI"-LIKE CONFIGURATION STRINGS:
-------------------------------------------------------
  [supplied_section_name]
   gps_COM_port_WIN = COM3
   gps_COM_port_LIN = ttyS0
   gps_baudRate     = 4800   // The baudrate of the communications (typ.
4800 bauds)
   gps_pose_x       = 0      // 3D position of the sensed point relative to
the robot (meters)
   gps_pose_y       = 0
   gps_pose_z       = 0
   # Other params (see CGPSInterface)

   ntrip_COM_port_WIN = COM1         // Serial port where the NTRIP stream
will be dumped to.
   ntrip_COM_port_LIN = ttyUSB0
   ntrip_baudRate     = 38400

   ntrip_server   = 143.123.9.129    // NTRIP caster IP
   ntrip_port     = 2101
   ntrip_mountpoint = MYPOINT23
   #ntrip_user = pepe            // User & password optional.
   #ntrip_password = loco

The next picture summarizes existing MRPT classes related to GPS / GNSS devices (CGPSInterface, CNTRIPEmitter, CGPS_NTRIP):

mrpt_gps_classes_usage.png

Verbose debug info will be dumped to cout if the environment variable “MRPT_HWDRIVERS_VERBOSE” is set to “1”, or if you call CGenericSensor::enableVerbose(true)

See also:

CGPSInterface, CNTRIPEmitter

#include <mrpt/hwdrivers/CGPS_NTRIP.h>

class CGPS_NTRIP: public mrpt::hwdrivers::CGenericSensor
{
public:
    //
fields

    mrpt::hwdrivers::CGPSInterface gps;
    mrpt::hwdrivers::CNTRIPEmitter ntrip;

    //
methods

    virtual void doProcess();
    virtual void initialize();
};

Inherited Members

public:
    //
methods

    CGenericSensor& operator = (const CGenericSensor&);
    virtual void doProcess() = 0;

Methods

virtual void doProcess()

This method will be invoked at a minimum rate of “process_rate” (Hz)

Parameters:

This

method must throw an exception with a descriptive message if some critical error is found.

virtual void initialize()

This method can or cannot be implemented in the derived class, depending on the need for it.

Parameters:

This

method must throw an exception with a descriptive message if some critical error is found.