GNSS Documentation¶
Link to module repo: GNSS
Overview¶
We use a RTK receiver from ardusimple with centimeter resolution when using NTRIP server. The two ZED-FP9 modules must be configured in Moving Baseline Heading Setup. The data from the built-in module u-blox ZED-F9P is handled by a ROS node, see ublox_dgnss. This node publishes two messages:
sensor_msg::msg::NavSatFix(position)ublox_ubx_msgs::msg::UBXNavRelPosNED(heading)
The position is given in latitude and longitude in degrees together with altitude in meters above the WGS 84 ellipsoid. Heading information tells us about the angular direction of the robot. For this purpose you have to place two antennas on the robot which have a certain distance to each other. The position and heading data can be processed by the gnss blocks within this repository.
Preparations¶
Download the ROS node from ublox_dgnss and build it using your ROS2 installation.
Block for Positional Data¶
This block includes three other blocks.
The first block subscribes to the ROS2 gnss node on topix /fix. This signal is then transformed into LV95 reference frame for Switzerland. The point of origin (or zero point) is located in Bern. The coordinates of this point are E = 2,600,000 m (east) and N = 1,200,000 m (north). The final tf block accounts for the actual positioning of the antennas. This block outputs - out: Vector3 position in LV95 reference frame - posCovariance: covariance matrix 3x3 of the position
Block for Heading Data¶
This block includes two other blocks.
The first block subscribes to the ROS2 GNSS node on topix /ubx_nav_rel_pos_ned. This signal is then transformed into an angle measured in radian. The output of the block is a Vector2 with [heading, accuracy].
Configuration¶
The global configuration holds a node with keyword {gnss}. The configuration serves to set an initial position and an initial covariance matrix for the position. It further supplies a scale for heading angle to be in radian. The offset describes the correction of the heading angle in relation to the robot zero orientation.