Chris Olivera Senior Project 2014

FPGA Implementation of Multiple Controllers for a Magnetic Suspension System

Abstract

System modeling and dynamics of the magnetic suspension system are interesting and challenging due to the nonlinear nature of the system. A nonlinear plant model has been studied and linearized.  Different controllers have been designed and implemented on various hardware platforms including xPC Target Box and Motorola ColdFire microcontroller using Simulink and real-time workshop.

Considering the very costly price ranges of such hardware, this project’s original objective was to implement multiple controllers for the magnetic suspension system using a low-cost Field Programmable Gate Array board. However, only one previously designed controller was implemented.

FPGA has advantages in design flexibility and functional enhancement. A system has been designed and implemented to demonstrate the controller for the magnetic suspension system. The system includes Spartan3E FPGA, digital-to-analog (D/A) converter, analog-to-digital (A/D) converter, and conditioning circuitry.

The previous controller has been designed and simulated using Xilinx system generator, a design tool for FPGA fixed-point implementation.  In addition, the controllers have been programmed in VHDL for FPGA implementation. This study shows that the Xilinx system generator is an efficient design tool of adjusting finite word-length, and FPGA is a viable solution for control application.