-> Hier kostenlos registrieren
SCL - Zähler Einzelergebnissen OK NOK soll die Summe aller OK gebildet
Guten Morgen,
ich möchte einen Gesamtstückzähler OK / NOK mittels SCL realisieren.
Das Programm habe ich wie folgt geschrieben, leider habe ich noch Probleme mit der Einbindung des Datenbausteins.
Z18 Ausdruck nicht korrekt;
Vielen Dank für eure Unterstützung!
Guten Morgen,
ich möchte einen Gesamtstückzähler OK / NOK mittels SCL realisieren.
Das Programm habe ich wie folgt geschrieben, leider habe ich noch Probleme mit der Einbindung des Datenbausteins.
Z18 Ausdruck nicht korrekt;
Vielen Dank für eure Unterstützung!
Code:
FUNCTION FC2 : VOID
VAR_TEMP
Summe_OK: WORD;
Summe_NOK: WORD;
i: INT;
bte: STRING;
END_VAR
BEGIN
Summe_OK := 0;
FOR i := 1 TO 28 DO
bte := i&'.OK'
Summe_OK := DB170.DBW[bte];
END_FOR;
DB2.DBW0 := Summe_OK;
Summe_NOK := 0;
FOR i := 1 TO 28 DO
Summe_NOK := DB170.DBW[i.NOK];
END_FOR;
DB2.DBW2 := Summe_NOK;
IF DB2.DBX4.0 = true THEN
FOR i := 1 TO 28 DO
DB170.DBW[i.OK] := 0;
END_FOR;
FOR i := 1 TO 28 DO
DB170.DBW[i.NOK] := 0;
END_FOR;
DB2.DBX4.0 := false;
END_IF;
END_FUNCTION
Code:
[DATA_BLOCK DB 170
TITLE =
VERSION : 0.1
STRUCT
Stueckzaehler : ARRAY [1 .. 50 ] OF STRUCT
Reset : BOOL ;
OK : INT ;
NOK : INT ;
END_STRUCT ;
END_STRUCT ;
BEGIN
Stueckzaehler[1].Reset := FALSE;
Stueckzaehler[1].OK := 0;
Stueckzaehler[1].NOK := 0;
Stueckzaehler[2].Reset := FALSE;
Stueckzaehler[2].OK := 0;
Stueckzaehler[2].NOK := 0;
Stueckzaehler[3].Reset := FALSE;
Stueckzaehler[3].OK := 0;
Stueckzaehler[3].NOK := 0;
Stueckzaehler[4].Reset := FALSE;
Stueckzaehler[4].OK := 0;
Stueckzaehler[4].NOK := 0;
Stueckzaehler[5].Reset := FALSE;
Stueckzaehler[5].OK := 0;
Stueckzaehler[5].NOK := 0;
Stueckzaehler[6].Reset := FALSE;
Stueckzaehler[6].OK := 0;
Stueckzaehler[6].NOK := 0;
Stueckzaehler[7].Reset := FALSE;
Stueckzaehler[7].OK := 0;
Stueckzaehler[7].NOK := 0;
Stueckzaehler[8].Reset := FALSE;
Stueckzaehler[8].OK := 0;
Stueckzaehler[8].NOK := 0;
Stueckzaehler[9].Reset := FALSE;
Stueckzaehler[9].OK := 0;
Stueckzaehler[9].NOK := 0;
Stueckzaehler[10].Reset := FALSE;
Stueckzaehler[10].OK := 0;
Stueckzaehler[10].NOK := 0;
Stueckzaehler[11].Reset := FALSE;
Stueckzaehler[11].OK := 0;
Stueckzaehler[11].NOK := 0;
Stueckzaehler[12].Reset := FALSE;
Stueckzaehler[12].OK := 0;
Stueckzaehler[12].NOK := 0;
Stueckzaehler[13].Reset := FALSE;
Stueckzaehler[13].OK := 0;
Stueckzaehler[13].NOK := 0;
Stueckzaehler[14].Reset := FALSE;
Stueckzaehler[14].OK := 0;
Stueckzaehler[14].NOK := 0;
Stueckzaehler[15].Reset := FALSE;
Stueckzaehler[15].OK := 0;
Stueckzaehler[15].NOK := 0;
Stueckzaehler[16].Reset := FALSE;
Stueckzaehler[16].OK := 0;
Stueckzaehler[16].NOK := 0;
Stueckzaehler[17].Reset := FALSE;
Stueckzaehler[17].OK := 0;
Stueckzaehler[17].NOK := 0;
Stueckzaehler[18].Reset := FALSE;
Stueckzaehler[18].OK := 0;
Stueckzaehler[18].NOK := 0;
Stueckzaehler[19].Reset := FALSE;
Stueckzaehler[19].OK := 0;
Stueckzaehler[19].NOK := 0;
Stueckzaehler[20].Reset := FALSE;
Stueckzaehler[20].OK := 0;
Stueckzaehler[20].NOK := 0;
Stueckzaehler[21].Reset := FALSE;
Stueckzaehler[21].OK := 0;
Stueckzaehler[21].NOK := 0;
Stueckzaehler[22].Reset := FALSE;
Stueckzaehler[22].OK := 0;
Stueckzaehler[22].NOK := 0;
Stueckzaehler[23].Reset := FALSE;
Stueckzaehler[23].OK := 0;
Stueckzaehler[23].NOK := 0;
Stueckzaehler[24].Reset := FALSE;
Stueckzaehler[24].OK := 0;
Stueckzaehler[24].NOK := 0;
Stueckzaehler[25].Reset := FALSE;
Stueckzaehler[25].OK := 0;
Stueckzaehler[25].NOK := 0;
Stueckzaehler[26].Reset := FALSE;
Stueckzaehler[26].OK := 0;
Stueckzaehler[26].NOK := 0;
Stueckzaehler[27].Reset := FALSE;
Stueckzaehler[27].OK := 0;
Stueckzaehler[27].NOK := 0;
Stueckzaehler[28].Reset := FALSE;
Stueckzaehler[28].OK := 0;
Stueckzaehler[28].NOK := 0;
Stueckzaehler[29].Reset := FALSE;
Stueckzaehler[29].OK := 0;
Stueckzaehler[29].NOK := 0;
Stueckzaehler[30].Reset := FALSE;
Stueckzaehler[30].OK := 0;
Stueckzaehler[30].NOK := 0;
Stueckzaehler[31].Reset := FALSE;
Stueckzaehler[31].OK := 0;
Stueckzaehler[31].NOK := 0;
Stueckzaehler[32].Reset := FALSE;
Stueckzaehler[32].OK := 0;
Stueckzaehler[32].NOK := 0;
Stueckzaehler[33].Reset := FALSE;
Stueckzaehler[33].OK := 0;
Stueckzaehler[33].NOK := 0;
Stueckzaehler[34].Reset := FALSE;
Stueckzaehler[34].OK := 0;
Stueckzaehler[34].NOK := 0;
Stueckzaehler[35].Reset := FALSE;
Stueckzaehler[35].OK := 0;
Stueckzaehler[35].NOK := 0;
Stueckzaehler[36].Reset := FALSE;
Stueckzaehler[36].OK := 0;
Stueckzaehler[36].NOK := 0;
Stueckzaehler[37].Reset := FALSE;
Stueckzaehler[37].OK := 0;
Stueckzaehler[37].NOK := 0;
Stueckzaehler[38].Reset := FALSE;
Stueckzaehler[38].OK := 0;
Stueckzaehler[38].NOK := 0;
Stueckzaehler[39].Reset := FALSE;
Stueckzaehler[39].OK := 0;
Stueckzaehler[39].NOK := 0;
Stueckzaehler[40].Reset := FALSE;
Stueckzaehler[40].OK := 0;
Stueckzaehler[40].NOK := 0;
Stueckzaehler[41].Reset := FALSE;
Stueckzaehler[41].OK := 0;
Stueckzaehler[41].NOK := 0;
Stueckzaehler[42].Reset := FALSE;
Stueckzaehler[42].OK := 0;
Stueckzaehler[42].NOK := 0;
Stueckzaehler[43].Reset := FALSE;
Stueckzaehler[43].OK := 0;
Stueckzaehler[43].NOK := 0;
Stueckzaehler[44].Reset := FALSE;
Stueckzaehler[44].OK := 0;
Stueckzaehler[44].NOK := 0;
Stueckzaehler[45].Reset := FALSE;
Stueckzaehler[45].OK := 0;
Stueckzaehler[45].NOK := 0;
Stueckzaehler[46].Reset := FALSE;
Stueckzaehler[46].OK := 0;
Stueckzaehler[46].NOK := 0;
Stueckzaehler[47].Reset := FALSE;
Stueckzaehler[47].OK := 0;
Stueckzaehler[47].NOK := 0;
Stueckzaehler[48].Reset := FALSE;
Stueckzaehler[48].OK := 0;
Stueckzaehler[48].NOK := 0;
Stueckzaehler[49].Reset := FALSE;
Stueckzaehler[49].OK := 0;
Stueckzaehler[49].NOK := 0;
Stueckzaehler[50].Reset := FALSE;
Stueckzaehler[50].OK := 0;
Stueckzaehler[50].NOK := 0;
END_DATA_BLOCK
Zuletzt bearbeitet: