DMC-1500 Chapter 6 Programming Motion • 65
General Velocity Profiles
The Contour Mode is ideal for generating any arbitrary velocity profiles. The velocity profile can be
specified as a mathematical function or as a collection of points.
The design includes two parts: Generating an array with data points and running the program.
Generating an Array - An Example
Consider the velocity and position profiles shown in Fig. 6.5. The objective is to rotate a motor a
distance of 6000 counts in 120 ms. The velocity profile is sinusoidal to reduce the jerk and the system
vibration. If we describe the position displacement in terms of A counts in B milliseconds, we can
describe the motion in the following manner:
()
ωπ
=−
Α
Β
Β12cos( )
Χ= −
AT
B
A
B
2
2
π
sin( )
Note:
ω is the angular velocity; X is the position; and T is the variable, time, in milliseconds.
In the given example, A=6000 and B=120, the position and velocity profiles are:
X = 50T - (6000/2
π) sin (2π T/120)
Note that the velocity,
ω, in count/ms, is
ω = 50 [1 - cos 2π T/120]
Figure 6.5 - Velocity Profile with Sinusoidal Acceleration
The DMC-1500 can compute trigonometric functions. However, the argument must be expressed in
degrees. Using our example, the equation for X is written as:
X = 50T - 955 sin 3T
A complete program to generate the contour movement in this example is given below. To generate
an array, we compute the position value at intervals of 8 ms. This is stored at the array POS. Then,