### Polynomial Cam Function (Derivation of Fifth-degree function) - Part 2

In [Polynomial Cam Function (Introduction) - Part 1], we discussed about fundamental of cam design and introduction of polynomial cam function. In this post, we’re going to derive the equation of

where:

s = displacement (mm)

b = cam angle in that sector (rad)

b

We can find the velocity in mm/rad by derivative of displacement. Later we can change it to the time domain.

v = ds/db

v = c

Rearrange to get,

Acceleration in mm/rad

a = 1/b

Rearrange to get,

Then we set the boundary conditions for the function. Let us introduce another parameter, h

where:

h

(BC.1) At the beginning of movement, the displacement must start from 0 and has acceleration of 0. This is for connecting to another cam curves in other sectors. But we will leave the velocity at this point not equal to zero. Then we have more freedom to select the starting velocity. Of course, if the starting velocity is not zero, then we can’t connect it with dwell or cycloid functions because it will create discontinuity in velocity. But we will use it to connect with

At b = 0: s = 0, v = v

(BC.2) Then we set the boundary conditions at the end of the movement. The same approach applied here.

At b = b

where:

v

v

Apply BC.1 into (eq.1)

0 = c

So, c

Apply BC.1 into (eq.3)

0 = 1/b

Also, c

Apply BC.1 into (eq.2)

v

Then c

Apply BC.2 into (eq.1)

h

Substitute c

Apply BC.2 into (eq.3)

0 = 1/b

Rearrange to get,

6c

Or

Apply BC.2 into (eq.2)

v

Rearrange to get,

Solve the simultaneous equations (eq.4, eq.5 and eq.6) for the values of constants c

(eq.6) – 3x(eq.4);

3c

(eq.5) – 3x(eq.4);

3c

(eq.8) – 3x(eq.7);

3c

c

Substitute value of c

c

c

c

Substitute values of c

c

Therefore, the fifth-degree polynomial cam function becomes,

v = 1/b

a = 1/b

where:

We've derived the

**fifth-degree polynomial cam function**. We start from the general term of fifth-degree polynomial function as follows.
s = c

_{0}+ c_{1}(b/b_{m}) + c_{2}(b/b_{m})^{2}+ c_{3}(b/b_{m})^{3}+ c_{4}(b/b_{m})^{4}+ c_{5}(b/b_{m})^{5}….. (eq.1)where:

s = displacement (mm)

b = cam angle in that sector (rad)

b

_{m}= total angle in that sector (rad)We can find the velocity in mm/rad by derivative of displacement. Later we can change it to the time domain.

v = ds/db

v = c

_{1}/b_{m}+ 2c_{2}/b_{m}(b/b_{m}) + 3c_{3}/b_{m}(b/b_{m})^{2}+ 4c_{4}/b_{m}(b/b_{m})^{3}+ 5c_{5}/b_{m}(b/b_{m})^{4}Rearrange to get,

v = 1/b

_{m}[c_{1}+ 2c_{2}(b/b_{m}) + 3c_{3}(b/b_{m})^{2}+ 4c_{4}(b/b_{m})^{3}+ 5c_{5}(b/b_{m})^{4}] ….. (eq.2)Acceleration in mm/rad

^{2}can be calculated by a = dv/dba = 1/b

_{m}[2c_{2}/b_{m}+ 6c_{3}/b_{m}(b/b_{m}) + 12c_{4}/b_{m}(b/b_{m})^{2}+ 20c_{5}/b_{m}(b/b_{m})^{3}]Rearrange to get,

a = 1/b

_{m}^{2}[2c_{2}+ 6c_{3}(b/b_{m}) + 12c_{4}(b/b_{m})^{2}+ 20c_{5}(b/b_{m})^{3}] ….. (eq.3)Then we set the boundary conditions for the function. Let us introduce another parameter, h

_{m}.where:

h

_{m}= total displacement in that sector (mm)__Applying boundary conditions:__(BC.1) At the beginning of movement, the displacement must start from 0 and has acceleration of 0. This is for connecting to another cam curves in other sectors. But we will leave the velocity at this point not equal to zero. Then we have more freedom to select the starting velocity. Of course, if the starting velocity is not zero, then we can’t connect it with dwell or cycloid functions because it will create discontinuity in velocity. But we will use it to connect with

**linear cam function**or another*fifth-degree polynomial*curves.At b = 0: s = 0, v = v

_{0}, and a = 0.(BC.2) Then we set the boundary conditions at the end of the movement. The same approach applied here.

At b = b

_{m}: s = h_{m}, v = v_{1}, and a = 0where:

v

_{0}= starting velocity in that sector (mm/rad)v

_{1}= ending velocity in that sector (mm/rad)Apply BC.1 into (eq.1)

0 = c

_{0}+ 0 + 0 + 0 + 0 + 0So, c

_{0}= 0Apply BC.1 into (eq.3)

0 = 1/b

_{m}^{2}[2c_{2}+ 0 + 0 + 0]Also, c

_{2}= 0Apply BC.1 into (eq.2)

v

_{0}= 1/b_{m}[c_{1}+ 0 + 0 + 0 + 0]Then c

_{1}= b_{m}v_{0}Apply BC.2 into (eq.1)

h

_{m}= 0 + c_{1}+ 0 + c_{3}+ c_{4}+ c_{5}Substitute c

_{1}= b_{m}v_{0}and rearrange to get,
c

_{3}+ c_{4}+ c_{5}= h_{m}– b_{m}v_{0}….. (eq.4)Apply BC.2 into (eq.3)

0 = 1/b

_{m}^{2}[0 + 6c_{3}+ 12c_{4}+ 20c_{5}]Rearrange to get,

6c

_{3}+ 12c_{4}+ 20c_{5}= 0Or

3c

_{3}+ 6c_{4}+ 10c_{5}= 0 ….. (eq.5)Apply BC.2 into (eq.2)

v

_{1}= 1/b_{m}[b_{m}v_{0}+ 0 + 3c_{3}+ 4c_{4}+ 5c_{5}]Rearrange to get,

3c

_{3}+ 4c_{4}+ 5c_{5}= b_{m}v_{1}– b_{m}v_{0}….. (eq.6)Solve the simultaneous equations (eq.4, eq.5 and eq.6) for the values of constants c

_{3}, c_{4}and c_{5}(eq.6) – 3x(eq.4);

3c

_{3}+ 4c_{4}+ 5c_{5}– 3c_{3}– 3c_{4}– 3c_{5}= b_{m}v_{1}– b_{m}v_{0}– 3h_{m}+ 3b_{m}v_{0}
c

_{4}+ 2c_{5}= -3h_{m}+ b_{m}v_{1}+ 2b_{m}v_{0}….. (eq.7)(eq.5) – 3x(eq.4);

3c

_{3}+ 6c_{4}+ 10c_{5}– 3c_{3}– 3c_{4}– 3c_{5}= 0 – 3h_{m}+ 3b_{m}v_{0}
3c

_{4}+ 7c_{5}= -3h_{m}+ 3b_{m}v_{0}….. (eq.8)(eq.8) – 3x(eq.7);

3c

_{4}+ 7c_{5}– 3c_{4}– 6c_{5}= -3h_{m}+ 3b_{m}v_{0}+ 9h_{m}– 3b_{m}v_{1}– 6b_{m}v_{0}c

_{5}= 6h_{m}– 3b_{m}v_{1}– 3b_{m}v_{0}
c

_{5}= 6h_{m}– b_{m}(3v_{0}+ 3v_{1})Substitute value of c

_{5}into (eq.7)c

_{4}= -3h_{m}+ b_{m}v_{1}+ 2b_{m}v_{0}– 2[6h_{m}– 3b_{m}v_{0}– 3b_{m}v_{1}]c

_{4}= -3h_{m}+ b_{m}v_{1}+ 2b_{m}v_{0}– 12h_{m}+ 6b_{m}v_{0}+ 6b_{m}v_{1}c

_{4}= -15h_{m}+ 8b_{m}v_{0}+ 7b_{m}v_{1}
c

_{4}= -15h_{m}+ b_{m}(8v_{0}+ 7v_{1})Substitute values of c

_{4}and c_{5}into (eq.4),c

_{3}= h_{m}– b_{m}v_{0}+ 15h_{m}– b_{m}(8v_{0}+ 7v_{1}) – 6h_{m}+ b_{m}(3v_{0}+ 3v_{1})
c

_{3}= 10h_{m}– b_{m}(6v_{0}+ 4v_{1})Therefore, the fifth-degree polynomial cam function becomes,

s = c

It has velocity (v) and acceleration (a) as follows,_{1}(b/b_{m}) + c_{3}(b/b_{m})^{3}+ c_{4}(b/b_{m})^{4}+ c_{5}(b/b_{m})^{5}v = 1/b

_{m}[c_{1}+ 3c_{3}(b/b_{m})^{2}+ 4c_{4}(b/b_{m})^{3}+ 5c_{5}(b/b_{m})^{4}]a = 1/b

_{m}^{2}[6c_{3}(b/b_{m}) + 12c_{4}(b/b_{m})^{2}+ 20c_{5}(b/b_{m})^{3}]where:

c

_{1}= b_{m}v_{0}
c

_{3}= 10h_{m}– b_{m}(6v_{0}+ 4v_{1})
c

_{4}= -15h_{m}+ b_{m}(8v_{0}+ 7v_{1})
c

_{5}= 6h_{m}– b_{m}(3v_{0}+ 3v_{1})We've derived the

**fifth-degree polynomial cam function**with*velocity*and*acceleration profiles*that satisfies all boundary conditions as described earlier. Then we can use this cam function to design the timing diagram. Let's see how to use it in the next post.
## Comments