Hello Expert,
i have illegal data transfer error while i compile below code and please point me where i did mistake . That is only self homework and thanks in advance.
TYPE VALVE
STRUCT
OP_LS : BOOL ;
CL_LS : BOOL ;
AUTO : BOOL ;
MANU : BOOL ;
OPENED : BOOL ;
CLOSED : BOOL ;
Q_SE : BOOL ;
Q_ERROR : BOOL ;
END_STRUCT;
FUNCTION_BLOCK BDV_TEMP // FB 1
VAR_IN_OUT
BDVTEMP : VALVE ;
END_VAR
BEGIN
IF BDVTEMP.OP_LS AND NOT BDVTEMP.CL_LS THEN
BDVTEMP.OPENED := TRUE ;
BDVTEMP.CLOSED := FALSE ;
BDVTEMP.Q_ERROR := FALSE ;
ELSE
;
END_IF;
END_FUNCTION_BLOCK
FUNCTION_BLOCK BDV_TEMP_CALL // FB 2
VAR_IN_OUT
BDV509 : VALVE ;
END_VAR
VAR
VALVE1 : BDV_TEMP ; // CALL FB1
END_VAR
BEGIN
VALVE1 (BDVTEMP := BDV509);
END_FUNCTION_BLOCK
i have illegal data transfer error while i compile below code and please point me where i did mistake . That is only self homework and thanks in advance.
TYPE VALVE
STRUCT
OP_LS : BOOL ;
CL_LS : BOOL ;
AUTO : BOOL ;
MANU : BOOL ;
OPENED : BOOL ;
CLOSED : BOOL ;
Q_SE : BOOL ;
Q_ERROR : BOOL ;
END_STRUCT;
FUNCTION_BLOCK BDV_TEMP // FB 1
VAR_IN_OUT
BDVTEMP : VALVE ;
END_VAR
BEGIN
IF BDVTEMP.OP_LS AND NOT BDVTEMP.CL_LS THEN
BDVTEMP.OPENED := TRUE ;
BDVTEMP.CLOSED := FALSE ;
BDVTEMP.Q_ERROR := FALSE ;
ELSE
;
END_IF;
END_FUNCTION_BLOCK
FUNCTION_BLOCK BDV_TEMP_CALL // FB 2
VAR_IN_OUT
BDV509 : VALVE ;
END_VAR
VAR
VALVE1 : BDV_TEMP ; // CALL FB1
END_VAR
BEGIN
VALVE1 (BDVTEMP := BDV509);
END_FUNCTION_BLOCK
Last edited: