Controller Motion Signals

The Automation1 controller supplies a wide range of data signals that can be used to track the motion profile of the controller, including position, velocity, acceleration, and jerk. These signals provide access to data during controller operation through SMC trajectory generation to drive-side motor operation and feedback.

These signals let you track motion trajectories in the program coordinate system and the transformation coordinate system. The signals that you can collect include motion generated by the SMC, motion commanded by a drive to its motor, and feedback from the motor. The signals are collected from the drive at a slower rate than signals collected from the SMC because of the communication delay time with the drive. You can use the DriveMotionDelay AxisStatusItem to determine the delay time between the SMC signals and drive signals. Because virtual drives are emulated by the SMC without physical hardware, they have no communication delay and have no feedback error.

Position Signals

The position signals determine the commanded location of an axis. The units of the position signals depend on the controller configuration and how the signal is collected. Distances are always reported in primary units during Data Collection or through all Automation1 APIs. Distances are reported in user units in AeroScript and Automation1 Studio, as configured by the SetupTaskDistanceUnits() AeroScript function. For more information on distance units, refer to Motion Setup Functions.

Program Position

Signal Description
ProgramPosition The program position reflects the position specified in program-space. This signal will undergo inverse transformations to become PositionCommandRaw before being sent to the drive.
ProgramPositionCommand The program position command is the position commanded to the motor as it is represented in the program coordinate system. This signal is PositionCommand with forward transformations applied.
ProgramPositionFeedback The program position feedback is the position feedback of the motor as it is represented in the program coordinate system. This signal is PositionFeedback with forward transformations applied.

Position

Signal Description
PositionOffset Tracks the program coordinate system offsets of the PositionOffsetSet() AeroScript function and the HomePositionSet Parameter.
PositionCommand Position commanded by the drive to the motor. Does not include calibration or backlash. Includes PositionOffset.
PositionFeedback Feedback from the drive’s motor of the actual position. Does not include calibration or backlash. Includes PositionOffset.
PositionError Difference between PositionCommand and PositionFeedback. Represents the physical error between the position commanded to the motor and the feedback from the motor. Virtual axes have no error.
PositionCommandRaw Raw position commanded from the SMC to the drive. Does not include calibration or backlash. Includes filtering and PositionOffset.
PositionCommandRollover PositionCommand, with rollover applied.
PositionFeedbackRollover PositionFeedback, with rollover applied.

 

Velocity Signals

The velocity commands represent the instantaneous velocity commanded by the controller. The units of the velocity signals depend on the controller configuration and how the signal is collected. Velocities are always reported in primary units per second during Data Collection or through the Library APIs (C or .NET). Velocities are reported as user units per second in AeroScript, as configured by the SetupTaskDistanceUnits() AeroScript function. Velocities are reported as user units per time units in Automation1 Studio as configured by the SetupTaskDistanceUnits() and SetupTaskTimeUnits() AeroScript functions. For more information on distance units and time units, refer to Motion Setup Functions.

Program Velocity

Signal Description
ProgramVelocityCommand The program velocity reflects the velocity commanded by drive in program space. This signal does not include the output of any transformations. This signal is VelocityCommand with forward transformations applied.
ProgramVelocityFeedback The program velocity feedback reflects the velocity feedback from the drive’s motor in program space. This signal does not include the output of any transformations. This signal is VelocityFeedback with forward transformations applied.

Velocity

Signal Description
VelocityCommand Velocity commanded by the drive to the motor. This item does not include calibration or backlash.
VelocityFeedback Feedback from the drive’s motor of the actual velocity. This item does not include calibration or backlash.
VelocityFeedbackAverage Rolling average of VelocityFeedback, as opposed to an instantaneous value.
VelocityError Velocity error is the difference between VelocityCommand and VelocityFeedback.
VelocityCommandRaw Velocity commanded by the SMC to the drive. This item does not include calibration.

Acceleration Signals

The acceleration commands reflect the commanded acceleration of the controller with respect to the ramp mode and ramp type. The units of the acceleration signals depend on the controller configuration and how the signal is collected. Accelerations are always reported in primary units per second per second during Data Collection or through the Library APIs (C or .NET). Accelerations are reported as user units per second per second in AeroScript and Automation1 Studio, as configured by the SetupTaskDistanceUnits() AeroScript function. Accelerations are always specified in second time units and are unaffected by SetupTaskTimeUnits() AeroScript functions. For more information on distance units and time units, refer to Motion Setup Functions.

Signal Description
AccelerationCommand Acceleration commanded by the drive to the motor.
AccelerationFeedback Feedback from the drive’s motor of the actual acceleration. Does not include calibration or backlash.
AccelerationError AccelerationError is the difference between AccelerationCommand and AccelerationFeedback.
AccelerationCommandRaw Acceleration commanded by the SMC to the drive. This item does not include calibration.

Jerk Signals

The jerk of an axis is used to track its rate of acceleration change. Jerk signals are always reported in counts per second per second per second (counts/second3).

Signal Description
JerkCommandRaw The commanded jerk is the instantaneous rate of acceleration change of an axis.