DriveParamRead

PLCopen motion icon Pipe Network motion icon

 Function BlockClosed A function block groups an algorithm and a set of private data. It has inputs and outputs. - Reads a driveClosed In electrical engineering, a drive is an electronic device to provide power to a motor or servo. Control device for regulating the speed, torque and position of a motor. A unit controlling a motor using the current and timing in its coils. parameter by sending an ASCIIClosed American Standard Code for Information Interchange - ASCII provides a one-to-one mapping between alphanumeric characters and a digital one-byte word. command to a drive.

Inputs

Input

Data Type

Range

Unit

Default

Description

Execute

BOOL

FALSE, TRUE

N/A

No default

On the rising edgeClosed The transition of a digital signal from low to high. AKA: positive edge. of Execute, a drive parameter is read.

Drive

INT

-32768 to +32767

N/A

No default

The address of the drive where data is read.

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

Param

STRING

No range

N/A

No default

The parameter to read.

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 DriveParamRead error result if Error is TRUE.

Value

LREAL

No range

N/A

The value of the drive parameter.

Value is only set when the function block has successfully completed.

Units

STRING

No range

N/A

The value of the drive parameter.

Value is only set when the function block has successfully completed.

Remarks

Usage

Use this function block to read drive parameters that are not supported by other function blocks.

Examples include:

  • 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: DriveParamRead

EtherCAT Error Codes

FBD Language Example

FFLD Language Example

IL Language Example

Not available.

ST Language Example

(* Read PL.KPClosed Proportional gain of a control loop. 
AKA: P-gain. on first AKD Drive on EtherCAT network *)
      
(* The code continually calls the FB (without re-executing it) until the first execution is done, then reads the returned value from the drive and resetClosed New start of the microprocessor. the FB *)

IF ReadPropGain then
Inst_DriveParamRead1( 1, 1001, 'PL.KP' );
End_If;

On Inst_DriveParamRead1.Done do
Inst_DriveParamRead1( 0, 1001, 'PL.KP' );
PositionProportionalGain := Inst_DriveParamRead1.Value; (* Reads the returned value from the drive *)
ReadPropGain := 0; (* Reset the FB *)
End_DO;

See Also

DriveParamWrite