44
•
Operation Theorem
4.7
Introduction to DDA
This section will introduce the DDA operating theorem that creates all those
various motion function. The DDA is for Digital Differential Analyze. It is a
method to accomplish motion control under non-realtime OS.
Refer to above figure, the software (Motion Library) solve motion command
and generate a string of displacement data. Each data indicates quantity of
puls e in 4ms(default).
For example: The trapezoidal curve at above figure represents a
motion command that last 1 sec. The Motion Library solves this
command and generates a string of displacement data. {10, 20, 30, … ,
470, 480, 490, 500, …. 500, 490,480,…., 300,200,100} The total number of
data is 1000ms / 4ms = 250.Data
The data is transmitted via PCI-Bus into FIFO in PCI-8136M. The size of
FIFO is 64 for each axis. Every 4ms or less, the DDA engine takes a data
from FIFO and send these pulses to motor driver with equal time interval.
The DDA engine is in charge of generate pulse in a smooth way. If DDA takes
a data of 500 from FIFO, it generates a pulse every 8µs in the following 4ms.
Its means that the DDA engine will divide the total cycle time to send the total
pulse counts with equal time interval. Every 4ms or less cycle time, the DDA
take another data from FIFO and repeats the same operation.
Why does DDA help to accomplish motion control under non-realtime OS?
The key reason is that all displacement data in FIFO is pre-calculated by
software when CPU is leisure, and DDA get data from FIFO, which is always
non-empty.
Motion
Library
Software
DDA
FIFO (64)
Hardware
1 2 3 4 5 6
1
2
3
4
5
6
Encoder
Feedback
Summary of Contents for PCI-8136M
Page 1: ...PCI 8136M 6 Axis Motion Controller Card User s Guide ...
Page 2: ......