16#3281 : FehlerString:='Unterspannung für aktive PFC';
16#3282 : FehlerString:='Überlast Bremschopper';
END_CASE;
Das heisst die Variable "Fehlerstring" ändert bei jedem neuen Fehler einfach ihren Wert. Diese Änderung muss irgentwie erkannt werden und der Fehler muss dann ein Mal in ein neues StringArray geschrieben werden.
Weiss jemand einen Rat?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Ich zeige z.B. in meiner Visu immer die letzten 6 Nachrichten in einem MessageWindow an.
Dabei wird die neueste Meldung immer an die höchste Array Position geschrieben. Wenn alle 6 Zeilen voll sind, scrollen die Strings 2-6 eins nach unten. Die alte 1 fliegt raus und der neue String kommt in die 6.
Das sollte (evtl. mit kleiner Abwandlung) auch dein Problem lösen können.
Hallo,
hab folgendes Problem, viellichtt kann jemand helfen.
Ich habe eine Varibale vom Typ "String(80)" in der mir Statusmeldungen
übergeben werden.
Diese Meldungen möchte ich nacheinander in einem Array speichern, so dass ich quasi am Ende ALLE Meldungen in diesem einem Array habe.
Weiss jemand wie man das machen kann?
Hallo,
vielleicht klingt das jetzt ein wenig blöd , aber Du kannst natürlich einfach ein
ARRAY [0..n] OF STRING
verwenden.
Also z.B. so:
PROGRAM PLC_PRG
VAR
END_VAR
VAR CONSTANT
END_VAR
IF NeuerFehlertext THEN
IF i >= MAXListenLaenge THEN
ELSE
END_IF
END_IF
Die Frage ist nur, wie Du die ganzen Meldungen dann verwaltest, sprich löscht etc. Aber bis Du ja dann mit dem Array ganz flexibel.
Hallo,
Danke für die Antwort. Leider funktioniert das nicht ganz so wie es soll.
Im Array steht immer die gleiche Fehlermeldung in allen Feldern.
Den Fehlerstring erhlate durch eine Case-Aweisung:
CASE Error OF
16#0000: FehlerString:='Keine Fehler';
16#3280 : FehlerString:='Ladezeit Zwischenkreis überschritten';
16#3281 : FehlerString:='Unterspannung für aktive PFC';
16#3282 : FehlerString:='Überlast Bremschopper';
END_CASE;
Das heisst die Variable "Fehlerstring" ändert bei jedem neuen Fehler einfach ihren Wert. Diese Änderung muss irgentwie erkannt werden und der Fehler muss dann ein Mal in ein neues StringArray geschrieben werden.
Weiss jemand einen Rat?
Hallo
Ich zeige z.B. in meiner Visu immer die letzten 6 Nachrichten in einem MessageWindow an.
Dabei wird die neueste Meldung immer an die höchste Array Position geschrieben. Wenn alle 6 Zeilen voll sind, scrollen die Strings 2-6 eins nach unten. Die alte 1 fliegt raus und der neue String kommt in die 6.
Das sollte (evtl. mit kleiner Abwandlung) auch dein Problem lösen können.
Beispiel anbei.
Gruss
Erik
SETMAINMESSAGE.zip [662 Bytes]
Danke für die Hilfe,
hab nun hinbekommen was ich wollte!!