Download presentation
Presentation is loading. Please wait.
Published byJulian Parsons Modified over 9 years ago
1
1 Lecture 27. Two Big Examples The eleven link diver The Stanford Arm (Kane & Levinson)
2
2 The Eleven Link Diver head foot calf thigh pelvis abdomen thorax hand lower arm upper arm C7 ankle knee hip L1 T6 elbow wrist shoulder C1 Parts of the diverThe joints neck
3
3 The torques can only control the differential motions, so (The first three denote the position and orientation of one reference link, here the abdomen.) Or, as we wrote them last time
4
4
5
5 Characterizing a dive CM path and rotation determined by initial conditions Figure of the diver is determined by the diver — the control torques The diver must find torques that will put the internal angles on specific paths in time
6
6 Control by feedback linearization, which we’ve explored and can review quickly Consider a second order system: We want q to follow a specific path: The equation for the error is Choose such that rhs = The error then obeys (you can’t always do this)
7
7 To apply to our problem note: There are 13 equations for The torques appear only in equations 4-13 One can use equations 1-3 to eliminate the first three If then the generalized coordinates will go to their desired paths AND YOU CAN DO THIS you don’t actually have to do this as we saw for the three link diver
8
8 The next issue is computational I have 26 first order odes, some of which are very messy I like to see what I’m doing using Mathematica, but the big set is very very slow. I borrow an idea from Kane and Levinson (1983), which swaps complexity for size — the so-called method of Zs
9
9 The idea is to write the odes symbolically in terms of coefficients to be evaluated at each time step 26 odes 642 algebraic equations PLUS
10
10 Dives 10 meter platform
11
head foot calf thigh pelvis abdomen thorax hand lower arm upper arm C7 ankle knee hip L1 T6 elbow wrist shoulder C1 Parts of the diverThe joints (not to scale) 11 neck Recall the model 11 link diver
12
12 Cobbled together from various sources — he’s big
13
13 All dives start from an erect position diver on toes with arms fully extended upwards. Diver leaps up and to the left with positive rotation. Analysis starts once the diver has cleared the platform. t = 0 t = t
14
14 Initial conditions: position and velocity of the center of mass determines the path of the diver
15
15 initial angles and rotations i = q i = initial uniform rotation determine the initial posture and angular momentum Desired q i, q d i determine the posture during the dive We want them to go to a specified value and then return to the initial value of to ensure straight entry into the water.
16
16 Let’s look at a couple of examples, and then think about how to do this
17
17 Mock jackknife
18
18
19
19
20
20 Mock tuck
21
21
22
22
23
23 We can look at the Mathematica code and at “movies” of these dives
24
24 The Stanford Arm: Kane & Levinson Revisited This is a difficult problem The difficulty lies in figuring out how to represent it Once you have a decent model, it becomes easy (if possibly tedious) What are the angular velocities of the links? What are the generalized forces? We will roll up our sleeves and tackle it.
25
25 Note that blindly following the recipes I have given you won’t work or at least won’t work easily You need to go back to the ideas that lie behind the recipes So, here we go...
26
26 There are six links, hence 36 possible coordinates. There are only six degrees of freedom so we have to get rid of 30 coordinates I don’t like their coordinate system, so let me change the notation
27
27 They letter their links, and I want to number mine so link A is link 1, link B is link 2, etc I want to arrange things such that all the rotations are about K axes This is a holonomic system, but some of the connectivity constraints are awful Finally we have one prismatic (sliding) joint, which is something we haven’t seen
28
28 I have a seven simple holonomic constraints Choose the origin at KL A*, then The third link, C does not rotate about its own K axis
29
29 Link A rotates about the vertical so make that K 1 and let I 1 be parallel to Link B rotates about I 1, so let that be K 2 q 1 will be 1 q 2 will be 2
30
30 Link C moves parallel to Let that be J 2 and equal to K 3 Link D rotates about that direction Let K 4 = K 3 q 3 = 3
31
31 Link E rotates about which we can call I 4 and set it equal to K 5 q 4 = 5 Finally, Link F rotates about which we can call I 5 and set equal to K 6 q 5 = 6
32
32 We can summarize all of this as follows functions of 1 functions of 1, 2 functions of 1, 2, 4 functions of 1, 2, 4, 5 functions of 1, 2, 4, 5, 6
33
33 Now, how do we incorporate all of this into our usual systems/thoughts? First note that we can finesse the usual and variables out of the picture We can calculate the angular velocities and momenta in body coordinates without them Thus we can write the rotational kinetic energy without them This is a little bit tricky, and we need to think as we go forward
34
34 Each link can be represented by a vector referred to its body axes For all but link 3 (link C) the XX, YY and ZZ coefficients are constant (and their values are irrelevant to the argument!) The angular velocity is represented by the rates of change of the base vectors where the last term is zero except for link 3
35
35 We can write any vector as The angular velocity term is contained in the change of base vectors In our case, then
36
36 Our job is then to extract the components of B from this equation Take the body components of the right hand vector Write The ZZ component of the first one gives me BY The XX component of the second one gives me BZ The YY component of the third one gives me BX The values of XX and YY and ZZ are irrelevant!
37
37 Here it is in Mathematica
38
38 We need the angular velocities in inertial coordinates for the generalized forces The base vectors are, of course, defined with respect to the inertial system, so these are indeed exactly what we want
39
39 Where do we now stand on variables? We need a kinetic energy and a potential energy The rotational kinetic energy depends only on the five s we have defined The translational kinetic energy depends on the eighteen center of mass coordinates But we’ve already eliminated four of those So we have fourteen CM coordinates, five s and the extension coordinate of link 3
40
40 So we have twenty coordinates and only six degrees of freedom The CM coordinates are all connected by fourteen connectivity constraints They are pretty immense, so I put them into a constraint matrix and go with pseudononholonomic constraints Before I do that, let us look at the generalized coordinates
41
41 The variables I care about are the last six the extension of link 3
42
42 The fourteen constraints can be written
43
43 Differentiate the constraints, form the usual constraint matrix, and find a null space matrix The u vector will have six components, and with the proper choice of S these will be the rates of change of the important variables: i and q6 The only thing we need now to complete the problem is the generalized forces
44
44 acts on link 1 acts on links 2 and 1 (-) acts on links 3 and 2 (-) acts on links 4 and 3 (-) acts on links 5 and 4 (-) acts on links 6 and 5 (-)
45
45 So we have where All the angular velocities here are expressed in the inertial system
46
46 This leads us to a set of generalized forces, the first fourteen of which are zero The nonzero terms are
47
47 Now we have everything we need to set up the equations and simulate the robot So, let’s go do it!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.