-> Hier kostenlos registrieren
Hallo,
kann mir mal jemand verraten was ich da bei // IN : ARRAY schreiben soll!
Zur Vorgeschichte:
- Ich hatten kleinen FB geschrieben, die mir die Funktion von einen Wire Break macht. D.h. falls ein Wire Break kommt, soll mir die MSG anzeigen und mit einem RESET soll ich es CHECKEN(Bestätigen).
Ich habe diesen FB so geschrieben, dass ich per Eingabe die Anzahl bestimme.
Diesen Baustein habe ich in diesen FB1 eingefügt und jetzt weiss ich leider nicht mehr weiter!!!!!!
FUNCTION_BLOCK FB1
// Bausteinparameter
VAR_INPUT
RESET
{S7_m_c := 'true'; S7_param := 'false'} : BOOL := FALSE;
TEMP1_WB
{S7_m_c := 'true'; S7_param := 'false'} : BOOL := FALSE;
TEMP2_WB
{S7_m_c := 'true'; S7_param := 'false'} : BOOL := FALSE;
TEMP3_WB
{S7_m_c := 'true'; S7_param := 'false'} : BOOL := FALSE;
END_VAR
VAR_OUTPUT
TEMP1_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
TEMP2_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
TEMP3_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
RES_CHK_TEMP1_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
RES_CHK_TEMP2_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
RES_CHK_TEMP3_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
END_VAR
VAR_TEMP
RESET_MERKER : BOOL;
END_VAR
VAR
RESET_FLANKEN_MERKER : BOOL := TRUE;
TEST1 : FB900;
WBn : ARRAY[0..2] OF BOOL;
WBn_MSG : ARRAY[0..2] OF BOOL;
RESn : ARRAY[0..2] OF BOOL;
END_VAR
WBn[0] := TEMP1_WB;
WBn[1] := TEMP2_WB;
WBn[2] := TEMP3_WB;
WBn_MSG[0] := TEMP1_WB_MSG;
WBn_MSG[1] := TEMP2_WB_MSG;
WBn_MSG[2] := TEMP3_WB_MSG;
RESn[0] := RES_CHK_TEMP1_WB_MSG;
RESn[1] := RES_CHK_TEMP2_WB_MSG;
RESn[2] := RES_CHK_TEMP3_WB_MSG;
IF RESET = true AND RESET_FLANKEN_MERKER = false THEN
RESET_MERKER := TRUE;
END_IF;
RESET_FLANKEN_MERKER := RESET;
IF RESET_MERKER = true THEN
RESET_MERKER := FALSE;
END_IF;
TEST1(RESET := RESET // IN: BOOL,
n_WB := 2 // IN: INT
,TEMPn_WB := // IN: ARRAY
);
:= TEST1.TEMPn_WB_MSG; // OUT: ARRAY
:= TEST1.RES_CHK_TEMPn_WB_MSG; // OUT: ARRAY
END_FUNCTION_BLOCK
kann mir mal jemand verraten was ich da bei // IN : ARRAY schreiben soll!
Zur Vorgeschichte:
- Ich hatten kleinen FB geschrieben, die mir die Funktion von einen Wire Break macht. D.h. falls ein Wire Break kommt, soll mir die MSG anzeigen und mit einem RESET soll ich es CHECKEN(Bestätigen).
Ich habe diesen FB so geschrieben, dass ich per Eingabe die Anzahl bestimme.
Diesen Baustein habe ich in diesen FB1 eingefügt und jetzt weiss ich leider nicht mehr weiter!!!!!!
FUNCTION_BLOCK FB1
// Bausteinparameter
VAR_INPUT
RESET
{S7_m_c := 'true'; S7_param := 'false'} : BOOL := FALSE;
TEMP1_WB
{S7_m_c := 'true'; S7_param := 'false'} : BOOL := FALSE;
TEMP2_WB
{S7_m_c := 'true'; S7_param := 'false'} : BOOL := FALSE;
TEMP3_WB
{S7_m_c := 'true'; S7_param := 'false'} : BOOL := FALSE;
END_VAR
VAR_OUTPUT
TEMP1_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
TEMP2_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
TEMP3_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
RES_CHK_TEMP1_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
RES_CHK_TEMP2_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
RES_CHK_TEMP3_WB_MSG
{S7_m_c := 'true'} : BOOL := FALSE;
END_VAR
VAR_TEMP
RESET_MERKER : BOOL;
END_VAR
VAR
RESET_FLANKEN_MERKER : BOOL := TRUE;
TEST1 : FB900;
WBn : ARRAY[0..2] OF BOOL;
WBn_MSG : ARRAY[0..2] OF BOOL;
RESn : ARRAY[0..2] OF BOOL;
END_VAR
WBn[0] := TEMP1_WB;
WBn[1] := TEMP2_WB;
WBn[2] := TEMP3_WB;
WBn_MSG[0] := TEMP1_WB_MSG;
WBn_MSG[1] := TEMP2_WB_MSG;
WBn_MSG[2] := TEMP3_WB_MSG;
RESn[0] := RES_CHK_TEMP1_WB_MSG;
RESn[1] := RES_CHK_TEMP2_WB_MSG;
RESn[2] := RES_CHK_TEMP3_WB_MSG;
IF RESET = true AND RESET_FLANKEN_MERKER = false THEN
RESET_MERKER := TRUE;
END_IF;
RESET_FLANKEN_MERKER := RESET;
IF RESET_MERKER = true THEN
RESET_MERKER := FALSE;
END_IF;
TEST1(RESET := RESET // IN: BOOL,
n_WB := 2 // IN: INT
,TEMPn_WB := // IN: ARRAY
);
:= TEST1.TEMPn_WB_MSG; // OUT: ARRAY
:= TEST1.RES_CHK_TEMPn_WB_MSG; // OUT: ARRAY
END_FUNCTION_BLOCK