timestamp:STRING;
inverter:STRING;
report:STRING;
END_STRUCT
test_rtrig:R_TRIG;
eingang:BOOL;
ausgang:BOOL;
test_rtrig(CLK:=eingang);
ausgang:=test_rtrig.Q;
ja, Du übersiehst etwas, nämlich den Ausgang.wette es ist mal wieder eine Kleinigkeit, welche ich übersehe.
IF inverter1.bool_STS_error_SCU = TRUE THEN
FB_R_TRIG(CLK:=inverter1.bool_STS_error_SCU);
bool_report[1]:=FB_R_TRIG.Q;
IF bool_report[1]= TRUE THEN
report_collection[n].timestamp:=SYSTEMTIME_TO_STRING(FB_Systemtime.systemTime);//stri_timestamp;
report_collection[n].inverter:='1';
report_collection[n].report:='error: SCU';
bool_report[1]:=FALSE;
n:=n+1;
END_IF
END_IF
FB_R_TRIG[1](CLK:=inverter1.bool_STS_error_SCU);
IF inverter1.bool_STS_error_SCU = TRUE THEN
bool_report[1]:=FB_R_TRIG[1].Q;
IF bool_report[1]= TRUE THEN
report_collection[n].timestamp:=SYSTEMTIME_TO_STRING(FB_Systemtime.systemTime);//stri_timestamp;
report_collection[n].inverter:='1';
report_collection[n].report:='error: SCU';
n:=n+1;
END_IF
END_IF
FB_R_TRIG[1](CLK:=inverter1.bool_STS_error_SCU);
..blabla..
FB_R_TRIG[1](CLK:=inverter1.bool_STS_error_output_overcurrent_peak);
..blabla..
FB_R_TRIG[3](CLK:=inverter1.bool_STS_error_output_overcurrent_rms);
usw.
if error_1 or error_2 or error_3 ...... then
error_general = true;
end_if
if error_1 or error_2 or error_3 ...... then
error_general = true;
else
error_general = false;
end_if
Ganz so einfach sicher nicht, aber auch dafür gebe es eine Lösung. Wenn ich das richtig sehe hast Du mehrere Umrichter die jeweils mehrere Fehler schmeißen können. Soweit es pro Umrichter nicht zu viele Fehler sind und das Ganze wieder unübersichtlich wird könnte das Folgende funktionieren (Ob das jetzt schön ist mögen andere entscheiden):Ich besetzte aber jeden FB_R_TRIG[n] mit einer anderen CLK Variablen. Also z.B. so
Code:FB_R_TRIG[1](CLK:=inverter1.bool_STS_error_SCU); ..blabla.. FB_R_TRIG[1](CLK:=inverter1.bool_STS_error_output_overcurrent_peak); ..blabla.. FB_R_TRIG[3](CLK:=inverter1.bool_STS_error_output_overcurrent_rms); usw.
Damit funktioniert das ja nicht. Oder? Also mit der FOR-Schleife?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?