Page 1
Vision-RTK 2 Fixposition Positioning Sensor INTEGRATION MANUAL VERSION 2.0.7 Abstract: This document explains how to integrate the Vision-RTK 2 positioning sensor into a host system and provides comprehensive details on how to configure it to obtain the maximum positioning accuracy. www.fixposition.com precise global positioning everywhere support@fixposition.com...
Document information Title Vision-RTK 2 Subtitle Fixposition Vision-RTK 2 Positioning Sensor Document type Integration manual Version number 2.0.7 Published Date May 8, 2023 Disclosure restriction Confidential/NDA Product status Engineering sample Content status Data based on early testing. Revised and supplementary data will be published later...
Real Time Kinematics Library RTCM Radio Technical Commission for Maritime Services SubMiniature version A Transmission Control Protocol UART Universal Asynchronous Receiver-Transmitter Unmanned Aerial Vehicle Universal Serial Bus Universal Time Coordinate Virtual Reference Station VRTK2 Vision-RTK 2 WGS-84 World Geodetic System 1984...
WEEE Notice If you purchased your Vision-RTK 2 product in Europe, please return it to your dealer or supplier at the end of its life. The objectives of Fixposition’s environment policy are, in particular, to preserve, protect and improve the quality of the environment, protect human health, and utilize natural resources prudently and rationally.
To maintain compliance with the limits of a Class B digital device, you must use shielded interface cables. The Vision-RTK 2 has been authorized for use in Mobile applications. At least 20 cm (8 in) of separation between the Vision-RTK 2 and the User must be maintained at all times.
HAPTER System description 2.1. Overview The Vision-RTK 2 is a high-end sensor fusion solution that provides real-time high-accuracy pose information in all scenarios, including GNSS degraded and denied environments. The system includes two multi-frequency Real-Time Kinematics (RTK) GNSS receivers for instant heading calculation after initialization, an embedded camera, and an Iner- tial Motion Unit (IMU) to provide continuous high-accuracy positioning even in extended GNSS outages.
GNSS outages. 2.3. Supported dynamics models Vision-RTK 2 supports several navigation modes to adjust to different platforms’ specific dynamics. These modes capture the data streams from the selected vehicle type and tune the sensor fusion algorithm to improve performance based on the platform restric- tions.
HAPTER Technical Information 3.1. System indicators The Vision-RTK 2 has three LEDs to indicate the current status of the sensor. Green: System running Amber: System activity (intermittent blinking) Red: Not in use 3.2. Physical connectors 3.2.1. Connectors overview Figure 3.1.: Vision-RTK 2 connectors overview...
M8 8-pin female M8 8-pin male T-568A Figure 3.2.: Ethernet connector standard Note: The Vision-RTK 2 exists in two variants. Variants manufactured before October 2022 were equipped with male connectors on the sensor, and future sensors will contain female connectors. 3.2.3. I/O connector Connector Cable 1 Red...
Main power input Table 3.3.: Power connector pin definition 3.2.6. GNSS connector The Vision-RTK 2 contains two GNSS receivers that can connect to an antenna via the female SMA connectors labeled GNSS 1 and GNSS 2. 3.2.7. Wi-Fi connector The Vision-RTK 2 can significantly increase its Wi-Fi range by connecting a Wi-Fi antenna to the female RP-SMA connector labeled Wi-Fi.
3.2.8. USB (Type-C) The Vision-RTK 2 contains a USB-C port to connect an external drive for data recording (see 5.9). After FW 2.63, the user can also use this port to access the recovery mode. (see 5.2.5). 3.2.9. Sensor frame The origin of the sensor’s reference frame is on top of the Fixposition logo.
HAPTER Installation Guidelines 4.1. Sensor setup requirements For the proper functioning and optimal performance of the Vision-RTK 2, the user must fulfill the following setup requirements: Mount the Vision-RTK 2 firmly/rigidly to the vehicle’s body. Attach the GNSS antennas to the same rigid body as the VRTK, their relative posi- tions must remain unchanged.
Assess whether incorporating this data benefits you. Consider the camera FOV data when integrating the sensor (See Appendix D). The Vision-RTK 2’s performance is not affected by whether the sensor is facing backward or forward in the direction of movement.
10.0.2.1 with a direct Ethernet connection. These IP addresses only apply when no intermediary device, such as a router, is in use. Figure 5.1 presents an overview of the web interface content. In the Wi-Fi case, the SSID is the UID of the Vision-RTK 2, and the default password is “1234567890”.
Page 19
8° 27' 2.1148" E 0.002 m 446.69m 0.001 m 0.17º yaw Orientation 0.01º pitch 0.02º roll IMU bias estimation Converged Low IMU noise IMU signal quality Figure 5.2.: Home page of the web interface Vision-RTK 2 | Fixposition Positioning Sensor...
Currently, we only support one band at a time, meaning the access point and the hotspot should operate at the same frequency. Figure 5.4.: Wi-Fi interface configuration options The table below summarizes all available network configurations for the Vision-RTK 2: Network Sensor IP...
While the web interface is open in a client browser: 8.8.8.8 – Checking internet connectivity. The web interface (i.e., the client browser, not the VRTK2 itself) connects to: api.mapbox.com - Map data used on the Fusion status page. Vision-RTK 2 | Fixposition Positioning Sensor...
5.2.6. Time synchronization There are two options: 1. Use NTP protocol over the network. The Vision-RTK 2 has a built-in NTP server (port 123). You can use that to synchronize your system clock to the very accurate system clock of the Vision-RTK 2.
Page 24
Time mark: The time mark accurately measures the time a pulse is detected on pin 6 and outputs a timestamp message on port 20010. At most, the maximum time mark frequency is 5 Hz. Vision-RTK 2 | Fixposition Positioning Sensor...
RTCM3 messages Figure 5.6.: Input/output system overview The Vision-RTK 2 provides multiple input and output data stream options. This section provides an overview of the I/O system. Note the distinction between: Port: Physical (e.g., UART) or logical (e.g., network socket) connection endpoint.
The user can input the wheelspeed sensor and RTCM3 correction data streams into the Vision-RTK 2 via UART (see Section 5.7 and Section 5.4, respectively). The Vision-RTK can stream the output messages (e.g., FP odometry) via UART (see Subsection 5.3.4).
Page 27
The CAN streaming only inputs the wheelspeed signals in the current software version. Future releases will introduce more functionalities. Please see 5.7.1 for further configu- ration of the wheelspeed sensor signals over the CAN bus. Vision-RTK 2 | Fixposition Positioning Sensor...
Output translation: Translation vector in [m] from the sensor frame to the POI. Range: -100.0-100.0. Output rotation: Rotation from the sensor frame to the POI using ZYX Euler angles (yaw-pitch-roll) in degrees. Range: -180.0-180.0”. Vision-RTK 2 | Fixposition Positioning Sensor...
TCP3 TCP4 CANSTR FP_A-GNSSANT UART1 UART2 TCP0 TCP1 TCP2 TCP3 TCP4 CANSTR FP_A-GNSSCORR UART1 UART2 TCP0 TCP1 TCP2 TCP3 TCP4 CANSTR Save and apply Revert to current Disable all Figure 5.12.: Output message configuration Vision-RTK 2 | Fixposition Positioning Sensor...
Page 31
Fusion output frequency real output frequency theoretical output frequency output rate Output messages Fusion output UART1 UART2 TCP0 TCP1 TCP2 TCP3 TCP4 CANSTR FP_A-ODOMETRY Figure 5.13.: An example of setting up the output rate Vision-RTK 2 | Fixposition Positioning Sensor...
TCP ports or one of the two serial ports available on the Vision-RTK 2. Note that the user can visualize the number of bytes, messages, and errors received through any port in the "I/O status" field found in the "System Info"...
Page 33
Note that changes to the CAN interface configuration are only activated on boot. Reboot the sensor after saving a changed configuration. Save Revert to current Figure 5.14.: RTK configuration page in the web interface Vision-RTK 2 | Fixposition Positioning Sensor...
Alternatively, the user can set up a local NTRIP caster to stream correction data to the Vision-RTK 2. In the example below, a host system receives RTCM3 as a serial input and streams them to the Vision-RTK 2 via a network connection using its NTRIP client.
Record calibration sequence ▼ Camera calibration ▼ Camera calibration ▼ (a) Static features on the bottom of the image (b) Cropping 23% on the bottom Figure 5.16.: An example of the image view’s cutout Vision-RTK 2 | Fixposition Positioning Sensor...
Enable – Enables the wheelspeed sensor. If unchecked, the Vision-RTK 2 will not use any other parameters. It can be left unchecked to keep the configuration saved.
Page 37
Use sensor – When enabled, the Fusion engine will employ the measurements from this wheelspeed sensor. This setting does not affect the sensor’s operation. Translation – Translation – Translation vector from the center of the Vision-RTK 2’s reference frame to the wheelspeed sensor axis (see Figure 3.6 for reference).
Page 38
All available presets have been listed in the configuration panel of the wheelspeed module in the web interface (see Figure 5.18). For customizing the Fixposition CAN message interface of the Vision-RTK 2, please consult the Fixposition team.
CAN bus, must be as low as possible. Increased and, in particular, irregular latency degrades the Vision-RTK 2’s performance. The low- level sensor parameters are automatically filled in when one of the preset settings is selected.
Page 40
Based on the Fixposition CAN frame structure, when the Rear Centre (RC) wheelspeed sensor is selected, the corresponding vehicle wheelspeed value will be written in the Front Right (FR) data field. Thus, the Fixposition CAN message will be structured as follows: FR: vehicle speed value [mm/s]...
5.7.2. Fixposition I/O wheelspeed sensor For streaming the wheelspeed values via the UART or TCP ports, the user must employ the NOV_B-RAWDMI message format detailed in Subsection 7.1.1. The binary message must be input on a UART/TCP port at a regular interval with a maximum input rate of 50 Hz.
Page 42
= -44 = 0xffffffd4 = d4 ff ff ff (at offset 24). mask = 0x00000001 | 0x00000002 | 0x00000004 | 0x00000008 = 0x0000000f = 0f 00 00 00 (at offset 28). An example of a NOV_B-RAWDMI message is shown below: Figure 5.21.: NOV_B-RAWDMI example message Vision-RTK 2 | Fixposition Positioning Sensor...
Housing: Prototype (i.e., 3D-printed) or Standard (i.e., aluminum). Tuning mode: Expected platform dynamics (see Section 2.3). GNSS extrinsics: Position of the GNSS antennas with respect to the Vision-RTK 2 sensor frame in meters. These values should be accurate to the mm level.
Figure 5.23.: Recording data module in the web interface Customers can only see/use/delete their data and download the related KML data. If the customer wants to use this service, please get in touch with the Fixposition team. Vision-RTK 2 |...
Same as medium. Camera image. 5.10. IMU calibration The Vision-RTK 2 requires a start-up procedure before being fully operational. The user must ensure the following requirements are fulfilled to start the calibration procedure: Both receivers have an RTK-fixed status. The Fusion engine is initialized, and the extrinsics are correct.
Page 46
Low IMU noise IMU signal quality Low IMU noise (a) Drive backward and forwards (b) Drive eight figures Figure 5.25.: Example trajectory for the IMU calibration procedure Figure 5.26.: Gyroscope and accelerometer biases over time Vision-RTK 2 | Fixposition Positioning Sensor...
The Fixposition ROS driver operating as a ROS node can listen to any I/O port to get outputs from the Vision-RTK 2 and then publish them in the ROS network. The user can directly stream the wheelspeed information via CAN/TCP/UART into the Vision-RTK 2.
Therefore, the user must calculate the XYZ translations from the sensor’s frame of reference to the POI and then rotate the frame using RPY angles. Figure 5.28.: Transform from the VRTK2’s body to the output reference frame Vision-RTK 2 | Fixposition Positioning Sensor...
Page 49
State estimate Output StdDev 47° 24' 0.4042" N 0.015 m Position 8° 27' 2.2641" E 0.011 m 447.28m 0.006 m Figure 5.29.: Arrow pointing towards the positive X direction of the output’s body frame Vision-RTK 2 | Fixposition Positioning Sensor...
5.13. Web interface indicators The navigation bar of the web interface contains useful indicators to signal the status of the Vision-RTK 2 and its related processes. Fig. 5.30 presents all the available indicators. ...
Page 51
The quality of the GNSS corrections may be insufficient. Please stop fusion and check the configuration. Fusion GNSS 1 Stop Fusion Proceed anyway − GNSS 2 Velocity Figure 5.32.: GNSS baseline check error message on the web interface Vision-RTK 2 | Fixposition Positioning Sensor...
HAPTER Status Dashboard 6.1. GNSS solution types The following RTK/GNSS fix convention is used: Fix type Value Color code Description Unknown Dark The receiver has no satellite signals. No fix Blue The receiver has not enough satellite signals. Reserved Reserved Single 2D Autonomous GNSS fix with very few available satellite signals.
2. Right column: status of second GNSS receiver. 3. Status flags: these 3 signal light indicate the status of the GNSS and NTRIP mes- sages Green Yellow Orange Gray a) GNSS 1: - Fixed, - Float, - Single, - No data. Vision-RTK 2 | Fixposition Positioning Sensor...
Page 54
8. Update indicators: these indicators blink whenever the data is updated. a) For GNSS 1 and GNSS2, the indicator blinks at 1 Hz; more or less in sync. b) The NTRIP indicator blinks at 0.2 Hz (every 5 seconds). Vision-RTK 2 | Fixposition Positioning Sensor...
Page 55
– Antenna power supply enabled. – Antenna power supply disabled. Note that after removing the elec- trical short it can take the GNSS receiver up to one minute to detect this and return to power On. Vision-RTK 2 | Fixposition Positioning Sensor...
1 ' 5 6 3 ' 3 9 1 ' 5 6 3 ' 3 9 n p t C A N S s s a g s r r o r s Figure 6.2.: Input/Output Status dashboard Vision-RTK 2 | Fixposition Positioning Sensor...
Page 57
1 is 2982 and among them, no error happened. The total data size of these messages is 309056. In CAN bus (CANSTR) port, 37573 messages are reported as error among the output 55299 messages. These data can be further analyzed if necessary for some troubleshooting. Vision-RTK 2 | Fixposition Positioning Sensor...
HAPTER Input Output Messages 7.1. Wheelspeed Input 7.1.1. NOV-B_RAWDMI For streaming wheelspeed information via the UART serial port or TCP port, the message format called NOV_B-RAWDMI is introduced by Fixposition, the message format should be as follows: Offset Type Value...
7.2. GNSS correction input 7.2.1. RTCM3 The Vision-RTK 2 needs at least the following RTCM3 messages for proper operation: Reference station position (rate: every 10 seconds, or more often), one of: RTCM type 1005 (Stationary RTK reference station ARP) RTCM type 1006 (Stationary RTK reference station ARP with antenna height)
ECEF, X component Quaternion with respect orientation_y Float (.6) -0.123898 to ECEF, Y component Quaternion with respect orientation_z Float (.6) 0.854216 to ECEF, Z component Velocity in output frame, vel_x Float (.4) -17.1078 X component Vision-RTK 2 | Fixposition Positioning Sensor...
Page 61
0.00096 Velocity covariance, element XY vel_cov_yz Float (5) m2/s2 0.00509 Velocity covariance, element YZ vel_cov_xz Float (5) m2/s2 0.00054 Velocity covariance, element XZ fp_release_ sw_version String Software version vr2_2.54.0_160 Table 7.2.: FP_A-ODOMETRY message fields Vision-RTK 2 | Fixposition Positioning Sensor...
Page 62
RTK fixed fix Table 7.5.: GNSS fix type values Value Description No wheelspeed enabled At least one wheelspeed enabled, no wheelspeed converged At least one wheelspeed enabled and converged Table 7.6.: Wheelspeed status values Vision-RTK 2 | Fixposition Positioning Sensor...
Position covariance in ENU, ele- pos_cov_en Float (5) 0.00417 ment EN Position covariance in ENU, ele- pos_cov_nu Float (5) 0.00086 ment NU Position covariance in ENU, ele- pos_cov_eu Float (5) -0.00136 ment EU Table 7.7.: FP_A-LLH message fields Vision-RTK 2 | Fixposition Positioning Sensor...
Pitch standard deviation std_azim float Azimuth standard deviation ext_status uint32_t Extended status, see below reserved8 uint16_t Reserved, ignore CRC32 checksum (see protocol docu- checksum uint32_t mentation) Table 7.8.: NOV B-INSPVAX message fields Vision-RTK 2 | Fixposition Positioning Sensor...
Page 65
INS only Table 7.10.: Positioning mode values Description bit 0 (0x00000001) Position update bit 2 (0x00000004) Zero velocity update bit 6 (0x00000040) INS solution convergence bit 9 (0x00000200) Velocity update Table 7.11.: Extended status values Vision-RTK 2 | Fixposition Positioning Sensor...
See Appendix C to understand how to extract the heading from the FP_A-ODOMETRY message. Field Format Unit Example Description heading Float (.1.4) 61.7 True heading true_ind Character Always T Table 7.13.: NMEA-GP-HDT_FUSION message format Vision-RTK 2 | Fixposition Positioning Sensor...
X component Raw angular velocity in output rot_y Float (.6) rad/s 0.007723 frame, Y component Raw angular velocity in output rot_z Float (.6) rad/s 0.002131 frame, Z component Table 7.15.: FP_A-RAWIMU message format Vision-RTK 2 | Fixposition Positioning Sensor...
X component Raw angular velocity in output rot_y Float (.6) rad/s -0.004620 frame, Y component Raw angular velocity in output rot_z Float (.6) rad/s -0.000728 frame, Z component Table 7.16.: FP_A-CORRIMU message format Vision-RTK 2 | Fixposition Positioning Sensor...
Character Altitude unit, always M (metres) Geoid separation, always null Geoid separation unit, always sep_unit null Age of differential data, always diff_age null diff_sta DGPS station ID, always null Table 7.19.: NMEA-GP-GGA message format Vision-RTK 2 | Fixposition Positioning Sensor...
Magnetic variation, always null Magnetic variation east or west magvar_ew- indicator, always null Positioning system mode indica- mode Character tor, R (RTK fixed), F (RTK float), A (no RTK), E, N Table 7.20.: NMEA-GP-RMC message format Vision-RTK 2 | Fixposition Positioning Sensor...
Values for gnss1_power and gnss2_power: Value Description null Power status not available, for example during initialization of the receiver Antenna power supply is on Antenna power supply is off Table 7.23.: GNSS power values Vision-RTK 2 | Fixposition Positioning Sensor...
(10s window), range 0-50 - or null Correction station ID, range sta_id Numeric 0–4095 or null Correction station latitude, range sta_lat Float (.9) 47.366986804 90.000000000–90.000000000, > 0 for North, < 0 for South, or null Vision-RTK 2 | Fixposition Positioning Sensor...
Page 76
Values for gnss1_fix and gnss2_fix: Value Description Unknown No fix Dead-reckoning only Time-only fix Single 2D fix Single 3D fix Single 3D fix with dead-reckoning RTK float fix RTK fixed fix Table 7.25.: GNSS fix values Vision-RTK 2 | Fixposition Positioning Sensor...
Solution source, see below ext_sol_stat uint8_t Extended solution status, see below gal_bds_sig uint8_t Galileo and BeiDou signal mask, see below _msk gps_glo_sig uint8_t GPS and GLONASS signal mask, see below _msk Table 7.26.: NOV_B-HEADING2 message format Vision-RTK 2 | Fixposition Positioning Sensor...
Page 78
Table 7.30.: Galileo and BeiDou signal mask Description bit 0 (0x01) GPS L1CA bit 1 (0x02) GPS L2C bit 4 (0x10) GLONASS L1OF bit 5 (0x20) GLONASS L2OF Table 7.31.: GPS and GLONASS signal mask Vision-RTK 2 | Fixposition Positioning Sensor...
Extended solution status, see below gal_bds_sig_msk uint8_t Galileo and BeiDou signal mask, see below gps_glo_sig_msk uint8_t GPS and GLONASS signal mask, see below checksum uint32_t CRC32 checksum (see protocol documentation) Table 7.32.: NOV B-BESTGNSSPOS message format Vision-RTK 2 | Fixposition Positioning Sensor...
Page 80
Table 7.36.: Galileo and BeiDou signal mask Description bit 0 (0x01) GPS L1CA bit 1 (0x02) GPS L2C bit 4 (0x10) GLONASS L1OF bit 5 (0x20) GLONASS L2OF Table 7.37.: GPS and GLONASS signal mask Vision-RTK 2 | Fixposition Positioning Sensor...
The boot screen is as follows: $FP , TEXT ,1 , INFO , Fixposition AG - www . fixposition . com *09\ r \ n $FP , TEXT ,1 , INFO , SW = fp_release_vr2_2 .61.0 _191 *78\ r \ n $FP , TEXT ,1 , INFO , HW = nav - vr2 1.2 a 6 d9d18 *3 E \ r \ n...
HAPTER Software Updates To update the software version of the Vision-RTK 2 go to the "System Update" panel in the web interface and drag/drop the corresponding SWU file inside the marked area (see Figure A.1). e b o o t ...
HAPTER Coordinate Transformations ECEF North Pole North (Y local ) (Z local ) East (X local ) ECEF ECEF Figure C.1.: ECEF (global) and ENU (local) coordinate systems Many different coordinate systems exist and are used to represent the pose of an object in space.
Page 85
ECEF coordinates to the local frame of reference (ENU) can be com- puted using the current position of the sensor on the sphere <x,y,z>. The Fixposition GNSS Transformation Lib(fixposition_gnss_tf) contains several useful functions for these space operations. For example, the function TfEnuEcef() takes an ECEF position coordinate and returns a rotation matrix that transforms from the ECEF plane to the ENU plane.
Page 86
NED (North-East-Down) coordinates and then extract the Roll-Pitch-Yaw angles with respect to NED, where yaw would be directly the heading in common sense. The function EcefPoseToEnuEul(), in the Fixposition GNSS Transformation Lib, receives the pose of the sensor in ECEF coordinates and returns the orientation of the robot in Yaw-Pitch-Roll angles using the equations described above.
Page 87
HAPTER Camera FOV Data and Model Diagonal Field of View DFOV=106.8 Horizontal Field of View HFOV=100 Vertical Field of View VFOV=64 Figure D.1.: An illustration of the definition of D H V FOV Figure D.2.: A schematic of VRTK2 FOV The STEP file of the VRTK2 FOV model is available under user’s request.
Page 88
HAPTER Antenna Selection The Vision-RTK2’s GNSS receivers require signals located at the L1 and L2 bands for adequate operation. Based on our internal testing, we recommend using helical antennas with a gain of around 35 dB. For reference, our evaluation kit ships with two Hi-Target AH- 3232 antennas.