1
00:00:00,180 --> 00:00:04,170
In previous lessons, we have seen stiffness control for one day.

2
00:00:04,560 --> 00:00:07,950
But in practical case, we use more degree of freedom.

3
00:00:08,280 --> 00:00:09,540
Robotic manipulators.

4
00:00:09,840 --> 00:00:14,610
So let's develop the stiffness control for any degree of freedom robotic manipulators.

5
00:00:15,300 --> 00:00:21,960
Let's first see the formula for city-states interaction force and equal stiffness formula for any degree

6
00:00:21,960 --> 00:00:23,790
of freedom robotics manipulators.

7
00:00:24,180 --> 00:00:30,870
We don't have only forces, but also talks, so we have both linear stiffness due to the translational

8
00:00:30,870 --> 00:00:35,120
forces and rotational or torsional stiffness due to the talks.

9
00:00:35,760 --> 00:00:42,390
So we will utilize range in our formulations instead of just force, as you can see here.

10
00:00:42,690 --> 00:00:53,130
If it is nothing, but it is nothing but the linear spring can see here is nothing but linear spin constant

11
00:00:53,430 --> 00:01:00,570
and Kate and is rotational spring constant as the second diagonal of The Matrix is 0s.

12
00:01:00,750 --> 00:01:04,740
We don't have coupling between translation and rotation.

13
00:01:05,310 --> 00:01:10,710
PD and Omega D.T. are just infinitesimal translation and rotation.

14
00:01:10,710 --> 00:01:17,880
Accordingly, Eq. one point one is in workspace coordinates because interactions happen in operational

15
00:01:17,880 --> 00:01:22,710
space, so it's logical to represent formula in workspace coordinates.

16
00:01:23,160 --> 00:01:30,840
This creates no problem in terms of translation, but rotational part creates a problem because it's

17
00:01:30,840 --> 00:01:34,410
represented either in R, P, Y or all angles.

18
00:01:34,620 --> 00:01:40,140
And as you know, we cannot find angular velocity by just finding simply their derivatives.

19
00:01:40,200 --> 00:01:41,370
With respect to time.

20
00:01:41,940 --> 00:01:46,380
So Omega D is not valid for RPI or rectangles.

21
00:01:46,830 --> 00:01:51,540
In order to get valid form, we need to multiply the transformation matrix.

22
00:01:52,380 --> 00:01:53,850
Here is the corrected formula.

23
00:01:54,090 --> 00:02:01,260
As you can see it, transformation metrics consist of identity matrix, which corresponds to translational

24
00:02:01,260 --> 00:02:05,940
motion and T transformation matrix, which is configuration dependent.

25
00:02:06,660 --> 00:02:13,560
Now we have one additional problem translational and rotational coordinates are about x y z axis in

26
00:02:13,560 --> 00:02:16,740
terms of W, but all orange.

27
00:02:17,220 --> 00:02:22,050
But on the other side, translational coordinates are about x y z.

28
00:02:22,050 --> 00:02:24,690
In terms of x one.

29
00:02:24,690 --> 00:02:32,820
Rotational angles are r p y or earlier, as we have said before, so we need to make them compatible

30
00:02:33,120 --> 00:02:34,590
in order to do that.

31
00:02:34,800 --> 00:02:41,970
We use a game transformation matrix, but we transpose in that respect matrix dimensions by multiplying

32
00:02:42,960 --> 00:02:46,050
final formula is given in Equation 1.3.

33
00:02:46,650 --> 00:02:51,270
As you can see, the equation has the same structure as in one DB.

34
00:02:51,630 --> 00:02:59,010
We have seen before also, stiffness Matrix K is positive somewhere definite because the environment

35
00:02:59,010 --> 00:03:02,580
may not be able to generate forces on all directions.

36
00:03:03,090 --> 00:03:09,600
Additionally, by using green space of Matrix K, you can have information about the directions in the

37
00:03:09,600 --> 00:03:12,210
workspace along which forces may be applied.

38
00:03:13,200 --> 00:03:18,660
Because along some directions, we have only position control while along some directions on the force

39
00:03:18,660 --> 00:03:19,200
control.

40
00:03:20,010 --> 00:03:26,130
Now we want to find steady state position and range values during the robot's interaction with the environment.

41
00:03:27,780 --> 00:03:34,110
First, let's ride dynamics of robot dynamic equations robot manipulator, which we have seen many times

42
00:03:34,530 --> 00:03:34,830
here.

43
00:03:34,840 --> 00:03:41,880
G Transpose W is interaction forces and u is nothing but input force by the robot manipulator.

44
00:03:42,750 --> 00:03:48,060
This input force is controlled by PD control and gravity compensation.

45
00:03:48,540 --> 00:03:49,500
You may be.

46
00:03:49,500 --> 00:03:53,130
This formula seems intimidating, but let's see how it is formed.

47
00:03:53,640 --> 00:04:02,340
So as we have said before, force control is in workspace coordinates because interactions happen in

48
00:04:02,340 --> 00:04:03,360
operational space.

49
00:04:03,810 --> 00:04:09,810
However, dynamic model of the robot is in joint space, as you can see from Eq. one point four.

50
00:04:10,050 --> 00:04:12,650
So we need to convert input control.

51
00:04:12,660 --> 00:04:16,390
You also took the joint space coordinates first.

52
00:04:16,390 --> 00:04:23,160
Let's see PD control and gravity compensation formula in workspace coordinates, which is easier and

53
00:04:23,160 --> 00:04:24,420
more familiar to us.

54
00:04:25,020 --> 00:04:31,350
No, we need to convert this force vector into joint space by using Jacobean transpose because as you

55
00:04:31,350 --> 00:04:36,660
remember, Jacobean transports convert workspace wrench into joint space.

56
00:04:37,380 --> 00:04:41,310
However, we have one small issue here in this formulation.

57
00:04:41,310 --> 00:04:47,550
X2 term is workspace velocity, but we don't have sensors to measure workspace velocities.

58
00:04:48,210 --> 00:04:51,450
We have sensors in joints to get joint velocities.

59
00:04:51,810 --> 00:04:56,610
So we need to convert this term in the German space velocity using Jacobean matrix.

60
00:04:57,060 --> 00:04:59,580
So this is how we get Eq. one point.

61
00:04:59,670 --> 00:05:06,450
Five, let's analyze what will happen instead is state of the system in steady state acceleration and

62
00:05:06,450 --> 00:05:11,640
velocities will be zero and gravity turns will cancel each other in perfect assumptions.

63
00:05:12,990 --> 00:05:20,670
And we can get formulation for steady state error by just manipulating Equation 1.6 here in Red Circle.

64
00:05:20,700 --> 00:05:26,820
You can see compliance metrics, which is diagonal based on the structure of the transformation matrix.

65
00:05:26,820 --> 00:05:34,500
We can see that compliance matrix is linear and configuration independently in terms of forces, while

66
00:05:34,500 --> 00:05:38,580
nonlinear and configuration dependent in terms of talks.

67
00:05:39,600 --> 00:05:45,420
By combining equations 1.3 and 1.7, we will get below Eq..

68
00:05:45,690 --> 00:05:51,570
From this equation, we can obtain steady state and end effector position and range.

69
00:05:52,020 --> 00:06:00,270
You can get Equation 1.9 by just manipulating Eq. one point eight As this of the vehicle equation one

70
00:06:00,270 --> 00:06:08,310
point nine, we can get Equation 1.10 through Equation one point three from equations one point nine

71
00:06:08,310 --> 00:06:09,570
and one point ten.

72
00:06:09,900 --> 00:06:15,900
We can see that steady state values depend on environment position, and these aren't in the vector

73
00:06:15,900 --> 00:06:18,810
position equation.

74
00:06:18,810 --> 00:06:24,390
One point is interesting in terms of control of the behavior of the robot manipulator.

75
00:06:25,170 --> 00:06:29,280
Interaction forces and talks depend on K and CP.

76
00:06:29,280 --> 00:06:36,720
As we have said before, we want to get rid of B to get rid of behavior of the robot in position control.

77
00:06:38,580 --> 00:06:45,360
Excuse me, as we have said before, we want to get rid of the behavior of the robot in position control

78
00:06:45,360 --> 00:06:46,050
directions.

79
00:06:46,470 --> 00:06:52,830
We can get this behavior by increasing the value of CP and to get compliant behavior of the robot.

80
00:06:52,830 --> 00:06:56,610
Enforce control actions by decreasing value of KP.

81
00:06:57,690 --> 00:06:59,360
Now let's see this example.

82
00:06:59,850 --> 00:07:07,230
As you can see, this is two degrees of freedom robot manipulator moving in x y plane desired position

83
00:07:07,230 --> 00:07:10,200
coordinates are specified by X and Y.

84
00:07:10,200 --> 00:07:13,500
Then there is no stiffness in the right direction.

85
00:07:14,010 --> 00:07:18,780
You can see that by analyzing a mattress, which is system stiffness.

86
00:07:19,860 --> 00:07:22,500
You can see that, um by.

87
00:07:22,740 --> 00:07:30,540
You can see that you can see this by analyzing key metrics, which is system stiffness or stiffness

88
00:07:30,540 --> 00:07:32,520
is given by CP metrics.

89
00:07:33,450 --> 00:07:42,120
As we have said before, we choose CP x low because environment stiffness is high in X direction, so

90
00:07:42,120 --> 00:07:44,370
we need compliant robot manipulator.

91
00:07:44,730 --> 00:07:52,740
We choose high volume for CP y stiffness in y direction, which makes robot manipulator stiff because

92
00:07:52,740 --> 00:07:54,390
environment is compliant.

93
00:07:55,320 --> 00:08:01,170
These are the steady state and the effector position and interaction forces.

94
00:08:01,920 --> 00:08:08,370
As you can see, a robot manipulator reaches desired position in y direction because in wide reaction,

95
00:08:08,370 --> 00:08:13,080
there is no stiffness and we don't need force control to get this position.

96
00:08:14,060 --> 00:08:19,250
Here are the statistics position on, first of all these again, let's analyze two cases.

97
00:08:20,150 --> 00:08:27,260
If CP X is much higher than K X, this means that environment is more compliant with respect to the

98
00:08:27,260 --> 00:08:27,740
robot.

99
00:08:28,100 --> 00:08:33,810
So our environment is compressed up to XD because there is almost no resistance.

100
00:08:33,830 --> 00:08:40,340
The robot the compliance is passive because environments acts like a spring and spring first is generated

101
00:08:40,340 --> 00:08:42,260
because of environment stiffness.

102
00:08:43,260 --> 00:08:50,630
Otherwise, escape is much less than K X. This means that the robot is more compliant with respect to

103
00:08:50,630 --> 00:08:52,520
the environment and environment.

104
00:08:52,520 --> 00:08:53,960
Almost not compressed.

105
00:08:54,830 --> 00:09:00,050
Robot acts like a spring and spring force is generated due to the robot.

106
00:09:00,530 --> 00:09:03,560
So this is active compliance.
