In this sensor spotlight we’ll dive into the features and capabilities of the Xsens Vision Navigator (XVN) from Movella. The XVN is a GNSS based visual-inertial localization sensor that can be integrated on any of Clearpath’s robots to provide a full 3D state estimate for your mobile robot, which includes position, orientation, linear / angular velocities, and linear accelerations.

We are excited to partner with Movella to bring the Xsens Vision Navigator to our customers. The XVN is available via the Clearpath Store, and as an option on our custom robot integrations, or as part of the standard sensor suite on our integrated platforms like the A300 AMP.


Localization Background


In the world of mobile robots, localization is the process of estimating a robot’s state, its 2D or 3D pose, and potentially its velocity and acceleration. Localization forms the foundation upon which many higher-level robotics tasks depend. Without accurate localization, a mobile robot will struggle to effectively navigate, plan paths, avoid obstacles, or interact meaningfully with its environment.

Oftentimes the first approach to localization relies on wheel encoders to calculate odometry in an open-loop manner. On Clearpath’s base platforms, data from an inertial measurement unit (IMU) is also incorporated to mitigate errors, such as those caused by wheel slippage, and to provide roll-pitch estimates for 3D applications. This basic platform odometry is a sensible starting point, but it has two major limitations: it is relative, meaning it does not provide location in a persistent frame of reference, and it will drift over time as errors accumulate due to sensor noise, for example.

For outdoor robots, GNSS sensors can provide a global position estimate to address these limitations. However, fusing GNSS data introduces its own challenges, such as dealing with partial or total GNSS outages, accurately estimating covariances, and tuning filters to be robust to poor sensor data. This is where sensors like the XVN become extremely valuable. By fusing GNSS measurements with inertial measurements, visual odometry, and wheel-encoder data, the XVN can maintain accurate localization even when navigating through total GNSS outages. 

 

Husky A300 and Jackal with XVN integrated, in front of parking garage.

 

XVN Feature Highlights


Here’s a list of our ten favourite features based on internal engineering and customer feedback:

  • Dual GNSS Receivers
    The XVN features dual L1/L2 band GNSS receivers, which means it can calculate high accuracy RTK position and RTK heading solutions simultaneously.
  • Camera and IMU Sensor Fusion
    The XVN is equipped with an on-board inertial measurement unit (IMU) and camera which it uses to augment GNSS measurements when estimating the robot’s state. In environments where GNSS is unreliable, such as urban canyons and forested areas, visual-inertial odometry helps to maintain accurate and smooth state estimation.
  • Optional Wheel Odometry Integration
    The XVN’s performance in challenging GNSS environments can be further augmented by inputting wheel encoder data from a base robot platform.
  • ROS1 and ROS2 Drivers
    The XVN has well-maintained ROS1 and ROS2 drivers, and can be configured to publish topics for fusion outputs/status as well as raw data for users who want to dig in further.
  • RTK Corrections via TCP/NTRIP/ROS
    The XVN has a number of interfaces for providing RTK corrections. Whether you’re communicating with a base station directly over the network, or streaming RTCM corrections over NTRIP, we have yet to find an RTK correction source that can’t be used with the XVN.
  • Web UI
    The XVN features a web UI where users can monitor the status and configure the sensor. Some of the features we use most often include: fine tuning the sensor fusion settings to optimize performance,  updating sensor firmware, configuring RTK correction source and monitoring stability, configuring raw data output and fusion output rates, and logging raw data for post-processing.
  • Saved Locations Feature
    By leveraging the ‘saved locations’ feature, the XVN can be configured to start outputting state estimates even when no GNSS measurements are available, such as starting from an indoor wireless charge dock.
  • Time Synchronization
    The XVN can be used for time-synchronization, a very important and sometimes overlooked task for users with applications that involve sensor fusion like lidar based mapping. The XVN can be configured as a PTP master time source, an NTP server, and provides a PPS output.
  • Smooth Odometry Output
    In addition to the global fusion output the XVN can also be configured to output smooth odometry which doesn’t have any discrete jumps when re-acquiring a GNSS fix after outage.
  • Industrial Design
    The XVN is IP rated and has a relatively small footprint, making it usable on even our smallest mobile platforms like Jackal UGV.

XVN in Action


To showcase the XVN in action we integrated one on Clearpath Husky A300 and Jackal platforms and took them out into the field to see how they performed. For a full overview, check out the sensor spotlight video below.

 

 

Test 1: We took our Husky A300 and Jackal integrations to a parking garage to see how it handled total GNSS outages. Note how the odometry is smooth throughout the test, with a slight correction at the end when a fix is re-acquired.

Test 2: We took our Husky A300 integration to a university campus which features  overpasses, buildings, and lots of students walking around that might throw off the visual feature tracking on the XVN. Our A300 integration features a GNSS antenna splitter which we used to split the signal to the XVN as well as another GNSS receiver to compare the performance. 

Next Steps

The XVN is a sensor option on our custom robot integrations, included in the standard sensor suite of the A300 AMP, and available for purchase via the Clearpath Store.

Contact our team to find out more about how the XVN can accelerate your project!

Clearpath Robotics Announces PartnerBot Grant Program   Apply Today
Hello. Add your message here.