F_CreateDpv1WriteReqPkg 1:

The “F_CreateDpv1WriteReqPkg” function creates a DPV1 telegram for an FB_Dpv1Write of one or more parameters of a drive or the controller unit of a Sinamics Profidrive (Profidrive Specification 3.1). Since Profidrives use the Motorola format and IPCs the Intel format, the function automatically swaps the byte order of parameters with data types with more than one byte in the DPV1 telegram.

The function returns the actual length of the DPV1 telegram in bytes (max. 240 bytes).

FUNCTION F_CreateDpv1WriteReqPkg : USINT


    pDpv1ReqData : POINTER TO ARRAY [1..iMAX_DPV1_SIZE] OF BYTE; (* DPV1 write request *)
    iNumOfParams : USINT;(* 1..39; else: reserved *)
    iDriveId     : USINT;

pDpv1ReqData: Pointer to an array of 240 bytes containing the DPV1 write telegram. This telegram is created by the function.

iNumOfParams: Number of parameters to be written (1 to 39). A further limitation is the telegram size of 240 bytes.

iDriveID: The ID is 1 for the controller unit, 2 for the drive object A and 3 for the drive object B of a double/triple drive. The drive ID is set in the starter software. 1 – 16 is possible.


    stDpv1Parameter     : ARRAY [1..iMAX_DPV1_PARAMS] OF ST_Dpv1ParamAddrEx;(* list of parameters *)
    stDpv1ValueHeaderEx : ARRAY [1..iMAX_DPV1_PARAMS] OF ST_Dpv1ValueHeaderEx;(* list of values *)

stDpv1Parameter: Array of 39 parameters to be added to the DPV1 write telegram (type: ST_Dpv1ParamAddrEx).

stDpv1ValueHeaderEx: Array of 39 parameter values to be added to the DPV1 write telegram (type: ST_Dpv1ValueHeaderEx).


Development environment

Target platform

IO hardware

PLC libraries to be integrated (category group)

TwinCAT v3.1.0

PC or CX (x86)

Beckhoff FC310x PCI, CX1500-M310, EL6731

Tc2_IoFunctions (IO)