American Journal of Sensor Technology. 2018, 5(1), 1-6
DOI: 10.12691/ajst-5-1-1
Open AccessArticle
Daisuke Aoyagi1, and Sukgi Choi2
1Department of Mechanical and Mechatronic Engineering and Sustainable Manufacturing, California State University, Chico, CA 95929, USA
2Department of Electrical and Computer Engineering, California State University, Chico, CA 95929, USA
Pub. Date: September 09, 2018
Cite this paper:
Daisuke Aoyagi and Sukgi Choi. Angular Position Estimation of an Inverted Pendulum Using Low-Cost IMUs. American Journal of Sensor Technology. 2018; 5(1):1-6. doi: 10.12691/ajst-5-1-1
Abstract
Seeking an affordable solution to measure a bicycle’s roll angle, we came across an Inertial Measurement Unit (IMU) BNO055 by Bosch, which contains 3-axis accelerometer, gyroscope, and magnetometer, and is advertised to produce “absolute orientation” by a built-in proprietary “Fusion” algorithm. We found another low-cost IMU, an MPU-9250 from InvenSense, which could also calculate absolute orientation via embedded Fusion software. Being unable to find information about dynamic characteristics of these IMUs in their datasheets, we sought to evaluate them under dynamic conditions, specifically in the estimation of roll angle. We constructed an inverted pendulum as a model of a bicycle, mounted both IMUs on it, and attached a potentiometer to measure actual angular position for reference. Additionally, as an alternative to the proprietary Fusion algorithms, we devised and implemented an Extended Kalman Filter, which, we hypothesized, would perform better than the proprietary Fusion algorithms, because our algorithm incorporated the kinematics of the inverted pendulum while the Fusion algorithm of the IMUs did not. In a series of experiments, we observed a significant time lag, about 0.05-0.1 second, in BNO055’s raw acceleration and gyro signals. The BNO055’s Fusion responded with similar lag and an offset of 0.5-3°; we also noticed rather unpredictable fluctuation in the output signals, possibly due to its “automatic calibration” feature, which cannot be disabled. The MPU-9250 exhibited better performance than the BNO055 in terms of raw acceleration signals and, particularly, gyro signals. The MPU-9250’s Fusion performed somewhat better than BNO055’s, typically showing lag of 0.03-0.06 sec and static offset of 0.5-1°. Our implementation of Kalman Filter based on MPU-9250 raw signal performed better than either Fusion algorithm, with about 0.02-0.03 second lag and 0.5-1° offset, supporting our hypothesis. Our next step is to experiment on an actual bicycle in motion.Keywords:
inertial measurement unit angular estimation inverted pendulum Extended Kalman Filter
This work is licensed under a Creative Commons Attribution 4.0 International License. To view a copy of this license, visit
http://creativecommons.org/licenses/by/4.0/
Figures
References:
[1] | Cerone, V., Andreo, D., Larsson, M. and Regruto, D. “Stabilization of a Riderless Bicycle: A Linear-Parameter-Varying Approach”, [Applications of Control] IEEE Control Systems, 30(5). 23-32. 2010. |
|
[2] | Finkbeiner, S., “MEMS for automotive and consumer electronics”, Proceedings of the European Solid-State Device Research Conference, 9-14, Sept 2013. |
|
[3] | TDK InvenSense, “Embedded MotionDriver 6.12 - InvenSense Developers Corner”, (log-in required) [Online]. Available: https://www.invensense.com/developers/software-downloads/. [Accessed May 2018]. |
|
[4] | Kalman, R.E., and Bucy, R.S., “New Results in Linear Filtering and Prediction Theory,” Journal of basic engineering, 83(1). 95-108. 1961. |
|
[5] | Leavitt, J., Sideris, A., and Bobrow, J.E., “High Bandwidth Tilt Measurement Using Low-Cost Sensors”, IEEE/ASME Transactions On Mechatronics, 11(3). 320-327. 2006. |
|
[6] | “SparkFun Electronics,” [Online]. Available: https://www.sparkfun.com/. [Accessed July 2018]. |
|
[7] | “adafruit,” [Online]. Available: https://www.adafruit.com/. [Accessed July 2018]. |
|
[8] | Townsend, K, “Adafruit Unified BNO055 Driver,” Adafruit Industries, [Online]. Available: https://github.com/adafruit/Adafruit_BNO055. [Accessed Feb 2018]. |
|
[9] | Rhudy, M.B., Salguero, R. A., and Holappa, K., “A Kalman Filtering Tutorial for Undergraduate Students,” International Journal of Computer Science & Engineering Survey, 8(1), Feb 2017. |
|