Enable High-Speed Capture

NI-Motion VI

Enable High-Speed Capture

Enables or disables the specified high-speed capture input.

Details     Remarks

Device Compatibility

DeviceCompatibility
7330
Y
7340
Y
7344
Y
7350
Y
7390
Y
NI SoftMotion Controller for CANopen—Accelnet
N
NI SoftMotion Controller for CANopen—Xenus
N
High-Speed Capture indicates whether to enable or disable the high-speed capture input. Values are True or False.
Board ID is a unique number assigned by Measurement & Automation Explorer (MAX) used to send and receive commands and data to or from a specific NI motion controller.
Axis or Encoder is the axis or encoder selector.
error in (no error) describes error conditions that occur before this VI runs. The default input of this cluster is no error. If an error already occurred, this VI returns the value of error in in error out. The VI runs normally only if no incoming error exists. Otherwise, the VI passes the error in value to error out. The error in cluster contains the following parameters:
status is TRUE if an error occurred before this VI was called, or FALSE if not. If status is TRUE, code is a nonzero error code. If status is FALSE, code is zero or a warning code.
code is a number identifying an error or warning. If status is TRUE, code is a nonzero error code. If status is FALSE, code is zero or a warning code. Use the error handler VIs to look up the meaning of this code and display the corresponding error message.
source is a string that indicates the origin of the error, if any. Typically, source is the name of the VI in which the error occurred.
Bd ID Out is provided for flow control. You can string together NI-Motion VIs by wiring the Bd ID Out terminal of one VI to the Board ID terminal of the next VI.
Resource Output is the Axis, Vector Space, ADC, or Encoder you wired into the VI. Use Resource Output to pass the resource to another VI and/or to display information about the device.
error out contains error information. If error in indicates an error, error out contains the same error information. Otherwise, it describes the error status that this VI produces.
status is TRUE if an error occurred, or FALSE if not. If status is TRUE, code is a nonzero error code. If status is FALSE, code is zero or a warning code.
code is a number identifying an error or warning. If status is TRUE, code is a nonzero error code. If status is FALSE, code is zero or a warning code. Use the error handler VIs to look up the meaning of this code and display the corresponding error message.
source is a string that indicates the origin of the error, if any. Typically, source is the name of the VI in which the error occurred.

Using This VI

The Enable High-Speed Capture VI enables high-speed capture inputs to capture instantaneous encoder position when an input becomes active. The position capture is implemented in the encoder resource to reduce capture latency to the sub-100 nanosecond range.

Note  If your application uses the Select Signal VI to route the high-speed capture source, you must call the Select Signal VI before enabling the high-speed capture.

High-speed capture functionality is performed by the encoder resources themselves. When this VI is sent to an axis, it is actually being sent to the mapped encoder resource.

The high-speed inputs have programmable polarity and edge behavior. You can set the polarity of the input with the Configure High-Speed Capture VI. You can determine the results of the high-speed capture from the Read High-Speed Capture Status and Read Captured Position VIs.

For single high-speed capture, you can enable only one high-speed capture per axis or encoder at a time. When an enabled event is captured, the high-speed capture is automatically disabled. You must explicitly re-enable high-speed capture to use it again. To disable a previously enabled operation, run this VI again with High-Speed Capture set to False.

For buffered high-speed capture, you need to enable the input trigger only once. Subsequent high-speed captures are automatically re-enabled by the controller. This VI has no effect when the input trigger is configured as a digital input.

If you are using buffered high-speed capture, ensure that the buffer is configured before you execute this VI. Refer to Configure Buffer for more information.

High-speed capture is useful in registration and synchronization applications. You can calculate subsequent moves relative to the captured position. Refer to the Set Operation Mode VI for information about relative-to-capture mode. Refer to the Gearing section of the NI-Motion Help for information about using superimposed moves/registration applications. Also, refer to the Rotating Knife section of the NI-Motion Help for example code that includes superimposed moves.

Note  Enabling a high-speed capture input when the input is already active captures the position immediately and sets the status bit. If you change the mode with the Configure High-Speed Capture VI after you enable high-speed capture for this axis, the new mode does not take effect until the next time you run the Enable High-Speed Capture VI.
Note  Enabling a high-speed capture when a breakpoint is enabled may cause the breakpoint to be missed. If you are using a breakpoint on the same axis on which you are performing the high-speed capture, ensure that both the breakpoint and the high-speed capture are configured and enabled before starting the move.

Remarks

This section includes information about how the behavior of this VI differs among the controllers that support it.

NI 73xx Controller Considerations

The following list includes considerations you must make when you are using this VI with a 73xx motion controller:

  • If your application includes a high-speed capture that takes place after a Find Reference move that finds an index, you must enable the high-speed capture after the find reference move. If your application includes a buffered high-speed capture, you must also configure the buffer after the find reference move.
  • NI 73xx controllers do not support multiple simultaneous high-speed captures per axis.

NI SoftMotion Controller Considerations

The following list includes considerations you must make when you are using this VI with the NI SoftMotion Controller:

  • The NI SoftMotion Controller supports multiple simultaneous high-speed captures per axis.

    To use this VI to configure the NI SoftMotion Controller to enable multiple high-speed captures on an axis, set the upper four bits of the resource ID to the following.

    TypeValue
    Primary HS Capture0X0
    Secondary HS Capture0XA0

    For example, to enable the primary high-speed capture status on axis 1, set the resource ID to 0X01. To enable the secondary high-speed capture status on axis 1, set the resource ID to 0XA1.
  • The NI SoftMotion Controller for Copley Controls' Accelnet and Xenus CANopen drives does not support multiple simultaneous high-speed captures per axis.