#Alarm

Top  Previous  Next

Das #Alarm-Objekt ist ein Alarmarchiv und überwacht die in der Alarmdefinitionen definierten Alarme.

Das Objekt Alarm ist ein globales Objekt.

 

Parameter

Object

Spalte A Object

M/O

Default

Beschreibung

#Alarm

M


Alarmhandling

Text/File

Spalte B Text/File

M/O

Default

Beschreibung

<name>.txt

M


Alarm-Definition mit den Alarmvariablen und den Alarmmeldungstexten

Der Name <name> wird zu Alarmtyp, bzw. zur ID des Alarmobjekt.

 

 

Action

Spalte K

M/O

Default

Beschreibung

#Page=<name>

O


Aktion wird ausgeführt bei Kommen von Alarmen:

Seitenwechsel zur Bildseite <name>

VarValue

Spalte P

M/O

Default

Beschreibung

Variable

M


Variable die den Alarmbuffer spezifiziert

VarType

Spalte Q

M/O

Default

Beschreibung

WORD[]

M


Datentyp Array of WORD (Länge entsprechend Anzahl Alarme)

Option

Spalte S

M/O

Default

Beschreibung

Type=<name>

O

Name der Definitions-datei ohne Extension ".TXT"

Alarmtyp (erlaubt die Definition von mehreren Alarmobjekten mit derselben Alarm-Definition)

 


Aufbau Alarmbuffer

Der Alarmbuffer ist wortorientiert aufgebaut und die Startadresse wird beim Alarmobjekt definiert. Jedes Bit ab dem Datenwort 4 stellt einen Alarm dar. Die max. Anzahl Alarme ist abhängig von der max. Arraygrösse die auf der Steuerung definiert werden kann. Die letzten 512 Alarme werden in einem Ringbuffer gespeichert (Alarmhistory). Die Alarmhistory und die aktuelle Einstellung (Sortierung, Filter) wird in der Datei <alarm>.ini netzausfallsicher gespeichert.

 

Handshake EPAM / Steuerung:

Die Statusbits im Alarmbuffer werden jeweils von einer Seite gesetzt und müssen dann von der anderen Seite rückgesetzt werden, nachdem diese erkannt wurden.

z.B. EPAM setzt [0].1 (Alarme im EPAM quittiert), daraufhin wird dieses Bit von der Steuerung wieder auf 0 gesetzt, sobald der Wert dort verarbeitet wurde.

 

 

Definition des Alarmbuffer in der Steuerung

 

CoDeSys:

 

Globale Variable: z.B.

VAR_GLOBAL

 Alarm : ARRAY[0..20]OF WORD

END_VAR

 

Die Alarme können dann über Alarm[x].x adressiert werden.

 

 

Step7:

 

In der Step7 empfiehlt es sich ein Array einer Bitstruktur anzulegen. Damit kann man die Alarme transparent wie in EPAM ansprechen. Z.B. Alarm[x].Bit[x]

 

Alarm ARRAY[0..x]

 STRUCT

         Bit        ARRAY [0..15] BOOL

 END_STRUCT

 

Icon-Hinweis Alarm-Array in UserVar

Wenn die S7-Alarm-Variablen in der Form als Array einer Bitstruktur angelegt werden, dann muss in der UserVar die Option "Raw" definiert werden, da sonst der Kommunikationstreiber ein High/Low-Byte-Swapping durchführt.

 

Variable Name

Type

Size [byte]

Address

Options Flag

/RS7/S1/AlarmArray

WORD[130]

260

DB20.DBB0

Raw

/RS7/S1/AlarmArray[0]

WORD

2

DB20.DBW0

Raw

/RS7/S1/AlarmArray[1]

WORD

2

DB20.DBW2

Raw

/RS7/S1/AlarmArray[2]

WORD

2

DB20.DBW4

Raw

/RS7/S1/AlarmArray[3]

WORD

2

DB20.DBW6

Raw

/RS7/S1/AlarmArray[4]

WORD

2

DB20.DBW8


 

 

Icon-Hinweis

Simulation von Alarmen

Siehe: Alarm Simulation

 

 

Siehe auch

Action-AlarmList
Action-Alarm
Alarmspezifische-Systemvariablen