Table of Contents

IAxisMoveInterpolatedCurrent

Namespace
ZEquipment

This interface is meant for drives, which support a mode, where the master cyclically sends a target current with a PDO. The drive closes the current control loop without consideration for the actual velocity or position. In this mode the drive usually only checks if the sent value(s) exceeds the maximum current and observes the actual maximum motor speed (this can vary between different drive manufacturers). This mode can be used to move an axes with a PLC controlled force or torque. The interface comes with two methods,

Note that the term interpolated comes from the fact that drives usually run with a higher cyclic time than the PLC, missing points between missing timeframes are usually interpolated by the drive.

INTERFACE IAxisMoveInterpolatedCurrent

Methods

MoveInterpolatedCurrentAsync

This method is used to enter the drives interpolated current mode, i.e. CiA402 this mode is usually called cyclic-synchronous-torque (CST) mode. After the mode has been successfully switched to, SetInterpolatedCurrent has to be called every PLC cycle, with a command value, which should not exceed any drive or physicial limit. The Async method is done if the object is not in its Busy state anymore.

Note

This method is used to start a specific operation mode of the drive. Calling any other Async method of the axes interfaces, will finish this mode. This includes methods like StopAsync and HaltAsync.

Executing this method while the drive is still Busy with another Async command will cause this method to fail. This can be checked by submitting an StartToken as a startToken. Simply pass such an object and Assert it or check for startToken.Error after calling this method.

METHOD MoveInterpolatedCurrentAsync (
 startToken : ZCore.IStartToken)

Inputs

startToken IStartToken

(optional) object to check if the method was executed successfully - may be 0

SetInterpolatedCurrent

This method has to be used together with MoveInterpolatedCurrentAsync to send a command value to the drive. The latter should not exceed any drive or motors physicial limit.

If this method is called when MoveInterpolatedCurrentAsync has not started before, the method will fail. Use startToken for testing if the method was executed correctly.

METHOD SetInterpolatedCurrent (
 startToken : ZCore.IStartToken,
 current : LREAL)

Inputs

startToken IStartToken

pass an StartToken instance here to check if the call was successfully executed

current LREAL

%, target current in percent of the drive's nominal current