1
00:00:00,120 --> 00:00:06,450
OK, after we have seen one of the simpler, centralized control techniques, namely PD plus gravity

2
00:00:06,450 --> 00:00:11,550
compensation control, let's not not learn inverse dynamics control.

3
00:00:11,940 --> 00:00:19,500
This is very important control technique indeed, which constitutes just of many other control algorithms.

4
00:00:19,800 --> 00:00:23,310
So let's try to understand this as much as possible.

5
00:00:23,640 --> 00:00:26,280
If everything OK, let's continue.

6
00:00:27,090 --> 00:00:31,350
Let's ponder about why the control of the robot manipulator is complicated.

7
00:00:31,350 --> 00:00:33,360
What makes what makes it difficult?

8
00:00:33,930 --> 00:00:37,410
Indeed, we have seen robot manipulator dynamic model before.

9
00:00:37,860 --> 00:00:41,250
We have seen that it is coupled and nonlinear.

10
00:00:41,520 --> 00:00:47,160
Coupled means when we try to control one joint, it affects others also.

11
00:00:47,430 --> 00:00:54,060
So this makes control complex because while we are trying to control one joint, you have to take into

12
00:00:54,060 --> 00:00:58,210
account the other, the joints also.

13
00:00:58,770 --> 00:01:08,130
Additionally, the nonlinear the robot dynamic model requires nonlinear control algorithm to be implemented,

14
00:01:09,330 --> 00:01:13,410
which is surely harder than the simple linear control algorithm.

15
00:01:13,950 --> 00:01:22,020
So it would be better and easier for us to get rid of the nonlinearity in the robot dynamics, decouple

16
00:01:22,020 --> 00:01:26,670
it and apply linear control or separately for each joint.

17
00:01:27,120 --> 00:01:29,760
The big question is that can we do that?

18
00:01:30,330 --> 00:01:34,740
Ideally, yes, and we will see how we will accomplish this mission.

19
00:01:34,740 --> 00:01:42,090
In this lesson, we will see at the end of the lesson why I have said ideally, OK, here is a dynamic

20
00:01:42,090 --> 00:01:45,390
model of the robot manipulator that we have seen before.

21
00:01:45,810 --> 00:01:51,750
We can write it in more compact form in this way, as we have seen it before.

22
00:01:51,900 --> 00:01:56,970
Robot dynamics is non-linear in terms of joint positions velocities.

23
00:01:57,270 --> 00:02:04,170
However, if you look at the equation 1.0, you will see that the dynamics equation indeed linear in

24
00:02:04,170 --> 00:02:06,390
terms of input control.

25
00:02:06,400 --> 00:02:14,520
Paul, just accept M and M as some variables and you will see that you are getting linear equality.

26
00:02:14,850 --> 00:02:16,710
So what does this mean?

27
00:02:17,370 --> 00:02:22,410
This means that we can indeed linear ize our dynamic model.

28
00:02:22,410 --> 00:02:29,970
By specifying input control of toll after linear transition and decoupling, we can simply apply linear

29
00:02:29,970 --> 00:02:30,720
control.

30
00:02:31,170 --> 00:02:32,940
Let's see how we will do that.

31
00:02:33,330 --> 00:02:40,050
Let's choose Tal like that where y is new control input to the nearest and decoupled system?

32
00:02:40,620 --> 00:02:49,430
If we plug Eq. 1.1 into 1.0, we will get this equation, which represents new system dynamics.

33
00:02:49,470 --> 00:02:57,240
This new dynamics has been obtained by exact compensation because we have assumed that we know the values

34
00:02:57,240 --> 00:03:01,230
of inertia, matrix M and other dynamic terms.

35
00:03:01,680 --> 00:03:07,800
And exactly so we construct the tunnel as in Equation 1.1.

36
00:03:08,220 --> 00:03:09,350
Keep this in mind.

37
00:03:09,360 --> 00:03:16,800
This is key concept, and the new system dynamics is decoupled and linear, which is what we wanted.

38
00:03:17,100 --> 00:03:26,330
As you can see, each y i component influences with a double integral relationship only to the Q I joined

39
00:03:26,350 --> 00:03:32,490
variable and there is no end dependency, so we have accomplished first task.

40
00:03:32,760 --> 00:03:38,430
Now we have to design new control input y as linear controller.

41
00:03:38,640 --> 00:03:39,480
Let's do that.

42
00:03:40,470 --> 00:03:42,150
Here is the definition of Y.

43
00:03:42,180 --> 00:03:49,890
As you can see, it's simple p d linear control with reference input of R, we will see that what is

44
00:03:49,890 --> 00:03:50,880
R exactly?

45
00:03:51,240 --> 00:03:59,910
Now, if you plug Eq. one point three back to the Equation 1.2, you will obtain this second order dynamic

46
00:03:59,910 --> 00:04:06,510
system, which is asymptotically stable because CP and K the mattresses are positive.

47
00:04:06,510 --> 00:04:13,710
Definite you can design, copy and KDE Matters is indeed based on the specification of your required

48
00:04:13,710 --> 00:04:17,640
system parameters like natural frequency and damping ratio.

49
00:04:18,150 --> 00:04:21,750
Now we can obtain error dynamics and analyze it.

50
00:04:22,260 --> 00:04:29,310
In order to do that, let's assume that we are on a given trajectory with desired position of cure the

51
00:04:29,520 --> 00:04:32,190
velocity of the Q.

52
00:04:34,400 --> 00:04:37,690
But the acceleration of double boat.

53
00:04:38,450 --> 00:04:42,080
The then you can write a reference are like that.

54
00:04:42,800 --> 00:04:49,370
And if you plug our back into the equation 1.4, you will obtain aerodynamics.

55
00:04:49,820 --> 00:04:57,350
As you can see, it is asymptotically stable because of positive, definite Cadee and KP mattresses,

56
00:04:57,560 --> 00:04:59,060
which is what we wanted.

57
00:04:59,420 --> 00:05:08,360
This means that QTL and Cure Tilt the board will convert to zero irrelevant of the initial project through

58
00:05:08,360 --> 00:05:16,910
error, so we will get the desired orientation and, excuse me, desired configuration and velocity

59
00:05:16,910 --> 00:05:17,540
tracking.

60
00:05:18,130 --> 00:05:24,650
Desired velocity does not have to be constant as in the case of PD and gravity compensation.

61
00:05:24,990 --> 00:05:31,100
Additionally, I want to note that aerodynamics convert.

62
00:05:31,100 --> 00:05:32,700
It is complete.

63
00:05:32,900 --> 00:05:37,820
Convergence is controlled by CP and Keady mattresses, as you can see.

64
00:05:38,420 --> 00:05:44,660
So by tuning them, you can get different system response in terms of aerodynamics.

65
00:05:45,020 --> 00:05:45,530
Perfect.

66
00:05:45,800 --> 00:05:47,900
We have obtained what we wanted.

67
00:05:48,910 --> 00:05:54,050
Here's a complete picture of the control algorithm, namely in inner loop.

68
00:05:54,050 --> 00:06:02,120
We are linear rising a decoupling system, dynamics nonlinear and coupled system dynamics by nonlinear

69
00:06:02,120 --> 00:06:11,060
state feedback as we are using inverse dynamics during comp. This control algorithm is called inverse

70
00:06:11,060 --> 00:06:18,970
dynamics control after system dynamics as being the nearest and decoupled we can apply all through look

71
00:06:19,070 --> 00:06:26,750
are to loop linear control, which is a combination of PD control, action and desired acceleration.

72
00:06:27,440 --> 00:06:33,980
Fit for the purpose of ultra loop is to stabilize the aerodynamics.

73
00:06:34,730 --> 00:06:37,070
OK, indeed, we get very good result.

74
00:06:37,430 --> 00:06:42,710
Ideally, we have some problems with inverse dynamics in practice.

75
00:06:42,950 --> 00:06:50,690
My friends, first of all, we have to compute inverse dynamics in real time, which requires many computing

76
00:06:50,690 --> 00:06:51,440
resources.

77
00:06:52,100 --> 00:06:59,090
Secondly, as I have said before, we have assumed exactly innovation in inverse dynamics control.

78
00:06:59,810 --> 00:07:06,920
Indeed, it was the fundamental concept of inverse dynamics in which the whole control method is based

79
00:07:06,920 --> 00:07:07,280
on.

80
00:07:07,790 --> 00:07:14,210
However, in reality, we cannot get exactly near position and decoupling because of uncertainties in

81
00:07:14,210 --> 00:07:21,050
the dynamic parameters of robot dynamics on land and the fact that a payload that can change dynamic

82
00:07:21,050 --> 00:07:29,510
parameters and the existence of a model dynamics as we can not model every dynamics of robot manipulator

83
00:07:29,510 --> 00:07:37,130
exactly like fiction, we cannot do exact compensation, which caused non-linear rotors and couplings

84
00:07:37,130 --> 00:07:45,260
in the final dynamics, namely that this control method is not robust against disturbances and uncertainties.

85
00:07:45,650 --> 00:07:52,490
But don't worry, in the future lessons, we will see how we will make this control method robust against

86
00:07:52,490 --> 00:07:57,560
disturbances and uncertainties by using robust control techniques.
