Timothy P. Dever

QSS Group, Inc., Cleveland, Ohio

Gerald V. Brown

Glenn Research Center, Cleveland, Ohio

Kirsten P. Duffy and Ralph H. Jansen

University of Toledo, Toledo, Ohio

Modeling and Development of a Magnetic

Bearing Controller for a High Speed

Flywheel System

NASA/TM—2005-213877

September 2005

AIAA–2004–5626
The NASA STI Program Office . . . in Profile

Since its founding, NASA has been dedicated to

the advancement of aeronautics and space

science. The NASA Scientific and Technical

Information (STI) Program Office plays a key part

in helping NASA maintain this important role.

The NASA STI Program Office is operated by

Langley Research Center, the Lead Center for

NASA’s scientific and technical information. The

NASA STI Program Office provides access to the

NASA STI Database, the largest collection of

aeronautical and space science STI in the world.

The Program Office is also NASA’s institutional

mechanism for disseminating the results of its

research and development activities. These results

are published by NASA in the NASA STI Report

Series, which includes the following report types:

• TECHNICAL PUBLICATION. Reports of

completed research or a major significant

phase of research that present the results of

NASA programs and include extensive data

or theoretical analysis. Includes compilations

of significant scientific and technical data and

information deemed to be of continuing

reference value. NASA’s counterpart of peerreviewed formal professional papers but

has less stringent limitations on manuscript

length and extent of graphic presentations.

• TECHNICAL MEMORANDUM. Scientific

and technical findings that are preliminary or

of specialized interest, e.g., quick release

reports, working papers, and bibliographies

that contain minimal annotation. Does not

contain extensive analysis.

• CONTRACTOR REPORT. Scientific and

technical findings by NASA-sponsored

contractors and grantees.

• CONFERENCE PUBLICATION. Collected

papers from scientific and technical

conferences, symposia, seminars, or other

meetings sponsored or cosponsored by

NASA.

• SPECIAL PUBLICATION. Scientific,

technical, or historical information from

NASA programs, projects, and missions,

often concerned with subjects having

substantial public interest.

• TECHNICAL TRANSLATION. Englishlanguage translations of foreign scientific

and technical material pertinent to NASA’s

mission.

Specialized services that complement the STI

Program Office’s diverse offerings include

creating custom thesauri, building customized

databases, organizing and publishing research

results . . . even providing videos.

For more information about the NASA STI

Program Office, see the following:

• Access the NASA STI Program Home Page

at http://www.sti.nasa.gov

• E-mail your question via the Internet to

help@sti.nasa.gov

• Fax your question to the NASA Access

Help Desk at 301–621–0134

• Telephone the NASA Access Help Desk at

301–621–0390

• Write to:

 NASA Access Help Desk

 NASA Center for AeroSpace Information

 7121 Standard Drive

 Hanover, MD 21076
Timothy P. Dever

QSS Group, Inc., Cleveland, Ohio

Gerald V. Brown

Glenn Research Center, Cleveland, Ohio

Kirsten P. Duffy and Ralph H. Jansen

University of Toledo, Toledo, Ohio

Modeling and Development of a Magnetic

Bearing Controller for a High Speed

Flywheel System

NASA/TM—2005-213877

September 2005

National Aeronautics and

Space Administration

Glenn Research Center

Prepared for the

Second International Energy Conversion Engineering Conference

sponsored by the American Institute of Aeronautics and Astronautics

Providence, Rhode Island, August 16–19, 2004

AIAA–2004–5626
Available from

NASA Center for Aerospace Information

7121 Standard Drive

Hanover, MD 21076

National Technical Information Service

5285 Port Royal Road

Springfield, VA 22100

Available electronically at http://gltrs.grc.nasa.gov
NASA/TM—2005-213877 1

Modeling and Development of a Magnetic Bearing Controller 

for a High Speed Flywheel System 

Timothy P. Dever 

QSS Group, Inc. 

Cleveland, Ohio 44135 

Gerald V. Brown 

National Aeronautics and Space Administration 

Glenn Research Center 

Cleveland, Ohio 44135 

Kirsten P. Duffy and Ralph H. Jansen 

University of Toledo 

Toledo, Ohio 43606 

Abstract 

This paper describes a modeling effort used to develop an improved type of magnetic bearing controller, called 

a modal controller, for use on high speed flywheel systems. The controller design is based on models of the flywheel 

system, is designed to directly control the natural dynamics of the spinning rotor, and is generic enough to be readily 

adapted to future flywheel systems. Modeling and development are described for two key controller subsystems: the 

modal controller subsystem, which allows direct control over the rotor rigid body modes, and the bending mode 

compensation subsystem, which tracks, and prevents interference from, the rotor bending modes during flywheel 

operation. Integration of modeling results into the final controller is described and data taken on the NASA Glenn 

D1 flywheel module during high speed operation are presented and discussed. The improved modal controller 

described in this paper has been successfully developed and implemented and has been used for regular hands-free 

operation of the D1 flywheel module up to its maximum operating speed of 60,000 rpm. 

I. Nomenclature 

FX2 Force applied by the controller in the combo X direction (lb) 

IP Rotor polar moment of inertia (lb-in-s2

) 

IT Rotor moment of inertia about the center of mass (CM) (lb-in-s2

) 

ITr Moment of inertia about the radial magnetic bearing (MB) (lb-in-s2) 

Knx2 Negative stiffness of the combo MB in the x-dir (lb/in) 

Kix2 Current stiffness of the combo MB in the x-dir (lb/A) 

K Combined gain of sensor system, signal conditioning, and PWM 

Kpx2 Proportional gain of the combo MB in the X direction 

m Flywheel mass (lb-s2

/in) 

X1,Y1 radial end bearing and sensor axes 

X2,Y2,Z combo end bearing and sensor axes 

Zb2 Distance in z-dir from CM to combo MB (in) 

Zb1 Distance in z-dir from CM to radial MB (negative) (in) 

Zs2 Distance in z-dir from CM to combo sensor (in) 

α Angular displacement about the y-axis (rad) 

ωx2 Natural frequency of the flywheel at the combo MB about the x-direction (rad/s) 

II. Introduction 

High-speed flywheel systems are being developed at NASA Glenn Research Center (GRC) in Cleveland, Ohio. 

Flywheels show promise as an alternative to batteries and reaction wheels for space systems. Strengths of this 

technology include high energy density, long life, capability for up to 90 percent depth of discharge, and peaking or 

pulse power capability. Flywheels can also be deployed in an array which provides both energy storage and attitude 
NASA/TM—2005-213877 2

control. A system level flywheel test bed is operational at GRC. The flywheel system utilizes active magnetic 

bearings (MB) to provide a long-life, low-loss suspension of the rotating mass. The MB control system commands 

power amplifiers, which produce current in the bearing actuators; forces produced by the actuators suspend the rotor. 

The system utilizes a feedback loop in which the position of the rotor is measured with eddy current sensors and 

used as the input to the MB control algorithm. The flywheel modules use a motor/generator coaxial with the rotor to 

facilitate energy storage and retrieval. A system level flywheel test bed called the High Energy Flywheel Facility 

(HEFF) is operational at GRC; the flywheel module under test is called the D1 module. 

This paper describes a modeling effort which was used to develop an improved type of MB controller. The goals 

of this effort were to develop a controller which is based on models of the flywheel module and controller, is 

designed to directly control the natural dynamics of the spinning rotor, and is generic enough to be readily adapted 

to future flywheel systems. This paper focuses on development of two key portions of this improved controller: the 

modal control section, and bending mode compensation. Integration of modeling results into the final controller is 

described, and data taken on the D1 module during high speed operation is presented and discussed. 

The improved modal controller described in this paper has been successfully developed and implemented, and 

used for regular hands-free operation of the D1 flywheel up to its maximum operating speed of 60,000 rpm. 

III. Problem Statement 

The GRC flywheel team has developed successful MB controllers for its first few flywheel modules by building 

custom controllers for each module. Although this approach works, it has several problems: the custom approach is 

time consuming, the resultant MB controllers are not easily portable to new module designs, and, since the approach 

is not model-based, the resulting controller does not necessarily provide the most stable architecture. Also, as of this 

writing, several new flywheel module designs are underway, each featuring design improvements over previous 

modules (e.g., higher energy density and redundant radial MB axes). The goal of this model-based MB controller 

development is to address the above problems, and develop an improved MB controller which will provide better 

controller performance, quicker design cycle time, and portability to new flywheel modules. Specifically, the goals 

of this effort are to develop a new controller which is: 

1. Model-based 

2. Developed considering flywheel rotordynamic modes 

3. Generic and portable to new flywheel modules 

In order to meet goal 1, a model is developed for the module and the controller, based on measurable system 

characteristics (properties of flywheel rotor, MB actuator, and MB controller). This model is validated through 

testing, and then the relevant model parameters are incorporated into the final controller. 

The natural dynamics of the spinning rotor must be considered while deciding on the controller approach in 

order to meet goal 2. Simulations run on the flywheel model demonstrate that the rotordynamic behavior is 

dominated by its rigid body modes. Thus, a new controller type called a modal controller was developed, to allow 

direct control of these rigid body modes during flywheel operation. 

In order to meet goal 3, the MB controller was designed with portability in mind. All of the measurable system 

parameters (e.g., rotor parameters such as Ip, It and mass, module parameters such as Zb2 and Zs2, and system 

parameters such as K) are included in setup files, instead of imbedded in the control code, as with previous 

controllers. Setting the system up with these generic variables improves controller portability and decreases ramp-up 

time required for levitation and full speed operation of a new model flywheel module. 

IV. System Model Development 

In this section, a model for the flywheel system (module and controller) is developed and validated. Measured 

parameter values will be used directly in the new controller, and the results of the analysis will lead to selection of 

the modal approach for the controller (next section). 

A. D1 Module Configuration 

The D1 flywheel and motor-generator are mounted on the same shaft. A five axis control system is used to 

levitate the rotor (fig. 1). Shaft location on each of the five axes is determined by the controller using non-contact 

eddy current sensors. The radial axes, for the sensors as well as the MBs, are defined as X1 and Y1 (bottom radial 

plane) and X2 and Y2 (top radial plane). Note that the sensors and actuators are offset from each other; this is an 

important consideration for MB controller implementation. The Z axis describes axial motion and sensing; the Z 
NASA/TM—2005-213877 3

sensor is at the top of the module, and the axial motion is generated by 

the combo bearing, so-called because it generates radial as well as 

axial forces. 

In addition to axial and radial sensors, the system also has a “once 

around” (OAR) sensor at the top of the module, which is used to 

generate angular position and speed information for use in the 

controller, and a shaft growth sensor, used to ensure rotor heating does 

not cause excessive shaft growth. 

Although each of the five MBs does contain permanent magnets, 

used to generate bias flux, all five axes use active MBs. When MB 

power is off, the rotor rests on rolling element backup bearings, which 

are located at the top and bottom of the module. 

A simplified schematic of one axis of the MB control loop is 

shown schematically in figure 2. The bearing control code in the MB 

controller generates command signals which provide shaft levitation. 

The PWM amplifier section converts these command signals to 

drive currents using pulse width modulated (PWM) amplifiers, then 

filters the currents. These currents are fed to the MB actuators, which 

generate forces to suspend the rotor. The rotor 

position is measured using non-contact eddy current 

sensors. Signals from the sensors are then processed 

by the signal conditioning system, and fed back to the 

bearing controller as inputs to the MB control 

algorithm. 

B. Decentralized PD Controller 

A very simple MB controller called a 

decentralized PD controller (d-PD controller) is now 

developed for test purposes; this controller looks 

quite a bit like the simplified schematic presented in 

figure 2. The d-PD controller can be built by setting 

up a control system consisting of five separate PD 

control loops: each of the five loops uses the sensors 

from a single axis as its input signal, and sends control signals to the MB actuator for that same axis as its output 

signal. This is called a decentralized system because each PD controller considers its own axis only, and has no 

information on any other axis in the system. Although rough approximations are used in the d-PD controller for the 

radial application (e.g., the incorrect assumption that sensors and actuators for each axis are co-located), levitation 

and low speed operation of the rotor for testing purposes is possible using this type of controller. Note that, although 

the d-PD controller is inadequate for use in the radial MB controller, due to the inherently simpler dynamics of the 

axial levitation, the d-PD is sufficient for axial control to full rotor speed. 

C. System Modeling 

In order to generate the flywheel system model, measurements need to be made for each of the key system 

processes described in figure 2. Once all measurements were made, models of the key processes were built into a 

complete system model, within a commercially available simulation package. 

The key processes which need to be modeled are: 

1. MB Controller 

2. PWM amplifier/filters 

3. Flywheel rotor 

4. Eddy current sensor system 

5. Sensor signal conditioning 

6. MB actuator 

Details of these measurements are as follows: 

Magnetic Bearing (Combo)

Magnetic Bearing (Radial)

Position Sensors (X2, Y2)

Position Sensors (X1, Y1)

Flywheel Rotor

Motor/Generator

Top Backup Bearing

Bottom Backup Bearing

Shaft Growth

Sensor

OAR and Position (Z)

Sensors

X

Y

Z

Figure 1.—D1 flywheel module schematic.

AMB

Controller

PWM

Amplifier

Eddy Current

Position Sensors

Magnetic

Bearing

Signal

Conditioning

HSS Module

HSS shaft

AMB

Controller

PWM

Amplifier

Eddy Current

Position Sensors

Magnetic

Bearing

Signal

Conditioning

HSS Module

HSS shaft D1 Shaft

AMB

Controller

PWM

Amplifier

Eddy Current

Position Sensors

Magnetic

Bearing

Signal

Conditioning

HSS Module

HSS shaft

AMB

Controller

PWM

Amplifier

Eddy Current

Position Sensors

Magnetic

Bearing

Signal

Conditioning

HSS Module

HSS shaft

AMB

Controller

PWM

Amplifier

Eddy Current

Position Sensors

Magnetic

Bearing

Signal

Conditioning

HSS Module

HSS shaft

AMB

Controller

PWM

Amplifier

Eddy Current

Position Sensors

Magnetic

Bearing

Signal

Conditioning

HSS Module

HSS shaft D1 Shaft

Figure 2.—Simplified schematic of MB control system. 
NASA/TM—2005-213877 4

A simple d-PD controller was selected and implemented to 

levitate the rotor during the modeling measurements. Modeling 

of this testing d-PD controller was straightforward; the d-PD 

control algorithm was simply transferred into the system model. 

Modeling of the PWM amplifier and filter was 

accomplished by performing a transfer function across the 

PWM and filter system while the flywheel was levitated. A 

model of this transfer function was then input into the system 

model. 

Next, a first principles model of an idealized flywheel rotor 

was developed. The free body diagram (FBD) of this idealized 

rotor, consisting of a cylindrical rotor on springs, is shown in 

figure 3. Note that this model assumes a rigid rotor; i.e., a 

simplifying assumption that the rotor has no bending modes is 

made. Using this FBD and known flywheel rotor characteristics 

(e.g., rotor mass and polar and transverse moments of inertia), a 

mathematical model of this idealized rotor was developed (ref. 1). 

This mathematical model was then included in the system model. 

Models of the eddy current sensor system and the sensor 

signal conditioning were straightforward. The specifications from 

the sensor system manufacturer contained sufficient information 

to build a model, and, since the sensor signal conditioning was 

designed and built in-house, mathematical representation of this 

subsystem’s transfer function was straightforward. 

This completes our system model, except for the model of the 

MB actuator. The two crucial properties which need to be 

measured on the radial actuators are the negative stiffnesses and 

current stiffnesses. Measurement of these properties was more 

complicated than the above; these properties are defined, and the 

measurement process is explained, in the next section. 

D. MB Actuator Properties 

MB actuator current stiffness is a measure of the force 

generated by the bearing given an input current. Current 

stiffness is designated as Ki, and its units are in Lb/A. 

Knowledge of each MB actuator’s Ki is critical for proper 

scaling of the controller output values. 

Each MB actuator contains permanent magnets (PMs), 

which are used to provide a bias field; these PMs cause the MB 

actuators to have an inherent negative stiffness. Negative stiffness is designated as Kn, and its units are Lb/in. Kn is 

easily defined by first considering standard spring stiffness. 

In the mass-spring system shown in figure 4, the mass will nominally come to rest at position xo, where the 

spring force F is equal to the force on the mass due to gravity, mg. When the mass is pulled in the positive x 

direction, the spring will generate increased force, and when the mass is moved in the negative x direction, the 

spring will generate less force. Plotting this force response generates a line which describes the (positive) spring 

stiffness. 

Now consider a ferromagnetic mass in the presence of a PM (fig. 5). As the mass moves in the positive direction, 

the attractive force from the PM is reduced, while motion in the negative direction increases the attractive force. For 

small displacements (a realistic assumption in the D1 MB actuators - backup bearings limit motion to ±7 mils) this 

motion is roughly linear, and the characteristic stiffness has opposite sign to the spring stiffness, hence the name 

“negative stiffness.” 

Knowledge of each MB actuator’s Ki and Kn values is required in order to complete the flywheel system model 

and the final MB controller. Unfortunately, direct measurement of the Ki and Kn values is very difficult; in order to 

facilitate these measurements, an indirect measurement technique had to be developed, using the d-PD controller. 

The first step in measuring Ki and Kn values is to measure the rotor’s natural frequency at each radial MB 

actuator, over a range of stiffnesses. While levitated on the d-PD type controller, the net stiffness of any of the five 

X

y

CM

Figure 3.—Schematic of idealized rotor. 

m

x F

x

F

mg

xo

m

x F

x

F

mg

xo

Figure 4.—Positive stiffness, spring. 

m

N

S

x F

x

F

xo

mg

m

N

S

x F

x

F

xo

mg

Figure 5.—Negative stiffness, permanent magnet.
NASA/TM—2005-213877 5

MB axes (where net stiffness equals stiffness from PD 

controller plus negative stiffness) is proportional to the 

natural frequency of the axis squared, and it can be 

measured by reducing the damping of the axis under 

test until the rotor oscillates (ref. 2). While levitated at 

0 rpm on the d-PD controller, these natural frequencies 

were measured for all five axes of the D1 module, at 

multiple proportional gain values, and the relationship 

between MB frequency and the controller stiffness was 

generated for each of the axes. A plot of the combo x 

axis actuator (“X2”) data for natural frequency (in Hz) 

versus combo MB controller stiffness Kpx2 is shown in 

figure 6. 

In order to calculate the actuator Ki and Kn values 

from the frequency data, a relationship between the 

frequency data and the Ki and Kn values must be 

developed. A FBD of the rotor for use in this derivation is shown in figure 7. 

During the frequency measurements, only one axis was allowed to oscillate; 

accordingly, the FBD (which depicts the combo x axis, X2, under test), 

models the radial end MB actuator, X1, as a hinge, and assumes no allowed 

motion in the Y direction. Thus, the forces acting on the flywheel include 

the applied controller force on the flywheel in the X2 direction (FX2), the 

negative stiffness in that direction (Knx2), and gravity at the CM. The 

equation of motion for this system is: 

Trα = ∑ M y I 

where ΣMy is the sum of the moments about the y-axis at the radial MB and 

ITr is the moment of inertia about the origin (ITr = IT + mZb1

2

, where IT is the 

moment of inertia about the center of mass). 

Considering this, the equation of motion now becomes 

( ) ( ) ( ). 2 2 1

2

1 2 2 1 2 T mZb1 mgZb Knx Zb Zb Fx Zb Zb I + α = − α − − α − −

The angle α is related to the center of mass displacement xcm such that 

xcm=-Zb1 α, 

and, assuming no derivative gain, the controller force Fx2 is 

cm b

s b x ix px x

Z

Z Z F K K K ⎟

⎟

⎠

⎞

⎜

⎜

⎝

⎛ − = 1

2 1

2 2 2

Incorporating the above two relationships into the equation of motion gives us 

( ) [ ] ( ) ( )( ) . 2 2 2 1 2 1

2

1 2 2 1 2 IT + mZb1 

x

cm = − mgZb − Knx Zb − Zb − Kix K px K Zb − Zb Zs − Zb xcm

This yields a natural frequency ωx2 that is a function of the negative stiffness Knx2, the current stiffness Kix2, and the 

proportional gain Kpx2: 

( ) ( )( ) . 1

2

2 2 1 2 2

2

1 2 2 1 2

2

T r

b nx b b b s b ix px

x I mZ

mgZ K Z Z Z Zb Z Z K K K

+

+ − + − − ω =

0

50

100

150

200

250

300

012345678

Kpx2

Fx2 (Hz)

nominal

gain

Kpx2= 0.8

Fit:

Position Stiffness Knx2= -3700 lb/in

Current Stiffness Kix2 = 13.0 lb/A

Test

Calculation

0

50

100

150

200

250

300

012345678

Kpx2

Fx2 (Hz)

nominal

gain

Kpx2= 0.8

Fit:

Position Stiffness Knx2= -3700 lb/in

Current Stiffness Kix2 = 13.0 lb/A

Test

Calculation

Figure 6.—D1 frequency versus keyboard stiffness-X2. 

z

x

CM

α

Knx2

FX2

y

Radial

MB

Combo

MB

xcm

z

x

CM

α

Knx2

FX2

y

Radial

MB

Combo

MB

xcm

Figure 7.—Ki and Kn calculation. 
NASA/TM—2005-213877 6

More simply, this equation can be written as 

( ) ( 2 ), slope 2 2 int 2

x2 ix px Knx ω = f K × K + f

where the intercept is a linear function of the negative stiffness, Knx2, 

( ) , 2

1

2

1 2 1

int

T b

b b b

I mZ

mgZ Z Z f

+

+ − = Knx2

and the slope is a linear function of the current stiffness, Kix2: 

( )( )

2

1

2 1 2 1

slope

T b

b b s b

I mZ

Z Z Z Z K f

+

− − = Kix2

The above two equations form the desired relationship between the experimentally determined natural 

frequency data and the Ki and Kn values for the MB actuator under test. When the frequency data (ω2

x2 versus Kx2) 

is plotted as a line, the slope will be fslope and the intercept fint. Since all other parameters in the above equations have 

been measured, Knx2 and Kix2 can then be estimated from this plot. 

Using the process developed above, the negative stiffness and current stiffness for each of the radial MB 

actuators was calculated. The results are presented in table 1. 

Once Ki and Kn measurements were made, the system model was complete. Next, validation runs of 0 rpm test 

step functions on the D1 module under d-PD control were performed, and compared to simulations on the system 

model. Sufficient agreement between the system model simulations and experimental data confirmed correct 

measurement of the actuator Ki and Kn values, and constituted validation of the system model for the 0 rpm test 

case. 

TABLE 1.—RADIAL BEARING STIFFNESSES 

Stiffness Value 

Kn2 (2-plane negative stiffness) –3700 Lb/in 

Ki2 (2-plane current stiffness) 13 Lb/A 

Kn1 (1-plane negative stiffness) –8500 Lb/in 

Kil (1-plane current stiffness) 10 Lb/A 

The measured Ki and Kn values were then incorporated directly into the controller. The Ki values are used at the 

output of the controller, to correctly scale MB command signals for output to the PWMs, while the Kn values are 

used to compensate for the MB negative stiffness in the modal controller development (below). 

V. Modal Controller Development 

Thus far, the controller meets two of the three main goals specified in the problem statement: the controller is 

model based, and it has been designed to be generic and portable. However, we do not yet have a controller which is 

designed to directly affect the natural rotordynamics, which leaves goal 2 unsatisfied. In this section, we develop a 

controller which meets goal 2. 

First, the rotordynamics of the D1 rotor are studied, with a first principles model of the rotor over the flywheel 

operating speed range; this simulation demonstrates the behavior of the rotor rigid body modes. Based on these 

results, a modal controller, so called because it directly controls the rigid body modes of the rotor, is developed. 

Since the modal controller is designed to directly impact the rotor natural dynamics, it satisfies goal 2 of the problem 

statement. 

Next, implementation and testing of the modal controller on the D1 is performed, and experimental data is 

presented. 

A. Rigid Body Modes and the Modal Controller 

The d-PD controller used thus far in testing does have several benefits: it is very simple to implement, and 

intuitive to debug and tune. Unfortunately, since the d-PD does not consider plant rotordynamics, it will not provide 

stable radial control of the rotor at high speeds. 
NASA/TM—2005-213877 7

Ideally, the MB controller must take into 

account the dynamics of the spinning rotor. In 

order to understand and quantify the 

rotordynamics of the D1 rotor, the first 

principles model of the idealized rotor (fig. 3) 

was simulated over the designed operating 

range (0 to 60 k rpm). The simulation 

demonstrates that this rotor type has two 

natural rigid body modes: the tilt mode and 

the center of mass (CM) mode. Using the 

simulation, these rigid body modes were 

mapped for the rotor operating speed range; 

results are presented in figure 8. The tilt and 

CM modes are called rigid body modes, 

because they do not cause rotor bending; 

instead, they describe the natural motion of a 

stiff rotor. The tilt mode describes rotor tilt 

around its center of mass, and the CM mode 

describes non-tilting motion of the rotor, at 

the center of mass. These modes are depicted in figure 9. Understanding 

changes in these mode frequencies with speed is critical, for proper tuning 

of our new controller. 

The model of the rotor shows that there are actually a pair of CM and a 

pair of tilt modes in the rotor (both CM modes are at the same frequency at 

0 rpm, as are the tilt mode frequencies), and the frequencies of these CM 

and tilt modes are a function of the stiffnesses of the springs used to support 

the ideal rotor. As seen in figure 8, the CM mode frequencies do not change 

much with rotor speed. However, as the rotor spins, the theoretical tilt mode 

frequencies do change as a function of rotor speed; in fact, once the rotor is 

spinning, the tilt modes become whirl modes, which separate with speed 

into tilt forward whirl (FW) and tilt backward whirl (BW) modes, where 

FW rotation is in the same direction as rotor rotation, and BW rotation is in the direction opposite rotor rotation. The 

BW mode frequency decreases with rotor speed, while the FW frequency increases with speed, and theoretically 

asymptotes to Ip/It times the synchronous speed (1/rev) at high speeds (note that the D1 rotor Ip/It ratio is 0.8; in the 

simulation in figure 8, the FW mode reaches 800 Hz at 60 k rpm = 1000 Hz). The product of the BW and FW 

frequencies, in theory, remains the same at all speeds; thus, the FW*BW product, which can be measured at 0 rpm, 

should remain constant through the operating range. 

The results of this modeling effort clearly explain why the simple d-PD controller is insufficient as an MB 

controller–the decentralized proportional and derivative gains of the d-PD controller do not allow us access to the 

rigid body modes. A new type of controller must be built to do this–the modal controller. 

Obviously, our flywheel rotor does not look like the idealized rotor used to develop the idealized model used to 

map the theoretical rigid body modes; the D1 MB actuator stiffnesses are negative, not positive. Our approach to 

creating a modal controller is undo these differences; to convert the flywheel rotor in the D1 system into a rotor 

similar to the idealized rotor, then to make a controller which considers the rigid body modes (natural rotor 

dynamics). 

The first step in “undoing” the nonideal nature of the D1 controller is to cancel the negative stiffness of the MB 

actuators. 

B. Negative Stiffness Cancellation: Free Rotor 

The measured Kn values for both sets of radial MB actuators are used to cancel the effect of the negative 

stiffness in the actuators. This is done in the controller by adding an equal and opposite (positive) stiffness to the 

MB command signal, which counteracts the MB actuator negative stiffness. 

Since the radial sensors and actuators are located at different positions along the shaft (see fig. 1), the sensor 

positions which are input to the controller have to first be converted to reflect the rotor position at the actuators. This 

is done using coordinate transformations, based on the locations of both actuators and both sets of sensors relative to 

each other. 

D1 - Rigid Body Modes (Theoretical) 

(Rigid Body Model)

0

100

200

300

400

500

600

700

800

900

0 10000 20000 30000 40000 50000 600

Rotor Speed (RPM)

Mode Frequency (Hz)

FW

CM

BW

1/rev

Figure 8.—Theoretical D1 rigid body modes. 

Figure 9.—Rotor rigid body modes. 
NASA/TM—2005-213877 8

Next, the rotor position at each actuator is multiplied by the opposite sign Kn value for that actuator. This value 

is then output to the MB actuators as a negative stiffness canceling force. 

The net effect of negative stiffness cancellation is that the rotor becomes a “free rotor,” unimpacted by negative 

stiffness, which the modal controller can then be applied to. Now that the negative stiffnesses of each of the 

actuators has been cancelled, we will add an appropriate positive stiffness (we will add damping, also) which makes 

the flywheel rotor more closely approximate the idealized rotor presented in figure 3. 

C. Controlling Rigid Body Modes: Modal Controller 

Now that the effects of negative stiffness have been cancelled, the modal controller can be developed. The goal 

of the modal controller is to allow separate control of the stiffness (thus frequency) and damping of the rotor’s rigid 

body modes. 

The first step is to convert the rectilinear sensor inputs X1, Y1, X2, and X2 into modal coordinates, which describe 

the coordinates of the rotor in terms of the rigid body modes. The locations of the position sensors and actuators 

with respect to the rotor center of mass are known, and are used to generate transformation matrices which perform 

these conversions. Thus, inside of the modal controller, X1, Y1, X2, and Y2 are converted to Xcm and Ycm (the relative 

location of the rotor center of mass with respect to its centered position) and Xtilt and Ytilt (the angles that the rotor is 

tilted about the Y and X axes, respectively). 

Once the sensor signals have been converted to modal coordinates, separate PD controllers are applied to the sets 

of modal coordinates. These modal PD outputs are then converted from modal coordinates to rectilinear MB 

actuator coordinates, and summed with the negative stiffness compensation signal (“NS CMD”) to form the MB 

controller output. A simplified schematic of the modal controller is shown in figure 10. 

D. Verification and Tuning of Modal Controller 

As desired, the separate tilt and CM modal PD controllers developed in the previous section allow independent, 

direct control of the stiffness and damping of the rotor rigid body modes-modal PD controller proportional gains 

Kcm and Ktilt provide control of the rigid body mode stiffnesses (and thus frequencies), and damping of the rigid 

body modes is controlled by modal PD controller derivative gains Ccm and Ctilt. 

Now that the modal controller has been built, the next step is to verify that we have achieved modal separation. 

After that, the controller can be tuned. 

Due to the complexity of setting up the modal controller (multiple coordinate transformations), we would like to 

verify that we have achieved modal separation. This can be done by first levitating the rotor on the modal controller, 

then introducing a step command input into a test plane (for example, the X1-X2 plane) and dropping the damping of 

the mode under test. Modal separation can be verified by observing the underdamped response of the rotor position 

in time. If the modes have been properly separated, the position sensor signals during ring down for the plane under 

test should be in phase while the CM mode is underdamped, and out of phase while the tilt mode is underdamped. 

This test was performed, for the CM and the tilt modes, in both the X and the Y planes, and modal separation was 

verified. 

Once modal separation has been verified, tuning can commence. The first step to tuning the modal controller is 

deciding the desired mode frequencies for the controller; with the modal controller, the 0 rpm CM and tilt mode 

frequencies can be set separately. 

Position

sensors

Position 

setpoints

Σ XFM sensor 

to modal

Xcm

Ycm

Xtilt

Ytilt

XFM 

tilt Æ MB

Σ

XFM 

CM Æ MB

NS 

CMD

MB

tilt PD

CM PD

X1, Y1

X2, Y2

Fx1, Fy1

Fx2, Fy2

Modal Controller

Position

sensors

Position 

setpoints

Σ XFM sensor 

to modal

Xcm

Ycm

Xtilt

Ytilt

XFM 

tilt Æ MB

Σ

XFM 

CM Æ MB

NS 

CMD

MB

tilt PD

CM PD

X1, Y1

X2, Y2

Fx1, Fy1

Fx2, Fy2

Modal Controller

Figure 10.—Schematic of modal controller implementation. 
NASA/TM—2005-213877 9

As was mentioned above, once the rotor is spinning, the 0 rpm tilt modes split into forward whirl (FW) and 

backward whirl (BW) modes; the BW frequency decreases with rotor speed, while the FW mode frequency 

increases with speed, theoretically asymptoting to the Ip/It ratio of the rotor at high speeds. Since the Ip/It for the D1 

rotor is less than 1 (designed intentionally at 0.8), the FW mode will “cross over” the rotor synchronous frequency 

while the rotor is spinning up. To allow safer operation (minimal impact of interaction between the synchronous and 

FW mode), we would like this crossover to occur at a relatively low speed. Therefore, the tilt 0 rpm frequency is set 

to 30 Hz. Note that this also sets the tilt stiffness to a relatively low value; although this may seem counterintuitive, 

this low tilt stiffness does not negatively impact flywheel operation. 

Per the rotor model, the CM mode frequencies do not change with rotor speed. Based on this, the CM mode 

frequency was set to 85 Hz. This frequency was selected because it is far away from the initial tilt frequency of 

30 Hz, and also far from 60 Hz and its harmonics (which are typically present to some extent as noise in the system), 

and well below the controller bandwidth. Note that, due to the selection of the higher frequency, the CM stiffness is 

higher than the tilt stiffness. 

Now that the desired 0 rpm CM and tilt mode frequencies have been selected, the next step is to set them in the 

system by tuning the Kcm and Ktilt gains in the modal controller. This can be done by performing a test similar to the 

one used to verify modal separation. Once the rotor is levitated on the modal controller and the damping on the 

mode under test has been decreased, the mode frequency can be observed by watching the underdamped rotor 

response to a test input square wave signal. Since the mode frequency is proportional to the square root of the mode 

stiffness (the proportional gain for the mode under test), 0 rpm mode frequencies can be quickly dialed in for each of 

the modes by iteratively adjusting the appropriate modal controller gain and running the above measurement. 

E. Operation of Modal Controller 

The modal controller described above has 

been implemented and tuned, and has been 

used regularly to spin the D1 up to its full 

rated speed of 60 k rpm. 

During flywheel operation, the data for 

position sensors X1, Y1, X2, and Y2 is fed 

into a spectrum analyzer for analysis. This is 

helpful, because it allows the operator to 

monitor, among other things, the status of the 

rigid body modes. A spectrum of the D1 

radial position sensors while operating at 

40,000 rpm is presented in figure 11. The 

synchronous line is at 667 Hz, corresponding 

to the rotor spin speed. Note that, as expected 

at this speed, the rigid body modes are all 

below the synchronous speed. The forward 

whirl is visible at 500 Hz (just under the 

theoretically predicted frequency of 534 Hz 

([Ip/It]*667 Hz), while, as desired, the CM 

mode has stayed at about 85 Hz, even at this 

high speed. The BW is not visible on this 

measurement; the predicted BW frequency is 

900/FW = 1.8 Hz, which is well below the 

range of the analyzer as configured, but has 

been verified in other measurements. Note that 

the 60 Hz line is visible, along with harmonics 

at 120 and 180 Hz, as are module housing 

modes at 15 and 30 Hz. 

Using the spectrum analyzer, a map of 

rigid body mode locations with speed has been 

generated for the D1 operating range (fig. 12). 

Note that this figure closely matches the 

theoretical model presented in figure 8. As 

expected, the CM mode starts at about 85 Hz 

CM mode @ 85 Hz FW @ ~500 Hz

BW <10 Hz

Synchronous 

(667 Hz)

Figure 11.—Spectrum of D1 radial position sensors at 40 k rpm. 

0

100

200

300

400

500

600

700

800

900

1000

0 10000 20000 30000 40000 50000 60000

Rotor Speed (RPM)

Mode Frequency (Hz)

FW

BW

CM

1/rev

(Ip/It)*1/rev

Rotordynamic Modes

0

100

200

300

400

500

600

700

800

900

1000

0 10000 20000 30000 40000 50000 60000

Rotor Speed (RPM)

Mode Frequency (Hz)

FW

BW

CM

1/rev

(Ip/It)*1/rev

Rotordynamic Modes

Figure 12.—Measured D1 rigid body modes. 
NASA/TM—2005-213877 10

and moves very little with speed. Also as predicted, the BW mode decreases frequency with speed, and the FW 

mode starts at 30 Hz and asymptotes close to the expected 0.8*synchronous, or 1/rev, line (the FW mode deviates 

from the Ip/It line due to the influence of the first bending mode, as discussed in the next section). 

These results demonstrate that, as desired, the modal controller allowed direct control of the natural rotor 

dynamics (rigid body modes) during flywheel operation. The system modeling effort was successful; the rigid body 

modes behaved according to the theoretical predictions, and the controller worked as designed. Once other MB 

controller best practices were incorporated into he controller, such as synchronous notching and rotational noise 

correction (ref. 2), the controller became capable of regular hands-free control of the rotor from zero speed up to full 

speed operation. 

VI. Rotor Bending Mode Compensation 

The idealized model of the flywheel rotor used in the previous section assumed that the rotor did not bend during 

flywheel operation (rigid rotor assumption). This assumption is false; real rotors can bend, and proper handling of 

the rotor bending modes is crucial for safe flywheel operation. 

Since real rotors do have bending modes, we would ideally like to design them such that the first bending mode 

is well above any flywheel operating speed; this would make excitation of the bending modes much less likely, and 

would make the MB controller design simpler. High bending mode frequencies can be achieved by designing a 

stiffer rotor; however, a stiffer rotor may be shorter or heavier, which will impact other important system 

performance specifications. Because of these design tradeoffs, the rotors of the flywheels designed at GRC do have 

bending modes which are close to, and can sometimes overlap, the rotor synchronous frequency. Excitation of the 

bending modes during flywheel operation can cause the rotor to resonate at the bending mode frequency, which can 

have catastrophic results, since the MB actuators cannot control this oscillation. This section describes development 

of the subsystem used to compensate for the rotor bending modes during operation. 

A. Bending Mode Prediction 

At 0 rpm, the D1 first and second bending modes are 

at about 1100 and 1470 Hz. This can easily be verified; 

by levitation on a poorly tuned d-PD controller, the rotor 

can be made to resonate at these frequencies. The 0 rpm 

bending modes are higher in frequency than the top speed 

of the rotor (60 k rpm = 1 kHz), however, like the whirl 

rigid body modes, the bending modes move with 

frequency. In order to understand bending mode behavior 

in the D1 flywheel, a theoretical map of bending mode 

location as a function of flywheel speed was generated. 

The first step in generating this map was to develop 

an FEM model of the D1 rotor. Inputs to the FEM model 

include the sizes and mechanical properties of each 

section of the D1 rotor; in addition, a rap test of the rotor 

was performed, to measure the non-spinning rotor 

bending mode shapes. A schematic of this FEM model, 

depicting the excited second bending mode of the D1 

rotor, is presented in figure 13). 

The completed FEM model was used to simulate the 

spinning rotor, and map the theoretical D1 bending mode 

shapes as a function of speed. The theoretical prediction 

of mode frequencies as a function of rotor speed is shown 

in figure 14. Note that the model predicts that both the 

first and second bending modes will split with speed, 

forming backward and forward bending modes, 

designated first bending forward whirl (1B FW), first 

bending backward whirl (1B BW), second bending 

forward whirl (2B FW) and second bending backward 

whirl (2B BW). 

4 8 12 16

20 24 28

32 36 40 44 4850

-6

-4

-2

0

2

4

0 2.5 5 7.5 10 12.5 15 17.5

Axial Location, inches

Shaft Radius, inches

f=87722.0 cpm

N=1 rpm

4 8 12 16

20 24 28

32 36 40 44 4850

-6

-4

-2

0

2

4

0 2.5 5 7.5 10 12.5 15 17.5

Axial Location, inches

Shaft Radius, inches

f=87722.0 cpm

N=1 rpm

Figure 13.—FEM model of D1 second bending mode. 

1B BW

Rotor Speed (RPM)

D1 Bending Modes - Prediction

900

1000

1100

1200

1300

1400

1500

1600

1700

1800

0 10000 20000 30000 40000 50000 60000

Mode Frequency (Hz)

1B FW

2B BW

2B FW

1B BW

Rotor Speed (RPM)

D1 Bending Modes - Prediction

900

1000

1100

1200

1300

1400

1500

1600

1700

1800

0 10000 20000 30000 40000 50000 60000

Mode Frequency (Hz)

1B FW

2B BW

2B FW

Figure 14.—Map of predicted bending modes. 
NASA/TM—2005-213877 11

B. Bending Mode Compensation: Moving Notch Filters 

Since the MB actuators can only move the rotor at two points along the shaft, control of bending modes (which 

resonate along the entire length of the rotor) is impossible with the MB controller. As the excited bending modes 

cannot be controlled, the controller is designed to simply not excite them. This is done using moving notch filters; 

these filters prevent any information at the bending mode frequencies from reaching the MB controller, thus 

preventing any controller output at frequencies which would excite the bending modes. The controller code 

implementation for these moving bending mode notches is shown in figure 15. 

Implementation of the moving notch code was completed as follows: first, a function was fit to the predicted 

bending mode information, which resulted in functions for all four bending modes versus rotor speed. These 

functions were then entered into the code, using the rotor speed (as calculated using the OAR sensor, fig. 1) as the 

input. Predicted bending mode frequencies were then passed on to a set of four daisy-chained digital moving 

notches. The raw position sensor information is input to this filter set, and the output of the filters, which is passed 

onto the modal controller, contains the position inputs minus any information at any of the first and second bending 

modes. 

C. Bending Mode Verification 

In order for the moving notch filters to properly compensate for the rotor bending modes, the predicted locations 

of the first and second FW and BW bending modes must be accurate, at all operating speeds. In order to fine-tune 

the theoretical calculations, a verification run was performed, during which the location of all four bending modes 

was mapped out. 

The verification run was done by performing mode location tests while holding flywheel speed constant at 

regular increments. During a speed hold, the depth of each notch filter under test was gradually decreased, while the 

position sensor information was carefully monitored on the spectrum analyzer. This process allowed the bending 

mode to be excited under controlled conditions. Once the bending mode appeared on the spectrum analyzer, its 

frequency was noted, and the notch filter was placed back to full depth. This process was repeated for all four 

bending modes, at regular speed increments, during initial high-speed runs on the D1 unit. The actual mapped mode 

information, along with the initial theoretical 

predictions, is shown in figure 16. Note that, 

although there are slight discrepancies, the 

theoretical data matches the actual bending mode 

maps very well, predicting the splitting of the 

modes into forward and backward modes and the 

general shape of the mode variation with rotor 

speed. 

Note that mode 1B BW is predicted to drop 

below 1 kHz at full speed (60 k rpm); this means 

that operation at speeds near 60 k rpm could 

possibly excite this bending mode. However, this 

has not been a problem, as this mode is difficult 

to excite at higher speeds. In fact, during 

mapping effort, we were unable to excite this 

mode at higher speeds (note missing data beyond 

position

sensors

Predicted

1B BW

speed

to 

controller

Predicted

1B FW

Predicted

2B BW

Predicted

2B FW

position

sensors

Predicted

1B BW

speed

to 

controller

Predicted

1B FW

Predicted

2B BW

Predicted

2B FW

Figure 15.—Bending mode compensation: moving notch filters. 

900

1000

1100

1200

1300

1400

1500

1600

1700

1800

0 10000 20000 30000 40000 50000 60000

Rotor Speed (RPM)

Mode Frequency (Hz)

D1 Bending Modes – Prediction vs. Test Data

900

1000

1100

1200

1300

1400

1500

1600

1700

1800

0 10000 20000 30000 40000 50000 60000

Rotor Speed (RPM)

Mode Frequency (Hz)

D1 Bending Modes – Prediction vs. Test Data

Figure 16.—Predicted and measured bending modes. 
NASA/TM—2005-213877 12

33 k rpm for 1B BW in fig. 16). Also, note that the 

interaction of the FW tilt mode and the 1B FW mode 

is the cause of the FW tilt frequency decreasing below 

the (Ip/It)*1/rev line at higher speeds (fig. 12). 

Information from the bending mode verification 

run was used to fine-tune the bending mode 

calculations used in the moving filter set. 

D. Bending Mode Performance–MB Current 

Spectrum 

As with the input sensor position data (fig. 11), the 

commanded MB currents are observed on a spectrum 

analyzer during flywheel operation. This spectrum 

demonstrates the operation of the bending mode filters. 

A sample MB current spectrum is shown in figure 17; 

this plot shows the commanded currents while the D1 

is levitated and spinning at 40 k rpm. Operation of the notch filters can be seen in the current information above 

1 kHz; the controller has prevented any output current (and thus excitation) at the locations of the 1B BW, 1B FW, 

2B BW, and 2B FW modes. Preventing controller output at the bending mode frequencies has prevented any 

excitation of the bending modes during D1 operation to full speed. 

VII. Conclusions 

The goals of the magnetic bearing controller modeling and design effort, as presented in the Problem Statement, 

have been successfully met. Models were developed for the overall system, the rotor rigid body modes and the rotor 

bending modes, then successfully validated and incorporated into the final controller design. Modeling of the rotor 

rigid body behavior allowed development of the modal controller, which allows direct control of the flywheel rotor 

rigid body modes (rotordynamics). The structure of the controller, designed with a setup file with variables left as 

measurable values, makes it generic and portable to new flywheel modules. Data taken on the D1 flywheel module 

during high speed operation demonstrates successful operation of the MB controller. 

References 

1. Vance, J.M., Rotordynamics of Turbomachinery, Texas A&M University, College Station, Texas, 1988, 

Chapter 4. 

2. Dever, T.P., et al., “Magnetic Bearing Controller Improvements for High Speed Flywheel System,” August 

2003 IECEC Conference Proceedings, Portsmouth, VA, 2003. 

Bending 

Mode 

Notches

Figure 17.—Predicted and measured bending modes. 
This publication is available from the NASA Center for AeroSpace Information, 301–621–0390.

REPORT DOCUMENTATION PAGE

2. REPORT DATE

19. SECURITY CLASSIFICATION

 OF ABSTRACT

18. SECURITY CLASSIFICATION

 OF THIS PAGE

Public reporting burden for this collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources,

gathering and maintaining the data needed, and completing and reviewing the collection of information. Send comments regarding this burden estimate or any other aspect of this

collection of information, including suggestions for reducing this burden, to Washington Headquarters Services, Directorate for Information Operations and Reports, 1215 Jefferson

Davis Highway, Suite 1204, Arlington, VA 22202-4302, and to the Office of Management and Budget, Paperwork Reduction Project (0704-0188), Washington, DC 20503.

NSN 7540-01-280-5500 Standard Form 298 (Rev. 2-89)

Prescribed by ANSI Std. Z39-18

298-102

Form Approved

OMB No. 0704-0188

12b. DISTRIBUTION CODE

8. PERFORMING ORGANIZATION

 REPORT NUMBER

5. FUNDING NUMBERS

3. REPORT TYPE AND DATES COVERED

4. TITLE AND SUBTITLE

6. AUTHOR(S)

7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES)

11. SUPPLEMENTARY NOTES

12a. DISTRIBUTION/AVAILABILITY STATEMENT

13. ABSTRACT (Maximum 200 words)

14. SUBJECT TERMS

17. SECURITY CLASSIFICATION

 OF REPORT

16. PRICE CODE

15. NUMBER OF PAGES

20. LIMITATION OF ABSTRACT

Unclassified Unclassified

Technical Memorandum

Unclassified

National Aeronautics and Space Administration

John H. Glenn Research Center at Lewis Field

Cleveland, Ohio 44135–3191

1. AGENCY USE ONLY (Leave blank)

10. SPONSORING/MONITORING

 AGENCY REPORT NUMBER

9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES)

National Aeronautics and Space Administration

Washington, DC 20546–0001

Available electronically at http://gltrs.grc.nasa.gov

September 2005

NASA TM—2005-213877

AIAA–2004–5626

E–15248

WBS–22–319–20–M1

18

Modeling and Development of a Magnetic Bearing Controller for a High Speed

Flywheel System

Timothy P. Dever, Gerald V. Brown, Kirsten P. Duffy, and Ralph H. Jansen

Flywheel; Magnetic bearing; Controller

Unclassified -Unlimited

Subject Categories: 20 and 44

Prepared for the Second International Energy Conversion Engineering Conference sponsored by the American Institute

of Aeronautics and Astronautics, Providence, Rhode Island, August 16–19, 2004. Timothy P. Dever, QSS Group, Inc.,

21000 Brookpark Road, Cleveland, Ohio 44135; Gerald V. Brown, NASA Glenn Research Center; and Kirsten P. Duffy

and Ralph H. Jansen, University of Toledo, 2801 W. Bancroft Street, Toledo, Ohio 43606. Responsible person, Timothy

P. Dever, organization code DR, 216–433–2384.

This paper describes a modeling effort used to develop an improved type of magnetic bearing controller, called a

modal controller, for use on high speed flywheel systems. The controller design is based on models of the flywheel

system, is designed to directly control the natural dynamics of the spinning rotor, and is generic enough to be readily

adapted to future flywheel systems. Modeling and development are described for two key controller subsystems: the

modal controller subsystem, which allows direct control over the rotor rigid body modes, and the bending mode

compensation subsystem, which tracks, and prevents interference from, the rotor bending modes during flywheel

operation. Integration of modeling results into the final controller is described and data taken on the NASA Glenn D1

flywheel module during high speed operation are presented and discussed. The improved modal controller described in

this paper has been successfully developed and implemented and has been used for regular hands-free operation of the

D1 flywheel module up to its maximum operating speed of 60,000 RPM.