Machines and Mechanisms - 2022
Machines and Mechanisms - 2022
Chapter 1
Chap 1 Introduction
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
2
1.1 Introduction
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
3
1.2 Machines and Mechanisms
Mechanism
Mechanical portion of a
machine that has the
function of transferring
motion and forces from a
power source to an output.
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
4
1.3 Kinematics
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
5
Dynamics
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
6
Kinematics/Dynamics
Kinematic analysis
Determine
Position, displacement, rotation, speed, velocity, acceleration
Provide
Geometry dimensions of the mechanism
Operation range
Dynamic analysis
Power capacity, stability, member load
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
7
1.4 Mechanism Terminology
Design synthesis is the process of developing mechanism to satisfy a set of
performance requirements for the machine.
Analysis ensures that the mechanism will exhibit motion to accomplish the
requirements.
Linkage or mechanism
Link–rigid body
Primary joint (full joint)
Revolute joint (pin or hinge joint)–
pure rotation
Translation joint (piston or prism
joint)– linear translation
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
8
Kinematic Joint in Mechanism
Simple link
A rigid body contains only two joints
Complex link
A rigid body contains more than two
joints
Point of interest
Actuator
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
9
1.5 Kinematic Diagram
Simple Link
Simple Link
(with point of
interest)
Complex Link
Revolute Joint
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
10
Kinematic Diagram
Translation Joint
Cam Joint
Gear Joint
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
11
1.6 Kinematic Model
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
13
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
14
1.7 Mobility
15
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
15
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
16
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
17
1.8 Commonly Used Links and Joints
1.8.1 Eccentric Crank
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
18
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
19
1.9 Special Cases of the Mobility Equation
Coincident Joints
• One degree of freedom actually if pivoted links are the same size
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
20
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
21
1.10 Four-Bar Mechanism, 4-Bar Linkage
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
22
Crank/Rocker
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
23
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
24
1.11 Slider-Crank Mechanism
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
25
1.12.3 Quick-Return Mechanisms
26
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
26
Chapter 4 Displacement Analysis
4.4 Displacement Analysis
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
28
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
29
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
30
4.1 Vector Analysis of Displacement
Y Y1
r4
r2
r3
r5
X1
r1
r4
X
(1) r 1 + r 2 + r 3 + r 4 =0
r1 cos θ1 r2 cθ 2 r3cθ3 −5.3
r sin θ + r sθ + r sθ + −3.2 =
0
1 1 2 2 3 3
r1= 3, θ1= 90, r2= 4.9, r3= 3.3
2 equations for 2 unknowns θ 2 and θ3
(2) − r 3 + r 4 + r 5 =0
r3cθ3 r4 cθ 4 x1
−
−r sθ + r sθ + =0
3 3 4 4 −0.8
r4 = 10.1
2 equations for 2 unknowns θ 4 and x1
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
31
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
32
Y
r1
r2 r4 X
r3
r 1 +r 2 +r 3 +r 4 =0
−1.6 2.7cθ 2 r3cθ3 −2.3
1.5 + 2.7 sθ + r sθ + 0 =
0
2 3 3
=
r3 (3.92 + 1.22 )1/2
solve for θ 2 and θ3
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
33
Analysis of Mechanism Position
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
34
Y
r1
r2
X
r3
r 1 +r 2 +r 3 =0
50cθ1 40cθ 2 d1
50 sθ + 40 sθ + =
0
1 2
0
θ
=1 150°, solve for θ 2 and d1
when rotate 15°, θ
=1 165°
50cθ1 40cθ 2 d 2
50 sθ + 40 sθ + =0
1 2
0
solve for θ 2 and d 2
∆d = d1 − d 2
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
35
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
36
Y
r2
r1 r3
X
r4
r 1 +r 2 +r 3 +r 4 =0
12cθ1 20cθ 2 15cθ3 −25
12 sθ + 20 sθ + 15sθ + 0 =0
1 2 3
(1) θ= 1 90°, 2 eqs. solve for θ 2 and θ3
(2) θ=
1 60°, 2 eqs. solve for θ 2 and θ3
Calculate the difference of θ 2 in (1) and (2).
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
37
Y
r1
X
r3
r2
r 1 +r 2 +r 3 = 0
0.5cθ1 1.75cθ 2 1
0.5sθ + 1.75sθ + y =0
1 2
for θ= 1 θ2 , solve for θ1 and ymax
for θ=
1 θ 2 + π , solve for θ1 and ymin
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
38
4.7 Limiting Positions and Stroke
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
39
Y
r1
X
r2
r 1 +r 2 +r 3 +r 4 =0
r4
r3 for θ= 1 θ2 , solve for θ1 and θ3 ) max
for θ=
1 θ 2 + π , solve for θ1 and θ3 ) min
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
40
Y
r1
X
r4
r2
r3
r 1 +r 2 +r 3 +r 4 =0
for θ= 2 θ3 , solve for θ1 )max and θ 2
for θ=
2 θ3 + π , solve for θ1 )min
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
41
Chapter 6 Velocity Analysis
6.2 Linear and Angular Velocity
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
43
Y
X
r1 r1
r2
r4
r3
r 1 +r 2 +r 3 +r 4 =0
ω 2 ×r 2 +ω 3 ×r 3 +ω 4 ×r 4 =0
2 eqs for 2 unknowns ω3 and ω4
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
44
Y
X
r4
r1
r3
r2
r 1 +r 2 +r 3 =
0
0
ω 1×r 1 +ω 2 ×r 2 + =0
5
2 eqs for ω1 and ω2
rE= r 1 +r 4
rE = ω 1×r 1 +ω 2 ×r 4
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
45
Y
r1
r2
X
r3
r 1 +r 2 +r 3 =0
solve for θ1 and θ 2
ω 1×r 1 +ω 2 ×r 2 + r2 =0
vcθ
ω1 = 5 rad min , r2 = 2
vsθ 2
2 eqs for 2 unknowns ω2 and v
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
46
Y
X
r1
r2
r3
r 1 +r 2 +r 3 =0
ω 1×r 1 +ω 2 ×r 2 + r2 =0
0
r2 =
50
2 eqs for 2 unknowns ω1 and ω2
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
47
r2
r1
Y
r3
r 1 +r 2 +r 3 =
0
−1
r2= 6, θ 2= 340° , r 3=
−3
2 eqs for 2 unknowns r1 and θ1
r 1 +ω 1×r 1 +ω 2 ×r 2 =0
8cθ1
r1 =
8sθ1
2 eqs for 2 unknowns ω1 and ω2
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
48
6.10 INSTANTANEOUS CENTER OF ROTATION
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
49
6.12 Graphical Velocity Analysis:
Instant Center Method
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
50
Y
r1
r4 r2
r3
r 1 +r 2 +r 3 +r 4 =0
ω 1×r 1 +ω 2 ×r 2 +ω 3×r 3 =0
given ω3 , solve for ω1 and ω2
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
51
Y
r3
r2 r4
r1 r 1 +r 2 +r 3 +r 4 =0
X
r4 ω 2 ×r 2 +ω 3 ×r 3 +ω 4 ×r 4 =0
ω=2 60 rpm. solve for ω3 and ω4
r6 r5 r 4 +r 5 +r6 = 0
0
ω 4 ×r 4 +ω 5 ×r 5 + =0
v
2 eqs for 2 unknowns ω5 and v
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
52
Y
r2 r1
r3
X
r4
r 1 + r 2 + r 3 + r4 =0
ω 1×r 1 +ω 2 ×r 2 +ω 3 ×r3 =0
given ω 1 find ω2 and ω3
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
53
Chapter 7 Acceleration Analysis
7.2 Linear Acceleration
7.2.1 Linear Acceleration of Rectilinear Points
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
55
Y
r1
r2
r4
r3
r 1 +r 2 +r 3 +r 4 =0
ω 1×r 1 +ω 2 ×r 2 +ω 3×r 3 =
0
given ω 1 find ω2 and ω3
ω 1× (ω 1× r 1 ) + ω 2 ×r 2 +ω 2 × (ω 2 × r 2 ) + ω 3×r 3 +ω 3× (ω 3× r 3 ) = 0
solve for ω2 and
ω 3
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
56
r5
rp
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
57
Y
r1 X
r2 r3
r 1 +r 2 +r 3 =
0
0
ω 1×r 1 +ω 2 ×r 2 + =0
v
solve for ω2 and v
0
ω 1× r 1 +ω 1× (ω 1× r 1 ) + ω 2 × r 2 +ω 2 × (ω 2 × r 2 ) + = 0
a
solve for ω 2 and a
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
58
Y
r2 r3
r1
r 1 +r 2 +r 3 = 0
solve for θ1 and θ 2
ω 1×r 1 + r 2 +ω 2 ×r 2 = 0
vcθ
ω1 400, =
= r 2 2 , solve for ω2 and v
vsθ 2
ω 1× (ω 1× r 1 ) +
r 2 +ω 2 ×r 2 +ω 2 ×r 2 +ω 2 × (ω 2 × r 2 ) + ω 2 ×r 2 =
0
acθ 2
⇒ ω 1× ( ω 1× r 1 ) + + 2ω 2 ×r 2 +ω 2 ×r 2 +ω 2 × (ω 2 × r 2 ) =0
2
asθ
solve for ω 2 and a
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
59
Chapter 9 Cams
9.1 Introduction
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
61
Plate cam
Cylindrical cam
Linear cam
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
62
9.2 Types of Cams
Follower motion
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
63
Follower Position
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
64
9.3 Types of Followers
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
65
9.11 The 4-Station Geneva Mechanism
Constant rotation producing index motion
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
66
Chapter 13 Static Force Analysis
13.3 Moments and Torques
r
X
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
68
13.5 Free-Body Diagrams
13.5.1 Drawing a Free-Body Diagram
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
69
13.6 Static Equilibrium
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
70
13.7 Analysis of a Two-Force Member
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
71
Chapter 14 Dynamic Force analysis
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
73
Machines and Mechanisms: Applied Kinematic Analysis, 4/e © 2012, 2005, 2002, 1999 Pearson Higher Education,
David Myszka Upper Saddle River, NJ 07458. • All Rights Reserved.
74
Mechanism Dynamics of a Slider Crank System
Consider link OB, BA, and piston each has mass m1, m2, and m3, and
mass moment of inertia I1, I2, I3.
In gravitational field,
(1) Define inertial coordinates and let the mass center of OB be at its
midpoint. Consider a torque Γ is applied at link OB. Draw the
free body diagram of all the rigid bodies by representing all
forces in X-Y components.
(2) Write the equation of motion of all the rigid bodies.
(3) Count the number of equations and the number of unknowns in
(2)
OB FyB
m1 g
AB FyA FxB
Piston A m3 g
m3 ⋅ X3 = N xA − FxA
NyA
m3 ⋅ Y3 = N yA − FyA − m3 ⋅ g
FxA
I 3θ3= N xA ⋅ 0 + N yA ⋅ 0 + FxA ⋅ 0 + FyA ⋅ 0 NxA
FyA
, θ , X
, Y
Unknown : X , θ , X
, Y , θ , F , F , F , F , F , F , N , N (17)
, Y
1 1 1 2 2 2 3 3 3 xO yO xB yB xA yA xA yA
Number of equations : 9
Computation of Multibody Kinematics And Dynamics
1.1 Multibody Mechanical Systems
2D Planar Mechanism
3D Spatial Mechanism
77
Computer-Aided Design (CAD)
78
1.2 Coordinate Systems
A four-bar mechanism with generalized coordinates q.
d
4 Coordinates
r
q = [θ1 θ 2 θ3 φ ] T s
3 Constraints
l
(r 2 + l 2 + s 2 − d 2 ) − 2rl cos φ + 2ls cos θ1 − 2rs cos(φ − θ1 ) =
0
(r 2 + l 2 + s 2 − d 2 ) − 2rl cos φ + 2ds cos θ 2 =
0
φ + θ1 + θ 2 + θ3 − 2π = 0
degrees of freedom 4 – 3 = 1
79
3 coordinates
φ1
q = φ2
φ3
2 constraints
r cos φ1 + d cos φ2 + s cos φ3 − l =0
r sin φ1 + d sin φ2 + s sin φ3 =
0
dof = 3 − 2 = 1
80
Generalized Coordinates
3 generalized coordinates,
2 algebraic constraint equations,
l1 cos φ1 + l2 cos φ2 − l3 cos φ3 − d1 =
0
l1 sin φ1 + l2 sin φ2 − l3 sin φ3 − d 2 =
0
four-bar mechanism.
81
Cartesian Coordinates
9 coordinates and 8 kinematic constraints
q = [ x1 y1 φ1 x2 y2 φ2 x3 y3 φ3 ]
T
r
x1 − cos φ1 = 0
2
r
y1 − sin φ1 =0
2
r d
x1 + cos φ1 − x2 + cos φ2 =
0
2 2
r d
y1 + sin φ1 − y2 − sin φ2 =
0
2 2
d s
x2 + cos φ2 − x3 − cos φ3 =0
2 2
d s
y2 + sin φ2 − y3 − sin φ3 =0
2 2
s
x3 − cos φ3 − l =0 dof = 9 − 8 = 1
2
s
y3 − sin φ3 = 0 82
2
†
Coordinates Systems
83
1.3 Computation Kinematics
• A mechanism is a collection of links or bodies kinematically connected to one another.
• An open-loop mechanism may contain links with single joint.
• A closed-loop mechanism is a closed chain, wherein each link is connected to at least two other
links of the mechanism.
Kinematics of Mechanism
Mainly composed of revolute joint and translation joint
87
2.1 Planar Kinematics in Cartesian
Coordinates
ri = ri + s
P
i
P
sip
ri = ri + Ai si′
P P
x xc cos φ − sin φ ξ
= + η
p
ri φ φ
c
y y sin cos i
ri
Coordinate transformation matrix
cos φ − sin φ
Ai =
sin φ cos φ i
88
2.2 Revolute Joint Constraint Model
ri + siP − r j − s Pj =
0
90
Time Derivative of Revolute Joint Constraint
Φ1 ≡ xi + ξiP cos φi − ηiP sin φi − x j − ξ jP cos φ j + η Pj sin φ j =0
91
Time Derivative of Revolute Joint Constraint
92
Time Derivative of Revolute Joint Constraint
Φ1 ≡ xi + ξiP cos φi − ηiP sin φi − x j − ξ jP cos φ j + η Pj sin φ j =0
xi − (ξiP sin φi + ηiP cos φi )φi − (ξiP cos φi − ηiP sin φi )φi2 −
xj
+ (ξ jP sin φ j + η Pj cos φ j )φj + (ξ jP cos φ j − η Pj sin φ j )φj2 =
0
yi + (ξiP cos φi − ηiP sin φi )φi − (ξiP sin φi + ηiP cos φi )φi2 −
yj
− (ξ jP cos φ j − η Pj sin φ j )φj − (ξ jP sin φ j + η Pj cos φ j )φj2 =
0
or
93
Example of a four-bar linkage
Revolute joint at A y η2 B OA = 80mm
ξ2 AB = 260mm
φ2
φ3 BC = 180mm
A η3
ξ1 ξ3 OC = 180mm
φ1
η1 x1 + 40 cos φ1 − x2 + 130 cos φ2 =
0
C x y1 + 40 sin φ1 − y2 + 130 sin φ2 =
0
O
−1 0 −40sin φ1 0 0 0 0 0 0 x1
40cos φ1 ⋅ φ12
0 −1 40cos φ
2
1 0 0 0 0 0 0
y1 40sin φ1 ⋅ φ1
1 0 −40sin φ1 −1 0 −130sin φ2 0 0 0 φ1 40cos φ1 ⋅ φ1 + 130cos φ2 ⋅ φ2
2 2
0 1 40cos φ1 0 −1 130cos φ2 0 0 0 x2 40sin φ1 ⋅ φ12 + 130sin φ2 ⋅ φ22
0 0 0 1 0 −130sin φ2 −1 y2 = 130cos φ2 ⋅ φ22 + 90cos φ3 ⋅ φ32
0 −90sin φ3
0 0 0 0 1 130cos φ2 0 −1 90cos φ3 φ2 130sin φ2 ⋅ φ22 + 90sin φ3 ⋅ φ32
0 0 0 0 0 0 1 x3
0 −90sin φ3 90cos φ3 ⋅ φ32
0 0 0 0 0 0 0 1 90cos φ3
y3 90sin φ3 ⋅ φ32
0 0
1 0 0 0 0 0 0 φ3 0
94
Example of
−1 0 −40sin φ1 0 0 0 0 0 0 x1
40cos φ1 ⋅ φ12
0 −1 40cos φ 0 0 0 0 0 0 y 40sin φ1 ⋅ φ12
1 1
1 0 −40sin φ1 −1 0 −130sin φ2 0 0 0 φ1 40cos φ1 ⋅ φ1 + 130cos φ2 ⋅ φ2
2 2
2
0 1 40cos φ1 0 −1 130cos φ2 0 0 0
x φ ⋅ φ 2
+ φ ⋅ φ
2 40sin 1 1 130sin 2 2
0 0 0 1 0 −130sin φ2 y2 = 130cos φ2 ⋅ φ2 + 90cos φ3 ⋅ φ32
−1 0 −90sin φ3 2
0 0 0 0 1 130cos φ2 0 −1 90cos φ3 φ2 130sin φ2 ⋅ φ22 + 90sin φ3 ⋅ φ32
0 0 0 0 0 0 1 0 −90sin φ3 x3 90cos φ3 ⋅ φ32
0 0 0 0 0 0 0 1 90cos φ3 y3 90sin φ3 ⋅ φ32
0 0 φ
1 0 0 0 0 0 0 3 0
95
2.3 Translational Joint Constraint Model
Translational Joint
niT d = 0
x P
− x P
xi − xi yi − yi y P − y P =
P R P R i j
0
i j
+( xiP − x Pj )( yiP − yiQ ) + ( yiP − y Pj )( xiP − x Qj ) 0
Φ =
φ i − φ j − (φ i
0
− φ 0
j ) 0
Figure A translational joint between bodies i and j .
96
xiP − x Pj xiP − x Ri
d = - P P
n= P R
yi − y j yi − y i
xiQ − x Pi
s = - Q P
yi − y i
x P
− x P
nT d = yiQ − yiP
s (T ) d = xi − xi P
Q P i j
P
=
0
yi − y j
= ( xiP − x Pj )( yiP − yiQ ) + ( yiP − y Pj )( xiP − xiQ ) =
0
97
Constraint Jacobian Matrix
Φ (q ) = 0
∂Φ
q= 0, Denote as Φq q= 0
∂q
Φq q + (Φq q ) q q =
0
Φq q = −(Φq q ) q q ≡ γ
98
Time Derivative of Translational Joint Constraint
−2[( xiP − xiQ )( xi − x j ) + ( yiP − yiQ )( yi − y j )]φj 2 − [( xiP − xiQ )( yi − y j ) − ( yiP − yiQ )( xi − x j )]φi2
γ=
99
AG = 200mm
GB = 300mm
BO = 200mm
100
Driving Link
Φ ≡ xi − d (t ) =0
Φ ≡ yiP − d (t ) =0
101
A Matlab Program for
Kinematics Analysis
102
3.1 Kinematic Analysis
ground
Treat ground as a rigid
body
103
Example of a four-bar linkage
8 constraint equations:
OA = 80mm
− x1 + 40 cos φ1 =0
AB = 260mm
− y1 + 40 sin φ1 =
0
BC = 180mm
x1 + 40 cos φ1 − x2 + 130 cos φ2 =
0
OC = 180mm
y y1 + 40 sin φ1 − y2 + 130 sin φ2 =
0
B
η2 x2 + 130 cos φ2 − x3 + 90 cos φ3 =
0
ξ2 y2 + 130 sin φ2 − y3 + 90 sin φ3 =
φ2 0
x3 + 90 cos φ3 − 180 =
0
φ3
A y3 + 90 sin φ3 =
0
ξ1 η3
ξ3 1 constraint from driving link
φ1
η1 φ1 − 2π t − π 2 =0
C x
O
−1 0 −40sin φ1 0 0 0 0 0 0 x1 0
0 −1 40 cos φ 0 0 0 0 0 0 y 0
1 1
1 0 −40sin φ1 −1 0 −130sin φ2 0 0 0 φ1 0
0 1 40 cos φ1 0 −1 130 cos φ2 0 0 0 x2 0
0 0 0 1 0 −130sin φ2 −1 0 −90sin φ3 y 2 = 0
0 0 0 0 1 130 cos φ2 0 −1 90 cos φ3 φ2 0
0 0 0 0 0 0 1 0 −90sin φ3 x3 0
0 0 0 0 0 0 0 1 90 cos φ3 y3 0
0 0 φ 2π
1 0 0 0 0 0 0 3
105
Acceleration equations
−1 0 −40sin φ1 0 0 0 0 0 0 x1
40cos φ1 ⋅ φ12
0 −1 40cos φ 0 0 0 0 0 0 y1 40sin φ ⋅ φ2
1 1 1
1 0 −40sin φ1 −1 0 −130sin φ2 0 0 0 φ1 40cos φ1 ⋅ φ1 + 130cos φ2 ⋅ φ2
2 2
2
0 1 40cos φ1 0 −1 130cos φ2 0 0 0
x φ ⋅ φ 2
+ φ ⋅ φ
2 40sin 1 1 130sin 2 2
0 0 0 1 0 −130sin φ2 y2 = 130cos φ2 ⋅ φ2 + 90cos φ3 ⋅ φ32
−1 0 −90sin φ3 2
0 0 0 0 1 130cos φ2 0 −1 90cos φ3 φ2 130sin φ2 ⋅ φ22 + 90sin φ3 ⋅ φ32
0 0 0 0 0 0 1 0 −90sin φ3 x3 90cos φ3 ⋅ φ32
0 0 0 0 0 0 0 1 90cos φ3 y3
90sin φ3 ⋅ φ3 2
0 0 φ
1 0 0 0 0 0 0 3 0
Assume q(t +∆t ) and set it as the new initial position of next iteration
107
m.file (1)
1. % Set up the time interval and the initial positions of the nine coordinates
2. T_Int=0:0.01:2;
3. X0=[0 50 pi/2 125.86 132.55 0.2531 215.86 82.55 4.3026];
4. global T
5. Xinit=X0;
6.
7. % Do the loop for each time interval
8. for Iter=1:length(T_Int);
9. T=T_Int(Iter);
10. % Determine the displacement at the current time
11. [Xtemp,fval] = fsolve(@constrEq4bar,Xinit);
12.
13. % Determine the velocity at the current time
14. phi1=Xtemp(3); phi2=Xtemp(6); phi3=Xtemp(9);
15. JacoMatrix=Jaco4bar(phi1,phi2,phi3);
16. Beta=[0 0 0 0 0 0 0 0 2*pi]';
17. Vtemp=JacoMatrix\Beta;
18.
19. % Determine the acceleration at the current time
20. dphi1=Vtemp(3); dphi2=Vtemp(6); dphi3=Vtemp(9);
21. Gamma=Gamma4bar(phi1,phi2,phi3,dphi1,dphi2,dphi3);
22. Atemp=JacoMatrix\Gamma;
23.
24. % Record the results of each iteration
25. X(:,Iter)=Xtemp; V(:,Iter)=Vtemp; A(:,Iter)=Atemp;
26.
27. % Determine the new initial position to solve the equation of the next
28. % iteration and assume that the kinematic motion is with inertia
29. if Iter==1
30. Xinit=X(:,Iter);
31. else
32. Xinit=X(:,Iter)+(X(:,Iter)-X(:,Iter-1));
33. end
34.
35.end 108
m.file (2)
36.% T vs displacement plot for the nine coordinates
37.figure
38.for i=1:9;
39. subplot(9,1,i)
40. plot (T_Int,X(i,:))
41. set(gca,'xtick',[], 'FontSize', 5)
42.end
43.% Reset the bottom subplot to have xticks
44.set(gca,'xtickMode', 'auto')
45.
46.% T vs velocity plot for the nine coordinates
47.figure
48.for i=1:9;
49. subplot(9,1,i)
50. plot (T_Int,V(i,:))
51. set(gca,'xtick',[], 'FontSize', 5)
52.end
53.set(gca,'xtickMode', 'auto')
54.
55.% T vs acceleration plot for the nine coordinates
56.figure
57.for i=1:9;
58. subplot(9,1,i)
59. plot (T_Int,A(i,:))
60. AxeSup=max(A(i,:));
61. AxeInf=min(A(i,:));
62. if AxeSup-AxeInf<0.01
63. axis([-inf,inf,(AxeSup+AxeSup)/2-0.1 (AxeSup+AxeSup)/2+0.1]);
64. end
65. set(gca,'xtick',[], 'FontSize', 5)
66.end
67.set(gca,'xtickMode', 'auto')
109
m.file (3)
68.% Determine the positions of the four revolute joints at each iteration
69.Ox=zeros(1,length(T_Int));
70.Oy=zeros(1,length(T_Int));
71.Ax=80*cos(X(3,:));
72.Ay=80*sin(X(3,:));
73.Bx=Ax+260*cos(X(6,:));
74.By=Ay+260*sin(X(6,:));
75.Cx=180*ones(1,length(T_Int));
76.Cy=zeros(1,length(T_Int));
77.
78.% Animation
79.figure
80.for t=1:length(T_Int);
81. bar1x=[Ox(t) Ax(t)];
82. bar1y=[Oy(t) Ay(t)];
83. bar2x=[Ax(t) Bx(t)];
84. bar2y=[Ay(t) By(t)];
85. bar3x=[Bx(t) Cx(t)];
86. bar3y=[By(t) Cy(t)];
87.
88. plot (bar1x,bar1y,bar2x,bar2y,bar3x,bar3y);
89. axis([-120,400,-120,200]);
90. axis normal
91.
92. M(:,t)=getframe;
93.end
110
Initialization
1. % Set up the time interval and the initial positions of the nine coordinates
2. T_Int=0:0.01:2;
3. X0=[0 50 pi/2 125.86 132.55 0.2531 215.86 82.55 4.3026];
4. global T
5. Xinit=X0;
111
Determine the displacement
10. [Xtemp,fval] = fsolve(@constrEq4bar,Xinit);
10. Call the nonlinear solver fsolve in which the constraint equations and initial values are necessary. The
initial values is mentioned in above script. The constraint equations is written as a function (which can
be treated a kind of subroutine in Matlab) as following and named as constrEq4bar. The fsolve finds a
root of a system of nonlinear equations and adopts the trust-region dogleg algorithm by default.
a. function F=constrEq4bar(X)
b.
c. global T
d.
e. x1=X(1); y1=X(2); phi1=X(3);
f. x2=X(4); y2=X(5); phi2=X(6);
g. x3=X(7); y3=X(8); phi3=X(9);
h.
i. F=[ -x1+40*cos(phi1);
j. -y1+40*sin(phi1);
k. x1+40*cos(phi1)-x2+130*cos(phi2);
l. y1+40*sin(phi1)-y2+130*sin(phi2);
m. x2+130*cos(phi2)-x3+90*cos(phi3);
n. y2+130*sin(phi2)-y3+90*sin(phi3);
o. x3+90*cos(phi3)-180; The equation of driving constraint
p. y3+90*sin(phi3); is depended on current time T
q. phi1-2*pi*T-pi/2];
112
Determine the velocity
14. phi1=Xtemp(3); phi2=Xtemp(6); phi3=Xtemp(9);
15. JacoMatrix=Jaco4bar(phi1,phi2,phi3);
16. Beta=[0 0 0 0 0 0 0 0 2*pi]';
17. Vtemp=JacoMatrix\Beta;
15. Call the function Jaco4bar to obtain the Jacobian Matrix depended on current values of
displacement.
16. Declare the right-side of the velocity equations.
17. Solve linear equation by left matrix division “\” roughly the same as J-1β. The algorithm adopts
several methods such as LAPACK, CHOLMOD, and LU. Please find the detail in Matlab Help.
a. function JacoMatrix=Jaco4bar(phi1,phi2,phi3)
b.
c. JacoMatrix=[ -1 0 -40*sin(phi1) 0 0 0 0 0 0;
d. 0 -1 40*cos(phi1) 0 0 0 0 0 0;
e. 1 0 -40*sin(phi1) -1 0 -130*sin(phi2) 0 0 0;
f. 0 1 40*cos(phi1) 0 -1 130*cos(phi2) 0 0 0;
g. 0 0 0 1 0 -130*sin(phi2) -1 0 -90*sin(phi3);
h. 0 0 0 0 1 130*cos(phi2) 0 -1 90*cos(phi3);
i. 0 0 0 0 0 0 1 0 -90*sin(phi3);
j. 0 0 0 0 0 0 0 1 90*cos(phi3);
k. 0 0 1 0 0 0 0 0 0];
113
Determine the acceleration
20. dphi1=Vtemp(3); dphi2=Vtemp(6); dphi3=Vtemp(9);
21. Gamma=Gamma4bar(phi1,phi2,phi3,dphi1,dphi2,dphi3);
22. Atemp=JacoMatrix\Gamma;
21. Call the function Gamma4bar to obtain the right-side of the velocity equations depended on
current values of velocity.
22. Solve linear equation to obtain the current acceleration.
a. function Gamma=Gamma4bar(phi1,phi2,phi3,dphi1,dphi2,dphi3)
b.
c. Gamma=[ 40*cos(phi1)*dphi1^2;
d. 40*sin(phi1)*dphi1^2;
e. 40*cos(phi1)*dphi1^2+130*cos(phi2)*dphi2^2;
f. 40*sin(phi1)*dphi1^2+130*sin(phi2)*dphi2^2;
g. 130*cos(phi2)*dphi2^2+90*cos(phi3)*dphi3^2;
h. 130*sin(phi2)*dphi2^2+90*sin(phi3)*dphi3^2;
i. 90*cos(phi3)*dphi3^2;
j. 90*sin(phi3)*dphi3^2;
k. 0];
114
Determine the next initial positions
29. if Iter==1
30. Xinit=X(:,Iter);
31. else
32. Xinit=X(:,Iter)+(X(:,Iter)-X(:,Iter-1));
33. end
29.~33. Predict the next initial positions with assumption of inertia except the first time of the loop.
115
Plot time response
37.figure
38.for i=1:9;
39. subplot(9,1,i)
40. plot (T_Int,X(i,:))
41. set(gca,'xtick',[], 'FontSize', 5)
42.end
43.% Reset the bottom subplot to have xticks
44.set(gca,'xtickMode', 'auto')
45.
46.% T vs velocity plot for the nine coordinates
47.figure
48.for i=1:9;
37.…
116
Animation
69.Ox=zeros(1,length(T_Int));
70.Oy=zeros(1,length(T_Int));
71.Ax=80*cos(X(3,:));
72.Ay=80*sin(X(3,:));
73.Bx=Ax+260*cos(X(6,:));
74.…
80.for t=1:length(T_Int);
81. bar1x=[Ox(t) Ax(t)];
82. bar1y=[Oy(t) Ay(t)];
83. bar2x=[Ax(t) Bx(t)];
84. bar2y=[Ay(t) By(t)];
85. bar3x=[Bx(t) Cx(t)];
86. bar3y=[By(t) Cy(t)];
87.
88. plot (bar1x,bar1y,bar2x,bar2y,bar3x,bar3y);
89. axis([-120,400,-120,200]);
90. axis normal
91.
92. M(:,t)=getframe;
93.end
117
Time response of displacement
x1
y 1
φ1
x2
y 2
φ2
x3
y 3
φ3
t
118
Time response of velocity
x1
y 1
φ1
x 2
y 2
φ2
x3
y 3
φ3
t
119
Time response of acceleration
x1
y1
φ
1
x2
y2
φ
2
x3
y3
φ
3
t
120
A Slider Crank System
Kinematic Modeling
Ground
= =
x1 0.0, =
y1 0.0, φ1 0.0
Revolute joint
ξ 4A =
0.0, η4A =
0.0, ξ3A =
−200.0, η3A =
0.0
ξ3B =
300.0, η3B =
0.0, ξ 2B =
−100.0, η 2B =
0.0
=ξ 20 100.0,
= η20 0.0,
= ξ10 0.0,=η10 0.0
translational joint
ξ 4A =
0.0, η 4A =
0.0, ξ1B =
−100.0, η1B =
0.0,
=ξ 4C 100.0,
= η 4C 0.0,
= ξ10 0.0, =η10 0.0
driving constraint
rigid body C starts at 330° with 1.2 rad/sec speed.
φ2 − 5.76 + 1.2t =
0.0
121
Translation Joint η1
n d B ξ1
c
x1 cφ1 − sφ1 −100 x1 − 100cφ1
B= y + sφ cφ 0 =
1 1 1 y1 − 100 sφ1
x − 100cφ1 x4
=d 1 − y
1
y − 100 sφ1 4
cφ4 − sφ4 0 +100 sφ4
=n =
sφ4 cφ4 −100 −100cφ4
x − 100cφ1 − x4
= nT d [100 sφ4 − 100cφ4 ] 1
y1 − 100sφ1 − y4
=Φ ( x1 − 100cφ1 − x4 )( +100 sφ4 ) + ( −100cφ4 )( y1 − 100 sφ1 − y4 )
∂Φ = +100 sφ4
∂x1
∂Φ
∂y1 = −100cφ4
∂Φ = −100 ( −100cφ4 ) cφ1 + 100 sφ4 sφ1
∂φ1
∂Φ = ( x1 − 100cφ1 − x4 )100cφ4 + ( y1 − 100 sφ1 − y4 )100 sφ4 = 0
∂φ4
122
Kinematic Modeling
Ground
Φ1 ≡ x1 =
0.0
Φ2 ≡ y1 =
0.0
Φ3 ≡ φ1 =
0.0
revolute joints Φ4 ≡ x4 − x3 + 200 cos φ3 =
0
Φ5 ≡ y4 − y3 + 200sin φ3 =
0
Φ6 ≡ x3 + 300 cos φ3 − x2 + 100 cos φ2 =
0
Φ7 ≡ y3 + 300sin φ3 − y2 + 100sin φ2 =
0
Φ8 ≡ x2 + 100 cos φ2 − x1 =
0
Φ9 ≡ y2 + 100sin φ2 − y1 =
0
translational joint
Φ10 ≡+ ( x1 − 100 cos φ1 − x4 )(+100sin φ4 ) + (−100 cos φ4 )( y1 − 100sin φ1 − y4 )
=0
Φ11 ≡ φ4 − φ1 =
0
driving constraint
Φ12 ≡ φ2 − 5.76 + 1.2t =
0
123
Jacobian Matrix
124
Cont’d
125
Example of a slider-crank mechanism
11 constraint equations:
x1 = 0
y1 = 0
φ1 = 0
x4 − x3 + 200 cos φ3 =
0
y4 − y3 + 200 sin φ3 =
0
x3 + 300 cos φ3 − x2 + 100 cos φ2 =
0
y3 + 300 sin φ3 − y2 + 100 sin φ2 =
0 AG = 200mm
x2 + 100 cos φ2 − x1 =
0 GB = 300mm
y2 + 100 sin φ2 − y1 =
0
BO = 200mm
100 cos φ4 ( y1 − y4 − 100 sin φ4 ) − 100 sin φ4 ( x1 − x4 − 100 cos φ4 ) =
0
φ4 − φ1 = 0
1 constraint from the driving link
φ2 − 5.76 + 1.2t =0
To solve the 12 equations for 12 unknowns qT = x1 , y1 , φ1, x2 , y2 , φ2 , x3 , y3 , φ3 , x4 , y4 , φ4
T
x x cos φ1 − sin φ1 100 cos φ4 − sin φ4 0
Note that 1 − 4 − =0
y1 y4 sin φ1 cos φ1 0 sin φ4 cos φ4 100
126
Jacobian matrix and the velocity
equations
1 , 2 , 3 , 6 , 10 , 14 , 18 , 22 , 26 , 34 , 36 = 1 19 = 300 cos φ3
4 , 8 , 12 , 16 , 20 , 24 , 35 = −1 28 = −100 sin φ4
5 = −200 sin φ3 29 = 100 cos φ4
9 = 200 cos φ3 31 = − 28
13 , 23 = −100 sin φ2 32 = − 29
15 = −300 sin φ3 33 = 100[cosφ4 ( x4 − x1 ) + sin φ4 ( y4 − y1 )]
17 , 27 = 100 cos φ2
∂Φ1 ∂ 1 0 0 0 0 0 0 0 0 0 0 0 0
0
∂Φ 2 ∂ 0 2 0 0 0 0 0 0 0 0 0 0
∂Φ 3 ∂ 0 0 3 0 0 0 0 0 0 0 0 0 0
0
∂Φ 4 ∂ 0 0 0 0 0 0 4 0 5 6 0 0
∂Φ 5 ∂ 0 0 0 0 0 0 0 8 9 0 10 0 0
0
∂Φ 6 ∂ 0 0 0 12 0 13 14 0 15 0 0 0
J= β =
∂Φ 7 ∂ 0 0 0 0 16 17 0 18 19 0 0 0 0
∂Φ 8 ∂ 20 0 0 22 0 23 0 0 0 0 0 0 0
∂Φ 9 ∂ 0 24 0 0 26 27 0 0 0 0 0 0 0
∂Φ10 ∂ 28 29 0 0 0 0 0 0 0 31 32 33 0
∂Φ 11 ∂ 0 0 34 0 0 0 0 0 0 0 0 35 0
∂Φ 12 ∂ 0 0 0 0 0 36 0 0 0 0 0 0 1.2
127
Acceleration equations
0
0
0
2
2 ⋅ 100 cos φ φ
3 3
2 ⋅100sin φ φ 2
3 3
300 cos φ φ + 100 cos φ φ
2 2
γ=
3 3 2 2
300sin φ3φ3 + 100sin φ2φ2
2 2
2
100 cos φ φ
2 2
100sin φ φ 2
2 2
γ (10 )
0
0
128
Animation
129
Time response of displacement
x2
y 2
φ2
x3
y 3
φ3
x4
y 4
φ4
t
130
Time response of velocity
x 2
y 2
φ2
x3
y 3
φ3
x 4
y 4
φ4
t
131
Time response of acceleration
x2
y 2
φ
2
x3
y 3
φ
3
x4
y4
φ
4
t
132
3.2 Solution Technique
kinematic constraints Φ ≡ Φ (q) = 0
driving link Φ ( d ) ≡ Φ (q, t ) =
0
∂Φ
velocity equations q = 0 or Φq q = 0
∂q
∂Φ ( d ) ∂Φ
q + = 0 or Φq ( d ) q + Φt ( d ) = 0
∂q ∂t
Φq 0
Φ ( d ) q = (d )
q −
t Φ
∂Φ
∂ q
∂Φ ∂q
acceleration q + q = 0 or Φq q + (Φq q ) q q = 0
∂q ∂q
Φq ( d ) q + (Φq ( d ) q ) q q + 2Φqt ( d ) q + Φtt ( d ) =
0
133
Solution Technique
At any given instant t
(1) Solve Φq (q)q = 0
Φq( d ) (q, t )q = (the right hand side)
xi = f xi
mi
yi = f yi
mi
µiφi = ni
m 0 0 x fx
0 m 0 y =f
y
0 0 µ φ n i
135
Illustration of Constraint Force
Pure rolling of a disk down the slope
mg
x
y
f
N −mgsθ + f
mx = mx − f =−mgsθ
θ
−mgcθ + N
my =
⇒ my − N = −mgcθ
1 I φ − fR =
I cφ = f ⋅ R, I c =mR 2 c 0
2
3 eqs. for 5 unknowns y, φ, f , N
x,
x + Rφ =
0
2 geometric constraint equations
y − R = 0
2 2g 1
x = − gsθ , y = 0, φ =
sθ , N = mgcθ , f = mgsθ
3 3R 3
136
Constraint Force
n×1
Kinematic constraint equation Φ (q=
, t ) 0, Φ ∈
There exists a Lagrange Multiplier λ , λ ∈ m×1
∂Φ
such that λ Φq ≡ λT T
is that constraint force.
∂q
The equations of motion can be written as
Mq= g + g ( c ) g :external applied force
g (c)
= −Φq λ
T
g ( c ) :constraint (reaction) force
Mq + ΦqT λ =
g representing constraint force by the
Lagrange multiplier
137
Generalized coordinate x, y, φ
x + Rφ= 0, y − R= 0
Constraint eq.
⇒ − x − Rφ= 0, − y +R= 0
−mgsθ
∂Φ
T
−mgcθ
M q
∂q
= 0
∂Φ λ
0 0
∂q 0
m 0 0 −1 0
x −mgsθ
0
0 −1
m 0
−mgcθ
y
1
0 0 mR 2 − R 0 φ = 0
2 λ1 0
−1 0 −R 0 0
λ 0
0 −1 0 2
0 0
2 2g 1
5 eqs. for 5 unknowns x = − gsθ , y = 0, φ = sθ , λ1 = mgsθ , λ2 = −mgcθ
3 3R 3
1
mgsθ
−1 0 3
∂Φ
T
The constraint force = λ 0 −1 λ = mgcθ
∂q 1
− R 0
mgRsθ
3 3×1
is the friction force for pure rolling.
138
4.2 Physical meaning of constraint force
In Revolute Joint
m 0 0 x 1 0 fx
0 m 0 λ1
y + 0 1 =
λ2 fy
0 0 µ φ i −( yi − yi ) ( xi − xi )
P P n i
x=
mi i f xi − λ1
yi f yi − λ2
=
mi
139
Constraint Force in Translational Joint
Mq + ΦqT λ =
g
Φq q = γ
141
A Matlab Program for
Dynamics of a four-bar linkage
OA = 0.08m M OA = 0.08kg I OA = 4.27 × 10 −5 kg ⋅ m 2
T = 0.1N ⋅ m
C
O
142
Mass matrix and external force vector
M OA = 0.08kg I OA = 4.27 × 10 −5 kg ⋅ m 2 g = 9.8 m s 2 ↓
M AB = 0.26kg I AB = 1.46 × 10 −3 kg ⋅ m 2 T = 0.1N ⋅ m
M BC = 0.18kg I BO = 4.86 × 10 −4 kg ⋅ m 2
0.08 0 0 0 0 0 0 0 0 0
0 0.08 0 0 0 0 0 0 0 0.08 × 9.8
0 0 4.27 × 10 −5 0 0 0 0 0 0 0 . 1
0 0
0 0 0.26 0 0 0 0 0
M= 0 0 0 0 0.26 0 0 0 0 g = 0.26 × 9.8
0
0 0 0 0 1.46 × 10 −3 0 0 0 0
0 0 0 0 0 0 0.18 0 0 0
0 . 18 × 9 . 8
0 0 0 0 0 0 0 0.18 0
0 0 0 0 0 0 0 0 4.86 × 10
−4
0
143
Jacobian matrix and γ
OA = 0.08m
AB = 0.26m
BC = 0.18m
OC = 0.18m
−1 0 −0.04sin φ1 0 0 0 0 0 0 0.04cos φ1 ⋅ φ1 2
0 −1 2
0.04cos φ1 0 0 0 0 0 0
0.04sin φ1 ⋅ φ1
1 0 −0.04sin φ1 −1 0 −0.13sin φ2 0 0 0 0.05cos φ1 ⋅ φ1 + 0.13cos φ2 ⋅ φ2
2 2
0.04cos φ1 0 −1 0.13cos φ2 0
2 + 0.13sin φ ⋅ φ2
J 8×9 =
0 1 0 0 0.05sin φ ⋅ φ 2
0 0 1 0 −0.13sin φ2 −1 0 −0.09sin φ3 γ = 1 1 2
0 0.13cos φ ⋅ φ + 0.09cos φ ⋅ φ2
2
2 2 3 3
0 0 0 0 1 0.13cos φ2 0 −1 0.09cos φ3
0.13sin φ2 ⋅ φ2 + 0.09sin φ3 ⋅ φ3
2 2
0 0 0 0 0 0 1 0 −0.09sin φ3
0.09cos φ3 ⋅ φ32
0 0 0 0 0 0 0 1 0.09cos φ3
2
0.09sin φ3 ⋅ φ3
144
Computation
M J T9×8 q
g
The objective is to solve the differential equation 9×9 = for q ( t ) .
J 8×9 O8×8 λ γ
M J T9×8 q g
In numerial computing, the first step is to solve =
J 8×9 O8×8 λ γ
( 0 )9×1 and λ ( 0 )8×1 with initial position q ( 0 ) and velocity q ( 0 ) .
for q
q ( 0 ) q ( Δt )
, and use q ( Δt ) and q ( Δt )
Δt
Then integrate →
q ( 0 ) q ( Δt )
to repeat the above step for q ( Δt ) and λ ( Δt ) .
Repeat t + Δt until.
145
A convenient way with Matlab solver
Solve initial value problems for ordinary differential equations with
ode45(commended), ode23, ode113…
x 1
y
1
ϕ3 q q
=
Let z = = , z′
x1 q q
y1
ϕ3
146
The syntax for calling solver in Matlab
A vector of initial
Solution array conditions
[T,Z] = ode45(@Func4Bar,[0:0.005:2],Z0);
J=[ -1 0 -0.5*L1*sin(phi1) 0 0 0 0 0 0;
0 -1 0.5*L1*cos(phi1) 0 0 0 0 0 0;
1 0 -0.5*L1*sin(phi1) -1 0 -0.5*L2*sin(phi2) 0 0 0;
0 1 0.5*L1*cos(phi1) 0 -1 0.5*L2*cos(phi2) 0 0 0;
0 0 0 1 0 -0.5*L2*sin(phi2) -1 0 -0.5*L3*sin(phi3);
0 0 0 0 1 0.5*L2*cos(phi2) 0 -1 0.5*L3*cos(phi3);
0 0 0 0 0 0 1 0 -0.5*L3*sin(phi3);
0 0 0 0 0 0 0 1 0.5*L3*cos(phi3)];
147
The syntax for calling solver in Matlab
J=[ -1 0 -0.5*L1*sin(phi1) 0 0 0 0 0 0;
0 -1 0.5*L1*cos(phi1) 0 0 0 0 0 0;
1 0 -0.5*L1*sin(phi1) -1 0 -0.5*L2*sin(phi2) 0 0 0;
0 1 0.5*L1*cos(phi1) 0 -1 0.5*L2*cos(phi2) 0 0 0;
0 0 0 1 0 -0.5*L2*sin(phi2) -1 0 -0.5*L3*sin(phi3);
0 0 0 0 1 0.5*L2*cos(phi2) 0 -1 0.5*L3*cos(phi3);
0 0 0 0 0 0 1 0 -0.5*L3*sin(phi3);
0 0 0 0 0 0 0 1 0.5*L3*cos(phi3)];
gamma=[ 0.5*L1*cos(phi1)*dphi1^2;
0.5*L1*sin(phi1)*dphi1^2;
0.5*L1*cos(phi1)*dphi1^2+0.5*L2*cos(phi2)*dphi2^2;
0.5*L1*sin(phi1)*dphi1^2+0.5*L2*sin(phi2)*dphi2^2;
0.5*L2*cos(phi2)*dphi2^2+0.5*L3*cos(phi3)*dphi3^2;
0.5*L2*sin(phi2)*dphi2^2+0.5*L3*sin(phi3)*dphi3^2;
0.5*L3*cos(phi3)*dphi3^2;
0.5*L3*sin(phi3)*dphi3^2];
Matrix=[M J';
J zeros(size(J,1),size(J,1))];
d2q=Matrix\[g;gamma];
dz=[z(10:18,:); d2q(1:9,:)];
148
Time response of displacement
x1
y 1
φ1
x2
y 2
φ2
x3
y 3
φ3
t
149
Time response of velocity
x1
y 1
φ1
x 2
y 2
φ2
x3
y 3
φ3
t
150
Time response of acceleration
× 103
x1
y1
φ
1
x2
y2
φ
2
x3
y3
φ
3
t
151
Time response of λ
× 103
λ1
λ2
λ3
λ4
λ5
λ6
λ7
λ8
t
152
A slider-crank mechanism
B
T = 0.1N ⋅ m
G
A C
O
BO = 0.2 m g = 9.8 m s 2 ↓
153
Time response of displacement
x2
y 2
φ2
x3
y 3
φ3
x4
y 4
φ4
t
154
Time response of velocity
x 2
y 2
φ2
x3
y 3
φ3
x 4
y 4
φ4
t
155
Time response of acceleration
× 103
x2
y 2
φ
2
x3
y 3
φ
3
x4
y4
φ
4
t
156
Time response of λ
× 103
λ1
λ2
λ3
λ4
λ5
λ6
λ7
λ8
λ9
λ10
λ11
t
157
Example
For the four-bar linkage, the mass center of each link is located at the midpoint. Let
the mass (kg) and mass moment of inertia (kg-m2) of link OA, AB, and BC are m1 =
2 , I1 = 0.2 , m2 = 3, I2 =0.3, m3 = 4, I3 =0.4.
(1) Consider the mechanism has 4 rigid bodies (including the ground). Define
the inertia (global) and body-fixed (local) coordinates and determine the degree-of-
freedom.
(2) List the kinematic constraint equation of the revolute joints at point O, A, B,
and C.
(3) For kinematic analysis with the driving link BC rotating at 2 rad/s, list the
equations to solve for displacement, velocity and acceleration of all links at all time.
Also state the procedure/process in the numerical solution.
(4) For dynamic analysis with the driving link torque 100 (N-m), list the equations
to solve for the acceleration of all links at all time. Note that BC is no longer in
constant speed. Explain the physical meaning of the constraint force(s) and sketch
where they are located.
158
Y
η3 Coordinates Y
ζ3 ζ3
ζ2 ζ4 ζ4
ζ2
ζ1
X ζ1
X
Φ = ( ri + A i si′ ) − ( r j + A j s′j )
0 −50 0 0
revolute joint= ′
O s1 = ′
s2 0 = s1′ = s2′ −50
0 0
50 −130 0 0
A s2′ =
revolute joint= ′
3 0
s =s2′ = s3′ 130
0
50
130 −90 0 0
=
revolute joint ′
B s3 = s4′ 0 =s3
′ = ′
−130 4 −90
s
0
90 180 0 180
revolute joint=C s4′ = s1′ 0 =s4
′ = ′
90 1 0
s
0
100 100
φ1 0,=
= φ2 127=
°
, φ3 sin −1 , φ4 270°
= φ1 =
0, φ2 =
37° , φ3 =
90° + sin −1 , φ159
4 =180°
260 260
Constraint Equation
Revolute joint Φ = ( ri + A i si′ ) − ( r j + A j s′j )
x1 0 x2 −50
At O Φ = + A1 − − A 2
O
1
y 2
0 y 0
x1 − x2 − 50 cos φ2
⇒ =0
y1 − y2 − 50sin φ2
x2 50 x3 −130
At A Φ = + A 2 − − A 3
A
2
y 3
0 y 0
x2 + 50 cos φ2 − x3 + 130 cos φ3
= 0
y2 + 50sin φ2 − y3 + 130sin φ3
x3 + 130 cos φ3 − x4 + 90 cos φ4
At B Φ B
= 0
y3 + 130sin φ3 − y4 + 90sin φ4
x4 + 90 cos φ4 − 180
=At C Φ =
C
0
y4 + 90sin φ4 160
Driving Constraint and Time
Response
q = [ x1 y1 φ1 x2 y2 φ2 x3 y3 φ3 x4 y4 φ4 ]
T
x1
Φ G =
Ground Constraint = y1 0
φ1
Revolute joint at point O, A, B, C.=
Φ O 0=
Φ A 0=
Φ B 0=
ΦC 0
Driving Constraint Φ = φ2 − 2t − 127° = 0
12 eqs. for 12 unknowns of displacement
161
Velocity
Φg q = β
1 0 0 0
1 0 0
1 0
1 0 0 −1 0 50sin φ2 0
1 0 0 −1 −50 cos φ2 0
1 0 −50sin φ2 −1 0 −130sin φ3 q = 0
0 1 50 cos φ2 0 −1 130 cos φ3 0
1 0 −130 cos φ3 −1 0 −90sin φ4 0
0 1 130 cos φ3 0 −1 90 cos φ4 0
1 0 −90sin φ4 0
0 1 90 cos φ4 0
0 0 0 0 0 1 0 0 0 0 0 1 2
12 eqs. for 12 unknowns in q 162
Acceleration
0
0
0
2
+50 cos φ2φ2 + 130 cos φ3φ3
2
M ΦqT q g
=
Φq 0 λ γ
M =diag [ m1 m1 I1 m2 m2 I 2 m3 m3 I3 m4 m4 I 4 ]
g [0 -m1g 0 0 -m2g Γ 0 -m3g 0 0 -m4g 0]
Γ is the torque at the driving link.
initial conditions q (0), q (0)
The initial conditions have to satify the constraints.
164