Solution
NI motion controllers support controlling servo motors and/or stepper motors. For example, PCI-7334 support controlling stepper motors, and PCI-7352 supports controlling both servo motors and stepper motors. Some servo motor drivers support pulse control mode. NI motion controllers under P-Command mode can be used in this scenario. When a NI motion controller is set to P-Command mode, it output the position controlling signal to servo motors in a pulsed manner. Generally, those controllers who support controlling stepper motors, such as NI 733x, 734x, 735x and 739x, also support P Command Mode.
For stepper motors:
The controllers provide step/direction or clockwise (CW) /counter-clockwise (CCW) digital command outputs. They output the controlling signals on Step (CW) pinout and Dir (CCW) pinout. When under Step/Dir control mode, the Step (CW) pinout output a pulse signal to control motor step, and the Dir (CCW) pinout output a digital state signal to control the motor direction. When under CW/CCW control mode, the Step (CW) pinout output a pulse signal to control clockwise motor step , and the Dir (CCW) pinout output a pulse signal to control counter-clockwise motor step. The control mode of a controller have to match the the input command of the motor driver. It can be configured through Configure Stepper Output.flx in LabVIEW.
For servo motors:
The controllers provide analog command outputs with an industry-standard range of ±10 V. They output the controlling signal on the corresponding Analog Output pinouts. Some third-party servo motor drivers have complete control loops within the drivers. The feedback pulses from encoders could connect directly to the drivers, without connecting to the NI motion controllers. The controllers only need to provide pulse signals for position controlling, where one pulse is corresponding to one feedback pulse from the encoders. In this scenario, the NI motion controller is working under P-Command mode. The P-Command mode can be configured through Set Stepper Loop Mode.flx in LabVIEW.