Maier, M., Hobiger, T., & Topp, T. (2024, Oktober). Robust navigation during GNSS outages by fusing multiple inertial measurement units with B-splines. Positioning and Navigation for Intelligent Transport Systems (POSNAV 2024).
Zusammenfassung
Navigating during GNSS outages is becoming more important due to a significant increase of
jamming and spoofing attacks and motivated by unmanned operations in urban environments.
Inertial Measurement Units (IMUs) are usually the choice to mitigate the GNSS signal losses, but
not all applications allow for IMUs that are precise and stable enough to rely solely on inertial
navigation over longer periods of time. Payload capacity – either mass or volume – can impose
strict limitations on the usage of IMUs and the demand for low-cost solutions can define additional
boundary conditions.
In this study, we show that fusing multiple IMUs with B-splines can improve the navigation
solution considerably. The developed algorithm can fuse angular rates and accelerations from an
arbitrary number of Single IMUs (SIMUs) using a Kalman filter, which outputs one combined
stream of Virtual IMU (VIMU) measurements. Expressing the angular rates and the accelerations
therein as the sum of B-spline base functions makes it possible to resolve temporal changes at a
user-defined resolution, while only a few parameters have to be chosen. The B-spline approach does
not only allow a dynamic and continuous representation of the angular rates and the accelerations
which occur along a given trajectory, but also inherently avoids the problem of high-frequency
noise. Several high data rate IMUs can be fused, even if sampling rates or the quality of the
measurements are different. The concept of the fusion is also inherently redundant: If one SIMU
fails, the fusion keeps on working with the remaining SIMUs. The gain in precision of the
navigation solution is directly dependent on the number of SIMUs. The formal error could
theoretically be reduced by the square root of the number of SIMUs, if averaging independent
measurements.
The IMU fusion based on B-splines is implemented in our open source software framework
INSTINCT (INS Toolkit for Integrated Navigation Concepts and Training). Its performance will be
shown in a Monte Carlo simulation of a pure inertial navigation solution in comparison to a SIMU.
A dynamic simulation will show the applicability to GNSS outages, where the VIMU’s combined
measurement is used in GNSS/INS-fusion. This setup is validated by drive and flight tests, utilizing
an IMU sensor array that was constructed in-house and that consists of five low-cost SIMUs.BibTeX
Maier, M., Hobiger, T., & Topp, T. (2024, Mai). Improving navigation resilience by using B-splines in the sensor fusion of multiple inertial measurement units. European Navigation Conference.
BibTeX
Topp, T., & Hobiger, T. (2024). (Multi-constellation) GNSS/INS data fusion through flow-based programming utilizing the open-source PNT framework INSTINCT.
Zusammenfassung
Designing navigation software can be a very time-consuming task. Novice navigation engineers often have to start implementing everything anew and even professionals spend a lot of time adapting algorithms from other projects. This prolongs development cycles and shortens the time available for actual research. Furthermore, when projects shall be realized on test platforms, algorithms often need to be executed on low-cost hardware, like a Raspberry Pi, which can be challenging as the processing capabilities are limited.
To solve these problems, the Position, Navigation, and Timing software framework INSTINCT (INS Toolkit for Integrated Navigation Concepts and Training) was developed. It is based on the flow-based programming paradigm, which abstracts functionality, like reading a file or preprocessing data, into separate modules, so-called nodes, to make the implementation more self-contained and reusable. Data flows between nodes over links and triggers the calculation of algorithms, which enables parallelization of tasks and improves the performance on multi-core processor systems. This abstraction also enables algorithm design in post-processing with data files or sensor simulators, and deployment of the algorithm onto test platforms for real-time applications by simply exchanging the input node from file reader to sensor.
Besides the implementation of various file formats (e.g. RINEX), raw data-streams (e.g UBX) and sensor protocols from different manufacturers, algorithms like Single Point Positioning (SPP), inertial sensor data fusion and multi-constellation/multi-frequency Real-Time Kinematic (RTK) are available, providing a stable foundation for research or navigation product development. Furthermore, INSTINCT provides tools such as a GNSS analyzer that can be used to calculate signal combinations, detect cycle-slips and assess the quality of GNSS data. Because selecting and configuring such variety of algorithms can become quite complicated through config files, INSTINCT provides an intuitive graphical user interface (GUI), where one can select the necessary nodes, link them together and adjust algorithm parameters. Additionally, results can be directly visualized and evaluated within the software, removing the need to write evaluation scripts entirely and leading to faster iteration times. To share this software and enable potential collaboration, INSTINCT was released under an open-source license on GitHub (https://github.com/UniStuttgart-INS/INSTINCT).
The presentation will cover the basic principles of flow-based programming and illustrate its advantages over existing solutions. It will be demonstrated how simple and straightforward RTK processing can be realized with INSTINCT while making use of parallel computation capabilities of the software. It will also be shown how easy results can be combined with other sensors either by loosely- or tightly coupling. The presentation will also provide an outlook on upcoming features of the software and we are going to discuss how the software can be adapted to your own R&D project or being used for teaching activities.BibTeX