F_CreateDpv1WriteReqPkg : USINT
Die Funktion "F_CreateDpv1WriteReqPkg" erzeugt ein DPV1 Telegramm für einen FB_Dpv1Write eines oder mehrerer Parameter eines Antriebs oder der Controller Unit eines Sinamics Profidrives (Profidrive Specification 3.1). Da Profidrives das Motorola-Format und IPCs das Intel-Format nutzen, führt die Funktion automatisch das Vertauschen der Bytereihenfolge im DPV1 Telegramm von Parametern mit Datentypen mit mehr als einem Byte durch.
Die Funktion liefert die aktuelle Länge des DPV1 Telegramms in Bytes (max. 240 Bytes) zurück.
VAR_INPUT
VAR_INPUT
pDpv1ReqData : POINTER TO ARRAY [1..iMAX_DPV1_SIZE] OF BYTE; (* DPV1 write request *)
iNumOfParams : USINT; (* 1..39; else: reserved *)
iDriveId : USINT;
END_VAR
pDpv1ReqData: Zeiger auf ein Array von 240 Bytes, das das DPV1 Schreibtelegramm enthält. Dieses Telegram wird von der Funktion erstellt.
iNumOfParams: Anzahl der zu schreibenden Parameter (1 to 39). Eine weitere Begrenzung ist die Telegrammgröße von 240 Bytes.
iDriveID: Die ID ist 1 für die ControllerUnit, 2 für das Antriebsobjekt A, 3 für das Antriebsobjekt B eines Doppel/Dreifach-Antriebs. Die Drive ID wird in der Starter Software gesetzt. 1..16 ist möglich.
VAR_IN_OUT
VAR_IN_OUT
stDpv1Parameter : ARRAY [1..iMAX_DPV1_PARAMS] OF ST_Dpv1ParamAddrEx; (* list of parameters *)
stDpv1ValueHeaderEx : ARRAY [1..iMAX_DPV1_PARAMS] OF ST_Dpv1ValueHeaderEx; (* list of values *)
END_VAR
stDpv1Parameter: Array von 39 Parametern, die zum DPV1 Schreibtelegramm zugefügt werden sollen.
stDpv1ValueHeaderEx: Array of 39 Parameterwerten, die zum DPV1 Schreibtelegramm zugefügt werden sollen.