INTRODUCTION Data Driven Controller Design · The data driven method is to “train” a controller...

Preview:

Citation preview

INTRODUCTION

The control system designed in this project is for a servomechanism in a hard

disk drive. These drives contain spinning disks. On the disks are circular

patterns of magnetic dots. There are up to one trillion microscopic dots in a

drive. Each represents a binary number due to its direction of magnetic

polarization. Information is accessed by the servomechanism, which positions

the read/write head over these magnetic bits. The majority of our digital

information is stored on hard drives in large datacenters.

The actuators in a typical servomechanism consist of a pivot bearing and

piezoelectric element. During track following they produce small rotations which

add to produce an overall linear displacement of the head off the track center.

The actuator dynamics are as shown above as bode plots of the open loop

frequency response of the pivot bearing (also known as Voice Coil Motor or

VCM) and piezoelectric (also known as Micro Actuator or MA). The plots show

multiple servomechanisms, and one can tell the hardware are slightly variable

between drives. Thus engineers who want a single controller for all drives have

to solve a robust control problem.

This project only considers keeping the head over one track. Because the bits

are 10−9m in size and the disks spin at 104 rpm small drive vibration as from a

truck passing by can cause the head to go off track and misread the bits. The

controller has access to the head position relative to the center of the track. This

is calibrated accurately and rapidly by a signal read off the disk.

An engineer can use the 𝐻∞ suboptimal control algorithm Musyn in MATLAB for

solving this problem. Above is the schematic where 𝑑 is all the inputs (in this

case a disturbance) and 𝑒 is all outputs. The uncertainty block Δ is used to

capture all possible drive dynamics, so that the resulting controller is robust to

different drives. 𝐾 is a robustly performing controller

METOHDS

• The data (open loop hardware responses) is first processed. This consists in

cleaning up data acquisition errors: removing erroneous data points and

applying known correction factors.

• Next the data is modeled (seen below): Systune works on parametric models

of dynamical systems, as opposed to frequency domain data.

• All system models are combined in an interconnection. This is the MATLAB

object that contains all the dynamical system blocks, including the 𝐻∞bounds, and their connections, similar to the block diagram below. Since the

dataset consists of 𝑛 drives, the controller is connected to 2𝑛 blocks, two for

each drive. Similarly there are 3𝑛 outputs, three for each drive. The entire

interconnection (excepting the controller [𝐾𝑉𝐶𝑀 𝐾𝑀𝐴]) forms the generalized

plant 𝐺 (see simplified block diagram (∗) to the immediate left).

Note the weighted outputs 𝑒𝑉, 𝑒𝑀, etc. The weights represent performance

objectives on these signals. For example 𝑒𝑦 is the head position. The signal is

large if the head position varies from the center of the track. Because the

actuators are not effective at high frequencies this signal is expected to be

larger at higher frequencies. This is reflected in the weight: the penalty is higher

for low frequencies, and lower for high frequencies. This tells the algorithm

where to work hardest on minimizing the error: particularly at low frequencies

where we know the actuators are capable of staying over the track center.

Shown above is the inverse of the weight: which is a performance “Goal”. The

gain from disturbance to error (sensitivity) should be very low for low frequency

disturbances, but is allowed to reach a small value around 1 at higher

frequencies.

Use of MSI

In MATLAB the Systune function for 𝐻∞ cost optimization is Hinfstruct. I used an

MSI node with 64 cores to parallelize the Hinfstruct function: it started the

training from 1000 different initial conditions. Each search takes 5-10 seconds.

MSI allowed me to conduct this project. It would not have been possible on the

2 and 4 core machines in the lab. The total computation time in the Mesabi

node is 2-4 hours for the results shown to the left.

MOTIVATION

The figure below illustrates how the 𝜇-synthesis design method is conservative.

The blue dots represent the frequency response (of an actuator), and the circles

are various ways of modeling the set of all possible responses. There may be

controllers that perform well on the data that do not perform well on all possible

LTI dynamics inside the circles.

The data driven method is to “train” a controller for a given dataset. This can be

done in MATLAB with the Systune function:

1. Start with a controller, tune the parameters and search for additional

performance that was missed

2. Obtain a controller directly from the data with no

The first case has the advantage that there is a known controller, but the final

controller will have the same robust performance guarantees of the original,

though it may perform better.

This project focused on the second case, a controller that is only designed to

work on a dataset.

HYPOTHESIS

By specifying goals and constraints, a computer algorithm can “train” a

controller to achieve closed-loop performance given a dataset of several

hardware dynamical system models.

The schematic above is meant to illustrate that instead of an approximate

uncertainty set Δ, Systune will search for a controller that performs well on all

data available to the engineer. This is a nonconvex optimization however I

predicted with the available computational resources a controller could be

found.

(∗)

RESULTS

The Systune algorithm found or trained a controller that achieved the sensitivity

objective (blue curve abolve). The red curves are the sensitivity in each of the

individual drives, based on the parametric models of hardware dynamics.

However, as shown above. The controller gains 𝐾𝑉𝐶𝑀 (red curve) and 𝐾𝑀𝐴 (blue

curve) are high. This is not an intuitive result that can be deduced from the data,

but the actual drive engineers are able to look at plots of controller gain like the

one above and determine whether they think the controller is feasible. These

gains are too high and would result in voltage inputs to the actuators that would

saturate them. In practice the linear models would no longer be applicable and

the good sensitivity result could not be obtained.

To accommodate this, additional weights are added, penalizing high actuator

effort. The plot above is the sensitivity obtained on models with an effort

penalty.

DISCUSSION

1. The project focused on 𝐻∞ cost

2. The modeling process introduces inaccuracies that the algorithm will treat as

ground truth, resulting in a controller that is not as good on real data. This is

combatted by making the models more accurate. That introduces more work

for the engineer, who, if the hardware dynamics are realistic and

complicated, has to hand check each model for accuracy.

3. Wrapping any control design process, be it classical or optimal control, in a

loop that tunes numeric parameters for added performance has not yet been

fully explored. Due to the nature of the search algorithm some applications

will probably work better than others.

4. The use of computing resources such as MSI should not be overlooked by

the control engineer. Even though optimization of frequency domain objects

may not resemble “learning,” nonconvex searches such as these do have

the potential to either facilitate or improve control in various applications.

Data Driven Controller DesignEdward Samson (P.I. Prof Peter Seiler)

University of Minnesota

REFERENCESSchroeck, Steven J., and William C. Messner. "On controller design for linear time-invariant dual-input single-

output systems." Proceedings of the 1999 American Control Conference (Cat. No. 99CH36251). Vol. 6. IEEE, 1999. (Servo shematic in the Introduction section)

Honda, Masanori. "Temperature Dependent Robust Control of Hard Disk Drives Using Parameter Varying Techniques." (2016). (Block diagrams, bode plots excepting the results)

Recommended