In [Polynomial Cam Function (Introduction) - Part 1], we discussed the fundamental law of cam design: continuity of acceleration.
In this post, we are going to derive the exact equations for the Fifth-Degree Polynomial Cam Function. This is the "secret sauce" used in Motion Control Algorithms for high-end servo drives to ensure smooth, jerk-free movement.
The General Equations
We start with the general polynomial equation. To make the math handleable, we normalize the input angle as a ratio (b / bm).
Where:
s = Displacement (mm)
x = Ratio of cam angle (b / bm)
b = Current cam angle (rad)
bm = Total angle in sector (rad)
To find Velocity (v) and Acceleration (a), we differentiate with respect to the angle.
(Note: v is in mm/rad. To convert to mm/s, multiply by angular velocity ω)
Velocity Equation (v = ds/db):
Acceleration Equation (a = dv/db):
Applying Boundary Conditions
To solve for the 6 constants (C0 to C5), we need 6 known conditions. This is where Kinematics Analysis comes into play.
Boundary Condition Set 1 (Start of Move, x=0):
We start at zero displacement and zero acceleration to match a dwell. However, we allow a non-zero velocity (v0) to enable connections with linear segments.
1. s = 0
2. v = v0
3. a = 0
Boundary Condition Set 2 (End of Move, x=1):
We end at the total lift height (hm).
4. s = hm
5. v = v1 (Target end velocity)
6. a = 0
Solving for Constants
Step 1: Apply Start Conditions (x=0)
By substituting x=0 into the general equations, terms with x vanish immediately:
• From Displacement: C0 = 0
• From Acceleration: C2 = 0
• From Velocity: v0 = C1 / bm → C1 = bmv0
Step 2: Apply End Conditions (x=1)
Now we have a system of 3 linear equations with 3 unknowns (C3, C4, C5):
- Displacement: C3 + C4 + C5 = hm - bmv0
- Acceleration: 6C3 + 12C4 + 20C5 = 0
- Velocity: 3C3 + 4C4 + 5C5 = bmv1 - bmv0
Solving this simultaneous system (via substitution or matrix method usually handled by engineering software) yields the final coefficients:
The Final Formula Coefficients
C1 = bmv0
C3 = 10hm - bm(6v0 + 4v1)
C4 = -15hm + bm(8v0 + 7v1)
C5 = 6hm - bm(3v0 + 3v1)
The Final Polynomial Equation
Therefore, the 5th-degree polynomial cam function that satisfies all boundary conditions is:
With this equation derived, we can now plug in any start/end velocity we want. This is critical for designing "Flying Shears" or "Rotary Knives" where the tool must match the speed of the product line perfectly.
In the next post, we will analyze the characteristics of this curve and graph the results.
Comments