DriveParamWrite

PLCopen motion icon Pipe Network motion icon

 Function Block - Writes a drive parameter by sending an ASCII command to a drive.

Inputs

Input

Data Type

Range

Unit

Default

Description

Execute

BOOL

FALSE, TRUE

N/A

No default

On the rising edge of Execute, a drive parameter is set.

  • The function block processes only one request at a time.
  • If Execute is toggled quickly so that another rising edge occurs before the function block has completed, the function block does not issue a second write command.

Drive

INT

-32768 to +32767

N/A

No default

The address of the drive where data is written.

  • The first node usually has the value 1001.
  • The second node usually has the value 1002.

  • Use the members of the EtherCAT structure to specify a device's address to Create Variables.
       

Param

STRING

No range

N/A

No default

The parameter to write.

Value

LREAL

No range

N/A

No default

The value to set the drive parameter to.

Outputs

Output

Data Type

Range

Unit

Description

Done

BOOL

FALSE, TRUE

N/A

Indicates whether this function block has completed without error.

Error

BOOL

FALSE, TRUE

N/A

Indicates whether this function block has completed with error.

ErrorID

DINT

No range

N/A

The DriveParamWrite error result if Error is TRUE.

Upon success, Error is set to 0 (zero).

See the EtherCAT Error Codes.

Remarks


  • This function block uses and reserves the EtherCAT SDO Channel.
    The SDO Channel remains reserved until the done output is TRUE.
    This FB should be called at each cycle until either the Done or Error output is TRUE.
    If it is not called at each cycle, the rest of SDO communication (e.g., the AKD GUI Views) is blocked.
    Using this FB in SFC P0 or P1 steps is not recommended because these steps are executed only once.
    If this FB is used in P0 or P1, then it must be used in an SFC N step to ensure the FB completes.

  • Use this function block to change drive parameters.
    Examples include:
    • Tuning parameters.
    • Changing drive limits (i.e., peak current).
  • It takes multiple cycles to complete this function block.
  • Typically only one DriveParamRead or DriveParamWrite function should be active for each axis at one time.
  • If executing this function block continuously or if multiple times is required, add code that waits for this function block to complete (e.g., Done bit = 1) before executing it again.
  • See EtherCAT Function Blocks that Work with Drive Parameters about function blocks not supported by ML and MC function blocks.

Figure 1: DriveParamWrite

EtherCAT Error Codes

FBD Language Example

FFLD Language Example

IL Language Example

Not available.

ST Language Example

(* Write 58.000 to PL.KP of first AKD Drive on EtherCAT network *
Inst_DriveParamWrite( TRUE, 1001, 'PL.KP', 58 );

See Also

DriveParamRead