EasyManuals Logo

ALTUS Nexto NX3004 User Manual

ALTUS Nexto NX3004
388 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #286 background imageLoading...
Page #286 background image
6. Redundancy with NX3030 CPU
278
When declared in the NonSkippedPrg program. This program has been described previously in
the NonSkippedPrg section.
When declared in POUs from the “function” type. It can be observed this POUs normally must
allocate variables only on the pile (non static), which consequently don’t need to be redundant. If
the user declares static variables (VAR STATIC) inside the POUs from the “function” type, this
will be considered bad programming. Such static variables, in case they are created, will be
considered non-redundant.
When declared in POUs from the “function block” type. It can be observed the mere “function
blockdeclaration doesn’t allocate memory (what allocates memory is to turn a function block
into as instance).
It must be observed that the function blocks instances, declared inside POUs from the program type
or inside GVLs, behave as symbolic variables, in other words, allocate redundant memory. In the
same way symbolic variables, when function block instances, are declared in the NonSkippedPrg
program or when the GVL isn’t marked as redundant, such instances are non-redundant
Multiple Mapping
If the user desires to map the redundant command variables in more than one communication port
(COMx or NETx) it’s necessary the implementation of a control by the user within his own
application.
The control logic to be implemented must write in the redundant command variables based on the
variables (commands) values from each communication port (COMx or NETx). Besides that, the
control logic must restart the communication ports command variables, as the redundancy control
just restarts its own command variables.
The following is an example of this implementation:
VAR
var_StandBy_command_Ethernet_relation : BOOL;
var_StandBy_command_Serial_relation : BOOL;
var_Inactive_command_Ethernet_relation : BOOL;
var_Inactive_command_Serial_relation : BOOL;
var_TurnOn_command_Ethernet_relation : BOOL;
var_Turn_command_Serial_relation : BOOL;
END_VAR
//Logic to put the local PLC in StandBy
IF var_StandBy_command_Ethernet_relation = TRUE THEN
DG_NX4010.tRedundancy.RedCmdLoc.bStandbyLocal := TRUE;
var_StandBy_command_Ethernet_relation:=FALSE;
END_IF
IF var_StandBy_command_Serial_relation = TRUE THEN
DG_NX4010.tRedundancy.RedCmdLoc.bStandbyLocal:=TRUE;
var_StandBy_command_Serial_relation:=FALSE;
END_IF
// Logic to put the local PLC in Inactive
IF var_Inactive_command_Ethernet_relation = TRUE THEN
DG_NX4010.tRedundancy.RedCmdLoc.bInactiveLocal:= TRUE;
var_Inactive_command_Ethernet_relation:=FALSE;
END_IF
IF var_Inactive_command_Serial_relation = TRUE THEN
DG_NX4010.tRedundancy.RedCmdLoc.bInactiveLocal:=TRUE;
var_Inactive_command_Serial_relation:=FALSE;
END_IF
//Logic to switch on the local PLC switched off by the PX2612
IF var_TurnOn_command_Ethernet_relation = TRUE THEN
DG_NX4010.tRedundancy.RedCmdLoc.bTurnOnLocal:= TRUE;
var_TurnOn_command_Ethernet_relation:=FALSE;
END_IF
IF var_Turn_command_Serial_relation = TRUE THEN
DG_NX4010.tRedundancy.RedCmdLoc.bTurnOnLocal:=TRUE;
var_Turn_command_Serial_relation:=FALSE;
END_IF

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the ALTUS Nexto NX3004 and is the answer not in the manual?

ALTUS Nexto NX3004 Specifications

General IconGeneral
BrandALTUS
ModelNexto NX3004
CategoryProcessor
LanguageEnglish