ECE141 Final Design Project: Controller Design for a Fast Tool Servo (FTS)

$35.00

Category: You will Instantly receive a download link for .zip solution file upon Payment

Description

5/5 - (6 votes)

1 Introduction
In this project, you will design controllers for a Fast Tool Servo (FTS) system. This project is a slightly
modified version of the project prepared by Prof. David Trumper at MIT and is based on the work
done by X. Lu in his Ph.D. thesis. For more information, please refer to the associated course website:
(+) Link to the FTS Design Project for Course 2.14 at MIT
Also to review Fast Tool Servo technology and applications, as well as recent advances, you can refer
to one of their articles here:
(+) Fast Tool Servos: Advances in Precision, Acceleration, and Bandwidth
The design project involves the following tasks:
(i) Design an OpAmp-based high-bandwidth controller for the current control loop for driving the
actuator.
(ii) Identify the dynamics of the FTS electromechanical plant from the measured frequency response
data.
(iii) Design a position controller for the servo system in order to eliminate the steady-state tracking
error for a constant position reference (i.e., step input), and at the same time, minimize the
steady-state tracking error for a sinusoidal reference position trajectory, in the presence of sensor
noise.
Fast Tool Servos can be used with diamond turning machines and provide the ability to cut ultraprecise non-symmetric contoured micro features at very high speeds. They have found applications in
different areas of high-precision industrial manufacturing such as contact lenses, optical films, microoptical devices and lenses, etc.
Figure 1 shows an FTS used in conjunction with a diamond turning machine, and Figure 2 shows
the high-level schematics of FTS:
ECE141 – Principles of Feedback Control Design Project 3
Figure 1: Fast Tool Servo used with a Diamond Turning Machine
Figure 2: FTS Schematics
2 MATLAB Design Template
All your simulations for this project will be done in MATLAB. For your convenience and for consistent
presentation of your results, you are provided with a MATLAB template m-file posted on CCLE:
ECE141 Final Project Template.m
Please note the following:
(i) You must add your own code within the template to perform the different design tasks, and you
must then initialize the transfer functions and the variables currently declared as [ ] within the
template.
(ii) The variable names used in the template match the diagrams and the project description here.
Do not change any variable names already declared in the template and do not overwrite any of
the given values. You can obviously add any additional variables you may need as part of your
design process.
(iii) Based on your design, the template will generate all the required plots and report all the required
parameters.
ECE141 – Principles of Feedback Control Design Project 4
3 Fast Tool Servo Control Loop
The overall control loop for the Fast Tool Servo system is shown in Figure 3:
Figure 3: Fast Tool Servo Control Loop
Given the shape of the part to be cut by FTS, the ultimate objective is to control the position of
the cutting tool x(t) such that it track the desired reference position trajectory xref (t) with mimimum
error. As shown, the control loop consists of the following blocks:
(i) FTS mechanical plant Gp(s): This is the process by which the actuator force F(t) results in
displacement x(t) of the cutting tool. You are given the measured frequency response data for
this system (GpPlantFrequencyData.zip posted on CCLE). Given this data, one of your design
tasks is to identify the FTS plant dynamics.
(ii) Actuator: This is the motor whose current ic is controlled such as to generate the required force
F(t) for FTS. It is assumed that the dynamics of the actuator can be described by a fixed gain
Kf = 20 N/A.
(iii) Current control loop: This is the loop that, based on its input voltage vset, will control the
current ic to drive the actuator. Your first design task is to design this current control loop.
This loop will be designed such that its resulting dynamics will be fast enough compared to the
bandwidth of the position loop, so that we can ignore its dynamics and replace the current loop
with a constant gain Ga = −0.5 A/V as shown in the block diagram.
(iv) Position Controller Cmech(s): This is the controller for the position loop. It will get the error
between the reference voltage vref and the sensor output voltage vsense and will generate the
voltage vset for the current control loop. Once you have identified the FTS plant dynamics, and
you have designed the current control loop, your main design task would be to design this position
controller and in doing so, shape the position loop transfer function such that the closed-loop
FTS position control system meet your target performance in tracking the reference position
trajectory.
(v) Position Sensor: A capacitive displacement sensor (i.e., a capacitance probe) is used to measure
the position of the cutting tool. It is modeled by a constant gain G1 = 5 × 105 V/m, and its
output is assumed to be corrupted by the measurement noise vn.
ECE141 – Principles of Feedback Control Design Project 5
4 Current Control Loop Design
The schematics of the current control loop is shown in Figure 4:
Figure 4: Current Control Loop Schematics
We can represent this current control loop with the block diagram shown in Figure 5:
Figure 5: Current Control Loop Block Diagram
As shown on the schematics, the back electromotive force (back emf) from the actuator is modeled as
a dependent voltage source, whose voltage is proportional to the velocity of the cutting tool: vback emf =
Kfx˙(t). Moreover, the force generated by the actuator is assumed to be proportional to the actuator
current with the same gain: F(t) = Kf ic(t). A simple model describing the mechanical dynamics of
FTS may be shown as in Figure 6 where the actuator force F(t) is applied to a mass m1 subject to
resistance by a spring k1 and a damper b1.
ECE141 – Principles of Feedback Control Design Project 6
Figure 6: Simple model for the mechanical dynamics of FTS
In the project, assume ideal OpAmps with infinite open-loop gains and also assume the following
values:
Motor Resistance: Rc = 4 Ω (1)
Motor Inductance: Lc = 2 × 10−4 H (2)
Motor Constant: Kf = 20 N/A (3)
(a) Find the plant transfer function Pelec(s) = Vs(s)
Vc(s) with the back emf voltage included. Note that, in
this case, the FTS dynamics, as modeled in Figure 6, will also be reflected in your plant transfer
function.
(b) Find the plant transfer function Pelec(s) = Vs(s)
Vc(s) with the back emf voltage assumed to be zero. In
this case, the FTS dynamics will obviously have no effect on your transfer function.
(c) Show that at high-frequencies, both transfer functions will be equal. Can you provide a physical
explanation for this? This is the reason why back emf voltage may be ignored in designing current
control loops for electromechanical systems, as long as nonlinear behavior of the amplifier (e.g.,
saturation) is not being modeled. As such, you can assume the back emf voltage to be zero in your
contoller design in the next step.
(d) Design the current loop controller Celec(s) = −
Vc(s)
Vs(s)
such that the current loop transfer function
has a gain crossover frequency of ωc = 6 × 105
rad/sec, with a minimum phase margin of PM
≥ 60◦
. We also require that an input voltage of vset = −10 V will result in a steady-state actuator
coil current of ic = 5 A. In other words, the full closed-loop current drive from vset to ic has a DC
gain of Ga =
Ic
Vset

s=0 = −0.5 A/V. Find the resulting component values of R2, R3, C1, and C2.
Notice that R1 = 10 KΩ. Also given that the sense resistor Rs = 0.2 Ω is much smaller that the
input resistors of the differential sensing amplifier, you can assume that no portion of the actuator
current ic will enter the inputs of the sensing amplifier.
(e) Provide the Bode plot of the current loop transfer function showing the gain crossover frequency
and the phase margin (As mentioned earlier, once you initialize the transfer functions and the
component values based on your design, the MATLAB template already has the code to generate
all the required plots).
ECE141 – Principles of Feedback Control Design Project 7
5 FTS Plant System Identification
As shown in Figure 3, the FTS plant Gp(s) describes the dynamics by which the actuator force F(t)
yields the displacement x(t) of the cutting tool. The measured Bode plot for Gp(s) is shown in Figure
7:
Figure 7: FTS Plant Measured Bode Plot
From the plot, it is clear that the plant dynamics are more complicated than what the simple model
in Figure 6 would suggest. Namely, the mass/spring/damper model would only represent the lowest
frequency mode seen on the plot, but there are also higher frequency resonance modes as well as a
time delay.
The measured frequency response data is posted on CCLE. Please download GpPlantFrequencyData.zip
and unzip it in the same directory as your project template file. As you will notice in the MATLAB
template file, the data will be loaded with load command, and you will have both magnitude data
Gpmag (in linear scale) and the phase data Gpphase (in degrees) as well as the associated frequency
ECE141 – Principles of Feedback Control Design Project 8
vector ww (in rad/sec).
(a) On the basis of the lower frequency dyamics, as shown by the first mode, find the values for the
mass m1, the spring constant k1, and the damper constant b1 in the simple FTS model shown in
Figure 6.
(b) Fit a dynamical model to the measured Bode plot. Provide the transfer function Gp(s), and show
its frequency response overlaid on the measured data (Again, this will already be done in the
template m-file, once you initialize Gp(s)). (Note: You may try to identify the plant with visual
inspection of the Bode plot. Alternatively, you may form a frequency response data object by
frd(Gpmag.*exp(1j*Gpphase*pi/180),ww) function, and then use tfest function with a given
number of poles and zeros to identify the plant. Or you may use a combination of the two where
you would estimate the delay by inspection of the phase plot, and provide it as an input parameter
to tfest function.)
(c) You will use the transfer function you identify here for the position controller design in the next
step. If you find it too challenging to stabilize the closed-loop system and meet the reference
tracking requirements, in order to proceed with the design, revisit your plant model, and possibly
simplify it by ignoring the higher frequency modes and only modeling the low frequeny mode along
with the time delay.
ECE141 – Principles of Feedback Control Design Project 9
6 Position Control Loop Design
The position contol loop is shown in Figure 3. The task here is to design the position controller
Cmech(s), which gets the error between the reference voltage vref and the sensor output voltage vsense
and generates the voltage vset for the current control loop. You will have to use the plant transfer
function Gp(s) that you identified earlier. Also, as mentioned earlier, given the current control loop that
you designed with very high crossover frequency, you can replace it with a constant gain Ga = −0.5 A/V
when designing your position controller. Finally, assume the position sensor gain to be G1 = 5 × 105
V/m and the motor constant to be Kf = 20 N/A.
For the position controller design, we will assume two reference inputs:
1 µm Constant Position Trajectory: xref1
(t) = 10−6u(t) [m] (4)
Sinusoidal Position Trajectory: xref2
(t) = 10−5
sin(3000t) [m] (5)
We will also assume the sensor measurement noise to be modeled as:
vn(t) = 5 × 10−2
sin(105
t) [V] (6)
(a) Design the position controller Cmech(s) with as good performance as you can achieve. Your objective is to shape the position loop transfer function such that:
(i) the closed-loop FTS system is obviously stable, and
(ii) the steady-state position tracking error for the step input is almost fully eliminated, and
(iii) the steady-state position tracking error for the sinusoidal input trajectory is minimized (i.e.,
as small as you can get), and
(iv) the steady-state effect of the measurement noise on the output position is minimized, and
(v) the magnitude of the closed-loop Sensitivity Function stays below +10 dB at all frequencies.
(b) Plot the closed-loop step response to xref1
(t) and present the transient response characteristics
(already done in the template, once you add your controller transfer function). Is the overshoot
in your response reasonable? Can you further reduce the overshoot in your step response? What
are the trade-offs you have to deal with?
(c) Plot Bode and Nyquist diagrams of the loop transfer function, as well as the closed-loop sensitivity
function (already done in the template).
ECE141 – Principles of Feedback Control Design Project 10
7 Project Deliverables
The project deliverables include:
(i) Project Report: A few pages describing the design process you followed including how you
came up with your controllers, and how you addressed the design trade-offs and optimized your
controllers. Also please include all the relevant calculations, data, and plots.
(ii) MATLAB m-file: This will be the MATLAB m-file where you started with the provided template and added all the steps in your design simulation and properly initialized all the required
values and transfer functions.
Project Grading:
The project grade will be based on your design effort and the quality of your design in meeting the
requirements, as presented in your project report and as shown by your MATLAB file. As such, it is
critically important that your MATLAB file be bug free, i.e., it should run smoothly and generate the
intended results and plots based on your design. We will NOT debug any MATLAB file that fails to
run properly, and you will be given very little, if any at all, partial credit for your project.
ECE141 – Principles of Feedback Control Design Project 11
Table 1: Project Grading
Criterion Partial Grade Grade
Bug-free MATLAB 10
4-a: Correct Pelec(s) with back-emf 5
4-b: Correct Pelec(s) without back-emf 3
4-c: Confirm equivalence at high frequencies
2
4-d: Correct Celec(s) with correct component values: Meets crossover frequency, phase margin, and DC gain
specs
15
5-a: Correct values for b1,k1, and m1 5
5-b: Identified Gp(s) matches frequency
response data
10
6-a-i: Closed-loop stable 10
6-a: Proper form for the compensator 5
6-a: Proper loop shape (proper crossover
frequency, gain and phase margins)
5
6-a-ii: Zero steady-state tracking error
for step input
4
6-a-iii: Small steady-state tracking error
for sinusoid input
4
6-a-iv: Small error due to measurement
noise
4
6-a-v: Max sensitivity below +10 dB 4
6-b: Step response transient behavior 4
Overall quality evaulation (e.g., quality
of project report, articulation of design
steps, etc.)
10
Total 100