Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
9
Добавлен:
11.10.2020
Размер:
3.68 Mб
Скачать

18WAGO-I/O-PRO 32 V2.2 Übersicht

Bestandteile eines Projekts

x So wird die Instanz eines Funktionsblocks in FUP aufgerufen (Deklarationsteil wie bei AWL)

In AS können Aufrufe von Funktionsblöcken nur in Schritten vorkommen.

2.3.5Programm

Ein Programm ist ein Baustein, der bei der Ausführung einen oder mehrere Werte liefert. Programme sind global im gesamten Projekt bekannt. Alle Werte bleiben von einer Ausführung des Programms bis zur nächsten erhalten.

x Beispiel für ein Programm

Programme können von Programmen und Funktionsblöcken aufgerufen werden. Ein Programmaufruf in einer Funktion ist nicht erlaubt. Es gibt auch keine Instanzen von Programmen.

Wenn ein Baustein ein Programm aufruft, und es werden dabei Werte des Programms verändert, dann bleiben diese Veränderungen beim nächsten

WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32

WAGO-I/O-PRO 32 V2.2 Übersicht

19

Bestandteile eines Projekts

 

 

 

Aufruf des Programms erhalten, auch wenn das Programm von einem anderen Baustein aus aufgerufen wird.

Dies ist anders als beim Aufruf eines Funktionsblocks. Dort werden nur die Werte in der jeweiligen Instanz eines Funktionsblocks geändert.

Diese Veränderungen spielen also auch nur eine Rolle, wenn dieselbe Instanz aufgerufen wird.

Eine Programmdeklaration beginnt mit dem Schlüsselwort PROGRAM und endet mit END_PROGRAM.

Beispiele für Aufrufe eines Programms

In AWL:

CAL PRGbeispiel

LD PRGbeispiel.PAR

ST ERG

In ST:

PRGbeispiel;

Erg := PRGbeispiel.PAR;

In FUP:

Beispiel für eine mögliche Aufrufsequenz von PLC_PRG:

LD

0

 

ST

PRGbeispiel.PAR

(*PAR wird mit 0 vorbesetzt*)

CAL

AWLaufruf

(*ERG in AWLaufruf ergibt sich zu

 

1*)

 

CAL

STaufruf

(*ERG in STaufruf ergibt sich zu

 

2*)

 

CAL

FUPaufruf

(*ERG in FUPaufruf ergibt sich zu

 

3*)

 

Wenn von einem Hauptprogramm aus zunächst die Variable PAR des Programms PRGbeispiel mit 0 initialisiert wird, und dann nacheinander Programme mit den obigen Programmaufrufen aufgerufen werden, dann wird das Ergebnis Erg in den Programmen die Werte 1,2 und 3 haben. Wenn man die Reihenfolge der Aufrufe vertauscht, ändern sich dementsprechend auch die Werte der jeweiligen Ergebnisparameter.

WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32

20WAGO-I/O-PRO 32 V2.2 Übersicht

Bestandteile eines Projekts

2.3.6PLC_PRG

Es ist möglich, aber nicht zwingend, die Projektabarbeitung über sogenannte Tasks (Taskkonfiguration) zu steuern. Liegt jedoch keine Taskkonfiguration vor, muß das Projekt den Baustein PLC_PRG enthalten. Der PLC_PRG wird als Baustein vom Typ Programm automatisch erzeugt, wenn in einem neu angelegten Projekt erstmalig mit 'Projekt' 'Objekt einfügen' ein Baustein eingefügt wird. PLC_PRG wird PRO Steuerungszyklus genau einmal aufgerufen.

Liegt eine Taskkonfiguration vor, darf das Projekt kein PLC_PRG enthalten, da dann die Ausführungsreihenfolge von der Taskzuordnung abhängt.

Warnung:

Löschen Sie den Baustein PLC_PRG nicht und benennen Sie ihn auch nicht um (vorausgesetzt Sie verwenden keine Taskkonfiguration PLC_PRG ist generell das Hauptprogramm in einem Single-Task Programm.

2.3.7Aktion

Zu Funktionsblöcken und Programmen können Aktionen definiert werden. Die Aktion stellt eine weitere Implementation dar, die durchaus in einer anderen Sprache als die 'normale' Implementation erstellt werden kann. Jede Aktion erhält einen Namen.

Eine Aktion arbeitet mit den Daten des Funktionsblocks bzw. Programmes, zu dem sie gehört. Die Aktion verwendet die gleichen Ein-/ Ausgabevariablen und lokalen Variablen, wie die 'normale' Implementation.

x Beispiel für eine Aktion eines Funktionsblocks

In diesem Beispiel wird bei Aufruf des Funktionsblocks Counter die Ausgabevariable out erhöht bzw. erniedrigt in Abhängigkeit der Eingabevariablen in. Bei Aufruf der Aktion Reset des Funktionsblocks wird

WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32

WAGO-I/O-PRO 32 V2.2 Übersicht

21

Bestandteile eines Projekts

 

 

 

die Ausgabevariable out auf Null gesetzt. Es wird in beiden Fällen die gleiche Variable out beschrieben.

Eine Aktion wird aufgerufen mit <Programmname>.<Aktionsname> bzw. <Instanzname>.<Aktionsname>. Soll die Aktion innerhalb des eigenen Bausteins aufgerufen werden, so verwendet man in den Texteditoren nur den Aktionsnamen und in den grafischen den Funktionsblockaufruf ohne Instanzangabe.

Hinweis:

Bei Bausteinen in Ablaufsprache spielen Aktionen eine besondere Rolle.

Die IEC-Norm kennt keine Aktionen, außer die der Ablaufsprache.

Deklaration für alle Beispiele:

PROGRAM PLC_PRG

VAR

Inst : Counter;

END_VAR

In AWL:

CAL

Inst.Reset(In := FALSE)

LD

Inst.out

ST

ERG

In ST:

Inst.Reset(In := FALSE);

Erg := Inst.out;

In FUP:

2.3.8Resourcen

Die Resourcen benötigen Sie zum Konfigurieren und Organisieren Ihres

Projektes und zur Verfolgung von Variablenwerten:

Globale Variablen, die im gesamten Projekt bzw. Netzwerk verwendet werden können

WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32