You are on page 1of 45

Dynamic Force Analysis: R-RRT mechanism

1
1.1

Dynamic Force Analysis


Joint Forces Analysis Using Individual Links

Figure 1.1(a) is a schematic diagram of a R-RRT (slider-crank) mechanism


comprised of a crank 1, a connecting rod 2, and a slider 3. The mechanism
shown in the figure has the dimensions: AB = 1 m and BC = 1 m. The
driver link 1 makes an angle = 1 = /4 rad with the horizontal axis and
rotates with a constant speed of n = 30/ rpm. The point A is selected as
the origin of the xyz reference frame. The position vectors of the joints B
and C are

2
2
+
m and rC = xC + yC = 2 + 0 m.
rB = xB + yB =
2
2
The angular velocities of links 1 and 2 are
1 = 1 k = 1 k rad/s and 2 = 2 k = 1 k rad/s.
The angular accelerations of link 1 and 2 are 1 and 2 . For this particular
configuration of the mechanism 1 = 2 = 0.
The velocity and acceleration of B are

2
2
2
2
+
m/s and aB =

m/s2 .
vB =
2
2
2
2
The velocity and acceleration of C are

vC = 2 m/s and aC = 2 m/s2 .


The center of mass of link 1 is C1 , the center of mass of link 2 is C2 , and the
center of mass of slider 3 is C. The position vectors of the Ci , i = 1, 2, 3 are

2
2
rC1 = rB /2 = xC1 + yC1 =
+
m,
4
4

3 2
2
rC2 = (rB + rC )/2 = xC2 + yC2 =
+
m,
4
4

rC3 = rC = xC3 + yC3 = 2 m.


The acceleration vectors of the Ci , i = 1, 2, 3 are

2
2
aC1 = aB /2 = xC1 + yC1 =

m/s2 ,
4
4

Dynamic Force Analysis: R-RRT mechanism

aC2
aC3

3 2
2
= (aB + aC )/2 = xC2 + yC2 =

m/s2 ,
4
4

2
= aC = xC + yC = 2 m/s .

The external driven force Fext applied on link


3 is opposed to the motion
of the link (opposed to vC ). Because vC = 2 m/s, the external force
vector will be
Fext = [Sign(vC )] 100 = 100 N.
The height of the links 1 and 2 is h = 0.01 m. The width of the links 3
is wSlider = 0.01 m and the height is hSlider = 0.01 m. All three moving
links are rectangular prisms with the depth d = 0.001 m. The acceleration
of gravity is g = 10 m/s2 .

Dynamic Force Analysis: R-RRT mechanism

Inertia forces and moments


Link 1
The mass of the link 1 is
m1 = 1 AB h d,
where the density of the material is 1 . For the simplicity of calculations
m1 = 1 kg.
The inertia force on link 1 at C1 is

2
2
Fin 1 = m1 aC1 =
+
N.
4
4
The gravitational force is
G1 = m1 g = 10 N.
The total force on link 1 at the mass center C1 is

2
2
F1 = Fin 1 + G1 =
+(
10) N.
4
4
The mass moment of inertia is
IC1 = m1 (AB 2 + h2 )/12 = 0.0833417 kg m2 .
The moment of inertia is
M1 = Min 1 = IC1 1 = 0.
Link 2
The mass of the link 2 is
m2 = 2 BC h d,
where the density of the material of link 2 is 2 . For the simplicity of calculations m2 = 1 kg.
The inertia force on link 1 at C2 is

2
3 2
+
N.
Fin 2 = m2 aC2 =
4
4

Dynamic Force Analysis: R-RRT mechanism

The gravitational force is


G2 = m2 g = 10 N.
The total force on link 2 at the mass center C2 is

3 2
2
F2 = Fin 2 + G2 =
+(
10) N.
4
4
The mass moment of inertia is
IC2 = m2 (BC 2 + h2 )/12 = 0.0833417 kg m2 .
The moment of inertia is
M2 = Min 2 = IC2 2 = 0.
Link 3
The mass of the link 2 is
m3 = 3 hSlider wSlider d,
where the density of the material of link 3 is 3 . For the simplicity of calculations m3 = 1 kg.
The inertia force on link 1 at C3 = C is

Fin 3 = m3 aC3 = 2 N.
The gravitational force is
G3 = m3 g = 10 N.
The total force on link 3 at the mass center C is

F3 = Fin 3 + G3 = 2 10 N.
The mass moment of inertia is
2
IC3 = m3 (h2Slider + wSlider
)/12 = 0.0000166667 kg m2 .

The moment of inertia is


M3 = Min 3 = IC3 3 = 0.
For a given value of the crank angle ( = /4) and a known driven
force Fext find the joint reactions and the drive moment M on the crank.

Dynamic Force Analysis: R-RRT mechanism

Joint forces and drive moment


Newton-Euler equations of motion
Figures 1.2, 3, and 4 show free-body diagrams of the crank 1, the connecting rod 2, and the slider 3. For each moving link the dynamic equilibrium
equations are applied (Newton-Euler equations of motion)
m aC =

F and IC =

MC ,

where C is the center of mass of the link.


The force analysis starts with the link 3 because the external driven force
Fext is given.
The reaction joint force of the ground 0 on the slider 3, F03 , is perpendicular on the sliding direction, x-axis: F03 . The application point Q of
the reaction force F03 is determined using Euler moment equation
IC3 3 = rCQ F03

or 0 = rCQ F03

rCQ = 0 or C = Q.

It results the reaction force F03 acts at C.


For the slider 3 the vector sum of the net forces (external forces Fext ,
gravitational force G3 , joint forces F23 , F03 ) is equal to m3 aC3 [Fig. 1.2]
m3 aC3 = F23 + G3 + Fext + F03 ,
where F23 = F23x + F23y and F03 = F03y .
Projecting this vectorial equation onto x and y axes gives
m3 xC3 = F23x + Fext ,
m3 yC3 = F23y m3 g + F03y ,
or numerically

(1)( 2) = F23x + 100,


0 = F23y (1)(10) + F03y .
For the connecting rod 2 [Fig. 1.3], Newton equation gives
m2 aC2 = F32 + G2 + F12 .

(1.1)
(1.2)

Dynamic Force Analysis: R-RRT mechanism

The previous equation can be projected on x and y axes


m2 xC2 = F32x + F12x ,
m2 yC2 = F32y m2 g + F12y ,
or numerically

3 2
(1)(
) = F32x + F12x ,
4
2
(1)(
) = F32y 1(10) + F12y .
4

(1.3)
(1.4)

For the link 2 a moment equation can be written with respect to C2


IC2 2 = rC2 C F32 + rC2 B F12 ,
or



IC2 2 k = xC xC2

F32x

k

yC yC2 0 + xB xC2 yB yC2 0


F32y
0 F12x
F12y
0

or
IC2 2 = (xC xC2 )F32y (yC yC2 )F32x + (xB xC2 )F12y (yB yC2 )F12x ,
or numerically

3 2
2
2 3 2
2
2
)F32y (
)F32x + (

)F12y (

)F12x .
0=( 2
4
4
2
4
2
4

Equations (1.1), (1.2), (1.3), (1.4), and (1.5) form a system of 5 equations
with five scalar unknowns

3 2
F03y = 85
N,
2

3 2
F23x = 100 2 N, F23y = 95 +
N,
2

5
1
F12x = (400 + 7 2) N, F12y = (84 + 2) N,
4
4

(1.5)

Dynamic Force Analysis: R-RRT mechanism


or
F03

3 2
= |F03 | = 85 +
N,
2
s

38063
+ 485 2 N,
2
q
q

1
2
2
F12x = |F12 | = F12x
+ F12y
=
84137 + 2450 2 N.
2
For the crank 1 [Fig. 1.4], there are two vectorial equations
F23 = |F23 | =

2
F23x

2
F23y

m1 aC1 = F21 + G1 + F01 ,


IC1 1 = rC1 B F21 + rC1 A F01 + M,
where M, is the input (motor) moment on the crank, F21 = F12 , and
F01 = F01x + F01y .
The above vectorial equations give three scalar equations on x, y, and z
m1 xC1 = F21x + F01x ,
m1 yC1 = F21y m1 g + F01y ,



k

IC1 1 k = xB xC1 yB yC1 0 + xA xC1 yA yC1 0 +




F21x
F21y
0 F01x
F01y
0
+M k = 0,
or
m1 xC1 = F21x + F01x ,
m1 yC1 = F21y m1 g + F01y
IC1 1 = (xB xC1 )F21y (yC2 yC1 )F21x +
(xA xC1 )F01y (yA yC1 )F01x + M,
or numerically

2
1
) = (400 + 7 2) + F01x ,
(1.6)
1(
4
4

2
5
1(
) = (84 + 2) 1(10) + F01y ,
(1.7)
4
4





2
2
2
2 1
5
0=(

) (84 + 2) (

) (400 + 7 2)
2
4
4
2
4
4

2
2

F01y +
F01y + M = 0.
(1.8)
4
4

Dynamic Force Analysis: R-RRT mechanism


Equations (1.6), (1.7) and (1.8) give

F01x = 2(50 + 2) N,

M = 3 + 105 2 N m,

F01y = 115 +

2 N,

or
F01 = |F01 | =

2
F01x

2
F01y

+
=

M = |M| = 3 + 105 2 N m.

23235 + 630 2 N,

Another way of calculating the moment M required for dynamic equilibrium


is to write the moment equation of motion for link 1 about the fixed point A
IA 1 k = rAC1 G1 + rAB F21 + M = M = rB F12 rC1 G1 ,
where IA = IC1 + m1 (AB/2)2 . The reaction force F01 does not appear in
this moment equation.

Dynamic Force Analysis: R-RRT mechanism

DAlemberts principle
For each moving link the dynamic equilibrium equations are applied
(dAlemberts principle)
X

F + Fin = 0 and

MC + Min = 0,

where C is the center of mass of the link. With dAlemberts principle the
moment summation can be about any arbitrary point P
X

MP + Min + rP C Fin = 0.

The force analysis starts with the link 3 because the external driven force
Fext is given. For the slider 3 the vector sum of the all the forces (external
forces Fext , gravitational force G3 , inertia forces Fin 3 , joint forces F23 , F03 )
is zero [Fig. 1.2]
X

F(3) = F23 + Fin 3 + G3 + Fext + F03 = 0,

where F23 = F23x + F23y and F03 = F03y .


Projecting this force onto x and y axes gives
X

F(3) = F23x + (m3 xC3 ) + Fext = 0,

F(3) = F23y m3 g + F03y = 0,

or numerically

F23x + (1)( 2) + 100 = 0,


F23y (1)(10) + F03y = 0.

(1.9)
(1.10)

For the connecting rod 2 [Fig. 1.3], the sum of the forces is equal to zero
X

F(2) = F32 + Fin 2 + G2 + F12 = 0,

The previous equation can be projected on x and y axes


X

F(2) = F32x + (m2 xC2 ) + F12x = 0,

F(2) = F32y + (m2 yC2 ) m2 g + F12y = 0,

Dynamic Force Analysis: R-RRT mechanism

10

or numerically

3 2
) + F12x = 0,
(1.11)
F32x + (1)(
4

2
F32y + (1)(
) 1(10) + F12y = 0.
(1.12)
4
For the link 2 a moment equation can be written with respect to C2
X

(2)

MC2 = rC2 C F32 + rC2 B F12 + Min 2 = 0.

Instead of the previous one can use the sum of the moments with respect to
B
X

(2)

MB = rBC F32 + rBC2 (Fin 2 + G2 ) + Min 2 = 0,

or

xB
C


F32x

k

yC yB 0 + xC2 xB
yC2 yB
0


F32y
0 m2 xC2 m2 yC2 m2 g 0
IC2 2 k = 0.

or
(xC xB )F32y (yC yB )F32x + (xC2 xB )(m2 yC2 m2 g)
(yC2 yB )(m2 xC2 ) IC2 2 = 0,
or numerically

"

3 2
2
2
2
2
)F32y (
)F32x + (

) 1(
) 1(10)
( 2
2
2
4
2
4

"
#
2
2
3 2
(1.13)
(

) 1(
) 0 = 0.
4
2
4
Equations (1.9), (1.10), (1.11), (1.12), and (1.13) form a system of 5 equations
with five scalar unknowns

3 2
F03y = 85
N,
2

3 2
F23x = 100 2 N, F23y = 95 +
N,
2

1
5
F12x = (400 + 7 2) N, F12y = (84 + 2) N.
4
4

Dynamic Force Analysis: R-RRT mechanism

11

For the crank 1 [Fig. 1.4], there are two vectorial equations:
X

F(1) = F21 + Fin 1 + G1 + F01 = 0,

MA = rB F21 + rC1 (Fin 1 + G1 ) + Min 1 + M = 0,

(1)

where M = |M| is the magnitude of the input moment on the crank, F21 =
F12 , and F01 = F01x + F01y .
The above vectorial equations give three scalar equations on x, y, and z
X

F(1) = F21x + (m1 xC1 ) + F01x = 0,

F(1) = F21y + (m1 yC1 ) m1 g + F01y = 0,





xB

F21x

k

yB 0 +
xC1
yC1
0


F21y 0 m1 xC1 m1 yC1 m1 g 0
IC1 1 k + M k = 0,
or
F21x + (m1 xC1 ) + F01x = 0,
F21y + (m1 yC1 ) m1 g + F01y = 0,
xB F21y yB F21x + xC1 (m1 yC1 m1 g) yC1 (m1 xC1 ) IC1 1 + M = 0,
or numerically
#
"

2
1
(400 + 7 2) + 1(
) + F01x = 0,
4
4
#
"

5
2
) 1(10) + F01y = 0,
(84 + 2) + 1(
4
4




2
5
2 1
(84 + 2)
(400 + 7 2)
2 4
2
4

"
#
"
#
2
2
2
2
+
1(
) 1(10)
1(
)
4
4
4
4
0 + M = 0.
Equations (1.14), (1.15) and (1.16) give

F01x = 2(50 + 2) N,

M = 3 + 105 2 N m.

F01y = 115 +

2 N,

(1.14)
(1.15)

(1.16)

Dynamic Force Analysis: R-RRT mechanism

12

Contour method
The diagram representing the mechanism is shown in Fig. 1.5 and has
one contour, 0-1-2-3-0.
The dynamic force analysis can start with any joint.
Reaction F03
The reaction force F03 is perpendicular to the sliding direction of joint CT
(CT ranslation ) as shown in Fig. 1.6
F03 = F03y .
The application point of the unknown reaction force F03 is computed from a
moment equation about CR (CRotation ) for link 3 (path I) [Fig. 1.6]:
X

(3)

MC = rCP F03 = (rP rC ) F03 = 0,

(1.17)

or
x F05y = 0 x = 0.

(1.18)

The application point of the reaction force F03 is at C (P C). The magnitude of the reaction force F03y is obtained from a moment equation about
BR for the links 3 and 2 (path I):
(3&2)

= rBC (F03 + Fin 3 + G3 + Fext ) +


MB
rBC2 (Fin 2 + G2 ) + Min 2 = 0,

or



xC xB

Fin 3x + Fext

k

yC yB
0 + xC 2 xB
yC2 yB
0


F03y + Fin 3y m3 g 0 Fin 2x
Fin 2y m2 g 0

+Min 2 k = 0,
or numerically

3
5
F03y
+ 45 2 + = 0.
2
2
2

The reaction F03y is


F03y

3 2
= 85
N.
2

Dynamic Force Analysis: R-RRT mechanism

13

Reaction F23
The pin joint at CR , between 2 and 3, is replaced with the reaction force
(Fig. 1.7):
F23 = F32 = F23x + F23y .
For the path I, an equation for the forces projected onto the sliding direction
of the joint CT is written for link 3
F(3) = (F23 + Fin 3 + G3 + Fext ) =

F23x + Fin 3x + Fext = F23x + 100 + 2 = 0.

(1.19)

For the path II, shown Fig. 1.7, a moment equation about BR is written for
link 2
X

(2)

MB = rBC (F23 ) + rBC2 (Fin 2 + G2 ) + Min 2 = 0,



xC xB

F23x

k

yC yB 0 + xC2 xB
yC2 yB
0 + Min 2 k = 0,


F23y 0 Fin 2x
Fin 2y m2 g 0

or numerically

1 5 2 F23x 2 F23y 2

= 0.
(1.20)
2
2
2
2
The joint force F23 is obtained from the system of Eqs. (1.19) and (1.20):

3 2
N.
F23x = 100 2 N and F23y = 95 +
2
Reaction F12
The pin joint at BR , between 1 and 2, is replaced with the reaction force
(Fig. 1.8):
F12 = F21 = F12x + F12y .
For the path I, shown Fig. 1.8, a moment equation about CR is written for
link 2
X

(2)

MC = rCB F12 + rCC2 (Fin 2 + G2 ) + Min 2 = 0,



xB xC


F12x

k

yB yC 0 + xC2 xC
yC2 yC
0 + Min 2 k = 0,


F12y
0 Fin 2x
Fin 2y m2 g 0

Dynamic Force Analysis: R-RRT mechanism

14

or numerically

1 5 2 F12x 2 F12y 2
+

= 0.
2
2
2
2

(1.21)

Continuing on path I, an equation for the forces projected onto the sliding
direction of the joint CT is written for links 2 and 3
F(2&3) = (F12 + Fin 2 + G2 + Fin 3 + G3 + Fext ) =

3 2
= 0. (1.22)
F12x + Fin 2x + Fin 3x + Fext = F23x + 100 + 2 +
2

The joint force F12 is obtained from the system of Eqs. (1.22) and (1.21):

1
5
F12x = (400 + 7 2) N and F12y = (84 + 2) N.
4
4
Reaction F01 and equilibrium moment M
The pin joint AR , between 0 and 1, is replaced with the unknown reaction
(Fig. 1.9):
F01 = F01x + F01y .
The unknown equilibrium moment is M = M k. If the path I is followed
[Fig. 1.9] for the pin joint BR , a moment equation is written for link 1
X

(1)

MB = rBA F01 + rBC1 (Fin 1 + G1 ) + Min 1 + M = 0,





xB

F01x

k

yB 0 + xC1 xB
yC1 yB
0 + M k = 0,


F01y 0 Fin 1x
Fin 1y m1 g 0

or numerically

5 2 F01x 2 F01y 2
+
+
+ M = 0.
2
2
2

(1.23)

Continuing on path I the next joint encountered is the pin joint CR , and a
moment equation is written for links 1 and 2
X

(1&2)

MC
= rCA F01 + rCC1 (Fin 1 + G1 ) + Min 1 + M
+rCC2 (Fin 2 + G2 ) + Min 2 = 0,

Dynamic Force Analysis: R-RRT mechanism




k



xC yC 0 + xC1 xC


F01x F01y 0 Fin 1x

k


yC2 yC
0
+ xC 2 xC

Fin 2x
Fin 2y m2 g 0

15

k
yC1 yC
0 + M k

Fin 1y m1 g 0




+ Min 2 k = 0,

or numerically

2 F01y + M 1 + 10 2 = 0.

(1.24)

Continuing on path I the next joint encountered is the slider joint CT , and
a force equation is written for links 1, 2, and 3
F(1&2&3) = (F01 + Fin 1 + G1 + Fin 2 + G2 + Fin 3 + G3 + Fext ) =

3 2
= 0. (1.25)
F01x + Fin 1x + Fin 2x + Fin 3x + Fext = F12x + 100 + 2 +
2

From Eqs. (1.23), (1.24), and (1.25) the components F01x , F01y and M are
computed

F01x = 2(50 + 2) N and F01y = 115 + 2 N,

M = 3 + 105 2 N m.

2
y
3

Fext

0
0

(a)
F12y

F21y

F12

F21
B
M in 1

Fin 1

C1

y
F01x

1 F21x

F12x
M in 2

F01

F32
F32y

C2

F03
F23x C

G1

G2

Fin 2

Fin 3
Fext

F32x

F01y

G3 3

(b)

Fig. 1

F23

F23y

NEWTON

m3 aC3

F03
C

F23x C
=

Fext
G3 3
F23

F23y

m3 aC3 = F23 + G3 + Fext + F03

F03
F23x C

Fin 3 = m3 aC3

DALEMBERT

Fext
G3 3
F23y

23

F(3) = F23 + Fin 3 + G3 + Fext + F03 = 0

Fig. 2

F12y

NEWTON

F12

F12x
B

IC2 2

F32
F32y

C2

C2

m2 aC2

G3

C
m2 aC2 = F32 + G2 + F12
IC2 2 = rC2C F32 + rC2B F12

F12y

Fin 2 = m2 aC2

F12

Min 2 = IC2 2

DALEMBERT
B

F12x
M in 2

Fin 2

F32
F32y

C2
G3

F32x

F(2) = F32 + Fin 2 + G2 + F12 = 0


(2)

MB = (rC rB ) F32 + (rC2 rB ) (Fin 2 + G2 ) + Min 2 = 0

Fig. 3

F32x

NEWTON
F21y
F21
B

IC1 1

1 F21x

1
=

C1

C1

m1 aC1

F01x

G1
A

A
F01

F01y

m1 aC1 = F21 + Fin 1 + G1 + F01


IC1 1 = rC1A F01 + rC1B F21 + M

F21y
F21

DALEMBERT
B
M in 1

Fin 1

C1
F01x

1 F21x

G1

Fin 1 = m1 aC1
Min 1 = IC1 1

A
F01

F01y

F(1) = F21 + Fin 1 + G1 + F01 = 0


(1)

MA = rB F21 + rC1 (Fin 1 + G1 ) + Min 1 + M = 0

Fig. 4

B
2

y
C

Fext

0
0

AR

1
BR

CT

CR

Fig. 5

contour
diagram

AR

CT

1
BR

F03 3

CR

CR

F03 3

path I:

C2

MC

BR

(3&2)

MB

2
M in 2

(3)

Fin 2
F03

G2

Fin 3

Fext

C
G3

Fig. 6

AR

0
CT

3
F23

F23

path II:

F32

BR

II
CR

path I:

2
F32

CT

(3)
F

BR

(2)

MB

3
Fin 3

Fin 2

C2

2
M in 2

G3

F23

Fext

F32
II

G2

Fig. 7

AR

0
CT

I
CR

F21
BR

CR

F12 2

path I:

F12

(2)

MC

CT

(2&3)

F12

B
y

M in 2
I

Fin 2

C2

3
G2
0

Fin 3
Fext

C
G3

Fig. 8

AR

CT

F01

path I:

BR

CR

M in 2

M in 1

Fin

C1
M

CT

Fin 2

C2

I
G1

F01

F01

G2

A
0

Fin 3
Fext

C
G3

Fig. 9

R_RRT_NE.nb

"Joint Forces Analysis Using Newton Euler Equations"


"slider-crank mechanism"
Apply[Clear,Names["Global`*"]];
Off[General::spell];
Off[General::spell1];
(* Input data *)
n = 30/Pi; (* rpm *)
omega = n Pi/30 ; (* rad/s *)
AB=1;
BC=1;
(* Position analysis *)
(* Position of joint A *)
xA = yA = 0 ;
rA = { xA, yA, 0} ;
(* Position of joint B *)
xB = AB Sqrt[2]/2 ;
yB = AB Sqrt[2]/2 ;
rB = { xB, yB, 0} ;
Print["rB = ",rB," [m]"];
(* Position of joint C *)
rC = {2 xB, 0, 0} ;
Print["rC = ",rC," [m]"];
(* Angular velocity and acceleration of the link 1 *)
omega1 = {0, 0, omega} ;
alpha1 = alpha10 = {0, 0, 0} ;
Print["omega1 = ",omega1," [rad/s]"];
vB=Cross[omega1,rB];
Print["vB = ",vB," [m/s]"];
omega2u = {0, 0, omega2z} ;
vC2=vB+Cross[omega2u,rC-rB];
vC3={vCx,0,0};
eq=vC2-vC3;
sol=Solve[{eq[[1]]==0,eq[[2]]==0},{vCx,omega2z}];
vC=vC3/.sol[[1]];
Print["vC = ",vC," [m/s]"];
omega2=omega2u/.sol[[1]];
Print["omega2 = ",omega2," [rad/s]"];
aB=Cross[alpha1,rB]-omega1.omega1 rB;
Print["aB = ",aB," [m/s^2]"];
alpha2u = {0, 0, alpha2z} ;
aC2=aB+Cross[alpha2u,rC-rB]-omega2.omega2 (rC-rB);
aC3={aCx,0,0};
eqa=aC2-aC3;
sola=Solve[{eqa[[1]]==0,eqa[[2]]==0},{aCx,alpha2z}];
aC=aC3/.sola[[1]];
Print["aC = ",aC," [m/s^2]"];
alpha20 = alpha2 = alpha2u/.sola[[1]];
Print["alpha2 = ",alpha2," [rad/s^2]"];
alpha30 = alpha3 = {0,0,0};
rC1 = rB/2 ;
vC1 = vB/2 ;
aC1 = aB/2 ;
rC2 = Simplify[(rB+rC)/2];
vC2 = (vB+vC)/2;
aC2 = Simplify[(aB+aC)/2];

aC=aC3/.sola[[1]];
Print["aC = ",aC," [m/s^2]"];
alpha20 = alpha2 = alpha2u/.sola[[1]];
R_RRT_NE.nb
Print["alpha2 = ",alpha2," [rad/s^2]"];
alpha30 = alpha3 = {0,0,0};
rC1 = rB/2 ;
vC1 = vB/2 ;
aC1 = aB/2 ;
rC2 = Simplify[(rB+rC)/2];
vC2 = (vB+vC)/2;
aC2 = Simplify[(aB+aC)/2];
rC3 = rC;
vC3 = vC;
aC3 = aC;
Print["----------------------------------------"];
Print["rC1=",rC1,"[m]"];
Print["rC2=",rC2,"[m]"];
Print["rC3=",rC3,"[m]"];
Print["aC1=",aC1,"[m/s^2]"];
Print["aC2=",aC2,"[m/s^2]"];
Print["aC3=aC=",aC3,"[m/s^2]"];
Print["----------------------------------------"];
fe=100;
Fe=-Sign[vC3[[1]]]{fe,0,0};
Print["Fext = -Sign[vC3x]{fe,0,0} = ",Fe,"[N]"];
h=0.01;
d=0.01;
hSlider=0.01;
wSlider=0.01;
g=10;
Print["h = ",h,"[m]"];
Print["d = ",d,"[m]"];
Print["hSlider = ",hSlider,"[m]"];
Print["wSlider = ",wSlider,"[m]"];
Print["g = ",g,"[m/s^2]"];
Print["----------------------------------------"];
(*Link 1*)
m1 = 1 ;
IC1 = m1 (AB^2+h^2)/12 ;
Fin1 = - m1 aC1 ;
G1 = {0, -m1 g, 0} ;
F1 = ( Fin1 + G1 ) ;
M1 = Min1 = - IC1 alpha1 ;
Print["m1 = ro AB h d = ",m1," [kg]"];
Print["IC1 = m1 (AB^2+h^2)/12 = ",IC1," [kg m^2]"];
Print["aC1 = ",aC1," [m/s^2]"];
Print["alpha10 = ",alpha1," [rad/s^2]"];
Print["Fin1 = -m1 aC1 = ",Fin1," [N]"];
Print["F1 = Fin1 + G1 = ",F1," [N]"];
Print["Min1 = M1 = -IC1 alpha10 = ",Min1," [N m]"];
Print["----------------------------------------"];
(*Link 2*)
m2 = 1 ;
IC2 = m2 (BC^2+h^2)/12 ;
Fin2 = - m2 aC2 ;
G2 = {0, -m2 g, 0} ;
F2 = ( Fin2 + G2 ) ;
M2 = Min2 = - IC2 alpha2 ;
Print["m2 = ro BC h d = ",m2," [kg]"];
Print["IC2 = m2 (BC^2+h^2)/12 = ",IC2," [kg m^2]"];
Print["aC2 = ",aC2," [m/s^2]"];
Print["alpha20 = ",alpha2," [rad/s^2]"];
Print["Fin2 = -m2 aC2 = ",Fin2," [N]"];
Print["F2 = Fin2 + G2 = ",F2," [N]"];
Print["Min2 = M2 = -IC2 alpha20 = ",Min2," [N m]"];

Print["----------------------------------------"];
(*Link 2*)
m2 = 1 ;
R_RRT_NE.nb
IC2 = m2 (BC^2+h^2)/12 ;
Fin2 = - m2 aC2 ;
G2 = {0, -m2 g, 0} ;
F2 = ( Fin2 + G2 ) ;
M2 = Min2 = - IC2 alpha2 ;
Print["m2 = ro BC h d = ",m2," [kg]"];
Print["IC2 = m2 (BC^2+h^2)/12 = ",IC2," [kg m^2]"];
Print["aC2 = ",aC2," [m/s^2]"];
Print["alpha20 = ",alpha2," [rad/s^2]"];
Print["Fin2 = -m2 aC2 = ",Fin2," [N]"];
Print["F2 = Fin2 + G2 = ",F2," [N]"];
Print["Min2 = M2 = -IC2 alpha20 = ",Min2," [N m]"];
Print["----------------------------------------"];
(*Link 3*)
m3 = 1 ;
IC3 = m3 (hSlider^2+wSlider^2)/12 ;
Fin3 = - m3 aC3 ;
G3 = {0, -m3 g, 0} ;
F3 = ( Fin3 + G3 ) ;
M3 = Min3 = - IC3 alpha3 ;
Print["m3 = ro hSlider wSlider d = ",m3," [kg]"];
Print["IC3 = m3 (hSlider^2+wSlider^2)/12 = ",IC3," [kg m^2]"];
Print["aC3 = ",aC3," [m/s^2]"];
Print["alpha30 = ",alpha3," [rad/s^2]"];
Print["Fin3 = -m3 aC3 = ",Fin3," [N]"];
Print["F3 = Fin3 + G3 = ",F3," [N]"];
Print["Min3 = M3 = -IC3 alpha30 = ",Min3," [N m]"];
Print["----------------------------------------"];
Print["----------------------------------------"];
F23={F23x,F23y,0};
F03 = { 0, F03y, 0 } ;
rQ = {xQ , yQ,0};
Print["F03 perpendicular to x-axis: F03={0,F03y,0}"]
"link 3: m3 aC3 = G3+F03+F23+Fe"
eqF3=F03+F23+Fe+G3-m3 aC3;
Print["(x): ",m3 aC3[[1]],"=",(F03+F23+Fe+G3)[[1]]," (1)" ];
Print["(y): ",m3 aC3[[2]],"=",(F03+F23+Fe+G3)[[2]]," (2)" ];
Print["IC3 alpha30 = CQxF03 => CQ=0, F03 acts @ C"];
Print["----------------------------------------"];
F12={F12x,F12y,0};
F32=-F23;
"link 2: m2 aC2 = G2+F32+F12 "
eqF2=F32+F12+G2-m2 aC2;
Print["(x): ",m2 aC2[[1]],"=",(F32+F12+G2)[[1]]," (3)" ];
Print["(y): ",m2 aC2[[2]],"=",(F32+F12+G2)[[2]]," (4)" ];
Print["IC2 alpha20 = C2B x F12 + C2C x F32"]
rC2B=(rB-rC2);
rC2C=(rC-rC2);
Print["C2B=",rC2B,"[m]; C2C=",rC2C,"[m]"];
eqM2=Cross[rC2B,F12]+Cross[rC2C,F32]-IC2 alpha20;
Print["(z): ",IC2 alpha20[[3]],"=",(Cross[rC2B,F12]+Cross[rC2C,F32])[[3]]," (5)"];
sys32={eqF3[[1]]==0,eqF3[[2]]==0,
eqF2[[1]]==0,eqF2[[2]]==0,eqM2[[3]]==0};
unknowns32={F12x,F12y,F23x,F23y,F03y};
solF32=Solve[sys32,unknowns32];
Print["----------------------------------------"];
Print["From Eqs.(1)-(5) => {F12x,F12y,F23x,F23y,F03y}"]
Print["F12 = {F12x, F12y, 0} = ",F12/.solF32[[1]]," [N]"];
Print["|F12| = ",Simplify[Norm[F12/.solF32[[1]]]]," [N]"];
Print["F23 = {F23x, F23y, 0} = ",F23/.solF32[[1]]," [N]"];
Print["|F23| = ",Simplify[Norm[F23/.solF32[[1]]]]," [N]"];
Print["F03 = { 0 , F03y, 0} = ",F03/.solF32[[1]]," [N]"];
Print["|F03| = ",Simplify[Norm[F03/.solF32[[1]]]]," [N]"];
F21=-F12;
F01={F01x, F01y, 0};

solF32=Solve[sys32,unknowns32];
Print["----------------------------------------"];

R_RRT_NE.nb
Print["From Eqs.(1)-(5) => {F12x,F12y,F23x,F23y,F03y}"]
Print["F12 = {F12x, F12y, 0} = ",F12/.solF32[[1]]," [N]"];
Print["|F12| = ",Simplify[Norm[F12/.solF32[[1]]]]," [N]"];
Print["F23 = {F23x, F23y, 0} = ",F23/.solF32[[1]]," [N]"];
Print["|F23| = ",Simplify[Norm[F23/.solF32[[1]]]]," [N]"];
Print["F03 = { 0 , F03y, 0} = ",F03/.solF32[[1]]," [N]"];
Print["|F03| = ",Simplify[Norm[F03/.solF32[[1]]]]," [N]"];
F21=-F12;
F01={F01x, F01y, 0};
Mm={0,0,M};
Print["----------------------------------------"];
"link 1: m1 aC1 = G1+F21+F01=0 "
eqF1=(G1+F01+F21)-m1 aC1 ;
Print["(x): ",m1 aC1[[1]],"=",(G1+F01+F21)[[1]]," (6)" ];
Print["(y): ",m1 aC1[[2]],"=",(G1+F01+F21)[[2]]," (7)" ];
F01s=Simplify[-F1-(F21/.solF32[[1]])];
Print["F01 = {F01x, F01y, 0} = -F1 - F21 = ",F01s," [N]"];
Print["|F01| = ",Simplify[Norm[F01s]]," [N]"];
Print["IC1 alpha10 = C1B x F21 + C1A x F01 + Mm"]
rC1B=(rB-rC1);
rC1A=(-rC1);
Print["C1B=",rC1B,"[m]; C1A=",rC1A,"[m]"];
eqM1=Cross[rC1B,F21]+Cross[rC1A,F01]+Mm-IC1 alpha10;
Print["(z): ",IC1 alpha10[[3]],"=",(Cross[rC1B,F21]+Cross[rC1A,F01]+Mm)[[3]]," (5)"];
Mms=-(Cross[rC1B,(F21/.solF32[[1]])]+Cross[rC1A,F01s]+M1);
Print["M = {0,0,Mm} = -(C1B x F21 + C1A x F01 + M1) = ",Mms," [Nm]"];
Joint Forces Analysis Using Newton Euler Equations
slider-crank mechanism
1
1
rB = 9
!!!! ,
!!!! , 0= @mD
2
2
!!!!
rC = 8 2 , 0, 0< @mD

omega1 = 80, 0, 1< @radsD


1
1
vB = 9-
! ,
!!!
!!!! , 0= @msD
2
2
!!!!
vC = 8- 2 , 0, 0< @msD

omega2 = 80, 0, -1< @radsD


1
1
aB = 9-
! , -
!!!
!!!! , 0= @ms^2D
2
2
!!!!
aC = 8- 2 , 0, 0< @ms^2D

alpha2 = 80, 0, 0< @rads^2D


---------------------------------------1
1
rC1=9
! ,
! , 0=@mD
!!!
!!!
2 2
2 2
3
1
rC2=9
! ,
! , 0=@mD
!!!
!!!
2 2
2 2

R_RRT_NE.nb

!!!!
rC3=8 2 , 0, 0<@mD
1
1
aC1=9-
! , -
! , 0=@ms^2D
!!!
!!!
2 2
2 2
3
1
aC2=9-
! , -
! , 0=@ms^2D
!!!
!!!
2 2
2 2
!!!!
aC3=aC=8- 2 , 0, 0<@ms^2D

----------------------------------------

Fext = -Sign@vC3xD8fe,0,0< = 8100, 0, 0<@ND


h = 0.01@mD
d = 0.01@mD
hSlider = 0.01@mD
wSlider = 0.01@mD
g = 10@ms^2D
---------------------------------------m1 = ro AB h d = 1 @kgD

IC1 = m1 HAB^2+h^2L12 = 0.0833417 @kg m^2D


1
1
aC1 = 9-
! , -
! , 0= @ms^2D
!!!
!!!
2 2
2 2
alpha10 = 80, 0, 0< @rads^2D
Fin1 = -m1

1
1
aC1 = 9
! ,
! , 0= @ND
!!!
!!!
2 2
2 2

1
1
F1 = Fin1 + G1 = 9
! , -10 +
! , 0= @ND
!!!
!!!
2 2
2 2
Min1 = M1 = -IC1 alpha10 = 80, 0, 0< @N mD
---------------------------------------m2 = ro BC h d = 1 @kgD

IC2 = m2 HBC^2+h^2L12 = 0.0833417 @kg m^2D


3
1
aC2 = 9-
! , -
! , 0= @ms^2D
!!!
!!!
2 2
2 2
alpha20 = 80, 0, 0< @rads^2D
Fin2 = -m2

3
1
aC2 = 9
! ,
! , 0= @ND
!!!
!!!
2 2
2 2

3
1
F2 = Fin2 + G2 = 9
! , -10 +
! , 0= @ND
!!!
!!!
2 2
2 2
Min2 = M2 = -IC2 alpha20 = 80, 0, 0< @N mD
---------------------------------------m3 = ro hSlider wSlider d = 1 @kgD

R_RRT_NE.nb

IC3 = m3 HhSlider^2+wSlider^2L12 = 0.0000166667 @kg m^2D


!!!!
aC3 = 8- 2 , 0, 0< @ms^2D

alpha30 = 80, 0, 0< @rads^2D


Fin3 = -m3

!!!!
aC3 = 8 2 , 0, 0< @ND

!!!!
F3 = Fin3 + G3 = 8 2 , -10, 0< @ND

Min3 = M3 = -IC3 alpha30 = 80, 0, 0< @N mD


------------------------------------------------------------------------------F03 perpendicular to x-axis: F03=80,F03y,0<

link 3:

m3 aC3 = G3+F03+F23+Fe

!!!!
HxL: - 2 =100 + F23x H1L

HyL: 0=-10 + F03y + F23y H2L


IC3 alpha30 = CQxF03 => CQ=0, F03 acts C
----------------------------------------

link 2: m2 aC2 = G2+F32+F12


3
HxL: -
! =F12x - F23x H3L
!!!
2 2

1
HyL: -
! =-10 + F12y - F23y H4L
!!!
2 2
IC2 alpha20 = C2B x F12 + C2C x F32

1
1
3
1
!!!!
C2B=9-
! ,
! , 0=@mD; C2C=9-
! + 2 , -
! , 0=@mD
!!!
!!!
!!!
!!!
2 2
2 2
2 2
2 2
F12x
F12y
F23x
F23y
HzL: 0=-
! -
! -
! -
! H5L
!!!
!!!
!!!
!!!
2 2
2 2
2 2
2 2

----------------------------------------

From Eqs.H1L-H5L => 8F12x,F12y,F23x,F23y,F03y<

1
5
!!!!
!!!!
F12 = 8F12x, F12y, 0< = 9- H400 + 7 2 L, H84 + 2 L, 0= @ND
4
4
1 "################################
######!
!!!
F12 = 84137 + 2450 2 @ND
2
F23 = 8F23x, F23y, 0< = 9-100 -

3
!!!!
2 , 95 +
!!!! , 0= @ND
2

38063
!!!!
F23 = $%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%
+ 485 %%%%%%
2 @ND
2
F03 = 8 0

3
, F03y, 0< = 90, -85 -
!!!! , 0= @ND
2

3
F03 = 85 +
!!!! @ND
2

R_RRT_NE.nb

----------------------------------------

link 1: m1 aC1 = G1+F21+F01=0


1
HxL: -
! =F01x - F12x H6L
!!!
2 2

1
HyL: -
! =-10 + F01y - F12y H7L
!!!
2 2

F01 = 8F01x, F01y, 0< = -F1 - F21 = 8-2 H50 +


F01 =

"################################
!!!#!##
23235 + 630 2 @ND

!!!!
!!!!
2 L, 115 + 2 , 0< @ND

IC1 alpha10 = C1B x F21 + C1A x F01 + Mm


1
1
1
1
C1B=9
! ,
! , 0=@mD; C1A=9-
! , -
! , 0=@mD
!!!
!!!
!!!
!!!
2 2
2 2
2 2
2 2
F01x
F01y
F12x
F12y
HzL: 0=
! -
! +
! -
! + M H5L
!!!
!!!
!!!
!!!
2 2
2 2
2 2
2 2

M = 80,0,Mm< = -HC1B x F21 + C1A x F01 + M1L = 80, 0, 3 + 105

!!!!
2 < @NmD

R_RRT_FBD.nb

"Joint Forces Analysis"


"D'Alembert Principle"
"slider-crank mechanism"
Apply[Clear,Names["Global`*"]];
Off[General::spell];
Off[General::spell1];
(* Input data *)
n = 30/Pi; (* rpm *)
omega = n Pi/30 ; (* rad/s *)
AB=1;
BC=1;
(* Position analysis *)
(* Position of joint A *)
xA = yA = 0 ;
rA = { xA, yA, 0} ;
(* Position of joint B *)
xB = AB Sqrt[2]/2 ;
yB = AB Sqrt[2]/2 ;
rB = { xB, yB, 0} ;
Print["rB = ",rB," [m]"];
(* Position of joint C *)
rC = {2 xB, 0, 0} ;
Print["rC = ",rC," [m]"];
(* Angular velocity and acceleration of the link 1 *)
omega1 = {0, 0, omega} ;
alpha1 = {0, 0, 0} ;
Print["omega1 = ",omega1," [rad/s]"];
vB=Cross[omega1,rB];
Print["vB = ",vB," [m/s]"];
omega2u = {0, 0, omega2z} ;
vC2=vB+Cross[omega2u,rC-rB];
vC3={vCx,0,0};
eq=vC2-vC3;
sol=Solve[{eq[[1]]==0,eq[[2]]==0},{vCx,omega2z}];
vC=vC3/.sol[[1]];
Print["vC = ",vC," [m/s]"];
omega2=omega2u/.sol[[1]];
Print["omega2 = ",omega2," [rad/s]"];
aB=Cross[alpha1,rB]-omega1.omega1 rB;
Print["aB = ",aB," [m/s^2]"];
alpha2u = {0, 0, alpha2z} ;
aC2=aB+Cross[alpha2u,rC-rB]-omega2.omega2 (rC-rB);
aC3={aCx,0,0};
eqa=aC2-aC3;
sola=Solve[{eqa[[1]]==0,eqa[[2]]==0},{aCx,alpha2z}];
aC=aC3/.sola[[1]];
Print["aC = ",aC," [m/s^2]"];
alpha2 = alpha2u/.sola[[1]];
Print["alpha2 = ",alpha2," [rad/s^2]"];
alpha3={0,0,0};
rC1 = rB/2 ;
vC1 = vB/2 ;
aC1 = aB/2 ;
rC2 = Simplify[(rB+rC)/2];
vC2 = (vB+vC)/2;
aC2 = Simplify[(aB+aC)/2];

sola=Solve[{eqa[[1]]==0,eqa[[2]]==0},{aCx,alpha2z}];
aC=aC3/.sola[[1]];
Print["aC = ",aC," [m/s^2]"];
R_RRT_FBD.nb
alpha2 = alpha2u/.sola[[1]];
Print["alpha2 = ",alpha2," [rad/s^2]"];
alpha3={0,0,0};
rC1 = rB/2 ;
vC1 = vB/2 ;
aC1 = aB/2 ;
rC2 = Simplify[(rB+rC)/2];
vC2 = (vB+vC)/2;
aC2 = Simplify[(aB+aC)/2];
rC3 = rC;
vC3 = vC;
aC3 = aC;
Print["----------------------------------------"];
Print["rC1=",rC1,"[m]"];
Print["rC2=",rC2,"[m]"];
Print["rC3=",rC3,"[m]"];
Print["aC1=",aC1,"[m/s^2]"];
Print["aC2=",aC2,"[m/s^2]"];
Print["aC3=aC=",aC3,"[m/s^2]"];
Print["----------------------------------------"];
fe=100;
Fe=-Sign[vC3[[1]]]{fe,0,0};
Print["Fext = -Sign[vC3x]{fe,0,0} = ",Fe,"[N]"];
h=0.01;
d=0.01;
hSlider=0.01;
wSlider=0.01;
g=10;
Print["h = ",h,"[m]"];
Print["d = ",d,"[m]"];
Print["hSlider = ",hSlider,"[m]"];
Print["wSlider = ",wSlider,"[m]"];
Print["g = ",g,"[m/s^2]"];
Print["----------------------------------------"];
(*Link 1*)
m1 = 1 ;
IC1 = m1 (AB^2+h^2)/12 ;
Fin1 = - m1 aC1 ;
G1 = {0, -m1 g, 0} ;
F1 = ( Fin1 + G1 ) ;
M1 = Min1 = - IC1 alpha1 ;
Print["m1 = ro AB h d = ",m1," [kg]"];
Print["IC1 = m1 (AB^2+h^2)/12 = ",IC1," [kg m^2]"];
Print["aC1 = ",aC1," [m/s^2]"];
Print["alpha10 = ",alpha1," [rad/s^2]"];
Print["Fin1 = -m1 aC1 = ",Fin1," [N]"];
Print["F1 = Fin1 + G1 = ",F1," [N]"];
Print["Min1 = M1 = -IC1 alpha10 = ",Min1," [N m]"];
Print["----------------------------------------"];
(*Link 2*)
m2 = 1 ;
IC2 = m2 (BC^2+h^2)/12 ;
Fin2 = - m2 aC2 ;
G2 = {0, -m2 g, 0} ;
F2 = ( Fin2 + G2 ) ;
M2 = Min2 = - IC2 alpha2 ;
Print["m2 = ro BC h d = ",m2," [kg]"];
Print["IC2 = m2 (BC^2+h^2)/12 = ",IC2," [kg m^2]"];
Print["aC2 = ",aC2," [m/s^2]"];
Print["alpha20 = ",alpha2," [rad/s^2]"];
Print["Fin2 = -m2 aC2 = ",Fin2," [N]"];
Print["F2 = Fin2 + G2 = ",F2," [N]"];

Print["----------------------------------------"];
(*Link 2*)
R_RRT_FBD.nb
m2 = 1 ;
IC2 = m2 (BC^2+h^2)/12 ;
Fin2 = - m2 aC2 ;
G2 = {0, -m2 g, 0} ;
F2 = ( Fin2 + G2 ) ;
M2 = Min2 = - IC2 alpha2 ;
Print["m2 = ro BC h d = ",m2," [kg]"];
Print["IC2 = m2 (BC^2+h^2)/12 = ",IC2," [kg m^2]"];
Print["aC2 = ",aC2," [m/s^2]"];
Print["alpha20 = ",alpha2," [rad/s^2]"];
Print["Fin2 = -m2 aC2 = ",Fin2," [N]"];
Print["F2 = Fin2 + G2 = ",F2," [N]"];
Print["Min2 = M2 = -IC2 alpha20 = ",Min2," [N m]"];
Print["----------------------------------------"];
(*Link 3*)
m3 = 1 ;
IC3 = m3 (hSlider^2+wSlider^2)/12 ;
Fin3 = - m3 aC3 ;
G3 = {0, -m3 g, 0} ;
F3 = ( Fin3 + G3 ) ;
M3 = Min3 = - IC3 alpha3 ;
Print["m3 = ro hSlider wSlider d = ",m3," [kg]"];
Print["IC3 = m3 (hSlider^2+wSlider^2)/12 = ",IC3," [kg m^2]"];
Print["aC3 = ",aC3," [m/s^2]"];
Print["alpha30 = ",alpha3," [rad/s^2]"];
Print["Fin3 = -m3 aC3 = ",Fin3," [N]"];
Print["F3 = Fin3 + G3 = ",F3," [N]"];
Print["Min3 = M3 = -IC3 alpha30 = ",Min3," [N m]"];
Print["----------------------------------------"];
Print["----------------------------------------"];
F23={F23x,F23y,0};
F03 = { 0, F03y, 0 } ;
rQ = {xQ , yQ,0};
Print["F03 perpendicular to x-axis: F03={0,F03y,0}"]
"Sum F for link 3: (Fin3+G3)+F03+F23+Fe=0 <=> F3+F03+F23+Fe=0 (F23=-F32)"
eqF3=F3+F03+F23+Fe;
Print["(x): ",eqF3[[1]],"=0 (1); (y): ",eqF3[[2]],"=0 (2)"];
"Sum M for link 3 wrt C3: CQxF03+M3=0=>CQ=0, F03 acts @ C"
Print["----------------------------------------"];
F12={F12x,F12y,0};
F32=-F23;
"Sum F for link 2: (Fin2+G2)+F32+F12=0 <=> F2+F32+F12=0 (F12=-F21)"
eqF2=(F2+F32+F12);
Print["(x): ",eqF2[[1]],"=0 (3); (y): ",eqF2[[2]],"=0 (4)"];
"Sum M for link 2 wrt C2: C2B x F12 + C2C x F32 + M2 = 0"
rC2B=(rB-rC2);
rC2C=(rC-rC2);
Print["C2B=",rC2B,"[m]; C2C=",rC2C,"[m]"];
eqM2=Cross[rC2B,F12]+Cross[rC2C,F32]+M2;
Print["(z): ",eqM2[[3]],"=0 (5)"];
sys32={eqF3[[1]]==0,eqF3[[2]]==0,
eqF2[[1]]==0,eqF2[[2]]==0,eqM2[[3]]==0};
unknowns32={F12x,F12y,F23x,F23y,F03y};
solF32=Solve[sys32,unknowns32];
Print["----------------------------------------"];
Print["From Eqs.(1)-(5) => {F12x,F12y,F23x,F23y,F03y}"]
Print["F12 = {F12x, F12y, 0} = ",F12/.solF32[[1]]," [N]"];
Print["|F12| = ",Simplify[Norm[F12/.solF32[[1]]]]," [N]"];
Print["F23 = {F23x, F23y, 0} = ",F23/.solF32[[1]]," [N]"];
Print["|F23| = ",Simplify[Norm[F23/.solF32[[1]]]]," [N]"];
Print["F03 = { 0 , F03y, 0} = ",F03/.solF32[[1]]," [N]"];
Print["|F03| = ",Simplify[Norm[F03/.solF32[[1]]]]," [N]"];
F21=-F12;
F01={F01x, F01y, 0};
Mm={0,0,M};

Print["----------------------------------------"];
Print["From Eqs.(1)-(5) => {F12x,F12y,F23x,F23y,F03y}"]
Print["F12 = {F12x, F12y, 0} = ",F12/.solF32[[1]]," [N]"];
R_RRT_FBD.nb
Print["|F12| = ",Simplify[Norm[F12/.solF32[[1]]]]," [N]"];
Print["F23 = {F23x, F23y, 0} = ",F23/.solF32[[1]]," [N]"];
Print["|F23| = ",Simplify[Norm[F23/.solF32[[1]]]]," [N]"];
Print["F03 = { 0 , F03y, 0} = ",F03/.solF32[[1]]," [N]"];
Print["|F03| = ",Simplify[Norm[F03/.solF32[[1]]]]," [N]"];
F21=-F12;
F01={F01x, F01y, 0};
Mm={0,0,M};
Print["----------------------------------------"];
"Sum F for link 1: (Fin1+G)+F21+F01=0 <=> F1+F21+F01=0"
eqF1=(F1+F01+F21) ;
Print["(x): ",eqF1[[1]],"=0 (6); (y): ",eqF1[[2]],"=0 (7)"];
F01s=Simplify[-F1-(F21/.solF32[[1]])];
Print["F01 = {F01x, F01y, 0} = -F1 - F21 = ",F01s," [N]"];
Print["|F01| = ",Simplify[Norm[F01s]]," [N]"];
"Sum M for 1 wrt C1: C1B x F21 + C1A x F01 + M1 + Mm = 0"
rC1B=(rB-rC1);
rC1A=(-rC1);
Print["C1B=",rC1B,"[m]; C1A=",rC1A,"[m]"];
eqM1=Cross[rC1B,F21]+Cross[rC1A,F01]+M1+Mm;
Print["(z): ",eqM1[[3]],"=0 (8)"];
Mms=-(Cross[rC1B,(F21/.solF32[[1]])]+Cross[rC1A,F01s]+M1);
Print["M = {0,0,Mm} = -(C1B x F21 + C1A x F01 + M1) = ",Mms," [Nm]"];
Print["-------------------------------------------------------------"]
sys={eqF1[[1]]==0,eqF1[[2]]==0,eqM1[[3]]==0,
eqF2[[1]]==0,eqF2[[2]]==0,eqM2[[3]]==0,
eqF3[[1]]==0,eqF3[[2]]==0};
unknowns={F01x,F01y,F12x,F12y,F23x,F23y,F03y,M};
solF=Solve[sys,unknowns];
Print["From Eqs.(1)-(8) => {F01x,F01y,F12x,F12y,F23x,F23y,F03y,M}"]
Print["F01 = {F01x, F01y, 0} = ",F01/.solF[[1]]," [N]"];
Print["F12 = {F12x, F12y, 0} = ",F12/.solF[[1]]," [N]"];
Print["F23 = {F23x, F23y, 0} = ",F23/.solF[[1]]," [N]"];
Print["F03 = { 0 , F03y, 0} = ",F03/.solF[[1]]," [N]"];
Print["M = Mmotor = {0,0,Mm} = ",Mm/.solF[[1]]," [Nm]"];

Joint Forces Analysis


D'Alembert Principle
slider-crank mechanism
1
1
rB = 9
!!!! ,
!!!! , 0= @mD
2
2
!!!!
rC = 8 2 , 0, 0< @mD

omega1 = 80, 0, 1< @radsD


1
1
vB = 9-
! ,
!!!
!!!! , 0= @msD
2
2
!!!!
vC = 8- 2 , 0, 0< @msD

omega2 = 80, 0, -1< @radsD

R_RRT_FBD.nb

1
1
aB = 9-
! , -
!!!
!!!! , 0= @ms^2D
2
2
!!!!
aC = 8- 2 , 0, 0< @ms^2D

alpha2 = 80, 0, 0< @rads^2D


---------------------------------------1
1
rC1=9
! ,
! , 0=@mD
!!!
!!!
2 2
2 2
3
1
rC2=9
! ,
! , 0=@mD
!!!
!!!
2 2
2 2
!!!!
rC3=8 2 , 0, 0<@mD

1
1
aC1=9-
! , -
! , 0=@ms^2D
!!!
!!!
2 2
2 2
3
1
aC2=9-
! , -
! , 0=@ms^2D
!!!
!!!
2 2
2 2
!!!!
aC3=aC=8- 2 , 0, 0<@ms^2D

----------------------------------------

Fext = -Sign@vC3xD8fe,0,0< = 8100, 0, 0<@ND


h = 0.01@mD
d = 0.01@mD
hSlider = 0.01@mD
wSlider = 0.01@mD
g = 10@ms^2D
---------------------------------------m1 = ro AB h d = 1 @kgD

IC1 = m1 HAB^2+h^2L12 = 0.0833417 @kg m^2D


1
1
aC1 = 9-
! , -
! , 0= @ms^2D
!!!
!!!
2 2
2 2
alpha10 = 80, 0, 0< @rads^2D
Fin1 = -m1

1
1
aC1 = 9
! ,
! , 0= @ND
!!!
!!!
2 2
2 2

1
1
F1 = Fin1 + G1 = 9
! , -10 +
! , 0= @ND
!!!
!!!
2 2
2 2
Min1 = M1 = -IC1 alpha10 = 80, 0, 0< @N mD
---------------------------------------m2 = ro BC h d = 1 @kgD

IC2 = m2 HBC^2+h^2L12 = 0.0833417 @kg m^2D


3
1
aC2 = 9-
! , -
! , 0= @ms^2D
!!!
!!!
2 2
2 2

R_RRT_FBD.nb

alpha20 = 80, 0, 0< @rads^2D


Fin2 = -m2

3
1
aC2 = 9
! ,
! , 0= @ND
!!!
!!!
2 2
2 2

3
1
F2 = Fin2 + G2 = 9
! , -10 +
! , 0= @ND
!!!
!!!
2 2
2 2
Min2 = M2 = -IC2 alpha20 = 80, 0, 0< @N mD
---------------------------------------m3 = ro hSlider wSlider d = 1 @kgD

IC3 = m3 HhSlider^2+wSlider^2L12 = 0.0000166667 @kg m^2D


!!!!
aC3 = 8- 2 , 0, 0< @ms^2D

alpha30 = 80, 0, 0< @rads^2D


Fin3 = -m3

!!!!
aC3 = 8 2 , 0, 0< @ND

!!!!
F3 = Fin3 + G3 = 8 2 , -10, 0< @ND

Min3 = M3 = -IC3 alpha30 = 80, 0, 0< @N mD


------------------------------------------------------------------------------F03 perpendicular to x-axis: F03=80,F03y,0<

Sum F for link 3: HFin3+G3L+F03+F23+Fe=0 <=> F3+F03+F23+Fe=0 HF23=-F32L


HxL: 100 +

!!!!
2 + F23x=0 H1L; HyL: -10 + F03y + F23y=0 H2L

Sum M for link 3 wrt C3: CQxF03+M3=0=>CQ=0, F03 acts C


----------------------------------------

Sum F for link 2: HFin2+G2L+F32+F12=0 <=> F2+F32+F12=0 HF12=-F21L


3
1
HxL:
! + F12x - F23x=0 H3L; HyL: -10 +
! + F12y - F23y=0 H4L
!!!
!!!
2 2
2 2

Sum M for link 2 wrt C2: C2B x F12 + C2C x F32 + M2 = 0


1
1
3
1
!!!!
C2B=9-
! ,
! , 0=@mD; C2C=9-
! + 2 , -
! , 0=@mD
!!!
!!!
!!!
!!!
2 2
2 2
2 2
2 2
F12x
F12y
F23x
F23y
HzL: -
! -
! -
! -
! =0 H5L
!!!
!!!
!!!
!!!
2 2
2 2
2 2
2 2

----------------------------------------

From Eqs.H1L-H5L => 8F12x,F12y,F23x,F23y,F03y<

1
5
!!!!
!!!!
F12 = 8F12x, F12y, 0< = 9- H400 + 7 2 L, H84 + 2 L, 0= @ND
4
4
1 "################################
######!
!!!
F12 = 84137 + 2450 2 @ND
2
F23 = 8F23x, F23y, 0< = 9-100 -

3
!!!!
2 , 95 +
!!!! , 0= @ND
2

R_RRT_FBD.nb

38063
!!!!
F23 = $%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%
+ 485 %%%%%%
2 @ND
2
F03 = 8 0

3
, F03y, 0< = 90, -85 -
!!!! , 0= @ND
2

3
F03 = 85 +
!!!! @ND
2

----------------------------------------

Sum F for link 1: HFin1+GL+F21+F01=0 <=> F1+F21+F01=0


1
1
HxL:
! + F01x - F12x=0 H6L; HyL: -10 +
! + F01y - F12y=0 H7L
!!!
!!!
2 2
2 2
F01 = 8F01x, F01y, 0< = -F1 - F21 = 8-2 H50 +
F01 =

"################################
!!!#!##
23235 + 630 2 @ND

Sum M for 1 wrt C1:

!!!!
!!!!
2 L, 115 + 2 , 0< @ND

C1B x F21 + C1A x F01 + M1 + Mm = 0

1
1
1
1
C1B=9
! ,
! , 0=@mD; C1A=9-
! , -
! , 0=@mD
!!!
!!!
!!!
!!!
2 2
2 2
2 2
2 2
F01x
F01y
F12x
F12y
HzL:
! -
! +
! -
! + M=0 H8L
!!!
!!!
!!!
!!!
2 2
2 2
2 2
2 2

M = 80,0,Mm< = -HC1B x F21 + C1A x F01 + M1L = 80, 0, 3 + 105

!!!!
2 < @NmD

------------------------------------------------------------From Eqs.H1L-H8L => 8F01x,F01y,F12x,F12y,F23x,F23y,F03y,M<


F01 = 8F01x, F01y, 0< = 8-2 H50 +

!!!!
!!!!
2 L, 115 + 2 , 0< @ND

1
5
!!!!
!!!!
F12 = 8F12x, F12y, 0< = 9- H400 + 7 2 L, H84 + 2 L, 0= @ND
4
4
F23 = 8F23x, F23y, 0< = 9-100 F03 = 8 0

3
!!!!
2 , 95 +
!!!! , 0= @ND
2

3
, F03y, 0< = 90, -85 -
!!!! , 0= @ND
2

M = Mmotor = 80,0,Mm< = 80, 0, 3 H1 + 35

!!!!
2 L< @NmD

R_RRT_contour.nb

"Joint Forces Analysis"


"Contour Method"
"slider-crank mechanism"
Apply[Clear,Names["Global`*"]];
Off[General::spell];
Off[General::spell1];
(* Input data *)
n = 30/Pi; (* rpm *)
omega = n Pi/30 ; (* rad/s *)
AB=1;
BC=1;
(* Position analysis *)
(* Position of joint A *)
xA = yA = 0 ;
rA = { xA, yA, 0} ;
(* Position of joint B *)
xB = AB Sqrt[2]/2 ;
yB = AB Sqrt[2]/2 ;
rB = { xB, yB, 0} ;
Print["rB = ",rB," [m]"];
(* Position of joint C *)
rC = {2 xB, 0, 0} ;
Print["rC = ",rC," [m]"];
(* Angular velocity and acceleration of the link 1 *)
omega1 = {0, 0, omega} ;
alpha1 = {0, 0, 0} ;
Print["omega1 = ",omega1," [rad/s]"];
vB=Cross[omega1,rB];
Print["vB = ",vB," [m/s]"];
omega2u = {0, 0, omega2z} ;
vC2=vB+Cross[omega2u,rC-rB];
vC3={vCx,0,0};
eq=vC2-vC3;
sol=Solve[{eq[[1]]==0,eq[[2]]==0},{vCx,omega2z}];
vC=vC3/.sol[[1]];
Print["vC = ",vC," [m/s]"];
omega2=omega2u/.sol[[1]];
Print["omega2 = ",omega2," [rad/s]"];
aB=Cross[alpha1,rB]-omega1.omega1 rB;
Print["aB = ",aB," [m/s^2]"];
alpha2u = {0, 0, alpha2z} ;
aC2=aB+Cross[alpha2u,rC-rB]-omega2.omega2 (rC-rB);
aC3={aCx,0,0};
eqa=aC2-aC3;
sola=Solve[{eqa[[1]]==0,eqa[[2]]==0},{aCx,alpha2z}];
aC=aC3/.sola[[1]];
Print["aC = ",aC," [m/s^2]"];
alpha2 = alpha2u/.sola[[1]];
Print["alpha2 = ",alpha2," [rad/s^2]"];
alpha3={0,0,0};
rC1 = rB/2 ;
vC1 = vB/2 ;
aC1 = aB/2 ;
rC2 = Simplify[(rB+rC)/2];
vC2 = (vB+vC)/2;
aC2 = Simplify[(aB+aC)/2];

sola=Solve[{eqa[[1]]==0,eqa[[2]]==0},{aCx,alpha2z}];
aC=aC3/.sola[[1]];
Print["aC = ",aC," [m/s^2]"];
R_RRT_contour.nb
alpha2 = alpha2u/.sola[[1]];
Print["alpha2 = ",alpha2," [rad/s^2]"];
alpha3={0,0,0};
rC1 = rB/2 ;
vC1 = vB/2 ;
aC1 = aB/2 ;
rC2 = Simplify[(rB+rC)/2];
vC2 = (vB+vC)/2;
aC2 = Simplify[(aB+aC)/2];
rC3 = rC;
vC3 = vC;
aC3 = aC;
Print["----------------------------------------"];
Print["rC1=",rC1,"[m]"];
Print["rC2=",rC2,"[m]"];
Print["rC3=",rC3,"[m]"];
Print["aC1=",aC1,"[m/s^2]"];
Print["aC2=",aC2,"[m/s^2]"];
Print["aC3=aC=",aC3,"[m/s^2]"];
Print["----------------------------------------"];
fe=100;
Fext=-Sign[vC3[[1]]]{fe,0,0};
Print["Fext = -Sign[vC3x]{fe,0,0} = ",Fext,"[N]"];
h=0.01;
d=0.01;
hSlider=0.01;
wSlider=0.01;
g=10;
Print["h = ",h,"[m]"];
Print["d = ",d,"[m]"];
Print["hSlider = ",hSlider,"[m]"];
Print["wSlider = ",wSlider,"[m]"];
Print["g = ",g,"[m/s^2]"];
Print["----------------------------------------"];
(*Link 1*)
m1 = 1 ;
IC1 = m1 (AB^2+h^2)/12 ;
Fin1 = - m1 aC1 ;
G1 = {0, -m1 g, 0} ;
F1 = ( Fin1 + G1 ) ;
M1 = Min1 = - IC1 alpha1 ;
Print["m1 = ro AB h d = ",m1," [kg]"];
Print["IC1 = m1 (AB^2+h^2)/12 = ",IC1," [kg m^2]"];
Print["aC1 = ",aC1," [m/s^2]"];
Print["alpha10 = ",alpha1," [rad/s^2]"];
Print["Fin1 = -m1 aC1 = ",Fin1," [N]"];
Print["F1 = Fin1 + G1 = ",F1," [N]"];
Print["Min1 = M1 = -IC1 alpha10 = ",Min1," [N m]"];
Print["----------------------------------------"];
(*Link 2*)
m2 = 1 ;
IC2 = m2 (BC^2+h^2)/12 ;
Fin2 = - m2 aC2 ;
G2 = {0, -m2 g, 0} ;
F2 = ( Fin2 + G2 ) ;
M2 = Min2 = - IC2 alpha2 ;
Print["m2 = ro BC h d = ",m2," [kg]"];
Print["IC2 = m2 (BC^2+h^2)/12 = ",IC2," [kg m^2]"];
Print["aC2 = ",aC2," [m/s^2]"];
Print["alpha20 = ",alpha2," [rad/s^2]"];
Print["Fin2 = -m2 aC2 = ",Fin2," [N]"];
Print["F2 = Fin2 + G2 = ",F2," [N]"];

Print["----------------------------------------"];
(*Link 2*)
R_RRT_contour.nb
m2 = 1 ;
IC2 = m2 (BC^2+h^2)/12 ;
Fin2 = - m2 aC2 ;
G2 = {0, -m2 g, 0} ;
F2 = ( Fin2 + G2 ) ;
M2 = Min2 = - IC2 alpha2 ;
Print["m2 = ro BC h d = ",m2," [kg]"];
Print["IC2 = m2 (BC^2+h^2)/12 = ",IC2," [kg m^2]"];
Print["aC2 = ",aC2," [m/s^2]"];
Print["alpha20 = ",alpha2," [rad/s^2]"];
Print["Fin2 = -m2 aC2 = ",Fin2," [N]"];
Print["F2 = Fin2 + G2 = ",F2," [N]"];
Print["Min2 = M2 = -IC2 alpha20 = ",Min2," [N m]"];

Print["----------------------------------------"];
(*Link 3*)
m3 = 1 ;
IC3 = m3 (hSlider^2+wSlider^2)/12 ;
Fin3 = - m3 aC3 ;
G3 = {0, -m3 g, 0} ;
F3 = ( Fin3 + G3 ) ;
M3 = Min3 = - IC3 alpha3 ;
Print["m3 = ro hSlider wSlider d = ",m3," [kg]"];
Print["IC3 = m3 (hSlider^2+wSlider^2)/12 = ",IC3," [kg m^2]"];
Print["aC3 = ",aC3," [m/s^2]"];
Print["alpha30 = ",alpha3," [rad/s^2]"];
Print["Fin3 = -m3 aC3 = ",Fin3," [N]"];
Print["F3 = Fin3 + G3 = ",F3," [N]"];
Print["Min3 = M3 = -IC3 alpha30 = ",Min3," [N m]"];
Print["----------------------------------------"];
Print["----------------------------------------"];
Print["Joint C_T"];
F03 = { 0, F03y, 0 } ;
Print["F03 perpendicular to x-axis: F03={0,F03y,0}"];
Print["Sum M for link 3 wrt C: CQxF03+Min3=0 => CQ=0, F03 acts @ C"];
Print["Sum M for links 3&2 wrt B: BCx(F03+G3+Fin3+Fext)+BC2x(Fin2+G2)+Min2=0 => F03y"];
eqMB32=(Cross[rC-rB,F03+G3+Fin3+Fext]+Cross[rC2-rB,Fin2+G2]+Min2)[[3]]==0;
Print[eqMB32];
solF03=Solve[eqMB32,F03y];
F03s=F03/.solF03[[1]];
Print["F03 = ",Simplify[F03s]," N"];
Print["----------------------------------------"];
Print["Joint C_R"];
F23={F23x,F23y,0};
Print["Sum F for link 3 projected on x: (F23+G3+Fin3+Fext)[[1]]=0 "];
eqF3=(F23+G3+Fin3+Fext)[[1]]==0;
Print[eqF3];
Print["Sum M for link 2 wrt B: BCx(-F23)+BC2x(Fin2+G2)+Min2=0"];
eqMB2=(Cross[rC-rB,-F23]+Cross[rC2-rB,Fin2+G2]+Min2)[[3]]==0;
Print[eqMB2];
solF23=Solve[{eqF3,eqMB2},{F23x,F23y}];
F23s=F23/.solF23[[1]];
Print["F23 = ",F23s," N"];
Print["----------------------------------------"];
Print["Joint B_R"];
F12={F12x,F12y,0};
Print["Sum M for link 2 wrt C: CBxF12+CC2x(Fin2+G2)+Min2=0"];
eqMC2=(Cross[rB-rC,F12]+Cross[rC2-rC,Fin2+G2]+Min2)[[3]]==0;
Print[eqMC2];
Print["Sum F for links 2&3 projected on x: (F12+Fin2+G2+Fin3+G3+Fext)[[1]]=0 "];
eqF23=(F12+Fin2+G2+G3+Fin3+Fext)[[1]]==0;
Print[eqF23];
solF12=Solve[{eqF23,eqMC2},{F12x,F12y}];
F12s=F12/.solF12[[1]];
Print["F12 = ",Simplify[F12s]," N"];
Print["----------------------------------------"];
Print["Joint A_R"];
F01={F01x,F01y,0};

F12={F12x,F12y,0};
Print["Sum M for link 2 wrt C: CBxF12+CC2x(Fin2+G2)+Min2=0"];
eqMC2=(Cross[rB-rC,F12]+Cross[rC2-rC,Fin2+G2]+Min2)[[3]]==0;
R_RRT_contour.nb
Print[eqMC2];
Print["Sum F for links 2&3 projected on x: (F12+Fin2+G2+Fin3+G3+Fext)[[1]]=0 "];
eqF23=(F12+Fin2+G2+G3+Fin3+Fext)[[1]]==0;
Print[eqF23];
solF12=Solve[{eqF23,eqMC2},{F12x,F12y}];
F12s=F12/.solF12[[1]];
Print["F12 = ",Simplify[F12s]," N"];

Print["----------------------------------------"];
Print["Joint A_R"];
F01={F01x,F01y,0};
Mm={0,0,M};
Print["Sum M for link 1 wrt B: BAxF01+BC1x(Fin1+G1)+Min1+Mm=0"];
eqMB1=(Cross[-rB,F01]+Cross[rC1-rB,Fin1+G1]+Min1+Mm)[[3]]==0;
Print[eqMB1];
Print["Sum M for link2 1&2 wrt C: CAxF01+CC1x(Fin1+G1)+Min1+Mm+CC2x(Fin2+G2)+Min2=0"];
eqMC12=(Cross[-rC,F01]+Cross[rC1-rC,Fin1+G1]+Min1+Mm+Cross[rC2-rC,Fin2+G2]+Min2)[[3]]==0;
Print[eqMC12];
Print["Sum F for links 1&2&3 projected on x: (F01+Fin1+G1+Fin2+G2+Fin3+G3+Fext)[[1]]=0 "];
eqF123=(F01+Fin1+G1+Fin2+G2+Fin3+G3+Fext)[[1]]==0;
Print[eqF123];
solF01=Solve[{eqF123,eqMC12,eqMB1},{F01x,F01y,M}];
F01s=F01/.solF01[[1]];
Ms=Mm/.solF01[[1]];
Print["F01 = ",Simplify[F01s]," N"];
Print["Mm = ",Simplify[Ms]," N m"];

Joint Forces Analysis


Contour Method
slider-crank mechanism
1
1
rB = 9
!!!! ,
!!!! , 0= @mD
2
2
!!!!
rC = 8 2 , 0, 0< @mD

omega1 = 80, 0, 1< @radsD


1
1
vB = 9-
! ,
!!!
!!!! , 0= @msD
2
2
!!!!
vC = 8- 2 , 0, 0< @msD

omega2 = 80, 0, -1< @radsD


1
1
aB = 9-
! , -
!!!
!!!! , 0= @ms^2D
2
2
!!!!
aC = 8- 2 , 0, 0< @ms^2D

alpha2 = 80, 0, 0< @rads^2D


---------------------------------------1
1
rC1=9
! ,
! , 0=@mD
!!!
!!!
2 2
2 2
3
1
rC2=9
! ,
! , 0=@mD
!!!
!!!
2 2
2 2

R_RRT_contour.nb

!!!!
rC3=8 2 , 0, 0<@mD
1
1
aC1=9-
! , -
! , 0=@ms^2D
!!!
!!!
2 2
2 2
3
1
aC2=9-
! , -
! , 0=@ms^2D
!!!
!!!
2 2
2 2
!!!!
aC3=aC=8- 2 , 0, 0<@ms^2D

----------------------------------------

Fext = -Sign@vC3xD8fe,0,0< = 8100, 0, 0<@ND


h = 0.01@mD
d = 0.01@mD
hSlider = 0.01@mD
wSlider = 0.01@mD
g = 10@ms^2D
---------------------------------------m1 = ro AB h d = 1 @kgD

IC1 = m1 HAB^2+h^2L12 = 0.0833417 @kg m^2D


1
1
aC1 = 9-
! , -
! , 0= @ms^2D
!!!
!!!
2 2
2 2
alpha10 = 80, 0, 0< @rads^2D
Fin1 = -m1

1
1
aC1 = 9
! ,
! , 0= @ND
!!!
!!!
2 2
2 2

1
1
F1 = Fin1 + G1 = 9
! , -10 +
! , 0= @ND
!!!
!!!
2 2
2 2
Min1 = M1 = -IC1 alpha10 = 80, 0, 0< @N mD
---------------------------------------m2 = ro BC h d = 1 @kgD

IC2 = m2 HBC^2+h^2L12 = 0.0833417 @kg m^2D


3
1
aC2 = 9-
! , -
! , 0= @ms^2D
!!!
!!!
2 2
2 2
alpha20 = 80, 0, 0< @rads^2D
Fin2 = -m2

3
1
aC2 = 9
! ,
! , 0= @ND
!!!
!!!
2 2
2 2

3
1
F2 = Fin2 + G2 = 9
! , -10 +
! , 0= @ND
!!!
!!!
2 2
2 2
Min2 = M2 = -IC2 alpha20 = 80, 0, 0< @N mD
---------------------------------------m3 = ro hSlider wSlider d = 1 @kgD

R_RRT_contour.nb

IC3 = m3 HhSlider^2+wSlider^2L12 = 0.0000166667 @kg m^2D


!!!!
aC3 = 8- 2 , 0, 0< @ms^2D

alpha30 = 80, 0, 0< @rads^2D


Fin3 = -m3

!!!!
aC3 = 8 2 , 0, 0< @ND

!!!!
F3 = Fin3 + G3 = 8 2 , -10, 0< @ND

Min3 = M3 = -IC3 alpha30 = 80, 0, 0< @N mD


------------------------------------------------------------------------------Joint C_T
F03 perpendicular to x-axis: F03=80,F03y,0<
Sum M for link 3 wrt C: CQxF03+Min3=0 => CQ=0, F03 acts C
Sum M for links 3&2 wrt B: BCxHF03+G3+Fin3+FextL+BC2xHFin2+G2L+Min2=0 => F03y
3
5
F03y
!!!!
-
!!!! + 45 2 +
!!!! 0
2
2
2

3
F03 = 90, -85 -
!!!! , 0=
2

---------------------------------------Joint C_R

Sum F for link 3 projected on x: HF23+G3+Fin3+FextL@@1DD=0


100 +

!!!!
2 + F23x 0

Sum M for link 2 wrt B: BCxH-F23L+BC2xHFin2+G2L+Min2=0


1
5
F23x
F23y
-
!!!! -
!!!! -
!!!! 0
2
2
2
2

F23 = 9-100 -

3
!!!!
2 , 95 +
! , 0=
!!!
2

---------------------------------------Joint B_R
Sum M for link 2 wrt C: CBxF12+CC2xHFin2+G2L+Min2=0
1
5
F12x
F12y
- +
!!!! -
!!!! -
!!!! 0
2
2
2
2

Sum F for links 2&3 projected on x: HF12+Fin2+G2+Fin3+G3+FextL@@1DD=0


3
!!!!
100 +
! + 2 + F12x 0
!!!
2 2

1
5
!!!!
!!!!
F12 = 9- H400 + 7 2 L, H84 + 2 L, 0=
4
4

---------------------------------------Joint A_R

R_RRT_contour.nb

Sum M for link 1 wrt B: BAxF01+BC1xHFin1+G1L+Min1+Mm=0


5
F01x
F01y

!!!! +
!!!! -
!!!! + M 0
2
2
2
Sum M for link2 1&2 wrt C: CAxF01+CC1xHFin1+G1L+Min1+Mm+CC2xHFin2+G2L+Min2=0
-1 + 10

!!!! !!!!
2 - 2 F01y + M 0

100 + 2

!!!!
2 + F01x 0

Sum F for links 1&2&3 projected on x: HF01+Fin1+G1+Fin2+G2+Fin3+G3+FextL@@1DD=0


F01 = 8-2 H50 +

!!!!
!!!!
2 L, 115 + 2 , 0<

Mm = 80, 0, 3 + 105

!!!!
2<

N m

You might also like