Vector Spaces

NI-Motion Functions

Vector Spaces

Vector spaces are logical, multidimensional groups of axes. They can be either one-dimensional, two-dimensional with x and y axes, or three-dimensional with x, y, and z axes. The total number of vector spaces NI-Motion supports in your motion control system can be calculated using the following formula:

total vector spaces = .

Vector spaces facilitate 2D and 3D interpolated moves: linear, circular, helical, and spherical. You can send a vector space to many NI-Motion functions to define vector position, vector velocity, vector acceleration, and so on.

Vector spaces are started, stopped, and controlled as if they were a single axis, greatly simplifying the control of coordinated vector axes. All axes in a vector space start and stop at the same time, completing the vector motion profiles programmed. The following table lists the resource IDs and constants for vector space control.

Resource Name Resource ID Constant
Vector Space Control 0x10 NIMC_VECTOR_SPACE_CTRL
Vector Space 1 0x11 NIMC_VECTOR_SPACE1
Vector Space 2 0x12 NIMC_VECTOR_SPACE2
Vector Space 3 0x13 NIMC_VECTOR_SPACE3
Vector Space 4 0x14 NIMC_VECTOR_SPACE4
Vector Space 5 0x15 NIMC_VECTOR_SPACE5
Vector Space 6 0x16 NIMC_VECTOR_SPACE6
Vector Space 7 0x17 NIMC_VECTOR_SPACE7
Vector Space 8 0x18 NIMC_VECTOR_SPACE8
Vector Space 9 0x19 NIMC_VECTOR_SPACE9
Vector Space 10 0x1A NIMC_VECTOR_SPACE10
Vector Space 11 0x1B NIMC_VECTOR_SPACE11
Vector Space 12 0x1C NIMC_VECTOR_SPACE12
Vector Space 13 0x1D NIMC_VECTOR_SPACE13
Vector Space 14 0x1E NIMC_VECTOR_SPACE14
Vector Space 15 0x1F NIMC_VECTOR_SPACE15

Functions that can operate on multiple vector spaces simultaneously (for example, Start Motion) can take the vector space control (NIMC_VECTOR_SPACE_CTRL) as their resource parameter.

Vector spaces are configured by mapping axes to the vector space with the Configure Vector Space function. Vector spaces are logical, not physical, and do not require motion resources other than those used by the axes themselves.