Ing. Punzenberger copa-data gmbh all rights reserved

Yüklə 2,25 Mb.
Pdf görüntüsü
ölçüsü2,25 Mb.
1   ...   9   10   11   12   13   14   15   16   17






STOP could not be executed. 

#define T5RET_OK                0  

#define T5RET_ERROR             1  

#define T5RET_BADCODE           2    /* invalid app code - bad header */  

#define T5RET_BADCODETARGET     3    /* invalid code - bad target id */  

#define T5RET_BADCODEVERSION    4    /* invalid code - bad version */  

#define T5RET_EXECSIZE          5    /* exec buffer overflow */  

#define T5RET_BADREQUEST        6    /* unknown comm  request */  

#define T5RET_SERVEREAD         7    /* cannot process read request */  

#define T5RET_UNKNOWNTIC        8    /* unknocn tic code */  

#define T5RET_DATA8OVERFLOW     9    /* too many DATA8 used */  

#define T5RET_DATA16OVERFLOW    10   /* too many DATA16 used */  

#define T5RET_DATA32OVERFLOW    11   /* too many DATA32 used */  

#define T5RET_DIVZERO           12   /* division by 0 in TIC (32bit) */  

#define T5RET_TIMEOVERFLOW      13   /* too many TIME variables */  

#define T5RET_CANTACTIME        14   /* active timers not supported */  

#define T5RET_SAFETICLOOP       15   /* awful loop in TIC (safe mode) */  

#define T5RET_OUTOFTIC          16   /* TIC code ointer out of range */  

#define T5RET_UNKNOWNSTF        17   /* not supported std function */  

#define T5RET_LDIVZERO          18   /* division by 0 in TIC (64bit) */  

#define T5RET_DATA64OVERFLOW    19   /* too many DATA64 used */  

#define T5RET_STRINGOVERFLOW    20   /* too many strings */  

#define T5RET_SDIVZERO          21   /* division by zero in TIC (8 bit) */  

#define T5RET_WDIVZERO          22   /* division by zero in TIC (16 bit) */  

#define T5RET_HOTRESOURCES      23   /* HOT restart: system resources used */  

#define T5RET_HOTMAP            24   /* invalid var map in hot restart */  

#define T5RET_HOTACTIME         25   /* change of active timer map */  

#define T5RET_HOTSTAMP          26   /* bad build stamp for hot restart */  

#define T5RET_HOTSFC            27   /* SFC changed - no hot restart! */  

#define T5RET_HOTRETAIN         28   /* retain def has changed - no hot */  

#define T5RET_HOTFORMAT         29   /* bad DB format - no hot restart! */  

#define T5RET_CYCLEOVERFLOW     30   /* cycle time overflow */  

#define T5RET_RETAINSTORING     31   /* cant store retain variables */  

#define T5RET_ARRAYBOUND        32   /* array index out of bounds */  

#define T5RET_RECURSE           33   /* recursive call of sub-program */  

#define T5RET_XVOVERFLOW        34   /* too many external variables used */  

#define T5RET_NOBSAMPLING       35   /* sampling trace not supported */  

#define T5RET_TASKOVERFLOW      36   /* too many tasks */  

#define T5RET_HOTCALLSTACK      37   /* call stack overflow (hot) */  

#define T5RET_STACKOVER         38   /* stack overlow */  

#define T5RET_HOTASI            39   /* cannot hot restart ASi */  

#define T5RET_TOXC              40   /* OXC limit reached */  

#define T5RET_WOXC              41   /* OXC info */ 








straton can be used redundantly and offers the possibility to combine the zenon redundancy with the straton 


In this chapter the configuration of the zenon/straton redundancy is described. The 

zenon/>CA_PRODUCTNAME< redundancy is referred to as SCADA logic redundancy from here on.  

Further terms:  


zenon server = dominant zenon server  


zenon SB = zenon standby server 


Active straton Runtime = straton Runtime instance being executed  


Passive straton Runtime = backup system (Standby) of straton Runtime 

Redundancy can be used with the following operating systems: 


Windows XP 


Windows Vista  


Windows 7 


Windows CE 





Two PCs are necessary for SCADA logic redundancy. The both PCs are connected via Ethernet TCP/IP 

(100 MBit, recommended 1 GBit). 


The SCADA logic redundancy demands that both systems, zenon and straton, are installed 

on one PC. 

We recommend to set the cycle time of the straton project to twice the cycle time of a single project, but 

at least to 50 ms.  





Since SCADA logic implies that straton and zenon communicate with each other using the shared 

memory driver (straton to zenonRT connection), it must be guaranteed that the zenon server and the 

active straton Runtime run on the same PC.   

In order to prevent a one-sided switching from straton or zenon, a synchronization between the straton 

Runtime and the zenon Runtime must be engineered. For this a watchdog is used. 

The status of the zenon project (stand alone/server/standby server/client) is transferred via the shared 

memory command area and is evaluated by the redundancy function block. It has a freely definable time 

out value as input. As output binary values for redundancy switch and active, passive and failed 

Runtimes etc. are output. They determine the reaction of the straton Runtime. 

To make it clear from which zenon project the watchdog or the status originates, 


the zenon Runtime driver or the shared memory area must have the zenon project GUID 


the zenon Runtime driver or the shared memory area must have the straton project name 

A watchdog generated by the zenon Runtime driver is transferred via the shared memory command area 

and evaluated in zenon. This evaluation takes place in accordance with the settings of properties Failure 

recognition after [s] and Function for failure recognition. They define a time out time and a 

function (normally Exit Runtime).   

In order for the correct watchdog to be evaluated, it must be clear for several active straton projects 

from which straton project the watchdog originated. For this: 

Yüklə 2,25 Mb.

Dostları ilə paylaş:
1   ...   9   10   11   12   13   14   15   16   17

Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur © 2024
rəhbərliyinə müraciət

    Ana səhifə