DGPS

From PaparazziUAV
Revision as of 06:27, 4 March 2017 by Xp31 (talk | contribs)
Jump to navigation Jump to search

This a working draft

The principle

The Differential GPS present here is based on the Ublox chip M8P. There are two types of Ublox M8P:

  • NEO-M8P-0: acting as the rover (mobile)
  • NEO-M8P-2: acting as the rover (mobile) or as the ground station

The NEO-M8P-2 acting as the ground station must know its position. This can be done by locating the ground antenna to a know position and set the Ublox to this position, or setting the Ublox to send its estimated position after a given converging time and precision.

When running the Ublox ground station acquire observation data and output them with its position to the NEO-M8P rover (mobile).

The ground station output three messages types of the RTCM3 standard to the rover (mobile):

  • RTCM3.2 1005 : Ground station position
  • RTCM3.2 1077 : GPS observation data
  • RTCM3.2 1087 : Beidou observation data

The NEO-M8P acting as a rover (mobile) computes the station position with the data received from the ground. By comparing the computed position with the position received, the rover deduce the error to take into account to estimate its position from its own observation data.


Implementation

Ublox systems integration: we use gps boards from DROTEK. The boards are very small, and equiped with USB and UART. The antenna are active ones from Tallisman.

Datalink: to not duplicate radio links the ground and board Ublox use the paparazzi telemetry.

  • on the ground side, the NEO-M8OP-2 is connected to the laptop using the USB connector (should be /dev/ttyAVCMX). The "rtcm2ivy" ground application (sw/ground_segment/misc/rtcm2ivy) broadcast the RTCM data from the ground ublox to the IVY bus. The paparazzi server (sw/ground_segment/tmtc/server) gets the data from the IVY bus and send it to the rover (mobiles) using the telemetry (sw/ground_segment/tmtc/link -d /dev/paparazzi/xbee -transport xbee -s 57600)
  • on the rover (mobile) side, the NEO-M8P is connected to the autopilot using the UART. The ublox input RTCM3 message coming from the ground, and output UBX (position) messages to the autopilot.


Ublox Configuration

Ublox provides a Windows application (U-CENTER) to upgrade and configure the Ublox chips. The NEO-M8P requires at least the U-CENTER V8.24. In a linux environment this version needs to be run in a Windows virtual machine. Previous version (ex.V8.16) that could be run with Linux/Wine are not compatible for the NEO-M8P. It is recommended to configure also the on board Ublox with U-CENTER tools, as the modules/gps/gps_ubx_ucenter is not working for the moment.

Ground station ublox

  • Check firmware "view / Messages View / UBX / MON (Monitor) / VER (version)"
  • Set output messages "view / Configuration View / Msg (Messages)": UART1, USB : F5-05 RTCM3.2 1005 (send), F5-4D RTCM3.2 1077 (send), F5-4D RTCM3.2 1087 (send) (CFG send)


Paparazzi Configuration

   <module name="gps" type="ublox">
     <configure name="GPS_BAUD" value="B115200"/>
   </module>
   <define name="USE_GPS_UBX_RTCM" value="TRUE"/>