This study was motivated by the development of a smart bike accessory to evaluate onboard, according
to internationally recognized standards, vibrational comfort and road condition using accelerometer
sensor data. Since the norms require gravity filtered accelerometer data, it is necessary to compute the
orientation of the Inertial Measurement Unit (IMU) platform.
Thus, the thesis theoretical focus was to estimate a body attitude using a 9-d.o.f IMU and provide an
FPGA architecture for its implementation. As a novelty, it is herein proposed an improvement of the
Madgwick algorithm, both in accuracy and speed. The first amelioration is achieved by adding a necessary
condition between quaternions and their time derivatives in the computational flow. Since the
algorithm requires many vectors normalization to compute the square root (SQRT) and inverse square
root (ISQRT) of floating-point numbers, a customized architecture is proposed. This architecture implements
a novel polynomial approximation based on the Chebyshev min-max criterion. A comparison
of the performance of our SQRT/ISQRT floating-point IP core with vendor-provided IP cores confirms a
smaller resource utilization and nearly four times better performance (smaller clock-cycle latency).

 

Download Thesis

Download Slides