About Klaus Petersen

I like to create magical things, especially projects related to new technologies like augmented and virtual reality, mobile robotics and MEMS-based sensor networks. I code in C(++) and Python, trying to keep up with my very talented colleagues :-)

Optical-Inertial Sensor Fusion

Optical position tracking and inertial orientation tracking are well established measurement methods. Each of these methods has its specific advantages and disadvantages. In this post we show an opto-inertial sensor fusion algorithm that joins the capabilities of both to create a capable system for position and orientation tracking.

How It Works

The reliability of position and orientation data provided by an optical tracking system (outside-in or inside-out) can for some applications be compromised by occlusions and slow system reaction times. In such cases it makes sense to combine optical tracking data with information from an inertial measurement unit located on the device. Our optical-intertial sensor fusion algorithm implements this functionality for integration with an existing tracking system or for the development of a novel system for a specific application case.

The graphs below show two examples of how the signal from an optical positioning system can be improved using inertial measurements. Slow camera framerates or occasional drop-outs are compensated by information from the integrated inertial measurement unit, improving the overall tracking performance.

Combination of Several Optical Trackers

For a demonstration, we combined three NEXONAR IR trackers and an LPMS-B2 IMU, mounted together as a hand controller. The system allows position and orientation tracking of the controller with high reliability and accuracy. It combines the strong aspects of outside-in IR tracking with inertial tracking, improving the system’s reaction time and robustness against occlusions.

Optical-Inertial Tracking in VR

The tracking of virtual reality (VR) headsets is one important area of application for this method. To keep the user immersed in a virtual environment, high quality head tracking is essential. Using opto-inertial tracking technology, outside-in tracking as well as inside-out camera-only tracking can be significantly improved.

Virtual Tape Measure with Google’s Project Soli

The folks at Google ATAP were so nice and allowed us to participate in the Project Soli alpha developer program. Please have a look at their website for more information about the project. Project Soli is a chip-sized miniature millimeter-wave radar, supported by a sophisticated DSP pipeline developed by Google. Based on this signal processing, it is possible to analyze and evaluate finger gestures in the vicinity of the sensor. This allows for new ways of human-device interaction.

We have spent some time with the developer kit and made an application called Virtual Tape Measure. Purpose of this demo application is to replace the need for a physical tape measure when e.g. checking the dimensions of table while shopping for furniture. This is a fairly simple application of the Soli technology. We are currently looking into further, more complex use cases. Please see the diagram below describing the basic functionality of the system.

Sensor Fusion for Virtual Reality Headset Tracking

In order to test the functionality of our sensor fusion algorithm for head-mounted-display pose estimation, we connected one of our IMUs (LPMS-CURS2), a Nexonar infrared (IR) beacon and a LCD display to a Baofeng headset. The high stability of the IR tracking and the orientation information from the IMU as input to the sensor fusion algorithm result in accurate, robust and reactive headtracking. See the figure below for details of the test setup. The video shows the resulting performance of the system.

Control of Autonomous Drone iHSMD

iHMSD is an autonomous, high-altitude glider developed by the European Space Agency (ESA) and Swiss companies Meteolabor, CSEM and Team SmartFish. Purpose of the project was to develop a light-weight, cost-efficient vehicle that can accurately navigate in extreme heights. The glider was towed up to 32km above ground level by weather balloons and then released to follow several waypoints and return safely to ground.

iHMSD test flight

Figure 1 – iHMSD flight test in good weather conditions over Switzerland.

High altitude flight tests were done at ESRANGE, Kiruna, Sweden. During the Swedish missions, the 1‑kg glider navigated through winds of almost 200 km/h, equivalent to a hurricane of category 4. Nonetheless, several very successful missions were flown, with the iHMSD vehicle reaching maximum speeds of almost Mach 0.9 and gathering many hours of flight data and video footage.

The iHMSD test flights reached a maximum altitude of 32000 meters and supersonic speed (1070 km/h).

LPMS-CURS was used by the team to measure exposure of the vehicle to strong accelerations and rotations. A control algorithm was implemented to adjust the steering of the glider to guarantee the accurate navigation of the prescribed waypoints.

Figure 2 – Together with other control electronics LPMS-CURS was installed in iHMSD to measure and adjust the flight stability of the glider.

Documentation about this fantastic project was provided to us by CSEM in Switzerland. Thank you!

The team around iHSMD created a video that documents the development process and the experiments:

LPMS-CU in ETH Zuerich Formula Student Race Car Flüela

Formula Student Electric Race Car Flüela

Flüela is the fourth four-wheel-driven Formula Student electric race car from the academic motorsports club Zurich. Four self-developed wheel-hub motors with a peak power of 37 kW while weighing only 3.25 kg enable an acceleration from 0-100 km/h in only 1.9s. A lithium polymer accumulator with a capacity of 6.46kWh supplies the car with the needed energy. The self-built carbon fibre monocoque enables a total weight of only 173 kg. Furthermore, the car uses adaptive dampers, which are unique in Formula Student, to adjust the damping forces dynamically to the driving situation. Miscellaneous control algorithms like torque vectoring and traction control ensure the car to deliver its maximum performance at every time of the race.

With Flüela the academic motorsports club Zurich was able to finish two out of four events overall on first place, as well as a second place in Formula Student Germany. The AMZ was able to defend its first place on the world ranking of the Formula Student Electric, and to finish the third year in a row as world champion.

Figure 1 – Flüela in Skidpad at Formula Student Spain.

Implementation of LPMS-CU in Flüela

The IMU was implemented in the back of the car. The major decision point of the placement was to set it near to the centre of the gravity of the whole car, including a driver. It was placed under the driver’s seat, next to the accumulator box. Tests were done to see if the high currents next to the accumulator box had any influence on the signal quality coming from the IMU. There were no electromagnetic influences detected. But we were not able to see if the high currents at full torque on the motors or while full recuperation (~200A) and their induced magnetic fields had any negative influence on the measured signals from the IMU. The problem there was that while driving at high speeds, there are further disturbances coming from vibrations of the car.

Figure 2 – Installation of LPMS-CU.

Applications of Sensor Data
Vehicle Dynamics Control

The three for our application most important signals coming from the LPMS-CU IMU were the accelerations in x (longitudinal, direction of travel) and y (lateral, direction of the front and rear axle) direction, as well as the rotation rate around the z-axis (vertical direction), further called the yaw rate of the car.

These signals were important inputs for our vehicle dynamics control system. The signal from the IMU has important influences in both, torque vectoring and traction control, as well as several smaller control algorithms used to maximise the performance of the race car.

Furthermore, some points are described, where the signals from the IMU were used in the vehicle dynamics control system:

1. Weight transfer calculation: One important thing to know for calculating the maximum torque which can be used by the tire is the force in z direction at every tire. To calculate this value, we use the accelerations in x and y direction to determine the chassis movement, and to calculate the forces on every single tire.

2. Mu estimator: We are able to adjust the used friction coefficient to calculate the possible deliverable forces of the tires. Depending on the track and the outer conditions, the friction coefficient (mu) is increased or decreased. For this calculations we need the absolute force which is acting on the car in x-direction, which can be calculated by the longitudinal acceleration and the mass of the car.

3. Torque vectoring: The yaw rate is the most important value for our torque vectoring system. By using a simplified vehicle model, we calculate the optimal yaw rate for every corner at every time. This calculated value is then compared to the actual measured value by the IMU, and an occurring error is corrected by an adjusted torque distribution on every wheel.

Data Analysis

Furthermore, the data coming from the IMU was very important for data analysis. One example of the usage of the signals is the G-G-Plot, a classical way to look at the performance of the system car and driver.

Figure 3 – G-G-Plot of the Autocross event in Austria.

We also used the data from the IMU and the Absolute Speed Sensor (optical measurement of the speed of the car) to approximate the course of the track. These track plots were used to display at which point of the track the accelerations on the car were at a maximum.

In Figure 4 we are able to see at which parts of the track the potential of the car is used, and where higher total accelerations would be possible. In the red parts, the cars potential is used at a maximum, in the blue parts the car-driver system could have performed better.

Figure 4 – Track plot Autocross Austria.

Thank you to Formula Student Team Zurich for the detailed report. For further information on the team, please have a look at their website.

1 4 5 6 7 8 10