Implementing a Kalman filter on FPGA embedded processor for speed control of a DC motor using low resolution incremental encoders


Abstract:

Incremental rotary encoders are used to measure the angular position of a motor shaft. It is required to calculate the first difference of the angular position in order to measure angular velocity. The operation could cause noisy signals, mainly because the encoder output is from digital nature, plus sensor resolution is limited. To avoid this scenario, filters are used before doing operations with this output signal. This paper presents a practical method for implementing a steady state Kalman filter, using engine's mathematical model algorithm designed with MATLAB. The filter was used for speed control of a DC motor, and the controller performance used the filtering algorithm resulting in a considerable improvement compared to the same controller without using the filter. The algorithm presented was used as part of the system control of a sprinter robot and implemented in an embedded system building with a NIOS II soft microprocessor inside of an FPGA of Altera Corporation.

Año de publicación:

2016

Keywords:

  • Speed measurement
  • Digital filter
  • Fpga
  • Velocity control
  • NIOS II processor
  • Kalman filter

Fuente:

scopusscopus
googlegoogle

Tipo de documento:

Conference Object

Estado:

Acceso restringido

Áreas de conocimiento:

  • Sistema de control
  • Sistema embebido

Áreas temáticas:

  • Física aplicada
  • Otras ramas de la ingeniería
  • Instrumentos de precisión y otros dispositivos