Skip to main content
Skip table of contents

Setting up a wheel odometry input

As a heads-up, before integrating the wheel odometry into the Vision-RTK2, we suggest updating it to our latest stable release.

Overview

To increase the performance of the Vision-RTK 2, the user can input velocity measurements additionally. This optional input will serve as a fourth sensor in our fusion engine, enabling higher accuracy in outages and improved stationary status detection.

The Vision-RTK2 accepts a linear velocity input for either

  • a single-point (Rear Center) configuration,

  • a 4-wheel configuration or

  • a 2-wheel configuration

Refer to Section 5.7 of the Integration Manual for the wheel odometry integration. Here you will find the sensor configuration for our supported input protocols: UART, TCP, or CAN.

Input via UART, TCP, and CANSTR

When streaming the wheelspeed information via TCP or UART, the Vision-RTK 2 expects the messages to be in our own Fixposition format. You can find more information and code examples (C++ and Python) on the FP_B-MEASUREMENT page. To input the measurements, the user needs to populate the respective field of its dimension (x, y, z).

On the other hand, CANSTR constitutes a more customizable and flexible option, e.g. regarding the message protocol selection or the bitrate setting. Users can assign a specific ID and embed customized data within the payload of either Classic CAN or CAN FD. You can also put FP_B-MEASUREMENTS information into the payload. This setup is analogous to the UART/TCP mechanism, especially when streaming wheelspeed data into the system. Moreover, CANSTR provides the capability to input and output other user-defined information. Lastly, more information about the Fixposition CAN frame can be found here: https://docs.fixposition.com/fd/fixposition-can-frame

To input the wheelspeed information to either of these methods, you must properly configure the UART or CAN ports to ensure that their respective baud rate/bitrate is sufficient to stream this information.

Only one simultaneous input stream can be handled correctly on TCP port numbers 21000 – 21004. For example, to input RTCM3 and wheelspeed via the network, use one port (e.g., 21000) for wheelspeed and another (e.g., 21001) for corrections.

Analogously, the same applies for serial input: When UART1 for wheelspeed input, use UART2 for output reading or RTCM3 input.

Input via CAN / OBD2

We support most CAN protocols used in combustion engine vehicles. Kindly refer to the Sections 5.4.3 and 5.7.1 of the Integration Manual for more information. For more support on this regard, reach out to support@fixposition.com.

Input via ROS Driver

Using our ROS Driver, users can publish directly on the /fixposition/speed topic. For more information refer to the ROS Driver documentation: https://docs.fixposition.com/fd/fixposition-ros-driver#FixpositionROSDriver-InputWheelspeedthroughthedriver

Lastly, if you have a ROS topic available with the wheelspeed information, you can use our ‘Fixposition Odometry Converter' node, which you can find here https://github.com/fixposition/fixposition_driver/tree/main/fixposition_odometry_converter_ros1 for ROS1 and here https://github.com/fixposition/fixposition_driver/tree/main/fixposition_odometry_converter_ros2 for ROS2 .

Currently, messages of the type ‘geometry_msgs/Twist’, ‘geometry_msgs/TwistWithCov’, and 'nav_msgs/Odometry’ are accepted.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.