# Helical

LabVIEW 2018 SoftMotion Module

Edition Date: March 2018

Part Number: 371093W-01

»View Product Info

Performs a helical arc move on a coordinate. A helical arc is an arc in three-dimensional space that consists of a circle in the xy plane and synchronized linear travel on the z-axis.
Details Examples

## Block Diagram Inputs

Parameter Description
error in [ERRI] Describes error conditions that occur before this function block runs. If an error occurs, the function block does not execute. This input provides standard error in functionality.
Resource [resc] Specifies the type of resource to perform the operation on.
 Note  Arc moves only accept coordinate resources.
Execute [exe] Latches inputs and executes operation. Execute is rising edge sensitive. To change an input parameter you must modify the parameter and pulse execute again.
 Note  Refer to Using NI SoftMotion with Asynchronous APIs for more information about how the asynchronous status parameters interact.
Start Angle [strt] Specifies the start angle for the arc move, in degrees. The range is 0 to 360, where angle 0 is along the positive x' axis and values increase counterclockwise from the positive x' axis in the x'y' plane. Refer to Circular Arcs for more information about the start angle.
Travel Angle [trvl] Specifies the total travel distance of the arc in degrees. For example, a travel angle of 90 degrees executes a quarter-circle, a travel angle of 360 degrees creates a full circle, and a travel angle of 720 degrees creates two full circles. A positive travel angle creates counterclockwise circular motion. A negative travel angle creates clockwise motion. Refer to Circular Arcs for more information about the travel angle.
Linear Travel [ltrv] Specifies the total linear travel distance of the arc in position Units. Linear travel adjusts the distance between the endpoints of a helical arc. A higher value for Linear Travel increases the vertical stretch of the corkscrew aspect of the helix, while a value of 0 flattens the helix onto one plane, forming a circle. Refer to Helical Arcs for more information about linear travel.
Velocity [vel] Specifies the maximum velocity of the move in Units/s. Details
Acceleration [acel] Specifies the maximum acceleration of the move in Units/s2. Setting acceleration to 0 (default) allows SoftMotion to automatically calculate the acceleration using the specified Smoothing. If you specify a value for acceleration but not deceleration SoftMotion assumes equal values for acceleration and deceleration when calculating the move profile. Details
Deceleration [dcel] Specifies the maximum deceleration of the move in Units/s2. Setting deceleration to 0 (default) allows SoftMotion to automatically calculate the deceleration using the specified Smoothing. If you specify a value for deceleration but not acceleration SoftMotion assumes equal values for acceleration and deceleration when calculating the move profile. Details
Accel. Jerk [ajrk] Specifies the maximum acceleration jerk of the move in Units/s3. Jerk is the derivative of acceleration (change of acceleration per unit time). Setting acceleration jerk to 0 (default) allows SoftMotion to automatically calculate the jerk using the specified Smoothing. If you specify a value for acceleration jerk but not deceleration jerk SoftMotion assumes equal values for acceleration and deceleration when calculating the move profile. If you specify jerk values but not acceleration and deceleration values, SoftMotion automatically calculates all values and uses the provided jerk values as maximum limits. Details
Decel. Jerk [djrk] Specifies the maximum deceleration jerk of the move in Units/s3. Jerk is the derivative of deceleration (change of deceleration per unit time). Setting deceleration jerk to 0 (default) allows SoftMotion to automatically calculate the jerk using the specified Smoothing. If you specify a value for deceleration jerk but not acceleration jerk SoftMotion assumes equal values for deceleration jerk and acceleration jerk when calculating the move profile. If you specify jerk values but not acceleration and deceleration values, SoftMotion automatically calculates all values and uses the provided jerk values as maximum limits. Details
Smoothing [sftr] Specifies amount of smoothing to apply to the move profile. Valid options are between 0 (least smooth) and 1 (most smooth), with a default of 0.5. The smoothing setting works with the specified move constraints to automatically calculate unspecified move constraints. This terminal is not visible by default, and must be added using the dialog box. Details
Last Blend [ltbl] Specifies the last move in a series of blended moves. The default value is FALSE. Set to TRUE to specify the last move in a series of blended operations. During an asynchronous blended operation, the done status output returns TRUE when blend complete, not move complete, is TRUE. You must set the last blend input to TRUE on the last move so that the done output does not return TRUE too soon. This input is only available if you have selected Blend Enable from the function block shortcut menu.
Blend Mode [blmd] Specifies the blend mode for a move. Valid options are At Deceleration, At Profile Complete (default), and After Delay. This input is only available if you have selected Blend Enable from the function block shortcut menu. Details
Blend Delay [bdly] Specifies the delay time for a blended move using the After Delay blend mode, in seconds, between the end of the previous move and the start of the next move. The default value is 1 second. This terminal is not visible by default, and must be added using the dialog box. This input is only available if you have selected Blend Enable from the function block shortcut menu and Blend Mode is set to After Delay.

## Block Diagram Outputs

Parameter Description
error out [ERRO] Contains error information. This output provides standard error out functionality.
Resource out [resc] Contains resource information from the resource input. You can connect a resource output to another function block resource input.
Done [done] Indicates that the given operation completed without error. Upon successful completion, done remains TRUE as long as execute is TRUE. For arc moves, done is TRUE only if all of the following conditions are met:
• move complete status is TRUE  Note  During a blended operation, done is TRUE when blend complete, not move complete, is TRUE.
• the drive is enabled
• the position error limit was not exceeded  Note  The position error limit is set on the Control Loop page of the Axis Configuration dialog box for servo axes, or on the Stepper page for stepper axes.
• the axis or coordinate did not encounter a forward or reverse limit
Aborted [abrt] Indicates that the given operation has been interrupted by another user command and has finished executing unsuccessfully without error. If the requested operation is interrupted, aborted remains TRUE as long as execute is TRUE. An arc move can only be aborted by another arc move, a straight-line move, or a stop operation.
 Note  aborted does not return TRUE when you interrupt execution of a function with another function that uses a different resource type. For example, executing a single-axis straight-line move on an axis that is part of a coordinate does not abort the coordinate move that is in progress. Instead, the coordinate move stops execution and sets done to TRUE after the straight-line move completes.
Busy [busy] Indicates that the given operation has not completed execution. busy is TRUE once execute is TRUE and as long as the operation has not finished. Status can be busy but not active if the operation is waiting for resources to become available.
Active [actv] Indicates that all required resources have been sent the commands and the requested operation is pending or in the process of execution. active remains TRUE once execute is TRUE and until the requested operation finishes executing and all resources used by the VI or function are freed.

## Details

Use the Helical arc move mode to execute a helical arc on a coordinate.