WEBVTT

00:00:00.090 --> 00:00:02.490
The following content is
provided under a Creative

00:00:02.490 --> 00:00:04.030
Commons license.

00:00:04.030 --> 00:00:06.330
Your support will help
MIT OpenCourseWare

00:00:06.330 --> 00:00:10.720
continue to offer high quality
educational resources for free.

00:00:10.720 --> 00:00:13.320
To make a donation, or
view additional materials

00:00:13.320 --> 00:00:17.280
from hundreds of MIT courses,
visit MIT OpenCourseWare

00:00:17.280 --> 00:00:18.450
at ocw.mit.edu.

00:00:30.707 --> 00:00:32.290
PROFESSOR: I wanted
to give a lecture,

00:00:32.290 --> 00:00:36.819
because as I told you in
presentations, I love feedback.

00:00:36.819 --> 00:00:38.235
In fact, I love
it so much, that I

00:00:38.235 --> 00:00:40.890
think the examples
we're going to do,

00:00:40.890 --> 00:00:45.900
we can do analytically
are not maybe

00:00:45.900 --> 00:00:50.860
sufficiently compelling for you
to believe how exciting control

00:00:50.860 --> 00:00:51.360
can be.

00:00:51.360 --> 00:00:54.090
So let me just start by giving
a few minutes of a research

00:00:54.090 --> 00:00:57.181
result we had a few years ago.

00:00:57.181 --> 00:00:59.430
That's why you've got color
images-- everybody noticed

00:00:59.430 --> 00:01:02.670
the color images on the slides.

00:01:02.670 --> 00:01:06.180
I brought this robot in
to the first recitation

00:01:06.180 --> 00:01:07.610
of [INAUDIBLE].

00:01:07.610 --> 00:01:11.350
It's a big 2 meter wing span
ornithopter, and in my case,

00:01:11.350 --> 00:01:13.950
we've been trying to design
control systems to make

00:01:13.950 --> 00:01:16.710
airplanes move more like birds.

00:01:16.710 --> 00:01:18.880
Here's one example of that.

00:01:18.880 --> 00:01:21.080
One thing birds do that
planes don't do very well

00:01:21.080 --> 00:01:24.340
is land on a perch.

00:01:24.340 --> 00:01:26.880
So we asked the question,
can we take a simple airplane

00:01:26.880 --> 00:01:29.280
with fixed wings,
no flapping allowed,

00:01:29.280 --> 00:01:31.260
and make it land on a perch--

00:01:31.260 --> 00:01:33.880
UAV stands for unmanned
aerial vehicle--

00:01:33.880 --> 00:01:36.730
land on a perch like a bird.

00:01:36.730 --> 00:01:39.730
The story I want to tell you
is that with feedback design,

00:01:39.730 --> 00:01:41.670
you can.

00:01:41.670 --> 00:01:43.890
Here's why it's
interesting and hard.

00:01:43.890 --> 00:01:47.600
The reason airplanes
don't land on a perch

00:01:47.600 --> 00:01:51.136
is because, when your wing
is at a low angle, which

00:01:51.136 --> 00:01:53.120
a plane normally is
when it's flying,

00:01:53.120 --> 00:01:56.350
the air flow around the wing
is relatively easy to model.

00:01:56.350 --> 00:01:59.730
It's easy to write a block
diagram description of.

00:01:59.730 --> 00:02:02.590
But if you go to moderate
angles, that's still true.

00:02:02.590 --> 00:02:05.210
The air stays attached to
the wings and everything--

00:02:05.210 --> 00:02:12.050
[INAUDIBLE]

00:02:12.050 --> 00:02:16.660
At a low angle, the air is
still attached to the wing,

00:02:16.660 --> 00:02:19.610
and so we have very good models
of the airflow around here,

00:02:19.610 --> 00:02:22.100
and the lift and drag
forces that you get when

00:02:22.100 --> 00:02:23.900
you're flying in these regimes.

00:02:23.900 --> 00:02:27.020
But if you go up too far, like
this, then everything changes.

00:02:27.020 --> 00:02:30.380
So you think, the air can't
quite stay around the wing.

00:02:30.380 --> 00:02:31.490
You get separation.

00:02:31.490 --> 00:02:33.860
You get big vortices
pulling off the back.

00:02:33.860 --> 00:02:36.920
It's very nonlinear,
very unsteady.

00:02:36.920 --> 00:02:38.810
Very complicated flight regime.

00:02:38.810 --> 00:02:43.040
And as such, our best
aircrafts to date

00:02:43.040 --> 00:02:45.710
mostly stay down in this regime
where we have good models

00:02:45.710 --> 00:02:49.740
and we can design conventional
control systems for.

00:02:49.740 --> 00:02:51.780
But birds don't do that at all.

00:02:51.780 --> 00:02:54.440
So birds are, often, when
they're landing on a perch,

00:02:54.440 --> 00:02:56.570
they're up even far beyond this.

00:02:56.570 --> 00:02:57.980
Maybe even 90 degrees.

00:02:57.980 --> 00:02:59.840
"Angle of attack", it's called.

00:02:59.840 --> 00:03:02.390
They're way into this
deep stall regime--

00:03:02.390 --> 00:03:06.100
that's called stalling your
wings when that happens.

00:03:06.100 --> 00:03:08.900
And it seems like they're doing
a lot better landing on a perch

00:03:08.900 --> 00:03:11.420
because we don't see
our airplanes do it.

00:03:11.420 --> 00:03:13.310
But you can actually
try to quantify that.

00:03:13.310 --> 00:03:16.190
So if you want to compare
the performance of a bird

00:03:16.190 --> 00:03:18.807
landing versus a plane landing,
the first thing you have to do

00:03:18.807 --> 00:03:21.140
is you have to take out the
differences in mass and wing

00:03:21.140 --> 00:03:22.820
area and all these things.

00:03:22.820 --> 00:03:24.130
But you can do that.

00:03:24.130 --> 00:03:27.320
And a fair comparison
is the distance

00:03:27.320 --> 00:03:30.850
averaged drag coefficient,
which is just a way

00:03:30.850 --> 00:03:33.650
to scale out the effects
that you'd expect from having

00:03:33.650 --> 00:03:36.950
a bigger wing or a bigger mass.

00:03:36.950 --> 00:03:38.960
You can plot this
drag coefficient

00:03:38.960 --> 00:03:41.090
for a few different vehicles.

00:03:41.090 --> 00:03:44.330
This is a standard
runway landing of a 747,

00:03:44.330 --> 00:03:45.830
would get the drag
coefficient, just

00:03:45.830 --> 00:03:50.480
so you have some
calibration, of about a 0.16.

00:03:50.480 --> 00:03:54.920
The X-31 was a super
maneuverable research vehicle.

00:03:54.920 --> 00:03:58.256
It was designed to do super
short runway landings,

00:03:58.256 --> 00:04:00.380
and it got a drag coefficient
during those landings

00:04:00.380 --> 00:04:02.967
of about 0.3.

00:04:02.967 --> 00:04:04.550
There's a few other
projects out there

00:04:04.550 --> 00:04:06.870
about trying to make
perching planes that

00:04:06.870 --> 00:04:08.621
were getting similar numbers.

00:04:08.621 --> 00:04:10.370
But then we went out
and looked at nature.

00:04:10.370 --> 00:04:12.230
I have some
collaborators at Harvard

00:04:12.230 --> 00:04:14.667
that work with real birds.

00:04:14.667 --> 00:04:16.250
It turns out-- I
wanted him to tell me

00:04:16.250 --> 00:04:18.200
the numbers from some
really elite bird,

00:04:18.200 --> 00:04:21.179
like at least a hawk
or something like this.

00:04:21.179 --> 00:04:22.220
But they work on pigeons.

00:04:22.220 --> 00:04:24.440
So that was the only number
we could get, was a pigeon.

00:04:24.440 --> 00:04:25.550
They actually
convinced me by the end

00:04:25.550 --> 00:04:26.650
that pigeons are really good.

00:04:26.650 --> 00:04:28.608
The way they can sort of
dive through the fence

00:04:28.608 --> 00:04:30.200
and get your lunch
by the food trucks?

00:04:30.200 --> 00:04:32.100
I mean, that's actually--

00:04:32.100 --> 00:04:35.210
they're seriously skilled birds.

00:04:35.210 --> 00:04:36.680
We even had-- one
of the fun things

00:04:36.680 --> 00:04:38.240
about doing this kind of
research is you get visitors.

00:04:38.240 --> 00:04:41.181
We had will.i.am from the Black
Eyed Peas come to the lab.

00:04:41.181 --> 00:04:42.930
And he said-- after
we told him the story,

00:04:42.930 --> 00:04:45.410
he said pigeons
are ghetto birds.

00:04:45.410 --> 00:04:47.030
They got mad stop.

00:04:47.030 --> 00:04:50.390
That sort of summarizes it.

00:04:53.390 --> 00:04:54.620
You already know the answer.

00:04:54.620 --> 00:04:57.800
But if you look at
the drag coefficient

00:04:57.800 --> 00:05:01.430
that a bird gets when it's
landing, they get a 10.

00:05:01.430 --> 00:05:03.620
So they're doing
orders of magnitude

00:05:03.620 --> 00:05:05.730
better than our best planes
in terms of stopping.

00:05:05.730 --> 00:05:07.460
If you just want
to be fun about it,

00:05:07.460 --> 00:05:09.290
you could say, what
would it take for a 747

00:05:09.290 --> 00:05:12.090
to get a 10 to
impress will.i.am.

00:05:12.090 --> 00:05:14.240
And it turns out
that 747 would have

00:05:14.240 --> 00:05:17.600
to go-- they fly at about 450
miles an hour cruise speed.

00:05:17.600 --> 00:05:19.700
It would have to
stop in 40 meters

00:05:19.700 --> 00:05:21.145
to do what a bird's doing.

00:05:21.145 --> 00:05:22.520
The wings would
probably pop off.

00:05:22.520 --> 00:05:23.645
There's problems with that.

00:05:23.645 --> 00:05:26.782
But the dynamics are
impressive, of the birds.

00:05:26.782 --> 00:05:28.490
And what's more, when
they're doing that,

00:05:28.490 --> 00:05:30.890
they're getting
incredible accuracy.

00:05:30.890 --> 00:05:35.474
This is one of my favorite
videos of a perching owl.

00:05:35.474 --> 00:05:37.640
If you watch really closely,
you can see the airflow

00:05:37.640 --> 00:05:38.870
get complicated on his wings.

00:05:38.870 --> 00:05:41.390
You can see his leading edge
feathers start to flip over.

00:05:49.940 --> 00:05:50.677
Boom.

00:05:50.677 --> 00:05:52.760
The way you do that is you
put food by the camera.

00:05:55.910 --> 00:05:57.740
We tried to build
these simple planes

00:05:57.740 --> 00:05:59.855
and ask if could they do
what the owls are doing,

00:05:59.855 --> 00:06:00.980
what the pigeons are doing.

00:06:00.980 --> 00:06:02.780
Very simple planes.

00:06:02.780 --> 00:06:05.660
We did them in an
indoor environment.

00:06:05.660 --> 00:06:09.800
We made it so it was
basically a boring plane,

00:06:09.800 --> 00:06:12.545
but it can do very interesting
things in pitch, up and down.

00:06:15.590 --> 00:06:18.530
Then we spent some time trying
to build a dynamical systems

00:06:18.530 --> 00:06:20.060
representation of the plane.

00:06:20.060 --> 00:06:21.341
And how do you do that?

00:06:21.341 --> 00:06:23.090
Well, you shoot the
plane a bunch of times

00:06:23.090 --> 00:06:25.340
into a fishing net.

00:06:25.340 --> 00:06:26.840
And you collect a bunch of data.

00:06:26.840 --> 00:06:28.464
And like we talked
about in recitation,

00:06:28.464 --> 00:06:30.230
you can potentially
get from that data

00:06:30.230 --> 00:06:31.700
a model of the dynamics.

00:06:31.700 --> 00:06:33.920
And turns out, we had to
do a nonlinear dynamical

00:06:33.920 --> 00:06:35.810
model for the
vehicle, but we could

00:06:35.810 --> 00:06:39.830
do a linear actuator model
plus delays and everything.

00:06:39.830 --> 00:06:43.520
We built a pretty good model of
the plane, which is sort of--

00:06:43.520 --> 00:06:45.560
for an aerodynamics
crowd, this would

00:06:45.560 --> 00:06:48.170
tell you that this is
a surprisingly good fit

00:06:48.170 --> 00:06:53.960
to the lift and drag forces over
a very large range of angles.

00:06:53.960 --> 00:06:57.250
Then we had a 6003
problem, basically.

00:06:57.250 --> 00:06:59.785
The nonlinear terms make
it a little different.

00:06:59.785 --> 00:07:01.160
And what we did
as a group was we

00:07:01.160 --> 00:07:04.820
innovated a way to design
a feedback controller that

00:07:04.820 --> 00:07:07.370
could make this thing
very accurate during very

00:07:07.370 --> 00:07:09.680
high performance maneuvers.

00:07:09.680 --> 00:07:12.260
And a long story short, we
can now shoot an airplane

00:07:12.260 --> 00:07:14.090
into a motion capture arena.

00:07:14.090 --> 00:07:16.390
This is slowed down
about 11 times.

00:07:16.390 --> 00:07:18.210
It's this airplane right here.

00:07:18.210 --> 00:07:20.869
And it goes into
a very deep stall.

00:07:20.869 --> 00:07:22.910
And we can land with an
accuracy, enough accuracy

00:07:22.910 --> 00:07:25.205
to land on a perch.

00:07:25.205 --> 00:07:27.830
It turns out if you can build a
good enough control system that

00:07:27.830 --> 00:07:30.440
can handle the complexity
of the dynamics,

00:07:30.440 --> 00:07:33.631
then you can make
these things happen.

00:07:33.631 --> 00:07:35.630
This is just-- to convince
you that the dynamics

00:07:35.630 --> 00:07:38.240
are complicated, this is
the flow visualization.

00:07:38.240 --> 00:07:41.570
We built a wind tunnel releasing
smoke from the leading edge

00:07:41.570 --> 00:07:43.850
and took a picture
of it to show you how

00:07:43.850 --> 00:07:45.230
complicated the dynamics were.

00:07:45.230 --> 00:07:49.580
So control is potentially
an incredibly powerful idea.

00:07:49.580 --> 00:07:52.940
You can make-- we try to make
robots that run like ostriches.

00:07:52.940 --> 00:07:55.490
We try to make all
kinds of things happen.

00:07:55.490 --> 00:07:57.999
You could imagine
improving wind energy.

00:07:57.999 --> 00:07:59.540
You could imagine
all kinds of things

00:07:59.540 --> 00:08:01.206
where control is an
integral part of it.

00:08:05.410 --> 00:08:08.330
The feedback in there
was absolutely essential.

00:08:08.330 --> 00:08:12.590
If I took the same plane and
thought about the model a lot

00:08:12.590 --> 00:08:16.340
and then designed a controller,
just a set of commands

00:08:16.340 --> 00:08:20.240
to the elevator, to try to
make it land on the perch,

00:08:20.240 --> 00:08:23.210
it misses the perch
every single time.

00:08:23.210 --> 00:08:24.830
And with feedback,
we can hit-- it's

00:08:24.830 --> 00:08:26.246
only with feedback
that we can hit

00:08:26.246 --> 00:08:27.600
the perch every single time.

00:08:27.600 --> 00:08:28.850
And there's a reason for that.

00:08:28.850 --> 00:08:34.010
You guys probably heard
the idea that fighter jets

00:08:34.010 --> 00:08:36.200
are unstable without the
control system, right?

00:08:36.200 --> 00:08:39.020
Fighter jets are-- a lot
of times, the systems that

00:08:39.020 --> 00:08:41.330
have peak
maneuverability, that's

00:08:41.330 --> 00:08:43.919
often at odds with stability.

00:08:43.919 --> 00:08:46.460
In fact, when you try to make
a very high performance fighter

00:08:46.460 --> 00:08:49.730
jet, and you want to be
able to turn, you actually--

00:08:49.730 --> 00:08:53.150
if the control system is off,
this thing should be unstable.

00:08:53.150 --> 00:08:57.200
It's not a complete pathology,
but that's pretty true,

00:08:57.200 --> 00:09:00.200
because what you want, you
can elicit a very fast turn

00:09:00.200 --> 00:09:02.540
if you basically let
the system go unstable.

00:09:02.540 --> 00:09:05.330
Then you can let the unstable
dynamics of the system

00:09:05.330 --> 00:09:07.880
make a very rapid turn.

00:09:07.880 --> 00:09:12.370
In fact, it's common to build
a system that is unstable,

00:09:12.370 --> 00:09:14.640
and it's only stable when
there's feedback in the loop

00:09:14.640 --> 00:09:17.071
so that you can have very
high maneuverability when

00:09:17.071 --> 00:09:17.570
you need it.

00:09:21.710 --> 00:09:25.520
You've already done feedback
if you took 601, right?

00:09:25.520 --> 00:09:28.190
So what I want to do today is--

00:09:28.190 --> 00:09:30.620
I taught 601 when some
of you were in there.

00:09:30.620 --> 00:09:33.920
I want to go through the example
that you already worked through

00:09:33.920 --> 00:09:36.050
in the 601 lab for those
of you that took it.

00:09:36.050 --> 00:09:39.110
I think it's sufficiently
complete here

00:09:39.110 --> 00:09:40.430
if you didn't take it.

00:09:40.430 --> 00:09:41.480
But we want to use that--

00:09:41.480 --> 00:09:42.950
I'm going to use that
as an example to build

00:09:42.950 --> 00:09:45.366
on what you already know and
to show us with the new tools

00:09:45.366 --> 00:09:48.050
how far you can get in thinking
about what that robot did

00:09:48.050 --> 00:09:49.240
for you last year.

00:09:49.240 --> 00:09:52.490
Do you remember this example of
the little pioneer robot that

00:09:52.490 --> 00:09:56.240
had to go to the
wall, the foam wall,

00:09:56.240 --> 00:09:58.130
using the noisy sonar sensor?

00:09:58.130 --> 00:10:00.500
And we wanted to get a desired
distance from the wall?

00:10:00.500 --> 00:10:02.450
And by the end, you guys
were moving the board around

00:10:02.450 --> 00:10:03.950
and it was trying
to track the wall?

00:10:06.860 --> 00:10:09.590
In that exercise,
in the 601 lab,

00:10:09.590 --> 00:10:11.930
you guys tried a bunch
of different gains.

00:10:11.930 --> 00:10:14.810
For some gains, we saw responses
that sort of looked like this.

00:10:14.810 --> 00:10:16.630
If you gave a desired
distance to a wall,

00:10:16.630 --> 00:10:18.491
it would go up to
that desired distance.

00:10:18.491 --> 00:10:20.240
For other gains, you
saw some oscillation.

00:10:20.240 --> 00:10:22.760
You saw some big
oscillations if you tried

00:10:22.760 --> 00:10:25.490
all the gains we recommended.

00:10:25.490 --> 00:10:27.114
Now you guys have a
deep understanding

00:10:27.114 --> 00:10:29.405
of what kind of things can
cause that type of response.

00:10:32.960 --> 00:10:35.876
The way we told you to
think about it in 601

00:10:35.876 --> 00:10:37.250
is actually the
way that we often

00:10:37.250 --> 00:10:39.590
think about control systems.

00:10:39.590 --> 00:10:42.470
Typically, we have something
called the plant, which

00:10:42.470 --> 00:10:44.480
describes the dynamics
of the robot or the thing

00:10:44.480 --> 00:10:46.160
we're trying to care about.

00:10:46.160 --> 00:10:49.690
You guys know why it's
called the plant often?

00:10:49.690 --> 00:10:52.580
What would be the history
of calling it "plant"?

00:10:52.580 --> 00:10:55.634
It's a weird name for it, right?

00:10:55.634 --> 00:10:57.800
Actually, some of this stuff
grew up in the chemical

00:10:57.800 --> 00:10:59.424
industry, in chemical plants.

00:10:59.424 --> 00:11:00.340
Is that what you said?

00:11:00.340 --> 00:11:01.730
No?

00:11:01.730 --> 00:11:04.560
It's actually-- it has a
history in chemical plants.

00:11:04.560 --> 00:11:09.020
But now everybody calls
their robot plants.

00:11:09.020 --> 00:11:12.140
The plant is the dynamics
of our robot, for instance.

00:11:12.140 --> 00:11:13.490
You've got some output of that.

00:11:13.490 --> 00:11:15.830
In this case, it's the
position to the wall.

00:11:15.830 --> 00:11:17.330
A sensor that reads it.

00:11:17.330 --> 00:11:19.820
It may have its own dynamics.

00:11:19.820 --> 00:11:23.090
And your goal is to take some
reference command, a position

00:11:23.090 --> 00:11:24.784
you want to go to,
let's say, compare it

00:11:24.784 --> 00:11:27.200
with what the sensor is saying
and build a controller that

00:11:27.200 --> 00:11:31.371
takes that error and makes the
robot or control system do what

00:11:31.371 --> 00:11:32.120
you want it to do.

00:11:35.560 --> 00:11:39.370
In this example, the
one you studied in 601,

00:11:39.370 --> 00:11:41.470
the plant was a
very simple model

00:11:41.470 --> 00:11:43.690
of the dynamics of the robot.

00:11:43.690 --> 00:11:45.700
It was just a first-order model.

00:11:45.700 --> 00:11:48.010
We said that the
output, the distance

00:11:48.010 --> 00:11:51.970
from the wall, the distance in
front of the wall, at time n

00:11:51.970 --> 00:11:56.530
was just the distance in
front of the wall time minus--

00:11:56.530 --> 00:11:58.210
because, you remember
the frustration

00:11:58.210 --> 00:11:59.590
of the flipped sign, too?

00:11:59.590 --> 00:12:01.730
But I kept it consistent here.

00:12:01.730 --> 00:12:03.399
So it's T times
the velocity, just

00:12:03.399 --> 00:12:05.440
happens that since the
velocity is going this way

00:12:05.440 --> 00:12:06.970
and the distance
is getting smaller,

00:12:06.970 --> 00:12:08.890
you get a minus T.
This looks almost

00:12:08.890 --> 00:12:13.590
like the first-order
approximation of a CT system,

00:12:13.590 --> 00:12:15.130
right?

00:12:15.130 --> 00:12:17.131
So that's the dynamics
of the vehicle.

00:12:17.131 --> 00:12:18.880
The sensor, we're going
to assume for now,

00:12:18.880 --> 00:12:21.070
is just perfect, that
it just immediately

00:12:21.070 --> 00:12:23.650
tells me the
distance to the wall

00:12:23.650 --> 00:12:25.570
and gives the perfect feedback.

00:12:25.570 --> 00:12:27.917
And then we designed
a controller, which

00:12:27.917 --> 00:12:30.250
just takes the error, the
difference between the desired

00:12:30.250 --> 00:12:32.560
position and the
actual position,

00:12:32.560 --> 00:12:35.800
multiplies it by a
constant K and comes

00:12:35.800 --> 00:12:38.170
up with a velocity command
that goes to the motors.

00:12:41.420 --> 00:12:45.810
You can visualize that as
a block diagram, of course.

00:12:45.810 --> 00:12:49.880
You get that this
plant model here--

00:12:49.880 --> 00:12:51.890
it's got a minus one here
and a minus one here,

00:12:51.890 --> 00:12:54.740
so that's equivalent having
a delay in the forward path.

00:12:54.740 --> 00:12:57.210
And then it's got feedback,
because the previous signal

00:12:57.210 --> 00:12:58.880
was directly put
around to the feedback.

00:12:58.880 --> 00:13:02.570
So this part here is
the model of the plant.

00:13:05.190 --> 00:13:07.130
Then we put the
T in, with a gain

00:13:07.130 --> 00:13:10.100
here, so I guess this
part here is the plant.

00:13:10.100 --> 00:13:14.334
Here's our simple controller
and our sensor is perfect.

00:13:14.334 --> 00:13:15.500
So that's our block diagram.

00:13:15.500 --> 00:13:17.541
We've just turned our
robot into a block diagram.

00:13:17.541 --> 00:13:21.740
And we know everything about
how to analyze those things.

00:13:21.740 --> 00:13:23.390
You can use the
operator notation.

00:13:23.390 --> 00:13:28.070
You could think of it as
a system function, too.

00:13:28.070 --> 00:13:29.900
This guy here you know is--

00:13:33.032 --> 00:13:34.990
you guys can do this in
your sleep now, almost?

00:13:34.990 --> 00:13:38.126
But if I just take
that by itself,

00:13:38.126 --> 00:13:39.250
what does that come out to?

00:13:41.800 --> 00:13:42.850
It's a plus here.

00:13:42.850 --> 00:13:44.920
This is x and y.

00:13:44.920 --> 00:13:52.630
So I get y is R x plus y.

00:13:52.630 --> 00:14:01.720
Or y over x is R
over 1 minus R. Then

00:14:01.720 --> 00:14:06.144
I multiply that by
K and a negative t.

00:14:06.144 --> 00:14:07.810
And then I do the
exact same computation

00:14:07.810 --> 00:14:09.550
again to get this loop around.

00:14:09.550 --> 00:14:14.060
And this is our input
output system function.

00:14:14.060 --> 00:14:16.510
Simplify it a little
bit, I get this.

00:14:16.510 --> 00:14:20.080
Simplify it a little bit
more to identify the pole,

00:14:20.080 --> 00:14:22.540
and you can see that the pole
now looks like 1 plus KT.

00:14:25.100 --> 00:14:29.200
T represents the time
step between updates,

00:14:29.200 --> 00:14:30.300
K is our feedback gain.

00:14:33.679 --> 00:14:35.220
Now, we can start
thinking about what

00:14:35.220 --> 00:14:37.050
happens if we choose
different-- let's just

00:14:37.050 --> 00:14:39.360
lump K and T together,
because the K you choose

00:14:39.360 --> 00:14:41.664
is going to be intimately
connected to time.

00:14:41.664 --> 00:14:43.830
In this system, there's no
point in separating them.

00:14:43.830 --> 00:14:46.980
So we just talk
about KT as a system.

00:14:46.980 --> 00:14:48.150
If we chose KT--

00:14:48.150 --> 00:14:50.100
KT is almost always
going to be negative.

00:14:50.100 --> 00:14:52.410
You want negative
feedback, in general,

00:14:52.410 --> 00:14:54.960
for making things stable.

00:14:54.960 --> 00:14:59.280
If we choose KT equals 0.5,
then with that system function,

00:14:59.280 --> 00:15:00.780
there's a delay in
the forward path,

00:15:00.780 --> 00:15:02.154
so it's going to
be offset by one

00:15:02.154 --> 00:15:06.000
and then it's just got the
simple single pole response.

00:15:06.000 --> 00:15:09.222
The unit step response
similarly looks like this.

00:15:09.222 --> 00:15:10.680
So the question
is, what determines

00:15:10.680 --> 00:15:14.030
the speed of that response?

00:15:14.030 --> 00:15:15.780
Here you go.

00:15:15.780 --> 00:15:17.530
I have to get you to
talk to your neighbor

00:15:17.530 --> 00:15:18.904
the way Denny
always seems to get

00:15:18.904 --> 00:15:20.587
you to talk to your neighbor.

00:15:20.587 --> 00:15:21.170
Take a minute.

00:15:21.170 --> 00:15:23.570
Figure out which of these
or none of them do you think

00:15:23.570 --> 00:15:26.420
would give you the best response
for this simple block diagram

00:15:26.420 --> 00:15:26.920
system.

00:15:31.889 --> 00:15:33.180
Talk out loud to your neighbor.

00:16:48.501 --> 00:16:49.000
OK.

00:16:49.000 --> 00:16:50.770
Show of fingers, what
do you think it is?

00:16:54.760 --> 00:16:55.260
OK.

00:16:55.260 --> 00:16:56.520
A lot of right answers.

00:16:56.520 --> 00:16:57.885
Let's just do it real quick.

00:17:01.100 --> 00:17:03.830
The fastest possible
convergence is

00:17:03.830 --> 00:17:06.470
going to be at the pole zero.

00:17:06.470 --> 00:17:08.730
Pole zero, what's it
going to look like?

00:17:08.730 --> 00:17:11.240
It's going to give you--

00:17:11.240 --> 00:17:13.280
the best you can do
if you zero this out,

00:17:13.280 --> 00:17:15.391
you get the impulse response.

00:17:15.391 --> 00:17:16.849
The unit sample
response would just

00:17:16.849 --> 00:17:21.780
be R. You're going to have a
delay of 1, that's inevitable.

00:17:21.780 --> 00:17:27.340
You get one non-zero entry and
then zeroes everywhere else.

00:17:27.340 --> 00:17:29.090
In discrete time
systems, you can actually

00:17:29.090 --> 00:17:30.560
kill things in a single step.

00:17:30.560 --> 00:17:35.560
You can set a pole at 0 that's
the fastest possible response.

00:17:35.560 --> 00:17:37.550
But if you think about
the different responses

00:17:37.550 --> 00:17:40.700
for different values of K, you
can use the pole zero diagrams

00:17:40.700 --> 00:17:42.230
to pretty much
understand everything

00:17:42.230 --> 00:17:45.020
there is to know about it.

00:17:45.020 --> 00:17:49.220
For KT less than 0 to
negative 1-- like I said,

00:17:49.220 --> 00:17:51.140
we want to think about
negative feedback--

00:17:51.140 --> 00:17:54.860
that's going to take us from
out here on the unit circle back

00:17:54.860 --> 00:17:55.760
towards the origin.

00:17:55.760 --> 00:17:58.400
If I keep making
KT more negative,

00:17:58.400 --> 00:17:59.620
it's going to go out here.

00:17:59.620 --> 00:18:01.697
If I make KT too
negative, bad things

00:18:01.697 --> 00:18:02.780
are going to happen again.

00:18:02.780 --> 00:18:04.820
The poles are going to go
outside the unit circle

00:18:04.820 --> 00:18:06.236
and will actually
have alternating

00:18:06.236 --> 00:18:07.340
diverging responses.

00:18:12.650 --> 00:18:14.570
The answer is negative 1.

00:18:14.570 --> 00:18:16.880
Negative 1 puts
you at a pole of 0.

00:18:21.810 --> 00:18:24.540
Here's to think
about it physically.

00:18:24.540 --> 00:18:30.690
If I choose K correctly,
since KT was negative 1,

00:18:30.690 --> 00:18:33.130
that means K's going
to be negative 10.

00:18:33.130 --> 00:18:36.660
That's going to be commanding
exactly the right speed so

00:18:36.660 --> 00:18:41.580
that the robot, after the one
tenth of a second, let's say,

00:18:41.580 --> 00:18:43.610
it gets you exactly
to the right position.

00:18:43.610 --> 00:18:48.090
Unit sample response in
this case would be saying,

00:18:48.090 --> 00:18:50.257
the robot's at zero,
I want it to be at 1,

00:18:50.257 --> 00:18:51.840
and then I want it
to be back at zero.

00:18:51.840 --> 00:18:54.660
The command is going 0, 1, 0.

00:18:54.660 --> 00:18:57.130
And the robot is going to be
almost doing exactly that.

00:18:57.130 --> 00:19:00.300
It's going to go from 0
to 1 in a single step.

00:19:00.300 --> 00:19:03.180
And then back to 0
in a single step.

00:19:03.180 --> 00:19:04.830
It's just going to
be delayed by one.

00:19:04.830 --> 00:19:07.814
So you give it a command saying,
go here, go here, go back.

00:19:07.814 --> 00:19:10.230
And it's going to do exactly
the right thing-- boom, boom,

00:19:10.230 --> 00:19:12.480
except for one step delayed,
because you can't get rid

00:19:12.480 --> 00:19:14.490
of that R.

00:19:14.490 --> 00:19:18.002
So if I plot it-- let
me draw a stem diagram,

00:19:18.002 --> 00:19:20.460
but coming down in time so that
I can line up with the axes

00:19:20.460 --> 00:19:21.440
up here.

00:19:21.440 --> 00:19:24.570
If I start with an
initial position here,

00:19:24.570 --> 00:19:28.020
and I command it to go to
the desired front position,

00:19:28.020 --> 00:19:30.720
it's going to go boom right
to that front position

00:19:30.720 --> 00:19:32.460
with one unit of delay.

00:19:32.460 --> 00:19:37.880
And then it's going to stay
there for the rest of the time.

00:19:37.880 --> 00:19:40.260
It would be a unit
step response.

00:19:44.220 --> 00:19:47.890
But that's not what we got
to see on the robots in 601,

00:19:47.890 --> 00:19:48.390
right?

00:19:48.390 --> 00:19:51.670
The real robot didn't
work like that.

00:19:51.670 --> 00:19:55.420
And the way we made the robot
model more realistic was we

00:19:55.420 --> 00:19:58.240
said, OK, but your
sensor's got some delay.

00:19:58.240 --> 00:20:00.310
And actually, if you
knew what was going on

00:20:00.310 --> 00:20:02.850
behind those 601 robots, it's
actually had a lot of delay.

00:20:02.850 --> 00:20:05.200
There's Python running
serial interfaces

00:20:05.200 --> 00:20:10.480
to over the serial link to
the fairly old controller

00:20:10.480 --> 00:20:11.370
in the pioneer robot.

00:20:11.370 --> 00:20:13.440
So the delay is real.

00:20:13.440 --> 00:20:18.670
There's a delay of about 1/10
of a second in the sensor.

00:20:18.670 --> 00:20:22.180
If I take that exact same
controller, exact same gain

00:20:22.180 --> 00:20:24.850
that I already did, now put
it in this new system that

00:20:24.850 --> 00:20:27.320
has an extra delay,
then what happens?

00:20:27.320 --> 00:20:30.640
I get a velocity of 10
after one step, looks good.

00:20:30.640 --> 00:20:32.260
But then, uh-oh,
there was some delay

00:20:32.260 --> 00:20:34.245
in the sensor I didn't
realize was here,

00:20:34.245 --> 00:20:36.370
so I'm still going to take
corrective action trying

00:20:36.370 --> 00:20:37.060
to get me there.

00:20:37.060 --> 00:20:38.976
It's going to move me
all the way to the wall,

00:20:38.976 --> 00:20:40.660
smash into the
wall, and then it's

00:20:40.660 --> 00:20:41.920
going to realize it was zero.

00:20:41.920 --> 00:20:44.003
It's going to-- there's
some delay in seeing that.

00:20:44.003 --> 00:20:45.460
It's going to move me back.

00:20:45.460 --> 00:20:49.620
And you're going to
get oscillations.

00:20:49.620 --> 00:20:52.650
You can see that now by just
adding the model to our block

00:20:52.650 --> 00:20:54.790
diagram.

00:20:54.790 --> 00:20:59.550
If we put the delay now
in the feedback path,

00:20:59.550 --> 00:21:03.630
otherwise, keep the block
diagram exactly the same.

00:21:03.630 --> 00:21:07.020
Now, you can write
the system function.

00:21:07.020 --> 00:21:08.524
What's the resulting
system function

00:21:08.524 --> 00:21:10.440
given that this thing
is in the feedback path?

00:22:48.317 --> 00:22:50.900
Go ahead and put your fingers
up when you think you've got it.

00:22:54.600 --> 00:22:55.170
All right.

00:22:55.170 --> 00:22:55.770
Fantastic.

00:23:02.060 --> 00:23:03.810
Just like I did here,
you can just quickly

00:23:03.810 --> 00:23:07.350
replace the accumulator there
with the equivalent block

00:23:07.350 --> 00:23:08.790
diagram.

00:23:08.790 --> 00:23:09.750
Do the loop again.

00:23:09.750 --> 00:23:11.610
It's going to be exactly
what we did before,

00:23:11.610 --> 00:23:15.910
but it's got a new R
in the feedback path.

00:23:15.910 --> 00:23:19.720
Giving us the R-squared here,
just on the feedback path.

00:23:19.720 --> 00:23:21.920
It's exactly the same
otherwise except for that R,

00:23:21.920 --> 00:23:24.750
and that simplifies out to this.

00:23:24.750 --> 00:23:27.130
So the answer was 4.

00:23:27.130 --> 00:23:29.640
That's just operator
notation, polynomial algebra.

00:23:34.720 --> 00:23:37.750
If we want to find the
poles of that system,

00:23:37.750 --> 00:23:43.270
we can just go ahead and
factor the quadratic form

00:23:43.270 --> 00:23:45.289
in the denominator.

00:23:45.289 --> 00:23:47.080
The roots of the
denominator look something

00:23:47.080 --> 00:23:50.290
like this, which is a
little ugly to think about.

00:23:50.290 --> 00:23:53.980
But we can think it through.

00:23:53.980 --> 00:24:00.190
For general KT-- when KT's
small, KT's about zero,

00:24:00.190 --> 00:24:03.300
then I'll go ahead and simplify
that a little bit to say,

00:24:03.300 --> 00:24:04.990
KT could sneak inside the--

00:24:04.990 --> 00:24:07.420
KT and KT-squared
aren't so different.

00:24:07.420 --> 00:24:09.340
We're going to sneak
it inside here.

00:24:09.340 --> 00:24:12.090
And then you can see that the
poles end up at-- around K

00:24:12.090 --> 00:24:17.130
equal to zero you get
a pole at the origin.

00:24:17.130 --> 00:24:20.860
But you also get a pole
up by the unit circle.

00:24:20.860 --> 00:24:24.620
Around 1 and around 0.

00:24:24.620 --> 00:24:30.560
Remember, when you've got
multiple poles in the system,

00:24:30.560 --> 00:24:34.220
the total response is
going to be dominated

00:24:34.220 --> 00:24:38.204
by whatever is the slower pole.

00:24:38.204 --> 00:24:39.620
The total system
response is going

00:24:39.620 --> 00:24:40.760
to be dominated by
the slower pole.

00:24:40.760 --> 00:24:43.250
In this case, the slower pole's
the one closer to the unit

00:24:43.250 --> 00:24:43.749
circle.

00:24:48.540 --> 00:24:52.410
What about if KT
equals negative 0.25?

00:24:52.410 --> 00:24:54.390
We can pop that in and solve it.

00:24:54.390 --> 00:24:57.510
Exactly-- math works out nicely.

00:24:57.510 --> 00:25:02.820
We get poles at a half,
two poles at a half.

00:25:02.820 --> 00:25:05.940
And in fact, there's a smooth
transition between-- if you

00:25:05.940 --> 00:25:10.080
look at the numbers between KT
equals zero and KT equals 0.25,

00:25:10.080 --> 00:25:12.630
you'll see as you
vary that gain,

00:25:12.630 --> 00:25:17.040
the poles move together
along the real axis

00:25:17.040 --> 00:25:18.990
until they come
together at a half.

00:25:21.860 --> 00:25:29.270
So here, you've got a purely
real response dominated

00:25:29.270 --> 00:25:31.130
by these poles at a half.

00:25:31.130 --> 00:25:33.080
System's stable.

00:25:33.080 --> 00:25:36.170
If you keep changing K though,
the poles came together

00:25:36.170 --> 00:25:40.310
and then they split off
and start going this way.

00:25:40.310 --> 00:25:42.260
And in fact, if you look
at negative 1, which

00:25:42.260 --> 00:25:44.960
is the one that was
the best response,

00:25:44.960 --> 00:25:50.300
it put a pole exactly at 0,
for the system with no delay.

00:25:50.300 --> 00:25:52.130
If you put it at the
system with delay,

00:25:52.130 --> 00:25:55.280
they land exactly
on the unit circle.

00:25:55.280 --> 00:25:57.260
Right there.

00:25:57.260 --> 00:26:00.230
Complex poles on
the unit circle.

00:26:00.230 --> 00:26:02.269
You're going to get
a stable oscillation.

00:26:07.720 --> 00:26:09.580
Which is exactly
what we saw there.

00:26:13.400 --> 00:26:16.490
Just a quick-- you know this
like the back of your hand now,

00:26:16.490 --> 00:26:19.955
but what's the period
of that oscillation?

00:26:26.260 --> 00:26:31.660
You've got two poles on the
unit circle right there.

00:26:31.660 --> 00:26:33.855
What's the period
of oscillation?

00:26:39.300 --> 00:26:41.370
Put your fingers up
when you think you know.

00:26:52.380 --> 00:26:53.120
Yep.

00:26:53.120 --> 00:26:54.290
Good.

00:26:54.290 --> 00:26:56.650
Most people got it.

00:26:56.650 --> 00:27:00.820
This thing was a half, so it's
1/2 square root of 3 over 2.

00:27:00.820 --> 00:27:03.497
So that thing had
to be at pi over 3.

00:27:03.497 --> 00:27:05.080
It's actually the
same pole that I was

00:27:05.080 --> 00:27:09.782
using in recitation yesterday.

00:27:09.782 --> 00:27:11.240
So if you have a
pole at pi over 3,

00:27:11.240 --> 00:27:15.140
it makes it around in six steps.

00:27:15.140 --> 00:27:17.340
The period of the
oscillation is six.

00:27:26.140 --> 00:27:28.840
This is generally
true, that if you

00:27:28.840 --> 00:27:32.110
put a controlled
gain, a feedback gain,

00:27:32.110 --> 00:27:36.700
into the closed loop dynamics,
then even a simple gain

00:27:36.700 --> 00:27:40.240
can allow you to really shift
around the poles of the system.

00:27:40.240 --> 00:27:42.850
And since we know the response
of the system, the zeros

00:27:42.850 --> 00:27:46.570
matter, but for convergence,
for the rate of convergence,

00:27:46.570 --> 00:27:49.410
it's the biggest
pole that dominates.

00:27:49.410 --> 00:27:53.436
It's very nice to understand
how those poles move with K.

00:27:53.436 --> 00:27:54.810
If you change the
system, the way

00:27:54.810 --> 00:27:56.880
they move with K is different.

00:27:56.880 --> 00:28:00.000
And you can just change
K to tune the response

00:28:00.000 --> 00:28:03.330
to be what you want, from
KT equals 0 to infinity,

00:28:03.330 --> 00:28:06.810
the poles go towards
here and then off in both

00:28:06.810 --> 00:28:08.608
directions, actually,
to infinity.

00:28:14.450 --> 00:28:19.740
So, KT equals negative 1 was
the fastest possible response

00:28:19.740 --> 00:28:22.020
for the system without
any delay in the sensor.

00:28:22.020 --> 00:28:24.700
What's the fastest possible
response for this one?

00:28:40.200 --> 00:28:41.250
Oscillations are allowed.

00:28:41.250 --> 00:28:43.050
I just want the fastest
possible response.

00:29:14.840 --> 00:29:15.340
Yeah.

00:29:15.340 --> 00:29:15.880
Looks good.

00:29:15.880 --> 00:29:19.431
So where do I want the poles
to be for the fastest possible

00:29:19.431 --> 00:29:19.930
response?

00:29:26.470 --> 00:29:31.180
These poles are still
stable and oscillations are

00:29:31.180 --> 00:29:33.370
fine, but the absolute--

00:29:33.370 --> 00:29:35.920
the magnitude of
those poles is larger

00:29:35.920 --> 00:29:38.260
when they're out
here in the complex.

00:29:38.260 --> 00:29:39.910
When I'm down here,
I have got a pole

00:29:39.910 --> 00:29:41.960
over by one, that's
going to dominate.

00:29:41.960 --> 00:29:45.400
So the best I can do is if
I put the poles at a half.

00:29:45.400 --> 00:29:48.130
That gives us the largest
pole, the smallest

00:29:48.130 --> 00:29:49.950
possible magnitude.

00:29:49.950 --> 00:29:54.640
And that happened if the poles--
the double poles at a half

00:29:54.640 --> 00:29:57.940
happened when KT
was negative 0.25.

00:29:57.940 --> 00:30:00.289
Most of you said,
the answer is 2.

00:30:08.560 --> 00:30:11.920
In general, delay
is a bad thing.

00:30:11.920 --> 00:30:14.530
In DT systems, we have good
representations of delay.

00:30:14.530 --> 00:30:17.290
It's even worse in
continuous time.

00:30:17.290 --> 00:30:18.250
Delay is a bad thing.

00:30:18.250 --> 00:30:23.770
It tends to make control
systems not work as well.

00:30:23.770 --> 00:30:27.460
If you just took the ideal
sensor, we had a K equals 1,

00:30:27.460 --> 00:30:30.580
we had a response that started
here, we could put it anywhere

00:30:30.580 --> 00:30:33.534
we wanted along the real axis.

00:30:33.534 --> 00:30:35.200
As far negative as
we wanted, of course,

00:30:35.200 --> 00:30:38.980
what we chose was to put
it right at the origin.

00:30:38.980 --> 00:30:41.380
But as soon as we just added
that one piece of delay,

00:30:41.380 --> 00:30:44.140
the things we could do
with proportional feedback

00:30:44.140 --> 00:30:46.630
changed completely,
and ultimately,

00:30:46.630 --> 00:30:51.320
got worse because I have
two poles now, first of all,

00:30:51.320 --> 00:30:54.130
and I can't simultaneously
get both of those poles

00:30:54.130 --> 00:30:55.450
to go to zero.

00:30:55.450 --> 00:30:58.949
In fact, as I change them,
they go off into complex.

00:30:58.949 --> 00:31:00.490
The fact that it's
complex isn't bad.

00:31:00.490 --> 00:31:03.156
But the fact that there's two of
them, and the best I can do now

00:31:03.156 --> 00:31:05.620
is get to a half, which is a
much slower response, the best

00:31:05.620 --> 00:31:06.480
possible response.

00:31:10.030 --> 00:31:13.600
If I added even more delay,
things get even worse.

00:31:13.600 --> 00:31:16.004
If I had two units
of delay and I

00:31:16.004 --> 00:31:17.920
went through the same
exercise, what you'd see

00:31:17.920 --> 00:31:21.780
is that the poles would
start in the same place.

00:31:21.780 --> 00:31:23.735
They'd come together
and go there,

00:31:23.735 --> 00:31:25.360
and there's another
pole that goes off.

00:31:25.360 --> 00:31:27.870
Just because there are
three poles in that system.

00:31:27.870 --> 00:31:32.230
Two poles come together
and split off this way.

00:31:32.230 --> 00:31:35.290
And this one goes off this way.

00:31:35.290 --> 00:31:37.104
And the place you
probably want, depending

00:31:37.104 --> 00:31:39.020
on how fast this one
splits off, but the place

00:31:39.020 --> 00:31:41.630
you probably want to put it is
when the two poles are together

00:31:41.630 --> 00:31:42.270
right there.

00:31:42.270 --> 00:31:44.370
That's going to give you
the fastest response.

00:31:44.370 --> 00:31:48.570
But that fastest response is
still slower than what we had--

00:31:48.570 --> 00:31:50.780
it's a bigger
number than a half.

00:31:50.780 --> 00:31:54.340
It's 0.682.

00:31:54.340 --> 00:31:57.890
It's going to be a
worse response than when

00:31:57.890 --> 00:32:00.421
I had a delay of one,
which is intuitive.

00:32:05.420 --> 00:32:08.460
That's a quick reminder
of something you already

00:32:08.460 --> 00:32:13.080
did in 601, of using feedback
and the tools we've already

00:32:13.080 --> 00:32:16.072
got, which is poles and zeros
and everything, to understand

00:32:16.072 --> 00:32:17.280
how to design feedback gains.

00:32:17.280 --> 00:32:20.020
We're going to get more into it
in the next couple of lectures.

00:32:20.020 --> 00:32:23.490
But let me just convince
you that this stuff is real.

00:32:23.490 --> 00:32:25.620
And I showed this
diagram once in 601,

00:32:25.620 --> 00:32:27.940
but it probably means
even more to you now.

00:32:33.170 --> 00:32:36.810
This is an F-14.

00:32:36.810 --> 00:32:41.900
It's one of the best
modern engineering control

00:32:41.900 --> 00:32:44.750
systems ever built. It
was built for this F-14.

00:32:44.750 --> 00:32:49.220
They got more research money
and modeling this vehicle,

00:32:49.220 --> 00:32:53.480
designing ultimate gains for it.

00:32:53.480 --> 00:32:56.420
It's such a success story
that you can actually,

00:32:56.420 --> 00:32:59.900
if you're in MATLAB, you
can open up the F-14 demo

00:32:59.900 --> 00:33:04.940
and see what a flight control
system for an F-14 looks like.

00:33:04.940 --> 00:33:07.190
MATLAB-- I don't know if
you've played with Simulink--

00:33:07.190 --> 00:33:11.000
MATLAB has a language called
Simulink, a graphical language

00:33:11.000 --> 00:33:13.460
that allows you to
draw the block diagrams

00:33:13.460 --> 00:33:17.430
and simulate them and even
design controllers for them.

00:33:17.430 --> 00:33:19.310
And it turns out you
can make a block diagram

00:33:19.310 --> 00:33:27.860
description of an F-14 using
only tools from 601 and 6003.

00:33:27.860 --> 00:33:31.520
You can see all the
same adders and gains,

00:33:31.520 --> 00:33:36.480
transfer functions, system
functions like this.

00:33:36.480 --> 00:33:39.710
The only essential difference
is that in some of the diagrams,

00:33:39.710 --> 00:33:41.810
you see multiple
inputs coming in.

00:33:41.810 --> 00:33:43.610
In this class, we've
restricted ourselves

00:33:43.610 --> 00:33:46.850
so far to thinking about single
input, single output systems,

00:33:46.850 --> 00:33:48.190
which keeps everything clean.

00:33:48.190 --> 00:33:51.410
All the intuition scales
to multiple inputs

00:33:51.410 --> 00:33:53.120
and multiple outputs.

00:33:53.120 --> 00:33:58.570
But that's sort of the only
big addition of complexity

00:33:58.570 --> 00:34:02.200
when you go to this model
from what we've done before.

00:34:02.200 --> 00:34:06.759
If you zoom in onto the
controller here, you can--

00:34:06.759 --> 00:34:08.300
these block diagrams
in this language

00:34:08.300 --> 00:34:10.777
allow you to abstract away
a bunch of hidden things

00:34:10.777 --> 00:34:12.110
with a single transfer function.

00:34:12.110 --> 00:34:16.670
If I zoom in, then you can
see things you recognize.

00:34:16.670 --> 00:34:18.770
It's got a low-pass
filter, which

00:34:18.770 --> 00:34:21.139
is just a system with
a pole at negative 1,

00:34:21.139 --> 00:34:25.150
exactly what we did in
recitation the other day.

00:34:25.150 --> 00:34:27.590
This is what people--

00:34:27.590 --> 00:34:29.510
this is what MATLAB
uses on an F-14.

00:34:29.510 --> 00:34:31.468
I guess it might not be
what the military uses.

00:34:31.468 --> 00:34:35.739
But it's modeled after what
the unclassified documents say

00:34:35.739 --> 00:34:36.739
is happening on an F-14.

00:34:39.949 --> 00:34:41.659
Everything here, you
understand, right?

00:34:41.659 --> 00:34:44.330
A proportional
controller in the end.

00:34:44.330 --> 00:34:47.300
One difference in
F-14s is that--

00:34:47.300 --> 00:34:50.060
and in general for these
more complicated systems--

00:34:50.060 --> 00:34:52.520
they'll design slightly
different controllers

00:34:52.520 --> 00:34:53.929
given the situation.

00:34:53.929 --> 00:34:59.746
So if you have an altimeter
on there and pressure sensors,

00:34:59.746 --> 00:35:03.720
an inclinometer will tell
you the angle of the plane--

00:35:03.720 --> 00:35:07.490
given those sensors,
they'll pick a different K

00:35:07.490 --> 00:35:09.230
for a proportional
controller out

00:35:09.230 --> 00:35:12.500
of a pot of a library
of controllers

00:35:12.500 --> 00:35:14.300
they've already designed.

00:35:14.300 --> 00:35:16.610
So it's called gain
scheduled control.

00:35:16.610 --> 00:35:19.340
But the analysis
and design of each K

00:35:19.340 --> 00:35:23.310
is a linear systems
design and analysis.

00:35:23.310 --> 00:35:24.900
This is super powerful stuff.

00:35:24.900 --> 00:35:28.310
I think-- signal
processing is good, too,

00:35:28.310 --> 00:35:30.170
but control is where it's at.

00:35:32.900 --> 00:35:35.810
I guess I went a
little fast, but that's

00:35:35.810 --> 00:35:39.260
your introduction to feedback.

00:35:39.260 --> 00:35:42.410
We'll do DT and CT feedback in
the next couple of lectures.

00:35:42.410 --> 00:35:44.450
And if anybody hasn't
picked up their exams,

00:35:44.450 --> 00:35:45.930
we have them over here.

00:35:45.930 --> 00:35:48.670
And we'll see you in
recitation tomorrow.