Automotive Innovation ›› 2019, Vol. 2 ›› Issue (3): 178-189.doi: 10.1007/s42154-019-00065-1

• • 上一篇    下一篇

Numerical Implementation of High-Order Vold–Kalman Filter Using Python Arbitrary-Precision Arithmetic Library

  

  1. State Key Laboratory of Automotive Simulation and Control, Jilin University, Changchun, China
  • 出版日期:2019-09-23 发布日期:2019-09-27

Numerical Implementation of High-Order Vold–Kalman Filter Using Python Arbitrary-Precision Arithmetic Library

  1. State Key Laboratory of Automotive Simulation and Control, Jilin University, Changchun, China
  • Online:2019-09-23 Published:2019-09-27

摘要: The Vold–Kalman (VK) order tracking filter plays a vital role in the order analysis of noise in various fields. However, owing to the limited accuracy of double-precision floating-point data type, the order of the filter cannot be too high. This problem of accuracy makes it impossible for the filter to use a smaller bandwidth, meaning that the extracted order signal has greater noise. In this paper, the Python mpmath arbitrary-precision floating-point arithmetic library is used to implement a high-order VK filter. Based on this library, a filter with arbitrary bandwidth and arbitrary difference order can be implemented whenever necessary. Using the proposed algorithm, a narrower transition band and a flatter passband can be obtained, a good filtering effect can still be obtained when the sampling rate of the speed signal is far lower than that of the measured signal, and it is possible to extract narrowband signals from signals with large bandwidth. Test cases adopted in this paper show that the proposed algorithm has better filtering effect, better frequency selectivity, and stronger anti-interference ability compared with double-precision data type algorithm.

关键词: Noise order analysis, Vold–Kalman filter, Arbitrary-precision arithmetic library 

Abstract: The Vold–Kalman (VK) order tracking filter plays a vital role in the order analysis of noise in various fields. However, owing to the limited accuracy of double-precision floating-point data type, the order of the filter cannot be too high. This problem of accuracy makes it impossible for the filter to use a smaller bandwidth, meaning that the extracted order signal has greater noise. In this paper, the Python mpmath arbitrary-precision floating-point arithmetic library is used to implement a high-order VK filter. Based on this library, a filter with arbitrary bandwidth and arbitrary difference order can be implemented whenever necessary. Using the proposed algorithm, a narrower transition band and a flatter passband can be obtained, a good filtering effect can still be obtained when the sampling rate of the speed signal is far lower than that of the measured signal, and it is possible to extract narrowband signals from signals with large bandwidth. Test cases adopted in this paper show that the proposed algorithm has better filtering effect, better frequency selectivity, and stronger anti-interference ability compared with double-precision data type algorithm.

Key words: Noise order analysis, Vold–Kalman filter, Arbitrary-precision arithmetic library ,