- •Wichtige Erläuterungen
- •Rechtliche Grundlagen
- •Urheberschutz
- •Personalqualifikation
- •Bestimmungsgemäßer Gebrauch
- •Symbole
- •Schriftkonventionen
- •Darstellungen der Zahlensysteme
- •Gültigkeitsbereich
- •Abkürzungen
- •Lieferumfang
- •Systemvoraussetzungen
- •Installation
- •Deinstallation
- •Programmstart
- •Wichtige Hinweise
- •WAGO-I/O-PRO 32 V2.2 Übersicht
- •Was ist WAGO-I/O-PRO 32
- •Wie ist ein Projekt strukturiert?
- •Wie erstelle ich mein Projekt?
- •Wie kann ich mein Projekt testen?
- •Debugging
- •Fazit
- •Bestandteile eines Projekts
- •Projekt
- •Baustein
- •Funktion
- •Funktionsblock
- •Instanzen von Funktionsblöcken
- •Aufruf eines Funktionsblocks
- •Programm
- •Aktion
- •Resourcen
- •Bibliotheken
- •Datentypen
- •Visualisierung
- •Die Sprachen
- •Anweisungsliste (AWL)
- •Modifikatoren und Operatoren in AWL
- •Strukturierter Text (ST)
- •Ausdrücke
- •Auswertung von Ausdrücken
- •Zuweisungsoperator
- •Aufruf von Funktionsblöcken in ST
- •RETURN-Anweisung
- •IF-Anweisung
- •CASE-Anweisung
- •FOR-Schleife
- •WHILE-Schleife
- •REPEAT-Schleife
- •EXIT-Anweisung
- •Ablaufsprache (AS)
- •Schritt
- •Aktion
- •Transition / Transitionsbedingung
- •Aktiver Schritt
- •IEC-Schritt
- •Qualifier
- •Implizite Variablen in AS
- •AS-Flags
- •Alternativzweig
- •Parallelzweig
- •Sprung
- •Funktionsplan (FUP)
- •Der freigraphische Funktionsplaneditor (CFC)
- •Kontaktplan (KOP)
- •Kontakt
- •Spule
- •Funktionsblöcke im Kontaktplan
- •Set/Reset-Spulen
- •Debugging, Onlinefunktionalitäten
- •Traceaufzeichnung
- •Debugging
- •Breakpoint
- •Einzelschritt
- •Einzelzyklus
- •Werte Online verändern
- •Monitoring
- •Simulation
- •Logbuch
- •Die Norm
- •Ein Beispielprogramm
- •Die Steuerung einer Ampelanlage
- •Bausteine erzeugen
- •Was macht AMPEL?
- •Was macht WARTEN?
- •Was macht ABLAUF?
- •Was macht PLC_PRG ?
- •"AMPEL"-Deklaration
- •"AMPEL"-Rumpf
- •Anbinden der standard.lib
- •"WARTEN" Deklaration
- •"WARTEN"-Rumpf
- •"ABLAUF" erste Ausbaustufe
- •Aktionen und Transitionsbedingungen
- •ABLAUF zweite Ausbaustufe
- •Das Ergebnis
- •Ampelsimulation
- •Die Visualisierung einer Ampelanlage
- •Erstellen einer neuen Visualisierung
- •Element in Visualisierung einfügen
- •Die weiteren Ampellichter
- •Das Ampelgehäuse
- •Die zweite Ampel
- •Schrift in der Visualisierung
- •Die Komponenten von WAGO-I/O-PRO 32
- •Hauptfenster
- •Menüleiste
- •Funktionsleiste
- •Object Organizer
- •Bildschirmteiler
- •Arbeitsbereich
- •Meldungsfenster
- •Statusleiste
- •Kontextmenü
- •Optionen
- •'Projekt''Optionen'
- •Optionen für Laden & Speichern
- •Optionen für Benutzerinformation
- •Optionen für Editor
- •Optionen für Arbeitsbereich
- •Optionen für Farben
- •Optionen für Verzeichnisse
- •Optionen für Logbuch'
- •Übersetzungsoptionen
- •Kennworte
- •Optionen für 'Sourcedownload'
- •Optionen für 'Symbolkonfiguration'
- •Optionen für 'Makros'
- •Projekte verwalten
- •'Datei' 'Neu'
- •'Datei' 'Öffnen'
- •'Datei' 'Schließen'
- •'Datei' 'Speichern'
- •'Datei' 'Speichern unter'
- •'Datei' 'Archiv speichern/versenden...'
- •'Datei' 'Drucken'
- •'Datei' 'Einstellungen Dokumentation'
- •'Datei' 'Beenden'
- •'Projekt' 'Übersetzen'
- •'Projekt' 'Alles übersetzen'
- •'Projekt' 'Alles bereinigen'
- •'Projekt' 'In andere Sprache übersetzen'
- •Übersetzungsdatei erstellen
- •Bearbeiten der Übersetzungsdatei
- •'Projekt' 'Dokumentieren'
- •'Projekt' 'Exportieren'
- •'Projekt' 'Importieren'
- •'Projekt' 'Kopieren'
- •'Projekt' 'Vergleichen'
- •Durchführung Projektvergleich
- •Darstellung des Vergleichsergebnisses
- •'Extras' 'Nächster Unterschied'
- •'Extras' 'Vorheriger Unterschied'
- •'Extras' 'Änderung übernehmen'
- •'Extras' 'Einzelne Änderung übernehmen'
- •'Extras' 'Eigenschaften übernehmen'
- •'Extras' 'Zugriffsrechte übernehmen'
- •'Projekt' 'Projektinformation'
- •'Projekt' 'Global Suchen'
- •'Projekt' 'Global Ersetzen'
- •'Projekt' 'Überprüfen'
- •Unbenutzte Variablen
- •Überlappende Speicherbereiche
- •Konkurrierender Zugriff
- •Mehrfaches Speichern auf Output
- •Arbeitsgruppen
- •'Projekt' 'Passwörter für Arbeitsgruppen'
- •Objekte verwalten
- •Objekt
- •Ordner
- •'Neuer Ordner'
- •'Knoten Expandieren' 'Knoten Kollabieren'
- •'Projekt' 'Objekt löschen'
- •'Projekt' 'Objekt einfügen'
- •'Projekt' 'Objekt umbenennen'
- •'Projekt' 'Objekt konvertieren'
- •'Projekt' 'Objekt kopieren'
- •'Projekt' 'Objekt bearbeiten'
- •'Projekt' 'Objekt Zugriffsrechte'
- •'Projekt' 'Objekt Eigenschaften'
- •'Projekt' 'Aktion hinzufügen'
- •'Projekt' 'Instanz öffnen'
- •'Projekt' 'Aufrufbaum ausgeben'
- •'Projekt' 'Querverweisliste ausgeben'
- •Allgemeine Editierfunktionen
- •Bearbeiten' 'Rückgängig'
- •'Bearbeiten' 'Wiederherstellen'
- •'Bearbeiten' 'Ausschneiden'
- •'Bearbeiten' 'Kopieren'
- •'Bearbeiten' 'Einfügen'
- •'Bearbeiten' 'Löschen'
- •'Bearbeiten' 'Suchen'
- •'Bearbeiten' 'Weitersuchen'
- •'Bearbeiten' 'Ersetzen'
- •'Bearbeiten' 'Eingabehilfe'
- •Strukturierte Darstellung
- •'Bearbeiten' 'Variablen Deklaration'
- •'Bearbeiten' 'Nächster Fehler'
- •'Bearbeiten' 'Vorheriger Fehler'
- •'Bearbeiten' 'Makros'
- •Allgemeine Online Funktionen
- •'Online' 'Einloggen'
- •Wenn sich das System meldet
- •'Online' 'Ausloggen'
- •'Online' 'Laden'
- •'Online' 'Start'
- •'Online' 'Stop'
- •'Online' 'Reset'
- •'Online' 'Breakpoint an/aus'
- •'Online' 'Einzelschritt über'
- •'Online' 'Einzelschritt in'
- •'Online' 'Einzelzyklus'
- •'Online' 'Werte schreiben'
- •'Online' 'Werte forcen'
- •'Online' 'Forcen aufheben'
- •'Online' 'Aufrufhierarchie'
- •'Online' 'Ablaufkontrolle'
- •'Online' 'Simulation'
- •'Online' 'Kommunikationsparameter'
- •Darstellung im Dialog 'Kommunikationsparameter'
- •Tips zum Editieren der Parameter im Kommunkationsparameter-Dialog:
- •Online' 'Quellcode laden'
- •'Online' 'Bootprojekt erzeugen'
- •'Online' 'Datei in Steuerung schreiben'
- •'Online' 'Datei aus Steuerung laden'
- •Logbuch
- •'Fenster' 'Logbuch'
- •Menü Logbuch
- •Fenster anordnen
- •'Fenster' 'Nebeneinander'
- •'Fenster' 'Untereinander'
- •'Fenster' 'Überlappend'
- •'Fenster' 'Symbole anordnen'
- •'Fenster' 'Alle Schließen'
- •'Fenster' 'Meldungen'
- •'Fenster' 'Bibliotheksverwaltung'
- •'Fenster' 'Logbuch'
- •Die rettende Hilfe
- •'Hilfe''Inhalt und Index'
- •Hilfe-Hauptfenster
- •Stichwort-Fenster
- •Kontextsensitive Hilfe
- •Die Editoren
- •Allgemeines zu den Editoren
- •Druckgrenzen
- •Kommentar
- •Zoom zu aufgerufenem Baustein
- •'Extras' 'Instanz öffnen'
- •Der Deklarationseditor
- •Deklarationsteil
- •Eingabevariablen
- •Ausgabevariablen
- •EinAusgabevariablen
- •Lokale Variablen
- •Remanente Variablen
- •Konstanten, Typed Literals
- •Externe Variablen
- •Schlüsselwörter
- •Variablendeklaration
- •AT-Deklaration
- •'Einfügen' 'Deklarations Schlüsselworte'
- •'Einfügen' 'Typen'
- •Syntaxcoloring
- •Kurzformmodus
- •Automatisch deklarieren
- •Zeilennummern im Deklarationseditor
- •Deklarationen als Tabelle
- •'Einfügen' 'Neue Deklaration'
- •Pragma-Anweisung
- •Deklarationseditoren im Online Modus
- •Die Texteditoren
- •'Einfügen''Operator' in Texteditoren
- •'Einfügen''Operand' in Texteditoren
- •'Einfügen''Funktion' in Texteditoren
- •'Einfügen''Funktionsblock' in Texteditoren
- •Bausteinaufruf mit Ausgangsparametern in Texteditoren
- •Die Texteditoren im Online Modus
- •'Extras' 'Monitoring Einstellungen'
- •Was passiert an einem Breakpoint?
- •Zeilennummern des Texteditors
- •Der Anweisungslisteneditor
- •AWL im Online Modus
- •Der Editor für Strukturierten Text
- •Die graphischen Editoren
- •Zoom
- •Netzwerk
- •Sprungmarken
- •Netzwerkkommentare,'Extras' 'Optionen'
- •Die Netzwerkeditoren im Online Modus
- •Der Funktionsplaneditor
- •Cursorpositionen im FUP
- •Wie man im FUP den Cursor setzt
- •'Einfügen' 'Zuweisung' im FUP
- •'Einfügen' 'Sprung' im FUP
- •'Einfügen' 'Return' im FUP
- •'Einfügen' 'Baustein' im FUP
- •'Einfügen' 'Eingang'
- •'Einfügen' 'Ausgang'
- •'Extras' 'Negation'
- •'Extras' 'Set/Reset'
- •Der Funktionsplan im Online Modus
- •Der Kontaktplaneditor
- •'Einfügen' 'Kontakt' im KOP
- •'Einfügen' 'Paralleler Kontakt' im KOP
- •'Einfügen' 'Funktionsblock im KOP'
- •'Einfügen' 'Spule' im KOP
- •'Einfügen' 'Baustein mit EN im KOP'
- •'Einfügen' 'Einfügen an Baustein' im KOP
- •'Einfügen' 'Sprung' im KOP
- •'Einfügen' 'Return' im KOP
- •'Extras' 'Dahinter Einfügen' im KOP
- •'Extras' 'Darunter Einfügen' im KOP
- •'Extras' 'Darüber Einfügen' im KOP
- •'Extras' 'Negation' im KOP
- •'Extras' 'Set/Reset' im KOP
- •Der Kontaktplan im Online Modus
- •Der Ablaufspracheneditor
- •Blöcke markieren im AS
- •'Einfügen' 'Sprung'
- •'Einfügen' 'Eingangsaktion hinzufügen'
- •'Einfügen' 'Ausgangsaktion hinzufügen'
- •'Extras' 'Marke zu Parallelzweig hinzufügen'
- •Sprungmarke löschen
- •'Extras' 'Einfügen danach'
- •'Extras' 'Zoom Aktion/Transition'
- •'Extras' 'Lösche Aktion/Transition'
- •'Extras' 'Schritt Attribute'
- •'Extras' 'Zeitenüberblick'
- •'Extras' 'Optionen'
- •'Extras' 'Aktion assoziieren'
- •Die Ablaufsprache im Online Modus
- •Der freigraphische Funktionsplaneditor
- •Cursorpositionen im CFC
- •'Einfügen' 'Baustein' im CFC
- •'Einfügen' 'Ausgang' im CFC
- •'Einfügen' 'Sprung' im CFC
- •'Einfügen' 'Marke' im CFC
- •'Einfügen' 'Return' im CFC
- •'Einfügen' 'Kommentar' im CFC
- •'Einfügen' 'Bausteineingang' im CFC
- •'Extras' 'Negieren' im CFC
- •'Extras' 'Set/Reset' im CFC
- •'Extras' 'EN/ENO' im CFC
- •'Extras' 'Eigenschaften...' im CFC
- •Elemente selektieren im CFC
- •Elemente verschieben im freigraphischen Funktionsplaneditor
- •Elemente kopieren im CFC
- •Verbindungen erstellen
- •Verbindungen löschen
- •Verbindungen ändern
- •'Extras' 'Verbindungsmarke'
- •Inputs/Outputs "On the fly" einfügen
- •Abarbeitungsreihenfolge
- •'Reihenfolge' 'Anzeigen'
- •'Extras' 'Reihenfolge' 'Topologisch anordnen'
- •'Extras' 'Reihenfolge' 'Eins vor'
- •'Extras' 'Reihenfolge' 'Eins zurück'
- •'Extras' 'Reihenfolge' 'An den Anfang'
- •'Extras' 'Reihenfolge' 'Ans Ende'
- •'Extras' 'Makro erzeugen'''
- •'Extras' 'In Makro springen''
- •'Extras' 'Makro expandieren''
- •Rückkopplungen
- •CFC im Online Modus'
- •'Extras' 'Zoom'
- •Übersicht Resourcen
- •Globale Variablen
- •Globale Variablen editieren
- •Mehrere Variablenlisten
- •Globale Variablen
- •Anlegen einer Globalen Variablenliste
- •Editieren der Listen für Globale Variablen
- •Globale Konstanten
- •Variablenkonfiguration
- •Beispiel Variablenkonfiguration
- •'Einfügen''Alle Instanzpfade'
- •Dokumentvorlage
- •PLC Browser
- •Steuerungskonfiguration
- •Steuerungsauswahl
- •Taskkonfiguration
- •Beispiel für eine Taskkonfiguration
- •Welche Task wird bearbeitet?
- •Arbeiten in der Taskkonfiguration
- •'Extras' 'Eigenschaften''
- •'Extras' 'Debug Task festlegen'
- •Traceaufzeichnung
- •'Extras' 'Tracekonfiguration'
- •'Extras' 'Trace starten'
- •'Extras' 'Trace lesen'
- •'Extras' 'Trace automatisch lesen'
- •'Extras' 'Trace stoppen'
- •Auswahl der darzustellenden Variablen
- •Darstellung der Traceaufzeichnung
- •'Extras' 'Cursor ausgeben'
- •'Extras' 'Mehrkanal'
- •'Extras' 'Koordinatennetz'
- •'Extras' 'Strecken'
- •'Extras' 'Komprimieren'
- •'Extras' 'Trace speichern'
- •'Extras' 'Trace laden'
- •Watch und Rezepturverwalter
- •'Einfügen' 'Neue Watchliste'
- •'Extras' 'Watchliste Umbenennen'
- •'Extras' 'Watchliste speichern'
- •'Extras' 'Watchliste laden'
- •'Extra' 'Monitoring aktiv'
- •'Extras' 'Rezeptur schreiben'
- •'Extras' 'Rezeptur lesen'
- •Werte forcen und schreiben im Watch Manager
- •Bibliotheksverwaltung
- •Bibliotheksverwalter
- •Bibliotheksverwalter nutzen
- •Standardbibliothek
- •Benutzerdefinierte Bibliotheken
- •'Einfügen' 'weitere Bibliothek'
- •Bibliothek entfernen
- •Visualisierung in WAGO-I/O-PRO 32
- •Visualisierung
- •Visualisierung erstellen
- •Visualisierungselemente einfügen
- •Visualisierungselemente einfügen
- •'Einfügen' 'Rechteck'
- •'Einfügen' 'Abgerundetes Rechteck'
- •'Einfügen' 'Ellipse'
- •'Einfügen' 'Polygon'
- •'Einfügen' 'Linie'
- •'Einfügen' 'Kurve'
- •'Einfügen' 'Bitmap'
- •'Einfügen' 'Visualisierung'
- •'Einfügen' 'Schaltfläche'
- •Arbeiten mit Visualisierungselementen
- •Visualisierungselemente selektieren
- •Ändern von Visualisierungselementen
- •Verschieben von Visualisierungselementen
- •Kopieren von Visualisierungselementen
- •Statusleiste in der Visualisierung
- •Visualisierungselemente konfigurieren
- •'Extras' 'Konfigurieren'
- •Platzhalter
- •'Extras' 'Platzhalterliste'
- •Form
- •Text
- •Linienstärke
- •Farben
- •Bewegung absolut
- •Bewegung relativ
- •Variablen
- •Eingabe
- •Tooltip
- •Bitmap
- •Visualisierung
- •Gruppierung von Elementen
- •Weitere Funktionen für Visualisierungselemente
- •'Extras' 'Nach vorn bringen'
- •'Extras' 'Nach hinten legen'
- •'Extras' 'Hintergrund Bitmap auswählen'
- •'Extras' 'Hintergrund Bitmap löschen'
- •'Extras' 'Ausrichten'
- •'Extras' 'Alles Markieren'
- •'Extras' 'Selektieren'
- •'Extras' 'Elementliste'
- •'Extras' 'Einstellungen'
- •Tastaturbedienung - im Online Modus
- •Datei Drucken im Online Modus
- •Visualisierungen in Bibliotheken
- •DDE Kommunikation mit WAGO-I/O-PRO 32
- •DDE Schnittstelle des WAGO-I/O-PRO 32 Programmiersystems
- •Aktivieren der DDE Schnittstelle
- •Allgemeines Ansprechen von Daten
- •Welche Variablen können gelesen werden?
- •Variablen Verknüpfen mit WORD
- •Variablen Verknüpfen mit EXCEL
- •Variablen Ansprechen mit Intouch
- •Tastaturbedienung
- •Bedienung
- •Tastenkombinationen
- •Die Datentypen
- •Datentypen
- •Standard Datentypen
- •BOOL
- •Ganzzahlige Datentypen
- •REAL
- •STRING
- •Zeitdatentypen
- •Definierte Datentypen
- •Array
- •Funktion Checkbounds
- •Pointer
- •Aufzählungstyp
- •Strukturen
- •Referenzen
- •Unterbereichstypen
- •Die IEC Operatoren
- •Die IEC Operatoren
- •Arithmetische Operatoren
- •INDEXOF
- •SIZEOF
- •Bitstring Operatoren
- •Bit-Shift Operatoren
- •Auswahloperatoren
- •LIMIT
- •Vergleichsoperatoren
- •Adreßoperatoren
- •Inhaltsoperator
- •Aufrufoperator
- •Typkonvertierungen
- •BOOL_TO-Konvertierungen
- •TO_BOOL-Konvertierungen
- •Konvertierungen zwischen ganzzahligen Zahlentypen
- •REAL_TO-Konvertierungen
- •STRING_TO-Konvertierungen
- •TRUNC
- •Numerische Operatoren
- •SQRT
- •ASIN
- •ACOS
- •ATAN
- •EXPT
- •Die Elemente der Standardbibliothek
- •String Funktionen
- •LEFT
- •RIGHT
- •CONCAT
- •INSERT
- •DELETE
- •REPLACE
- •FIND
- •Bistabile Funktionsblöcke
- •SEMA
- •Flankenerkennung
- •R_TRIG
- •F_TRIG
- •Zähler
- •CTUD
- •Timer
- •Die Bibliothek UTIL.LIB
- •BCD-Konvertierung
- •Bit-/Byte-Funktionen
- •EXTRACT
- •PACK
- •PUTBIT
- •UNPACK
- •Mathematische Hilfsfunktionen
- •DERIVATIVE
- •INTEGRAL
- •STATISTICS_INT
- •STATISTICS_REAL
- •VARIANCE
- •Regler
- •Signalgeneratoren
- •BLINK
- •Funktionsmanipulatoren
- •CHARCURVE
- •RAMP_INT
- •RAMP_REAL
- •Analogwertverarbeitung
- •HYSTERESIS
- •LIMITALARM
WAGO-I/O-PRO 32 V2.2 Übersicht |
• 25 |
Die Sprachen |
|
|
|
ADD 3
ST Erg
Hier ist der Wert von Erg 7. Wenn man aber Klammern setzt:
LD 2
MUL (2
ADD 3
)
ST Erg
Hier ergibt sich als Wert für Erg 10, denn die Operation MUL wird erst ausgewertet, wenn man auf ")" trifft; als Operand für MUL errechnet sich dann 5.
2.4.2Strukturierter Text (ST)
Der Strukturierte Text besteht aus einer Reihe von Anweisungen, die wie in Hochsprachen bedingt ("IF..THEN..ELSE) oder in Schleifen (WHILE..DO) ausgeführt werden können.
Beispiel:
IF value < 7 THEN
WHILE value < 8 DO
value := value + 1;
END_WHILE;
END_IF;
2.4.2.1Ausdrücke
Ein Ausdruck ist ein Konstrukt, das nach seiner Auswertung einen Wert zurückliefert.
Ausdrücke sind zusammengesetzt aus Operatoren und Operanden. Ein Operand kann eine Konstante, eine Variable, ein Funktionsaufruf oder ein weiterer Ausdruck sein.
2.4.2.2Auswertung von Ausdrücken
Die Auswertung eines Ausdrucks erfolgt durch Abarbeitung der Operatoren nach bestimmten Bindungsregeln. Der Operator mit der stärksten Bindung wird zuerst abgearbeitet, dann der Operator mit der nächststärkeren Bindung, usw., bis alle Operatoren abgearbeitet sind.
WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32
26• WAGO-I/O-PRO 32 V2.2 Übersicht
Die Sprachen
Operatoren mit gleicher Bindungsstärke werden von links nach rechts abgearbeitet.
Nachfolgend finden Sie eine Tabelle der ST-Operatoren in der Ordnung ihrer Bindungsstärke:
Operation |
Symbol |
Bindungsstärke |
Einklammern |
(Ausdruck) |
Stärkste Bindung |
|
|
|
Funktionsaufruf |
Funktionsname |
|
|
(Parameterliste) |
|
|
|
|
Potenzieren |
EXPT |
|
|
|
|
Negieren |
- |
|
Komplementbildung |
NOT |
|
|
|
|
|
|
|
Multiplizieren |
* |
|
Dividieren |
/ |
|
Modulo |
MOD |
|
|
|
|
Addieren |
+ |
|
Subtrahieren |
- |
|
|
|
|
|
|
|
Vergleiche |
<,>,<=,>= |
|
|
|
|
Gleichheit |
= |
|
Ungleichheit |
<> |
|
|
|
|
Bool AND |
AND |
|
|
|
|
Bool XOR |
XOR |
|
|
|
|
Bool OR |
OR |
Schwächste Bindung |
|
|
|
Die folgende Tabelle zeigt tabellarisch geordnet die möglichen Anweisungen in ST und je ein Beispiel:
Anweisungsart |
Beispiel |
Zuweisung |
A:=B; CV := CV + 1; C:=SIN(X); |
|
|
Aufruf eines Funktionsblocks und |
CMD_TMR(IN := %IX5, PT := 300); |
Benutzung der FB-Ausgabe |
A:=CMD_TMR.Q |
|
|
|
|
RETURN |
RETURN; |
|
|
IF |
D:=B*B; |
|
IF D<0.0 THEN |
|
C:=A; |
|
ELSIF D=0.0 THEN |
|
C:=B; |
|
ELSE |
|
C:=D; |
|
END_IF; |
|
|
WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32
WAGO-I/O-PRO 32 V2.2 Übersicht • 27
|
|
|
Die Sprachen |
|
|
|
|
|
|
|
Anweisungsart |
Beispiel |
|
|
|
CASE |
CASE INT1 OF |
|
|
|
|
1: |
BOOL1 := TRUE; |
|
|
|
2: |
BOOL2 := TRUE; |
|
|
|
ELSE |
|
|
|
|
|
BOOL1 := FALSE; |
|
|
|
|
BOOL2 := FALSE; |
|
|
|
END_CASE; |
|
|
|
|
|
|
|
|
FOR |
J:=101; |
|
|
|
|
FOR I:=1 TO 100 BY 2 DO |
|
|
|
|
IF ARR[I] = 70 THEN |
|
|
|
|
J:=I; |
|
|
|
|
EXIT; |
|
|
|
|
END_IF; |
|
|
|
|
END_FOR; |
|
|
|
|
|
|
|
|
WHILE |
J:=1; |
|
|
|
|
WHILE J<= 100 AND ARR[J] <> 70 DO |
|
|
|
|
J:=J+2; |
|
|
|
|
END_WHILE; |
|
|
|
|
|
|
|
|
REPEAT |
J:=-1; |
|
|
|
|
REPEAT |
|
|
|
|
J:=J+2; |
|
|
|
|
UNTIL J= 101 OR ARR[J] = 70 |
|
|
|
|
END_REPEAT; |
|
|
|
|
|
|
|
|
EXIT |
EXIT; |
|
|
|
|
|
|
|
|
Leere Anweisung |
; |
|
|
|
|
|
|
|
|
|
|
|
|
2.4.2.3Zuweisungsoperator
Auf der linken Seite einer Zuweisung steht ein Operand (Variable, Adresse), dem der Wert des Ausdrucks auf der rechten Seite zugewiesen wird mit dem Zuweisungsoperator :=
Beispiel:
Var1 := Var2 * 10;
Nach Ausführung dieser Zeile hat Var1 den zehnfachen Wert von Var2.
WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32
28• WAGO-I/O-PRO 32 V2.2 Übersicht
Die Sprachen
2.4.2.4Aufruf von Funktionsblöcken in ST
Ein Funktionsblock in ST wird aufgerufen, indem man den Namen der Instanz des Funktionsblocks schreibt und anschließend in Klammer die gewünschten Werte den Parametern zuweist. Im folgenden Beispiel wird ein Timer aufgerufen mit Zuweisungen für dessen Parameter IN und PT. Anschließend wird die Ergebnisvariable Q an die Variable A zugewiesen.
Die Ergebnisvariable wird wie in AWL mit dem Namen des Funktionsblocks, einem anschließenden Punkt und dem Namen der Variablen angesprochen:
CMD_TMR(IN := %IX5, PT := 300);
A:=CMD_TMR.Q
2.4.2.5RETURN-Anweisung
Die RETURN-Anweisung kann man verwenden, um einen Baustein zu verlassen, beispielsweise abhängig von einer Bedingung.
2.4.2.6IF-Anweisung
Mit der IF-Anweisung kann man eine Bedingung abprüfen und abhängig von dieser Bedingung ein Anweisungen ausführen.
Syntax:
IF <Boolscher_Ausdruck1> THEN
<IF_Anweisungen>
{ELSIF <Boolscher_Ausdruck2> THEN
<ELSIF_Anweisungen1>
.
.
ELSIF <Boolscher_Ausdruck n> THEN
<ELSIF_Anweisungen n-1>
ELSE
<ELSE_Anweisungen>} END_IF;
Der Teil in geschweiften Klammern {} ist optional.
Wenn <Boolscher_Ausdruck1> TRUE ergibt, dann werden nur die <IF_Anweisungen> ausgeführt und keine der weiteren Anweisungen.
WAGO-I/O-SYSTEM 759 WAGO-I/O-PRO 32
