Step 7 Funktion in SCL

jose_blade

Level-1
Beiträge
14
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich möchte diese Funktion in SCL programmieren leider hab ich keine Idee wie ich realisieren soll.

Wert aus Datenbaustein einlesen 10 sek warten wieder den Wert einlesen, von einander subtrahieren und dann durch die 10 sek teilen. Quasi (Wert1-Wert2)/Zeit

Könnt ihr mir helfen?
 
Das musst du so programmieren, wie du das beschreibst:
Dieses Beispiel stimmt nicht mit der kompletten Syntax von S7 SCL, hier kannst du das auf die Syntax interpolieren.
Code:
FC 1
VAR_INPUT
iVALUE : INT;
xIMPULSE : BOOL; // Hier setzt du für das Zählen der Zeit einen Sekundentakt hin
END_VAR_INPUT

VAR
CNT : INT;
VALUE : INT;  // Ausgerechnete Variable
iVALUE_OLD : INT;
END_VAR

BEGIN

IF xIMPULSE THEN
    CNT := CNT + 1;
END_IF;

IF (CNT >= 10) THEN
    VALUE := REAL_TO_INT(((iVALUE_OLD - iVALUE)/CNT))
    iVALUE_OLD := iVALUE;
    CNT := 0;
END_IF;

RET_VAL := VALUE;
END_FUNCTION;

Der Code ist nicht getestet, hast als Denkanstoß.
 
Zurück
Oben