282
Handbuch zur Programmentwicklung

Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Handbuch zurProgrammentwicklung

Page 2: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Handbuch zur Programmentwicklung mit ecolog 100plus Stand September 2001

Hinweis zur Gewährleistung

Dieses Handbuch wurde unter Beachtung der größtmöglichen Sorgfalt erstellt. Gleichwohl kannkeine Garantie für die Richtigkeit des Inhalts übernommen werden.

Da sich Fehler trotz intensiver Bemühungen nie vollständig vermeiden lassen, sind wir für Hinweisejederzeit dankbar.

Im übrigen behalten wir uns technische Änderungen der Produkte vor, so daß sich auch soweitAbweichungen vom Inhalt des Handbuches ergeben können.

Page 3: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

I

Was in dieser Anleitung steht

1. Was Sie wissen sollten ...........................................................1-1

1.1. Benötigte Vorkenntnisse........................................................................ 1-1

1.2. Aufbau der Anleitung ............................................................................. 1-1

So finden Sie sich zurecht ........................................................................ 1-1

1.3. Das erwartet Sie...................................................................................... 1-3

Überblick................................................................................................... 1-3

Zum Inhalt dieser Anleitung ...................................................................... 1-3

2. Die ersten Schritte mit ecolog 100 PLUS..................................2-1

2.1. ecolog 100 Plus — Grundbegriffe und Konzepte ................................... 2-1

3. Was ist was in ecolog 100 PLUS? .............................................3-1

3.1. Die Norm IEC 61131-3............................................................................. 3-1

3.2. Welche Bestandteile hat ein Projekt? ................................................... 3-1

3.3. Welche Sprachen sind in ecolog 100 PLUS verfügbar? ......................... 3-5

Funktionsplan (FUP) ................................................................................. 3-5

Kontaktplan (KOP) .................................................................................... 3-7

Anweisungsliste (AWL) ........................................................................... 3-10

Strukturierter Text (ST)............................................................................ 3-12

Ablaufsprache (AS)................................................................................. 3-13

3.4. Onlinefunktionalitäten.......................................................................... 3-15

Page 4: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Handbuch ecolog 100 plusII

4. Die Software ecolog 100 PLUS .................................................. 4-1

4.1. Die ecolog 100 PLUS-Komponenten im Einzelnen.................................. 4-2

Das Hauptfenster ...................................................................................... 4-2

Optionen ................................................................................................... 4-6

Projekte verwalten .................................................................................. 4-16

Steuerungskonfiguration ......................................................................... 4-27

Objekte anlegen, löschen etc.................................................................. 4-29

Allgemeine Editierfunktionen................................................................... 4-36

Allgemeine Onlinefunktionen .................................................................. 4-41

Fenster anordnen.................................................................................... 4-47

Die rettende Hilfe .................................................................................... 4-48

4.2. Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg ............................... 4-52

4.3. Übersicht Tastaturbefehle .................................................................... 4-75

5. Das kleine Programmierhandbuch........................................ 5-1

5.1. Die Editoren in ecolog 100 Plus ............................................................... 5-1

Der Deklarationseditor .............................................................................. 5-2

Die Texteditoren ........................................................................................ 5-8

Die graphischen Editoren........................................................................ 5-12

5.2. Visualisieren mit ecolog 100 PLUS......................................................... 5-35

Arbeiten mit Visualisierungselementen ................................................... 5-37

Visualisierungselemente konfigurieren.................................................... 5-39

Weitere Funktionen für Visualisierungselemente .................................... 5-47

5.3. Die Ressourcen..................................................................................... 5-52

Überblick über die Ressourcen............................................................... 5-52

Globale Variablen.................................................................................... 5-52

Steuerungskonfiguration ......................................................................... 5-53

Traceaufzeichnung.................................................................................. 5-53

Watch- und Rezepturverwalter................................................................ 5-60

Page 5: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

III

5.4. Ergänzende Hinweise zu den Sprachen.............................................. 5-63

Anweisungsliste (AWL) ........................................................................... 5-63

Strukturierter Text (ST)............................................................................ 5-66

Ablaufsprache (AS)................................................................................. 5-75

5.5. Die Operatoren in ecolog 100 PLUS ....................................................... 5-80

Arithmetische Operatoren....................................................................... 5-80

Bitstring Operatoren................................................................................ 5-83

Bit-Shift Operatoren ................................................................................ 5-86

Auswahloperatoren................................................................................. 5-88

Vergleichsoperatoren.............................................................................. 5-91

Adreßoperator ADR ................................................................................ 5-94

Aufrufoperator CAL................................................................................. 5-95

Kopieroperator MOVE............................................................................. 5-95

Numerische Operatoren.......................................................................... 5-96

5.6. Die Elemente der Bibliothek Standard.lib......................................... 5-103

Typenkonversionsfunktionen und Typen............................................... 5-103

Bistabile Funktionsblöcke ..................................................................... 5-105

Flankenerkennung ................................................................................ 5-106

Zähler ................................................................................................... 5-107

Timer..................................................................................................... 5-108

String Funktionen...................................................................................5-110

5.7. Die Elemente der Bibliothek Util_ifmx.Lib .........................................5-117

BCD-Konvertierung................................................................................5-117

Bit-/Byte Funktionen ..............................................................................5-118

Mathematische Hilfsfunktionen..............................................................5-119

Regler ................................................................................................... 5-121

Signalgeneratoren ................................................................................ 5-125

Funktionsmanipulatoren ....................................................................... 5-127

Analogwertverarbeitung........................................................................ 5-130

Page 6: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Handbuch ecolog 100 plusIV

5.8. Funktionen, Programme und Funktions-Blöcke .............................. 5-132

Funktionen ............................................................................................ 5-132

Programme ........................................................................................... 5-134

Funktions-Blöcke .................................................................................. 5-136

5.9. Arrays und Strukturen........................................................................ 5-139

Arrays.................................................................................................... 5-139

Strukturen.............................................................................................. 5-141

5.10. Übersetzungsfehler............................................................................. 5-142

6. Anhang .................................................................................... 157

6.1. Glossar.................................................................................................... 157

6.2. Stichwortverzeichnis ............................................................................. 162

Page 7: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

1-1

1. Was Sie wissen sollten

Wenn Sie dieses Handbuch in der empfohlenen Art verwenden, werden Sie IhrZiel, – eine effektive Anwendung von Steuerungssystem und Programmier-system ecolog 100 PLUS –, schnell erreichen können.

In diesem Kapitel wird Ihnen ein Überblick über folgende Punkte gegeben:

• Welche Vorkenntnisse sind notwendig, um mit dieser Anleitung arbeiten zukönnen?

• Wie ist diese Anleitung aufgebaut?

• Wie finden Sie sich in der Anleitung zurecht?

• Welche Informationen Sie in dieser Anleitung finden.

1.1. Benötigte Vorkenntnisse

Diese Anleitung richtet sich an Personen, die über Kenntnisse der Steuerungs-technik, und SPS-Programmierkenntnisse in mindestens einer der folgendenProgrammiersprachen verfügen.

• Kontaktplan

• Anweisungsliste

• Funktionsplan

• Ablaufsprache oder

• Strukturierter Text

1.2. Aufbau der Anleitung

Dieses Handbuch ist eine Kombination aus verschiedenen Anleitungstypen. Sieist eine Lernanleitung für den Einsteiger in das ecolog 100 PLUS, aber gleichzeitigauch eine Nachschlageanleitung für den versierten Programmierer.

So finden Sie sich zurecht

Um Ihnen die Arbeit mit diesem Handbuch etwas einfacher zu machen, habenwir einige Hilfen für Sie eingebaut.

Um gezielt zu einem bestimmten Thema zu gelangen, benutzen Sie bitte dasInhaltsverzeichnis dieses Handbuchs.

Mit dem Stichwortverzeichnis gelangen Sie ebenfalls schnell zu einemgesuchten Begriff.

Am Anfang eines Kapitels geben wir Ihnen eine kurze Übersicht über den Inhaltdes Kapitels.

Page 8: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Aufbau der Anleitung

1-2

Kopfzeilen In der Kopfzeile jeder rechten Seite finden Sie den Titel des aktuellen Kapitels.Auf jeder linken Seite steht die aktuelle Überschrift der 2. Ordnung.

Fußzeilen In der Fußzeile jeder Seite finden Sie die kapitelbezogene Seitenzahl.

selektives Lesen In der Randspalte finden Sie Anmerkungen, die Ihnen das Finden bestimmterAbschnitte erleichtern.

Dort finden Sie auch Piktogramme und Markierungen, deren Bedeutungnachfolgend erläutert werden soll.

Der Doktorhut Abschnitte, die mit diesem Piktogramm gekennzeichnet sind, vermittelngrundlegendes Wissen über den Umgang mit dem ecolog 100 PLUS. In diesenLernabschnitten wird z. B. die Bedienung der Softwareoberfläche erläutert.

Der Hinweispfeil

Hier werden Ihnen wichtige Hinweise gegeben, die Ihnen beim richtigenUmgang mit dem ecolog 100 PLUS helfen sollen.

Steuerschrank Abschnitte, die mit diesem Piktogramm gekennzeichnet wurden, sindsteuerungsabhängig.

Der graueBalken

Abschnitte, die mit dem nebenstehenden Balken gekennzeichnet wurden, sindProgrammtexte.

Page 9: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Was Sie wissen sollten

1-3

1.3. Das erwartet Sie

Dieses Handbuch beschreibt die Version 2.1 der Programmiersoftwareecolog 100 Plus. Innerhalb dieser Anleitung kurz ecolog genannt.

Überblick

Was ist ecolog? Ecolog ist die Systemsoftware für das Steuerungssystem R360 von ifmelectronic.Die Systemsoftware bietet einen optimalen Zugriff auf dieseFunktionen.

Programmierung Sie lernen in diesem Handbuch die verschiedenen Programmiersprachenkennen bezüglich

• Sprachtyp

• Sprachsyntax

• und Sprachumfang.

Bedienung derSoftware

In einfachen Beispielen erlernen Sie die Handhabung der Software mit

• Menüstruktur

• Projektaufbau

• Programmtest

• Funktionstasten usw.

Bedienung derHardware

Die Grundlagen des Steuerungssystems R360, sowie dessen Aufbau werdenim separaten Gerätehandbuch beschrieben.

Zum Inhalt dieser Anleitung

Zur Orientierung wird der Inhalt des Handbuches nun kurz diskutiert.

ecolog In Kapitel 2 werden die Grundbegriffe und Konzepte von ecolog zusammen-gefaßt. Es wird Ihnen ein Überblick gegeben über

• den Aufbau

• die Funktionalität

• und die Eigenschaften

der ecolog-Software. Wenn Sie ecolog schon von einer früheren Version herkennen, können Sie dieses Kapitel „kurz überfliegen“. Wenn ecolog etwasNeues für Sie ist, sollten Sie dieses Kapitel genauer durchlesen.

Die Bestandteilevon ecolog

In Kapitel 3 erfahren Sie, mit welche Bestandteilen ecolog arbeitet. Sieerfahren z. B. wie ein Projekt aufgebaut ist. Außerdem werden Ihnen die inecolog zur Verfügung stehenden Sprachen hinsichtlich Aufbau und Sprach-syntax näher gebracht.

Page 10: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das erwartet Sie

1-4

Die Software Wer sich nur wenig unter den Begriff ecolog vorstellen kann, wird dies durchdie Lektüre von Kapitel 4 ändern können. Zuerst erfahren Sie, wie Sie ecologinstallieren. Dann wird Ihnen ein Überblick über die einzelnen Komponenten derSoftware gegeben. Weiterhin werden Ihnen die einzelnen Menüfunktionenerläutert. Zum Schluß dieses Kapitels erstellen Sie Ihr erstes Programm undlernen dabei die Handhabung von ecolog.

DasProgrammier-handbuch

In Kapitel 5 werden die Funktionen von ecolog erläutert, die für dieProgrammierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wieSie mit ecolog Ihre Steuerung visualisieren können.

Bibliotheken Die in ecolog enthaltenen Bibliotheken werden in Kapitel 6 vorgestellt.

Anhang Im Anhang dieser Anleitung finden Sie ein Glossar. Wir haben hier für SieFachbegiffe aufgeführt und erläutert. Außerdem finden Sie im Anhang denIndex. Hier können Sie nachschlagen, um schnell und gezielt Informationen zueinem bestimmten Begriff innerhalb dieser Anleitung zu finden.

In eigener Sache Durch den großen Umfang des Handbuchs sind Fehler natürlich nichtauszuschließen. Darum brauchen wir Ihre Hilfe. Wir bitten Sie, uns mitzuteilen,wenn Sie Fehler entdeckt oder Verbesserungsvorschläge haben. Damitermöglichen Sie uns, unsere Handbücher im Interesse der Anwender weiter zuverbessern. Sie erreichen uns über die Steuerungsmitarbeiter derifm electronic gmbh oder der Auslandsniederlassungen.

Die Version 2.1 Die Version 2.1 der Programmiersoftware ecolog verfügt gegenüber ihrerVorgängerversion über einige Ergänzungen, die wir hier kurz auflisten wollen. Indiesem Handbuch finden Sie dann an entsprechender Stelle eine detaillierteBeschreibung dieser Ergänzungen.

Überarbeitete Programmoberfläche

• Neue Objekt-Verwaltung durch den Object Organizer

• Flexibleres Arbeiten durch Kontextmenüs

• Statuszeile

• Überarbeitete Auswahldialoge

• Neu gestaltete Menüoberflächen

• Mehrstufiges Rückgängig machen./.Wiederherstellen von Arbeitsschritten

• Anzeige von Tooltips

Spracheigenschaften

• Aliastypen

• Aufzählungstypen

• Pointertypen

• Alle Typkonvertierungen

• Neue polymorphe Operatoren

Page 11: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Was Sie wissen sollten

1-5

Visualisierung

• Einfüge-/Selektiermodus

• Elemente-Dialog

• Schriftarten einstellbar

• Transparente Farbe für Elemente

• Werkzeugleiste

• Linien und Bezier-Kurven als Visualisierungselemente

• Tooltip für Elemente

Überarbeitete AS

• AS-Übersichtsmodus

• Entry/Exit-Action bei Standardschritten

• Monitoring und Forcen von Transitionen

• Normkonforme AS Schritte

• Der Tooltip zeigt jetzt Online wie Offline den Namen des Schritts, bzw derTransition an. Zusätzlich wird der Kommentar bzw. die Zeiteinstellungangezeigt.

• Init-Step ist jetzt als IEC-Schritt möglich, wenn die Option „IEC-Schritteverwenden“ angewählt wurde und ein neuer SFC-Baustein eingefügt wird.

• Bei der Ausführung von Aktionen werden die im aktuellen Zyklusdeaktivierten Aktionen vor den aktiven Aktionen ausgeführt.

• Für Zeitgrenzen können jetzt auch Variablen benutzt werden.

• Monitoring funktioniert jetzt auch im Zoom-Modus

• Im Dialog Optionen einstellbare Kommentarbreite

Überarbeitete Trace Funktionalität

• Analoger Trigger

• Anzeige von Differenzen (zweiter Cursor)

• Koordinatennetz

Kommunikations-DLL

• Funktionales API

• OPC

Page 12: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das erwartet Sie

1-6

Überarbeiteter FUP/KOP

• Syntax coloring in FUP, KOP und AS

• Autoformatierung in FUP, KOP und AS

• Darstellung von Bitmaps in Funktionsblöcken

• Automatische Anpassung des Netzwerks beim Editieren von Texten

Import von Variablenlisten

• Beim Neuanlegen einer globalen Variablenliste kann eine Text-Datei odereine DCF-Datei angegeben werden in der die Variablen stehen

• DCF-Dateien werden in IEC-Syntax umgewandelt

• Bei jedem Öffnen und jedem Übersetzen werden die Dateien neueingelesen.

Sonstiges

• Automatische Deklaration auf Anforderung

• Optionen für OPC/Comm-DLL

• Statuszeilenfeld für den Überschreibmodus

• Anzahl der Fenster ist unbeschränkt

• Konvertierung nach KOP

• Paßwortschutz für einzelne Objekte

Natürlich haben wir auch alle bisher bekannten Fehler behoben. Außerdemwurden einige Detailverbesserungen eingeführt.

In diesem Sinne wünschen wir Ihnen viel Spaß und viel Erfolg mitecolog 100 PLUS.

Page 13: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

2-1

2. Die ersten Schritte mit ecolog 100 PLUS

In diesem Kapitel bekommen Sie einen Überblick über:

• den Aufbau

• die Funktionalität und

• die Eigenschaften

der ecolog-Software.

2.1. ecolog 100 Plus — Grundbegriffe und Konzepte

Was ist ecolog? Ecolog ist eine komplette Entwicklungsumgebung für das SteuerungssystemR 360.

Ecolog ist ein einfach zu beherrschendes Werkzeug zur Erstellung vonSteuerungsprogrammen nach IEC-61131-3.

Was istIEC-61131-3?

IEC-61131-3 ist ein internationaler Standard für die Programmierung vonSteuerungsprogrammen. Hierbei ist es wichtig zu wissen, daß ausschließlichdie Programmiersprache standardisiert wurde, nicht die Programmieroberfläche(Fensteraufbau, Darstellung von Werten im Online-Betrieb, Datenspeicherungusw.). Die Programmiersprachen von ecolog entsprechen diesem Standard.

Was ist einProjekt?

In ecolog ist ein Projekt die Zusammenfassung von Komponenten. DieseKomponenten lösen eine gegebene Steuerungsaufgabe z. B.

• Ablaufsteuerung eines Gerätes

• Signalvorverarbeitung für einen Anlagenteil

WelcheHauptkompo-nenten enthältein ecologProjekt?

Die Hauptkomponenten eines ecolog Projektes sind:

• Bausteine (ausführbares Programm)

• Daten (Bits, Words usw.)

• Visualisierungen.

WelcheProgrammier-sprachen sindverfügbar?

Ecolog unterstützt die Programmiersprachen:

• KOP (Kontaktplan)

• AWL (Anweisungsliste)

• FUP (Funktionsplan

• AS (Ablaufsprache)

• ST (strukturierter Text)

Page 14: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

ecolog 100 Plus — Grundbegriffe und Konzepte

2-2

Wie wird einProjekt definiert?

Die Definition eines Projektes umfasst:

• Die R 360 Konfiguration

– Ein-/Ausgangsfestlegungen

• Die Erstellung der Komponenten

– Bausteine

– Daten

– Visualisierungen

Wie teste ichmein Projekt?

Der wahre Test eines Projektes ist sicherlich nur die Inbetriebnahme dereigentlichen Anlage. Andererseits hat sich der Simulationsmodus von ecologals eine sehr wertvolle Möglichkeit der Projekt-Überprüfung herausgestellt.

Was ist derSimulations-modus?

Der Simulationsmodus bildet den Programmablauf des Controllers im PC nach.Mit einer derartigen Überprüfungsmöglichkeit ohne Steuerungssystem undohne Anlage können Fehler bereits im Büro entdeckt und berichtigt werden.Dies spart Zeit und Nerven. Dieser Effekt kann noch gesteigert werden, wenndie simulierte Anlage durch entsprechende Visualisierungsbilder dargestelltwird.

Die Nutzung der Simulation in Verbindung mit den vielseitigen Debug-Funktionen (Fehlersuche-Funktionen) in ecolog, erlaubt es Ihnen einenkompletten Programmtest einfach und wirkungsvoll durchzuführen.

Hardware spezifische Funktionen, können im Simulationsmodus nichtgetestet werden!

Welche Debug-Funktionen hatecolog?

Die in ecolog realisierten Debug-Funktionen sind:

• Forcen (schreiben) von E/A’s und Variablen

• Definition eines Watch-Fensters zur Datendarstellung

• Setzen von Breakpoints im Simulationsmodus (Stoppen des Programmab-laufes)

• Abarbeitung von Programmen

– als Einzelzyklus

– von Breakpoint zu Breakpoint im Simulationsmodus!

• Sampling Trace (Diagramm von Variablen als Funktion der Zeit)

Und dieDokumentation?

Das gesamte Projekt kann zu jedem Zeitpunkt komplett oder auch teilweisedokumentiert oder auch in eine Textdatei exportiert werden.

Page 15: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

3-1

3. Was ist was in ecolog 100 PLUS?

In diesem Kapitel erfahren Sie

• was die IEC 61131-3 Norm ist

• aus welchen Bestandteilen ein Projekt in ecolog besteht

• welche Programmiersprachen Ihnen zur Verfügung stehen

• welche Onlinefunktionalitäten es in ecolog gibt.

3.1. Die Norm IEC 61131-3

Die Norm IEC 61131-3 ist ein internationaler Standard für Programmier-sprachen für speicherprogrammierbare Steuerungen.

Die in ecolog realisierten Programmiersprachen sind konform zu denAnforderungen der Norm.

Die Abarbeitung eines ecolog-Projekts beginnt mit dem speziellen BausteinPLC_PRG. Der Baustein PLC_PRG kann andere Bausteine aufrufen.

3.2. Welche Bestandteile hat ein Projekt?

Projekt Ein Projekt beinhaltet alle Objekte eines Steuerungsprogramms. Es wird ineiner Datei mit dem Namen des Projekts gespeichert. Ein Projekt in ecolog istfolgendermaßen aufgebaut.

Ecolog Projekt

Bausteine Datentypen Visualisierungen

• PLC_PRG

• Operatoren

• Programme

• Funktionen

• Funktionsblöcke

• Variablen (BOOL, WORD,INT, TIME)

• Arrays

• Strukturen

Baustein PLC_PRG, Operatoren, Programme, Funktionen und Funktionsblöcke sindBausteine. Wobei PLC-PRG eine Sonderstellung einnimmt.

PLC_PRG Der PLC_PRG ist ein spezieller vordefinierter Baustein. Jedes Projekt mußdieses spezielle Programm beinhalten. Dieser Baustein wird pro Steuerungs-zyklus genau einmal aufgerufen.

Page 16: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Welche Bestandteile hat ein Projekt?

3-2

Wenn zum ersten Mal, nachdem ein neues Projekt geschaffen wurde, 'Projekt''Objekt einfügen' ausgeführt wird, ist die Vorbelegung im Baustein-Dialog einBaustein mit dem Namen PLC_PRG vom Typ Programm. Sie sollten dieseVorbelegung nicht ändern!

Löschen Sie den Baustein PLC_PRG nicht und benennen Sie ihn auch nichtum.

Jeder Baustein besteht aus einem Deklarationsteil und einem Rumpf. DerRumpf ist in einer der IEC-Programmiersprachen AWL, ST, AS, FUP oder KOPgeschrieben.

ecolog unterstützt nahezu alle IEC-Standardbausteine. Wenn Sie dieseBausteine in Ihrem Projekt benutzen wollen, müssen Sie die BibliothekStandard.lib in Ihr Projekt einbinden. Bausteine können andere Bausteineaufrufen. Rekursionen sind jedoch nicht erlaubt.

Operator Ein Operator ist ein Baustein, der andere Bausteine auf bestimmte Art undWeise miteinander verknüpft. Die Operatoren sind dem Programmiersystembekannt und müssen nicht wie z. B. Funktionen an das Projekt gelinkt werden.

Programm Ein Programm ist ein Baustein, der zur Strukturierung der gestellten Aufgabebenutzt wird. Als Beispiel hierfür könnte man eine Maschinensteuerungnehmen. Am Schaltpult kann zwischen Hand-, Tipp- oder Automatikbetriebgewählt werden. Abhängig vom Betriebsmodus wird das Programm einmal proZyklus aufgerufen.

Programme sind global im gesamten Projekt bekannt. Alle Werte bleiben voneiner Ausführung des Programms bis zur nächsten erhalten.

Beispiel für ein Programm

Funktion Eine Funktion ist ein Baustein, der bei der Ausführung genau ein Datenelement(das auch mehrelementig sein kann, wie z. B. Arrays oder Strukturen) liefert.Zur Verdeutlichung nehmen Sie die Funktion sin 90°. Das Ergebnis dieserFunktion liefert den Wert 1.

Page 17: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Was ist was in ecolog 100 PLUS?

3-3

Bei der Deklaration einer Funktion ist darauf zu achten, daß die Funktion einenTyp erhalten muß. Das heißt, nach dem Funktionsnamen muß ein Doppelpunktgefolgt von einem Typ eingegeben werden.

Eine korrekte Funktionsdeklaration sieht z. B. so aus:

FUNCTION Fct: INT

Außerdem muß der Funktion ein Ergebnis zugewiesen werden. Das heißt, derFunktionsname wird wie eine Ausgabevariable benutzt.

Eine Funktionsdeklaration beginnt mit dem Schlüsselwort FUNCTION undendet mit END_FUNCTION

Funktionsblock Ein Funktionsblock ist ein Baustein, der nicht nur einen Rückgabewert wie beieiner Funktion liefert. Er liefert bei der Ausführung einen oder mehrere Werte.In einem Funktionsblock können mehrere Funktionen zusammengefaßtwerden.

Eine Funktionsblockdeklaration beginnt mit dem SchlüsselwortFUNCTION_BLOCK und endet mit END_FUNCTION_BLOCK.

Beispiel in AWL für einen Funktionsblock mit zwei Eingabevariablen und zweiAusgabevariablen. Eine Ausgabe ist das Produkt der beiden Eingaben, dieandere ein Vergleich auf Gleichheit:

Beispiel für einen Funktionsblock

Instanzen vonFunktions-blöcken

Kopien von Funktionsblöcken werden als Instanzen bezeichnet. DieseInstanzen können mehrfach in einem Projekt verwendet werden.

Jede Instanz besitzt einen Namen (den Instanznamen), und eine Datenstruktur,die ihre Eingaben, Ausgaben und internen Variablen beinhaltet. Instanzenwerden wie Variablen lokal oder global deklariert, indem als Typ einesBezeichners der Name des Funktionsblocks angegeben wird.

Page 18: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Welche Bestandteile hat ein Projekt?

3-4

Beispiel für eine Instanz mit Namen PUMPE11 des FunktionsblocksPumpensteuerung:

PUMPE11: Pumpensteuerung;

Aufrufe von Funktionsblöcken geschehen stets über die oben beschriebenenInstanzen.

Nur auf die Ein- und Ausgabeparameter kann von außerhalb einer Instanzeines Funktionsblocks zugegriffen werden, d. h. die internen Variablen desFunktionsblocks bleiben für den Benutzer des Funktionsblocks unsichtbar.

Datentypen Datentypen sind im Projekt für die Datenorganisation zuständig. Neben denStandarddatentypen können vom Benutzer eigene Datentypen definiert werden.Strukturen, Aufzählungstypen und Referenzen können angelegt werden.

Variablen Als Variablen können benutzt werden BOOL, WORD, INT, DWORD, DINT undTIME.

Arrays Arrays sind komplexe Variablen, die durch ein Index addressiert werden. (vergl.Felder)

Strukturen Strukturen sind komplexe Variablen, die mit Records vergleichbar sind.

Visualisierung Ecolog stellt Ihnen zur Veranschaulichung Ihrer Projektvariablen dieMöglichkeit einer Visualisierung zur Verfügung. Mit Hilfe der Visualisierung kannman Offline geometrische Elemente zeichnen. Diese können dann Online ihreForm oder Farbe verändern, in Abhängigkeit von bestimmten Variablenwerten.

Weitere Inhalte eines Projekts, die genutzt werden können aber nicht müssensind:

Ressourcen Die Ressourcen benötigen Sie zum Konfigurieren und Organisieren IhresProjekts und zur Verfolgung von Variablenwerten:

• Globale Variablen, die im ganzen Projekt verwendet werden können

• Steuerungskonfiguration zum Konfigurieren Ihrer Hardware

• Taskkonfiguration zur Steuerung Ihres Programms über Tasks

• Traceaufzeichnung zur grafischen Aufzeichnung von Variablenwerten

• Watch- und Rezepturverwalter zum Anzeigen und Vorbelegen vonVariablenwerten

Bibliotheken Sie können in Ihr Projekt eine Reihe von Bibliotheken einbinden, derenBausteine, Datentypen und globale Variablen Sie genauso benutzen können,wie selbstdefinierte. Die Bibliothek Standard.lib steht Ihnen standardmäßig (z. B.für den Controller) zur Verfügung.

Page 19: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Was ist was in ecolog 100 PLUS?

3-5

3.3. Welche Sprachen sind in ecolog 100 PLUS verfügbar?

Funktionsplan (FUP)

Der Funktionsplan ist eine graphisch orientierte Programmiersprache. Erarbeitet mit einer Liste von Netzwerken, wobei jedes Netzwerk eine Strukturenthält, die jeweils einen logischen bzw. arithmetischen Ausdruck, den Aufrufeines Funktionsblocks, einen Sprung oder eine Return-Anweisung darstellt.Operatoren, Funktionen und Funktionsblöcke werden in Form von Boxendargestellt. Der Name eines Operators, einer Funktion, oder eines Funktions-blocks steht oben in der Box.

Vorteile

• Intuitiv bedienbar, deshalb gut für den Einsteiger geeignet

• Sehr übersichtlich durch die grafische Darstellung

• Bei Wort-Verarbeitung durchgängig

• Bit- und Wort-Verarbeitung sind kombinierbar

Nachteile

• Bei komplexen Abläufen unübersichtlich

• Programmschleifen nur eingeschränkt möglich und unübersichtlich

Auf der ecolog 100 PLUS-CD befindet sich das Beispiel Trockner Steuerung, dasin FUP programmiert wurde. Es steht Ihnen auch als Visualisierung zurVerfügung.

Page 20: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Welche Sprachen sind in ecolog 100 PLUS verfügbar?

3-6

Die Visualisierung der Trockner-Steuerung

Ausschnitt des Programmtextes

Page 21: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Was ist was in ecolog 100 PLUS?

3-7

Kontaktplan (KOP)

Der Kontaktplan ist eine ebenfalls graphisch orientierte Programmiersprache,die dem Prinzip einer elektrischen Schaltung angenähert ist.

Einerseits eignet sich der Kontaktplan dazu, logische Schaltwerke zu kon-struieren, andererseits kann man aber auch Netzwerke wie im FUP erstellen.Daher kann der KOP sehr gut dazu benutzt werden, den Aufruf von anderenBausteinen zu steuern. Dazu später mehr.

Vorteile

• Übersichtlich und leicht verständlich durch die grafische Darstellung beiüberwiegender Bit-Verarbeitung

• International verbreitet

Nachteile

Bei komplexen Abläufen unübersichtlich durch die unterschiedliche Darstellungbei Bit- und Wort-Verarbeitung

Auf der ecolog 100 PLUS-CD befindet sich das Beispiel Motor Steuerung, das inKOP programmiert wurde. Es steht Ihnen auch als Visualisierung zurVerfügung.

Die Visualisierung der Motor-Steuerung

Page 22: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Welche Sprachen sind in ecolog 100 PLUS verfügbar?

3-8

Ausschnitt des Programmtextes

Der Kontaktplan besteht aus einer Folge von Netzwerken. Ein Netzwerk wirdauf der linken und rechten Seite von einer Stromleitung begrenzt. Dazwischenbefindet sich ein Schaltplan aus Kontakten, Spulen und Verbindungslinien.

Jedes Netzwerk besteht auf der linken Seite aus einer Folge von Kontakten, dievon links nach rechts den Zustand "AN" oder "AUS" weitergeben, dieseZustände entsprechen den boolschen Werten TRUE und FALSE. Zu jedemKontakt gehört eine boolsche Variable. Wenn diese Variable TRUE ist, dannwird der Zustand über die Verbindungslinie von links nach rechtsweitergegeben, sonst erhält die rechte Verbindung den Wert AUS.

Kontakt Jedes Netzwerk im KOP besteht auf der linken Seite aus einem Netzwerk vonKontakten (Kontakte werden dargestellt durch zwei parallele Linien: | |), die vonlinks nach rechts den Zustand ”An” oder ”Aus” weitergeben.

Diese Zustände entsprechen den boolschen Werten TRUE und FALSE. Zujedem Kontakt gehört eine boolsche Variable. Wenn diese Variable TRUE ist,dann wird der Zustand über die Verbindungslinie von links nach rechtsweitergegeben, sonst erhält die rechte Verbindung den Wert ”Aus”.

Kontakte können parallel geschaltet sein, dann muß einer der Parallelzweigeden Wert ”An” übergeben, damit die Parallelverzweigung den Wert ”An”übergibt. Oder die Kontakte sind in Reihe geschaltet, dann müssen alleKontakte den Zustand ”An” übergeben, damit der letzte Kontakt den Zustand”An” weitergibt. Dies entspricht also elektrischen Parallel- bzw.Reihenschaltungen.

Ein Kontakt kann auch negiert sein, erkennbar am Schrägstrich imKontaktsymbol: |/|. Dann wird der Wert der Linie weitergegeben, wenn dieVariable FALSE ist.

Page 23: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Was ist was in ecolog 100 PLUS?

3-9

Spule Auf der rechten Seite eines Netzwerks im KOP befindet sich eine beliebigeAnzahl sogenannter Spulen, dargestellt durch Klammern:( ). Diese können nurparallel geschaltet werden. Eine Spule gibt den Wert der Verbindungen vonlinks nach rechts weiter und kopiert ihn in eine zugehörige boolsche Variable.An der Eingangslinie kann der Wert AN (entspricht der boolschen VariablenTRUE) oder der Wert AUS anliegen (entsprechend FALSE).

Kontakte und Spulen können auch negiert werden (im Beispiel sind der KontaktSCHALT1 und die Spule %QX3.0 negiert).Wenn eine Spule negiert ist(erkennbar am Schrägstrich im Spulensymbol: (/)), dann kopiert sie dennegierten Wert in die zugehörige boolsche Variable. Wenn ein Kontakt negiertist, dann schaltet er nur dann durch, wenn die zugehörige boolsche VariableFALSE ist.

Funktionsblöckeim Kontaktplan

Neben Kontakten und Spulen können Sie auch Funktionsblöcke undProgramme eingeben. Diese müssen im Netzwerk einen Eingang und einenAusgang mit boolschen Werten haben und können an denselben Stellenverwendet werden wie Kontakte, d. h. auf der linken Seite des KOP-Netzwerks.

Set/Reset-Spulen

Spulen können auch als Set oder Reset-Spulen definiert sein. Eine Set-Spule(erkennbar am ‚S‘ im Spulensymbol: (S)) überschreibt in der zugehörigenboolschen Variablen niemals den Wert TRUE. D. h., wenn die Variable einmalauf TRUE gesetzt wurde, dann bleibt sie es auch.

Eine Reset-Spule (erkennbar am ‚R‘ im Spulensymbol: (R)), überschreibt in derzugehörigen boolschen Variablen niemals den Wert FALSE: Wenn die Variableeinmal auf FALSE gesetzt wurde, dann bleibt sie es auch.

KOP als FUP Beim Arbeiten mit dem KOP kann leicht der Fall auftreten, daß Sie dasErgebnis der Kontaktschaltung zur Steuerung anderer Bausteine nutzen wollen.Dann können Sie einerseits das Ergebnis mit Hilfe der Spulen in einer globalenVariable ablegen, die an anderer Stelle weiter benutzt wird. Sie können aberauch den eventuellen Aufruf direkt in Ihr KOP-Netzwerk einbauen. Dazu führenSie einen Baustein mit EN-Eingang ein.

Solche Bausteine sind ganz normale Operanden, Funktionen, Programme oderFunktionsblöcke, die einen zusätzlichen Eingang haben, der mit EN beschriftetist. Der EN-Eingang ist immer vom Typ BOOL und seine Bedeutung ist: DerBaustein mit EN-Eingang wird dann ausgewertet, wenn EN den Wert TRUE hat.

Ein EN-Baustein wird parallel zu den Spulen geschaltet, wobei der EN-Eingangmit der Verbindungslinie zwischen den Kontakten und den Spulen verbundenwird. Wenn über diese Linie die Information AN transportiert wird, dann wirddieser Baustein ganz normal ausgewertet.

Ausgehend von einem solchen EN-Baustein können Netzwerke wie in FUPerstellt werden.

Page 24: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Welche Sprachen sind in ecolog 100 PLUS verfügbar?

3-10

Teil eines KOP-Netzwerks mit einem EN-Baustein

Anweisungsliste (AWL)

Eine Anweisungsliste (AWL) besteht aus einer Folge von Anweisungen. JedeAnweisung beginnt in einer neuen Zeile. Sie beinhaltet einen Operator und, jenach Art der Operation, einen oder mehrere durch Kommata abgetrennteOperanden.

Vorteile

In Europa weit verbreitet

Nachteile

Unübersichtliche Darstellung

Programmschleifen unübersichtlich

Auf der ecolog 100 PLUS-CD befindet sich das Beispiel Hand Auto, das in AWLprogrammiert wurde. Es steht Ihnen auch als Visualisierung zur Verfügung.

Die Visualisierung HandAuto

Page 25: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Was ist was in ecolog 100 PLUS?

3-11

Ausschnitt des Programmtextes

Page 26: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Welche Sprachen sind in ecolog 100 PLUS verfügbar?

3-12

Strukturierter Text (ST)

Der Strukturierte Text besteht aus einer Reihe von Anweisungen, die wie inHochsprachen bedingt (”IF..THEN..ELSE”) oder in Schleifen (WHILE..DO)ausgeführt werden können.

Vorteile

Einfacher Einstieg unter der Voraussetzung, daß schon mit höherenProgrammiersprachen programmiert wurde

Programmschleifen sind übersichtlich und einfach zu programmieren

Nachteile

Unübersichtlich bei Bit-Verknüpfung

Auf der ecolog 100 PLUS -CD befindet sich das Beispiel Kalibrierung, das in STprogrammiert wurde. Es steht Ihnen auch als Visualisierung zur Verfügung.

Die Visualisierung Kalibrierung

Ausschnitt des Programmtextes

Page 27: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Was ist was in ecolog 100 PLUS?

3-13

Ablaufsprache (AS)

Die Ablaufsprache ist eine graphisch orientierte Sprache, die es ermöglicht, diezeitliche Abfolge verschiedener Aktionen innerhalb eines Programms zubeschreiben.

Vorteile

Sehr übersichtlich zur Strukturierung von komplexen Abläufen.

Nachteile

Bei kontinuierlichen Prozessen ungeeignet

Bei komplexen Verknüpfungen sind unterlagert noch weitere Programmier-sprachen erforderlich z. B. FUP, KOP.

Auf der ecolog 100 PLUS -CD befindet sich das Beispiel Ampel, das in ASprogrammiert wurde. Es steht Ihnen auch als Visualisierung zur Verfügung.

Die Visualisierung Ampel

Page 28: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Welche Sprachen sind in ecolog 100 PLUS verfügbar?

3-14

Der Programmtext Ampel

Page 29: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Was ist was in ecolog 100 PLUS?

3-15

3.4. Onlinefunktionalitäten

Trace-aufzeichnung

Die Traceaufzeichnung bietet die Möglichkeit, den Werteverlauf von Variablenaufzuzeichnen, abhängig vom sogenannten Triggerereignis. Dieses ist diesteigende oder fallende Flanke einer vorher definierten boolschen Variablen(der Trigger-Variablen). Ecolog ermöglicht die Aufzeichnung von bis zu 20Variablen. Von jeder Variable können bis zu 500 Werte (aber nicht mehr als2000 insgesamt) aufgezeichnet werden.

Debugging Mit den Debugging-Funktionen von ecolog wird Ihnen das Auffinden vonFehlern erleichtert.

Um Debuggen zu können, muß der Befehl ‘Projekt’’Optionen’ ausgeführt undim erscheinenden Dialog unter Übersetzungsoptionen der Punkt Debuggingausgewählt werden.

Die Funktion Breakpoint funktioniert nur im Simulationsmodus!

Breakpoint Ein Breakpoint ist eine Stelle im Programm, an der die Abarbeitung angehaltenwird. Somit ist es möglich, die Werte von Variablen an einer bestimmtenProgrammstelle zu betrachten.

Breakpoints können in allen Editoren gesetzt werden. In den Texteditorenwerden Breakpoints auf Zeilennummern gesetzt, in FUP und KOP aufNetzwerknummern und in AS auf Schritte.

Einzelschritt Einzelschritt bedeutet:

in AWL: Das Programm bis zum nächsten CAL, LD oder JMP-Befehl ausführen.

in ST: Die nächste Anweisung ausführen.in FUP, KOP: Das nächste Netzwerk ausführen.in AS: Die Aktion zum nächsten Schritt ausführen.

Durch schrittweise Abarbeitung können Sie die logische Korrektheit IhresProgramms überprüfen.

Einzelzyklus Wenn Einzelzyklus gewählt wurde, wird die Abarbeitung nach jedem Zyklusangehalten.

Page 30: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Onlinefunktionalitäten

3-16

Werte onlineverändern

Variablen können im laufenden Betrieb einmalig auf einen bestimmten Wertgesetzt werden (Wert schreiben) oder auch nach jedem Zyklus wieder neu miteinem bestimmten Wert beschrieben werden (Forcen). Sie können denVariablenwert im Online-Betrieb auch verändern, indem Sie einen Doppelklickdarauf durchführen. Boolsche Variablen wechseln dadurch von TRUE aufFALSE bzw. umgekehrt, für alle anderen erhalten Sie einen Dialog Variable xyschreiben, in dem Sie den aktuellen Variablenwert editieren können.

Monitoring Zu den am Bildschirm sichtbaren Variablendeklarationen werden laufend dieaktuellen Werte aus der Steuerung gelesen und dargestellt.

Ecolog zeigt im Online-Modus alle am Bildschirm sichtbaren Variablen.Daneben können im Watch- und Rezepturverwalter Variablen zusammen-gestellt werden, deren Daten man auf einen Blick sehen möchte.

Simulation Bei der Simulation wird das erzeugte Steuerungsprogramm nicht in derSteuerung abgearbeitet, sondern auf dem Rechner, auf dem auch ecolog läuft.Es stehen alle Online-Funktionen zur Verfügung. Sie haben somit dieMöglichkeit, die logische Korrektheit Ihres Programmes ohne Steuerungshard-ware zu testen. (vergl. Seite 2-2)

Page 31: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

4-1

4. Die Software ecolog 100 PLUS

In diesem Kapitel erfahren Sie:

• Welche Komponenten das Programm beinhaltet.

• Außerdem werden Sie ein kleines Beispielprogramm erstellen.

• Am Ende dieses Kapitels geben wir Ihnen eine Übersicht über dievorhandenen Tastaturbefehle.

Page 32: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-2

4.1. Die ecolog 100 PLUS-Komponenten im Einzelnen

Ziel dieses Abschnitts ist es, die Programmoberfläche von ecolog und dievorhandenen Menüs kennenzulernen. Hier finden Sie zu jedem Menüpunkt dieAktion, die er auslöst.

Das Hauptfenster

Die Elemente des Hauptfensters

Folgende Elemente befinden sich im Hauptfenster von ecolog (von oben nachunten):

• Die Menüleiste

• Die Funktionsleiste (optional); mit Schaltflächen zur schnelleren Ausführungvon Menübefehlen

• Der Object Organizer mit den Registerkarten für Bausteine, Datentypen,Visualisierungen und Ressourcen

• Ein vertikaler Bildschirmteiler zwischen dem Object Organizer und demArbeitsbereich von ecolog

• Der Arbeitsbereich, in dem sich die Editorfenster befinden

• Das Meldungsfenster (optional)

• Die Statusleiste (optional); mit Informationen über den derzeitigen Zustanddes Projekts.

Page 33: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-3

Menüleiste Die Menüleiste befindet sich am oberen Rand des Hauptfensters. Sie enthältalle Menübefehle.

Die Menüleiste

Die Menüs Einfügen und Extras beziehen sich jeweils auf das aktuellangewählte Fenster.

Funktionsleiste Häufig benutzte Befehle finden Sie in der Funktionsleiste. Ein Klicken mit derMaus auf ein Symbol ermöglicht eine schnellere Auswahl eines Menübefehls.Die Auswahl der zur Verfügung gestellten Symbole paßt sich automatisch andas aktive Fenster an.

Wenn Sie den Mauszeiger eine kurze Zeit über einem Symbol in derFunktionsleiste halten, wird der Name des Symbols in einem Tooltip angezeigt.

Die Anzeige der Funktionsleiste können Sie nach Wunsch ein- oderausschalten (siehe ‘Projekt’ ‘Optionen’ Kategorie Arbeitsbereich).

Die Funktionsleiste

Object Organizer Der Object Organizer befindet sich immer an der linken Seite von ecolog.Unten im Fenster befinden sich vier Registerkarten mit Symbolen für die vierObjektarten.

• Bausteine

• Datentypen

• Visualisierungen

• Ressourcen

Page 34: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-4

Der Object Organizer

Wenn Sie zwischen den jeweiligen Objektarten wechseln wollen, klicken sie mitder Maus auf die entsprechende Registerkarte. Alternativ können Sie auch dielinke bzw. rechte Pfeiltaste auf der Tastatur benutzen.

Bildschirmteiler Der Bildschirmteiler ist die Grenze zwischen zwei nicht überlappendenFenstern. In ecolog gibt es Bildschirmteiler zwischen

• dem Object Organizer und dem Arbeitsbereich des Hauptfensters

• der Schnittstelle (Deklarationsteil) und der Implementierung (Anweisungs-teil) von Bausteinen

• dem Arbeitsbereich und dem Meldungsfenster.

Wenn Sie den Mauszeiger auf den Bildschirmteiler führen, können Sie denBildschirmteiler verschieben. Dies geschieht durch Bewegen der Maus beigedrückter linker Maustaste.

Beachten Sie, daß der Bildschirmteiler stets an seiner absoluten Position bleibt,auch wenn die Fenstergröße verändert wird. Wenn der Bildschirmteiler nichtmehr vorhanden zu sein scheint, dann vergrößern Sie einfach Ihr Fenster.

Arbeitsbereich Der Arbeitsbereich befindet sich an der rechten Seite im ecolog-Hauptfenster.Alle Editoren für Objekte und die Bibliotheksverwaltung werden in diesemBereich geöffnet.

Die Beschreibung der Editoren finden Sie im Kapitel Das kleine Programmier-handbuch ab Seite 5-1.

Unter dem Menüpunkt ‘Fenster’ befinden sich alle Befehle zur Fenster-verwaltung.

Meldungsfenster Das Meldungsfenster befindet sich getrennt durch einen Bildschirmteilerunterhalb des Arbeitsbereiches im Hauptfenster.

Es enthält alle Meldungen aus dem letzten Übersetzungs-, Überprüfungs- oderVergleichvorgangs.

Wenn Sie einen Doppelklick auf eine Meldung ausführen oder die<Eingabetaste> drücken, öffnet der Editor mit dem Objekt. Die betroffene Zeiledes Objekts wird markiert. Mit den Befehlen ‘Bearbeiten’ ‘Nächster Fehler’

Page 35: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-5

und ‘Bearbeiten’ ‘Vorheriger Fehler’ kann schnell zwischen den Fehler-meldungen gewechselt werden.

Die Anzeige des Meldungsfensters können Sie nach Wunsch ein- oderausschalten (siehe ‘Fenster’ ‘Meldungen’).

Statusleiste Die Statusleiste, die sich unten im Fensterrahmen des ecolog Hauptfenstersbefindet, zeigt Ihnen Informationen über das aktuelle Projekt und überMenübefehle an.

Trifft eine Aussage zu, so erscheint der Begriff rechts in der Statusleiste inschwarzer Schrift, ansonsten in grauer Schrift.

Wenn Sie im Online-Modus arbeiten, erscheint der Begriff Online in schwarzerSchrift. Arbeiten Sie dagegen im Offline-Modus, erscheint er in grauer Schrift.

Im Online-Modus erkennen Sie in der Statusleiste, ob

• Sie sich in der Simulation befinden (SIM)

• das Programm abgearbeitet wird (LÄUFT)

• ein Breakpoint gesetzt ist (BP) und

• Variablen geforced werden (FORCE).

Bei Texteditoren wird die Zeilen- und Spaltennummer der aktuellenCursorposition angegeben (z. B. Z.:5, Sp.:11). Wenn Sie im Überschreibmodusarbeiten, wird in der Statusleiste 'ÜB' schwarz angezeigt. Sie können zwischendem Überschreib- und dem Einfügemodus wechseln durch Betätigen der Taste<Einfg>. Befindet sich der Mauszeiger in einer Visualisierung, wird die aktuelleX- und Y-Position des Cursors in Pixel relativ zur oberen linken Ecke des Bildsangegeben. Befindet sich der Mauszeiger auf einem Element oder wird einElement bearbeitet, wird die Nummer desselben angegeben. Haben Sie einElement zum Einfügen ausgewählt, so erscheint dies ebenfalls (z. B.Rechteck).

Wenn Sie einen Menübefehl angewählt aber noch nicht betätigt haben,erscheint eine kurze Beschreibung in der Statusleiste.

Die Anzeige der Statusleiste können Sie nach Wunsch ein- oder ausschalten(siehe ‘Projekt’ ‘Optionen’ Kategorie Arbeitsbereich).

Kontextmenü Kurzform: <Umschalt>+<F10>

Anstelle der Menüleiste können Sie die rechte Maustaste verwenden. Das dannangezeigte Kontextmenü enthält die am häufigsten verwendeten Befehle für einmarkiertes Objekt oder für den aktiven Editor. Die Auswahl der zur Verfügunggestellten Befehle paßt sich automatisch an das aktive Fenster an.

Page 36: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-6

Optionen

In ecolog können Sie die Ansicht Ihres Hauptfensters konfigurieren. Darüberhinaus können Sie noch weitere Einstellungen vornehmen. Dazu steht Ihnender Befehl ‘Projekt’ Optionen’ zur Verfügung. Die Einstellungen, die Siehierbei vornehmen, werden, soweit nicht anders vermerkt, in der Datei”ecolog.ini” gespeichert. Beim nächsten Start von ecolog werden sie wieder-hergestellt.

‘Projekt’‘Optionen’

Mit diesem Befehl öffnet sich der Dialog zum Einstellen der Optionen. DieOptionen sind in verschiedene Kategorien eingeteilt. Wählen Sie auf der linkenSeite des Dialogs durch einen Mausklick oder mit Hilfe der Pfeiltasten diegewünschte Kategorie aus und verändern Sie auf der rechten Seite dieOptionen.

Es stehen folgende Kategorien zur Verfügung:

• Laden & Speichern

• Benutzerinformation

• Editor

• Arbeitsbereich

• Farben

• Verzeichnisse

• Übersetzungsoptionen

• Kennworte

• Symbolkonfiguration

Laden &Speichern

Wenn Sie diese Kategorie wählen, öffnet sich folgender Dialog:

Der Dialog: Optionen

Bei Aktivierung einer Option, erscheint ein Haken (ü) vor der Option.

Page 37: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-7

Wenn Sie die Option Sicherheitskopie erstellen wählen, dann speichertecolog die alte Datei bei jeder Sicherung als Sicherungsdatei mit dem Zusatz”.bak”. So können Sie also stets die Version vor der letzten Speicherung wiederherstellen.

Wenn sie die Option Automatisch sichern wählen, dann wird ihr Projektwährend Sie daran arbeiten, ständig in eine temporäre Datei mit dem Zusatz”.asd” gespeichert. Das Zeitintervall (Sicherungsintervall) hierfür können Sieeinstellen. Die temporäre Datei wird beim normalen Beenden des Programmswieder gelöscht. Sollte ecolog aus irgendeinem Grund nicht ”normal” beendetwerden (z. B. bei einem Stromausfall), dann wird die Datei nicht gelöscht. WennSie die bearbeitete Datei wieder öffnen, dann erscheint folgende Meldung:

Automatische Sicherung

Sie können nun entscheiden, ob Sie die Originaldatei oder die Sicherungsdateiöffnen wollen.

Wenn sie die Option Projektinformation verlangen wählen, dann wird beimAbspeichern eines neuen Projekts oder beim Abspeichern eines Projekts untereinem neuen Namen automatisch die Projektinformation aufgerufen. DieProjektinformationen können Sie mit dem Befehl ‘Projekt’ ‘Projektinformation’einsehen und bearbeiten.

Wenn Sie die Option Automatisch laden wählen, dann wird beim nächstenStart von ecolog das zuletzt geöffnete Projekt automatisch geladen. Das Ladeneines Projekts kann beim Start von ecolog auch durch Angabe eines Projektsin der Befehlszeile erfolgen.

Benutzer-information

Wenn Sie diese Kategorie wählen, öffnet sich folgender Dialog:

Page 38: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-8

Die Benutzerinformationen

Zur Benutzerinformation gehören der Name des Benutzers, seine Initialen unddie Firma, bei der er arbeitet. Jeder der Einträge kann verändert werden.

Editor Wenn Sie diese Kategorie wählen, öffnet sich folgender Dialog:

Die Option: Editor

Bei Aktivierung einer Option, erscheint ein Haken (ü) vor der Option.

Sie können folgende Einstellungen zu den Editoren vornehmen:

• Automatisch deklarieren

• Automatisch formatieren

• Deklaration als Tabelle

• Tab-Breite

• Schriftart

• Darstellung der Markierung

• Darstellung der Bitwerte

Automatischdeklarieren

Wenn die Option Automatisch deklarieren gewählt wurde, so erscheint inallen Editoren nach Eingabe einer noch nicht deklarierten Variablen ein Dialog,mit dessen Hilfe diese Variable deklariert werden kann.

Page 39: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-9

Automatischformatieren

Wenn die Option Automatisch formatieren gewählt wurde, führt ecolog eineAutomatische Formatierung im Anweisungslisteneditor und im Deklarations-editor durch. Wenn eine Zeile verlassen wird, werden folgende Formatierungendurchgeführt:

• Operatoren, die in Kleinbuchstaben geschrieben sind, werden in Groß-buchstaben dargestellt.

• Es werden Tabulatoren eingefügt, so daß sich eine einheitliche Spalten-aufteilung ergibt.

Deklarationenals Tabelle

Wenn die Option Deklarationen als Tabelle gewählt wurde, können SieVariablen statt mit dem üblichen Deklarationseditor als Tabelle editieren. DieseTabelle ist wie ein Karteikasten geordnet, in dem Registerkarten für Eingabe-,Ausgabe-, lokale und EinAusgabevariablen sind. Für jede Variable stehenIhnen die Felder Name, Adresse, Typ, Initial und Kommentar zur Verfügung.

Tab-Breite Im Feld Tab-Breite können Sie angeben, wie breit ein Tabulator in den Editorendargestellt wird. Voreingestellt sind vier Zeichen breit, wobei die Zeichenbreitewiederum von der eingestellten Schriftart abhängt.

Schrift Nach Klicken auf die Schaltfläche Schrift können Sie die Schrift in allenecolog-Editoren wählen. Die Größe der Schrift ist die Grundeinheit für alleZeichnungsoperationen. Die Wahl eines größeren Schriftgrads vergrößert somitdie Ausgabe und sogar den Ausdruck bei jedem Editor von ecolog.

Nachdem Sie den Befehl gewählt haben, wird der Dialog für die Wahl derSchriftart, Schriftschnitt und Grad angezeigt.

Page 40: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-10

Die Optionen für die Schrift

Markierung Bei der Auswahl Markierung können Sie wählen, ob die aktuelle Markierung inihren graphischen Editoren durch ein gepunktetes Rechteck (Gepunktet),durch ein Rechteck mit durchgezogener Linie oder durch ein ausgefülltesRechteck (Ausgefüllt) angezeigt werden soll. Im letzten Fall wird dieMarkierung invers dargestellt.

Aktiviert ist die Auswahl, vor der ein (•) Punkt erscheint.

Bitwerte Bei der Auswahl Bitwerte können Sie wählen, ob binäre Daten (Typ Byte,WORD, DWORD) beim Monitoring Dezimal, Hexadezimal oder Binärdargestellt werden sollen.

Aktiviert ist die Auswahl, vor der ein (•) Punkt erscheint.

Page 41: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-11

Arbeitsbereich Wenn Sie diese Kategorie wählen, öffnet sich folgender Dialog:

Die Optionen für den Arbeitsbereich

Wenn die Option Funktionsleiste gewählt wurde, wird die Funktionsleiste mitden Schaltflächen unterhalb der Menüleiste sichtbar.

Wenn die Option Statusleiste gewählt wurde, wird die Statusleiste am unterenRand des ecolog-Hauptfensters sichtbar.

Wenn die Option Onlinebetrieb im Sicherheitsmodus gewählt wurde,erscheint im Online-Modus bei den Befehlen

• ‘Start’

• ‘Stop’

• ‘Reset’

• ‘Breakpoint an’

• ‘Einzelzyklus’

• ‘Werte schreiben’

• ‘Werte forcen’

• und ‘Forcen aufheben’

ein Dialog mit der Sicherheitsabfrage, ob der Befehl wirklich ausgeführt werdensoll. Diese Option wird mit dem Projekt gespeichert.

Unter Sprache können Sie wählen, in welcher Landessprache die Menü- undDialogtexte erscheinen sollen.

Beachten Sie, daß die Sprachauswahl nur unter Windows NT möglichist!

Page 42: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-12

Farben Wenn Sie diese Kategorie wählen, öffnet sich folgender Dialog:

Die Optionen für die Farben

Sie können die voreingestellten Farbeinstellungen von ecolog verändern. Siekönnen wählen, ob Sie die Farbeinstellungen für

• Zeilennummern (Voreinstellung: hellgrau)

• Breakpoint Positionen (dunkelgrau)

• einen gesetzten Breakpoint (hellblau)

• die aktuelle Position (rot)

• die durchlaufenen Positionen (grün) oder

• das Monitoring boolscher Werte (blau)

ändern wollen.

Wenn Sie eine der angegebenen Schaltflächen wählen, öffnet sich der Dialogzum Wählen von Farben.

Die gewünschte Farbe wählen

Page 43: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-13

Verzeichnisse Wenn Sie diese Kategorie wählen, öffnet sich folgender Dialog:

Die Option: Verzeichnisse

In den Eingabefeldern Bibliotheken und Übersetzungsdateien können Sie dieVerzeichnisse angeben, aus denen ecolog die Bibliotheken bzw.Übersetzungsdateien holen soll. Wenn Sie die Schaltfläche hinter einem Feldbetätigen, öffnet sich der Dialog zum Auswählen eines Verzeichnisses.

Übersetzungs-optionen

Wenn Sie diese Kategorie wählen, öffnet sich folgender Dialog:

Die Übersetzungsoptionen

Wenn die Option Debugging gewählt wurde, kann der Code deutlichumfangreicher werden. Durch Wählen dieser Option wird die Generierungzusätzlichen Debugging-Codes ermöglicht. Dieser ist notwendig, um die vonecolog angebotenen Debugging-Funktionen zu benutzen. Wenn Sie dieseOption ausschalten, ermöglichen Sie eine schnellere Ausführung und einengeringeren Code-Umfang. Diese Option wird mit dem Projekt gespeichert.

Wenn die Option Online Changes gewählt wurde, kann Ihr Projekt im Online-Modus verändert werden. Bei einer erneuten Übersetzung werden dann nur dieveränderten Bausteine auf die Steuerung geladen. (Siehe ‘Projekt’‘Übersetzen’)

Page 44: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-14

Wenn die Option Sichern vor Übersetzen gewählt wurde, wird Ihr Projektjedesmal vor einer Übersetzung abgespeichert.

Mit der Angabe der Anzahl der Datensegmente können Sie festlegen, wievielPlatz in der Steuerung reserviert werden soll für die Daten Ihres Projekts. Wennbeim Übersetzen die Meldung erscheint "Die globalen Variablen brauchen zuviel Speicher“. Erhöhen Sie die Anzahl der Segmente in 'Projekt''Übersetzungsoptionen', erhöhen Sie die Anzahl der Datensegmente.

Diese Optionen werden mit dem Projekt gespeichert.

Kennworte Wenn Sie diese Kategorie wählen, öffnet sich folgender Dialog:

Die Optionen für die Kennworte festlegen

Zur Sicherung Ihrer Dateien vor unerwünschten Zugriffen bietet ecolog dieMöglichkeit, das Öffnen oder Verändern Ihrer Datei durch ein Kennwortabsichern zu lassen.

Geben Sie das gewünschte Kennwort im Feld Kennwort ein. Für jedengetippten Buchstaben erscheint im Feld ein Stern (*). Das selbe Wort müssenSie im Feld Kennwort bestätigen wiederholen. Schließen Sie den Dialog mitOK. Wenn die Meldung kommt:

”Das Kennwort und seine Bestätigung stimmen nicht überein.”,

haben Sie sich bei einem der beiden Einträge vertippt. Geben Sie die beidenEinträge erneut ein.

Wenn Sie nun die Datei abspeichern und erneut öffnen, öffnet sich ein Dialog,in dem Sie aufgefordert werden, das Kennwort einzugeben. Das Projekt wirdnur dann geöffnet, wenn Sie das richtige Kennwort eingetippt haben, ansonstenmeldet Ihnen ecolog:

”Das Kennwort ist nicht korrekt.”

Neben dem Öffnen der Datei können Sie auch das Verändern der Datei miteinem Kennwort schützen. Dazu müssen Sie einen Eintrag in das FeldSchreibschutz-Kennwort vornehmen und diesen Eintrag wieder im Felddarunter bestätigen.

Page 45: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-15

Ein schreibgeschütztes Projekt kann auch ohne Passwort geöffnet werden.Drücken Sie hierzu einfach die Schaltfläche Abbrechen, wenn ecolog Sie beimÖffnen einer Datei auffordert, das Schreibschutz-Kennwort einzugeben. Nunkönnen Sie das Projekt übersetzen, in die Steuerung laden, simulieren etc.,aber Sie können es nicht verändern.

Wichtig ist natürlich, daß Sie sich selber beide Kennwörter gut merken. WennSie ein Kennwort tatsächlich mal vergessen haben sollten, dann wenden Siesich bitte an Ihren Steuerungshersteller.

Die Kennworte werden mit dem Projekt gespeichert.

Symbol-konfiguration

Wenn Sie diese Kategorie wählen, wird folgender Dialog geöffnet:

Die Optionen für die Symbolkonfiguration

Mit der Symbolkonfiguration wird Ihnen ermöglicht eigene Datenobjekte für IhrProjekt zu erzeugen.

Page 46: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-16

Projekte verwalten

Die Befehle, die sich auf ein ganzes Projekt beziehen, stehen unter demMenüpunkt ‘Datei’ und ‘Projekt’. Einige der Befehle unter ‘Projekt’ arbeiten mitObjekten und werden im nächsten Abschnitt beschrieben.

‘Datei/Neu’ Damit legen Sie ein leeres Projekt mit dem Namen ‘Unbenannt’ an. DieserName muß geändert werden.

‘Datei/Öffnen’ Mit diesem Befehl öffnen Sie ein bereits bestehendes Projekt. Wenn bereits einProjekt geöffnet war und verändert wurde, fragt ecolog, ob dieses Projektgespeichert werden soll oder nicht.

Der Standard-Dialog von Windows zum Öffnen einer Datei erscheint, und esmuß eine Projektdatei mit dem Zusatz „*.pro“ ausgewählt werden. Diese Dateimuß existieren; es ist nicht möglich, mit dem Befehl „Öffnen“ ein Projekt zuerzeugen.

Standarddialog zum Öffnen einer Datei in ecolog

Unter dem Menü-Befehl ‘Datei/Beenden’ sind die zuletzt geöffneten Projekteaufgelistet. Wenn Sie eines davon auswählen, wird dieses Projekt geöffnet.

Sind für das Projekt Kennworte definiert worden, so erscheint ein Dialog zurEingabe des Passworts.

‘Datei/Schließen’ Mit diesem Befehl schließen Sie das aktuell geöffnete Projekt. Wenn dasProjekt verändert wurde, fragt ecolog, ob diese Veränderungen gespeichertwerden sollen oder nicht.

‘Datei/Speichern’ Mit diesem Befehl speichern Sie das Projekt, sofern es verändert wurde.Kurzform: <Strg>+<S>

‘Datei/Speichernunter’

Mit diesem Befehl wird das aktuelle Projekt in einer anderen Datei gespeichert.Die ursprüngliche Projektdatei bleibt dabei unverändert.

Page 47: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-17

Nachdem der Befehl gewählt wurde, erscheint der standardmäßige Windows-Dialog zum Speichern. Wählen Sie entweder einen existierenden Dateinamen,oder geben Sie einen neuen Dateinamen ein und wählen Sie den gewünschtenDateityp.

Soll das Projekt nur unter einem neuen Namen abgespeichert werden, wählenSie den Dateityp ecolog Projekt (*.pro).

Wenn Sie den Dateityp Projekt Version 1.55 (*.pro) wählen, wird das aktuelleProjekt so abgespeichert, als wäre es mit der Version 1.5 erstellt worden.Spezifische Daten der Version 2.1 können dabei verloren gehen! Das Projektkann dann aber mit der Version 1.55 weiterbearbeitet werden.

Sie können das aktuelle Projekt auch als Bibliothek abspeichern, um es inanderen Projekten benutzen zu können. Wählen Sie den Dateityp InterneBibliothek (*.lib), wenn Sie Ihre Bausteine in ecolog programmiert haben.

Der Dateityp Externe Bibliothek (*.lib) kann nur durch ifm erstellt werden.

Änderungen in der Variablendeklaration einer externen Bibliothek können zuFehlfunktionen oder Zerstörungen innerhalb des Programms führen. ÄndernSie deshalb nie eine exterrne Bibliothek.

Bei Speichern als Bibliothek wird das ganze Projekt kompiliert. Wenn dabeiein Fehler auftritt, wird mitgeteilt daß ein korrektes Projekt notwendig ist, umeine Bibliothek zu erzeugen. Das Projekt wird dann nicht als Bibliothekgespeichert.

‘Datei/Drucken’ Mit diesem Befehl wird der Inhalt des aktivierten Fensters gedruckt. Kurzform:<Strg>+<P>

Nachdem der Befehl gewählt wurde, erscheint der standardmäßige Windows-Dialog zum Drucken. Wählen Sie die gewünschte Option oder konfigurieren Sieden Drucker und klicken anschließend OK. Der Inhalt des aktiven Fensters wirdausgedruckt.

Page 48: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-18

Dialog zum Drucken

Im Dialog zum Drucken können Sie den Druckbereich wählen (entweder Alles,einen Bereich von explizit angegebenen Seiten oder nur die Markierung).Weiterhin können Sie die Anzahl der Exemplare angeben und den Ausdruck ineine Datei umleiten.

Während des Druckens wird Ihnen in einer Dialogbox die Anzahl der bereitsgedruckten Seiten mitgeteilt. Wenn Sie diese Dialogbox schließen, stoppt derDruckvorgang nach der nächsten Seite.

Wenn Sie Ihr gesamtes Projekt dokumentieren wollen, benutzen Sie bitte denBefehl ‘Projekt/Dokumentieren’.

Wenn Sie eine Dokumentvorlage zu Ihrem Projekt erstellen wollen, öffnen Sieeine globale Variablenliste und benutzen den Befehl ‘Extras’ ‘Doku-Vorlageerstellen’.

‘Datei/EinstellungenDokumentation’

Mit diesem Befehl können Sie das Layout der ausgedruckten Seiten festlegen.Es wird nun folgender Dialog angezeigt:

Page 49: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-19

Dialog zur Einstellung des Seitenlayouts der Dokumentation

Im Feld Datei können Sie den Namen der Datei eintragen, in die dasSeitenlayout gespeichert werden soll. Wenn Sie ein vorhandenes Layoutverändern möchten, können Sie die Datei mit der Schaltfläche Durchsuchenwählen.

Sie können ebenfalls auswählen, ob für jedes Objekt eine neue Seiteangefangen werden soll. Mit der Schaltfläche Einrichtung öffnen Sie dieDruckereinrichtung.

Page 50: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-20

Wenn Sie auf die Schaltfläche Bearbeiten klicken, erscheint die Vorlage zurEinstellung des Seitenlayouts. Hier können Sie Seitenzahlen, Datum, Datei-und Bausteinname, sowie Grafiken auf der Seite plazieren und den Text-bereich, in den die Dokumentation gedruckt werden soll, festlegen.

Fenster zum Einfügen der Platzhalter auf dem Seitenlayout

Mit dem Menüpunkt ‘Einfügen/Platzhalter’ und durch anschließende Auswahleiner der 5 Platzhalter (Seite, Bausteinname, Dateiname, Datum, Inhalt),können Sie durch Aufziehen eines Rechteckes auf dem Layout einensogenannten Platzhalter einfügen. Diese werden im Ausdruck wie folgt ersetzt:

{Page} wird durch die aktuelle Seitenzahl im Ausdruck ersetzt.

{POUName } wird durch den Namen des aktuellen Bausteins ersetzt.

{FileName } wird durch den Namen des Projekts ersetzt.

{Date } wird durch das aktuelle Datum ersetzt.

{Content } wird durch den Inhalt des Bausteins ersetzt.

Ferner können Sie mit ‘Einfügen/Bitmap’ eine Bitmap-Grafik (z. B. Firmenlogo)in die Seite einfügen. Dabei müssen Sie nach Auswahl der Grafik ebenfalls einRechteck mit der Maus auf dem Layout aufziehen.

Wenn die Vorlage verändert wurde, fragt ecolog beim Schließen des Fensters,ob diese Veränderungen gespeichert werden sollen oder nicht.

‘Datei/Beenden’ Mit diesem Befehl beenden Sie ecolog.Kurzform: <Alt>+<F4>

Page 51: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-21

‘Projekt/Übersetzen’

Kurzform: <F11>

Mit diesem Befehl übersetzen Sie alle Bausteine. Die aktuell übersetztenBausteine und eventuell auftauchende Fehler bei der Übersetzung werden imMeldungenfenster ausgegeben. Eine Auflistung sämtlicher Fehlermeldungenbefindet sich im Kapitel Das kleine Programmierhandbuch im AbschnittÜbersetzungsfehler.

Meldungen-Fenster eines Projekts mit drei Bausteinen und zwei Fehler-

meldungen

Mit dem Befehl ‘Online/Einloggen’ wird automatisch der Befehl ‘AllesÜbersetzen’ ausgelöst, wenn das Projekt seit der letzten Übersetzungverändert wurde.

Ist die Option Sichern vor Übersetzen im Optionsdialog in der KategorieÜbersetzungsoptionen gewählt, wird das Projekt vor dem Übersetzen gesichert.

Die Querverweise entstehen während der Kompilierung und werden nicht imProjekt gespeichert! Um die Funktionen ‘Aufrufbaum ausgeben‘,‘Querverweisliste angeben’ und ‘Unbenutzte Variablen ausgeben’ anzu-wenden, muß das Projekt nach dem Laden und nach einer Veränderung neuübersetzt werden.

Page 52: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-22

‘Projekt’Dokumentieren’

Dieser Befehl ermöglicht es Ihnen, eine Dokumentation ihres gesamtenProjekts zu drucken. Zu einer vollständigen Dokumentation gehören:

• Die Bausteine

• der Inhalt der Dokumentation

• die Datentypen

• die Visualisierungen

• die Ressourcen (Access Variablen, globale Variablen, Variablenkonfi-guration, die Traceaufzeichnung, die Steuerungskonfiguration, die Task-konfiguration, der Watch- und Rezepturverwalter)

• die Aufrufbäume von Bausteinen und Datentypen sowie

• die Querverweisliste.

Für die letzten beiden Punkte muß das Projekt fehlerfrei übersetzt worden sein.

Dialog zur Projektdokumentation

Ausgedruckt werden die im Dialog selektierten Bereiche, die blau unterlegt sind.

Wenn Sie das gesamte Projekt selektieren wollen, klicken Sie auf den NamenIhres Projektes in der ersten Zeile.

Page 53: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-23

Wollen Sie dagegen nur ein einzelnes Objekt selektieren, klicken Sie auf dasentsprechende Objekt bzw. bewegen das gepunktete Rechteck mit denPfeiltasten auf das gewünschte Objekt. Objekte, die vor ihrem Symbol einPluszeichen haben, sind Organisationsobjekte, die weitere Objekte beinhalten.Mit einem Klick auf ein Pluszeichen wird das Organisationsobjekt aufgeklapptund mit einem Klick auf das nun erscheinende Minuszeichen kann es wiederzugeklappt werden. Wenn Sie ein Organisationsobjekt selektieren, sind allezugehörigen Objekte ebenfalls selektiert. Bei gedrückter <Umschalt>-Tastekönnen Sie einen Bereich von Objekten auswählen, bei gedrückter <Strg>-Taste mehrere einzelne Objekte.

Wenn Sie Ihre Auswahl getroffen haben, klicken Sie auf OK. Es erscheint derDialog zum Drucken. Das Layout der zu druckenden Seiten können Sie mit‘Datei’’Einstellungen Dokumentation’ festlegen.

‘Projekt’Exportieren’

Ecolog bietet die Möglichkeit, Projekte zu exportieren, bzw. importieren. Damithaben Sie die Möglichkeit, Programme zwischen verschiedenen IEC-Programmiersystemen auszutauschen.

Bisher gibt es ein standardisiertes Austauschformat für Bausteine in AWL, STund AS (das Common Elements-Format der IEC 61131-3). Für die Bausteine inKOP und FUP und die anderen Objekte hat ecolog ein eigenes Ablageformat,da es hierfür kein textuelles Format in der IEC 61131-3 gibt. Die ausgewähltenObjekte werden in eine ASCII-Datei geschrieben.

Es können

• Bausteine

• Datentypen

• Visualisierungen

• und die Ressourcen

exportiert werden.

Wenn Sie Ihre Auswahl im Dialogfenster getroffen haben (die Auswahl erfolgtwie bei ‘Projekt’ ‘Dokumentieren’ beschrieben), können Sie nochentscheiden, ob Sie die Auswahl in eine Datei exportieren wollen oder für jedesObjekt eine eigene Exportdatei generieren lassen. Schalten Sie hierzuentsprechend die Option 'Eine Datei je Objekt' aus oder ein und klicken Siedann auf OK. Es erscheint der Dialog zum Speichern von Dateien. Geben Sieeinen Dateinamen mit Zusatz ”.exp” bzw. ein Verzeichnis für die einzelnenObjekt-Exportdateien an, die dann unter "Objektname.exp" dort angelegtwerden.

Page 54: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-24

‘Projekt’Importieren’

Wählen Sie in dem erscheinenden Dialog zum Öffnen von Dateien diegewünschte Export-Datei aus.

Die Daten werden in das aktuelle Projekt importiert. Wenn ein gleichnamigesObjekt im Projekt bereits besteht, öffnet sich eine Dialogbox mit der Frage"Wollen Sie es ersetzen?" Antworten Sie mit Ja, wird das Objekt im Projektersetzt durch das Objekt aus der Importdatei. Antworten Sie mit Nein, erhält derName des neuen Objekts als Ergänzung einen Unterstrich und eineZählnummer ("_0", "_1", ..). Mit Ja, alle bzw. Nein, alle wird dies für alle Objektedurchgeführt.

Im Meldungsfenster wird der Import protokolliert.

‘Projekt’’Vergleichen’

Mit diesem Befehl können Sie das geöffnete Projekt mit einem anderenvergleichen. Wenn Sie beispielsweise vor einer eventuellen Abspeicherungwissen wollen, wo Sie im aktuellen Projekt Veränderungen vorgenommenhaben, dann können Sie das gerade geöffnete Projekt mit der zuletztgespeicherten Version vergleichen.

Nachdem Sie diesen Befehl gewählt haben, öffnet der Dialog zum Öffnen vonDateien. Suchen Sie sich das Projekt aus, mit dem Sie das aktuelle Projektvergleichen wollen. Klicken Sie auf OK. Das Ergebnis des Vergleichs erscheintim Meldungsfenster. Es werden sämtliche Objekte des ausgewählten Projektsaufgelistet. Die Veränderung des Objekts wird in Klammern dahinter angezeigt.

Es sind dabei fünf Meldungen möglich:

• "unverändert": Das Objekt wurde nicht verändert.

• "gelöscht": Das Objekt ist im aktuellen Projekt nicht mehr vorhanden.

• "Implementation verändert": Der Anweisungsteil des Bausteins wurdeverändert.

• "Schnittstelle verändert": Der Deklarationsteil des Objektes wurdeverändert.

• "Schnittstelle und Implementation verändert": Sowohl Anweisungsteil alsauch Deklarationsteil des Bausteins wurden verändert.

Mit Doppelklick auf eine Meldung wird die erste Änderung in diesem Objektmarkiert.

‘Projekt’Kopieren’

Mit diesem Befehl können Sie Objekte (Bausteine, Datentypen, Visuali-sierungen und Ressourcen) aus anderen Projekten in Ihr Projekt kopieren.

Wenn der Befehl gegeben wurde, wird zunächst der Standarddialog zumÖffnen von Dateien geöffnet. Wenn sie dort eine Datei ausgewählt haben, wirdein Dialog geöffnet, in dem Sie die gewünschten Objekte auswählen können.Die Auswahl erfolgt wie unter ‘Projekt’ ‘Dokumentieren’ beschrieben.

Page 55: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-25

Wenn ein gleichnamiges Objekt im Projekt bereits besteht, dann erhält derName des neuen Objekts als letztes Zeichen einen Unterstrich und eine Zähl-nummer ("_1", "_2" ...).

‘Projekt’ ‘Projekt-information’

Unter diesem Menüpunkt können Sie Informationen zu Ihrem Projekt ab-speichern. Wenn der Befehl gegeben wurde, öffnet sich folgender Dialog:

Projektinformationen

Page 56: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-26

Als Projektinformation werden folgende Angaben angezeigt:

• Dateiname

• Verzeichnispfad

• Der Zeitpunkt der letzten Änderung (Geändert am)

Diese Angaben können nicht geändert werden.

Darüber hinaus können Sie noch folgende eigene Angaben hinzufügen:

• eine Bezeichnung des Projekts

• der Name des Autors

• die Versionsnummer und

• eine Beschreibung des Projekts.

Diese Angaben sind optional. Wenn Sie auf die Schaltfläche Statistik klicken,erhalten Sie eine statistische Auskunft über das Projekt.

Diese enthält die Angaben aus der Projektinformation sowie die Anzahl derBausteine, Datentypen, der lokalen und globalen Variablen, wie sie bei derletzten Übersetzung aufgezeichnet wurden.

Beispiel einer Projektstatistik

Wenn sie die Option ‘Projektinformation verlangen’ in der Kategorie ‘Laden& Speichern’ im Optionsdialog wählen, dann wird beim Abspeichern einesneuen Projekts oder beim Abspeichern eines Projekts unter einem neuenNamen automatisch die Projektinformation aufgerufen.

‘Projekt’ ‘GlobalSuchen’

Mit diesem Befehl können Sie nach dem Vorkommen eines Textes inBausteinen, Datentypen oder den Objekten der globalen Variablen suchen.

Page 57: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-27

Wenn der Befehl eingegeben wurde, öffnet sich ein Dialog, in dem Sie diegewünschten Objekte auswählen können. Die Auswahl erfolgt wie bei ‘Projekt’‘Dokumentieren’ beschrieben.

Wenn Sie die Auswahl mit OK bestätigt haben, erscheint der Dialog zumSuchen. Wird ein Text in einem Objekt gefunden, so wird das Objekt in denzugehörigen Editor geladen und die Fundstelle angezeigt. Das Anzeigen desgefundenen Textes sowie das Suchen und Weitersuchen verhalten sich analogzum Befehl ‘Bearbeiten’ ‘Suchen’.

‘Projekt’ ‘GlobalErsetzen’

Mit diesem Befehl können Sie nach dem Vorkommen eines Textes inBausteinen, Datentypen oder den Objekten der globalen Variablen suchen unddiesen Text durch einen anderen ersetzen. Bedienung und Ablauf verhaltensich ansonsten wie ‘Projekt’ ‘Global Suchen’ bzw. ‘Bearbeiten’ ‘Ersetzen’.

Steuerungskonfiguration

Wie bei jeder leistungsfähigen Software, werden auch in ecolog 100 PLUS

Variable deklariert. Die Deklarationen, Darstellung, Schreibweise usw., sind imHandbuch zur Programmerstellung ausführlich beschrieben. Hier wird nur kurzbei den jeweiligen Schritten darauf eingegangen.

Im folgenden wird das Vorgehen beim Laden der Hardwarekonfigurationenbeschrieben.

Menü Fenster

Über ‘Fenster‘, ‘Steuerungskonfiguration‘wird das entsprechende Fenstergeöffnet. Es ist zunächst noch leer.

Über ‘Einfügen‘ ‘Firmware‘, wird die gewünschte Steuerungskonfiguration, dieFirmware, aufgerufen. Im Fenster wird das Unterverzeichnis CR0501_H

Page 58: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-28

geöffnet, und die dort vorgefundene Datei CR0501_H.M66 ausgewählt. DasDateiformat sollte nicht geändert werden.

Einfügen Firmware

Firmware auswählen

Firmware festlegen

Erinnerung: h ist die Bezeichnung für die aktuelle Version. Möglicherweise stehthier auch ein anderer Buchstabe für eine andere Version.

Page 59: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-29

Nach Bestätigung mit OK erscheint die aufgerufene Konfiguration.

Hardwarekonfiguration ausgewählt

Fertig! Damit sind die Vorbereitungen abgeschlossen und die Arbeit kannbeginnen.

Objekte anlegen, löschen etc.

Nachfolgend wird beschrieben, wie man mit Objekten arbeitet und welche HilfenIhnen zur Verfügung stehen, um den Überblick über ein Projekt zu behalten(Ordner, Aufrufbaum, Querverweisliste,…).

Page 60: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-30

Objekt Als ”Objekt” werden

• Bausteine

• Datentypen

• Visualisierungen

• und die Ressourcen

– Access Variablen

– globale Variablen

– die Variablenkonfiguration

– die Traceaufzeichnung

– die Steuerungskonfiguration

– die Taskkonfiguration

– und der Watch- und Rezepturverwalter

bezeichnet.

Die zur Strukturierung des Projektes eingefügten Ordner sind zum Teil mitimpliziert. Sämtliche Objekte eines Projekts stehen im Object Organizer.

Wenn Sie den Mauszeiger eine kurze Zeit über einen Baustein im ObjectOrganizer halten, wird die Art des Bausteins (Programm, Funktion oderFunktionsblock) in einem Tooltip angezeigt; bei den globalen Variablen dasSchlüsselwort (VAR_ACCESS, VAR_GLOBAL, VAR_CONFIG).

Ordner Um den Überblick bei größeren Projekten zu behalten, sollte man seineBausteine, Datentypen, Visualisierungen und globalen Variablen sinnvoll inOrdnern gruppieren.

Es ist eine beliebige Schachtelungstiefe von Ordnern möglich. Befindet sich vordem geschlossenen Ordnersymbol ein Pluszeichen, beinhaltet dieser OrdnerObjekte und/oder weitere Ordner. Mit einem Klick auf das Pluszeichen wird derOrdner aufgeklappt und die untergeordneten Objekte erscheinen. Mit einemKlick auf das nun voranstehende Minuszeichen kann er wieder zugeklapptwerden. Im Kontextmenü finden Sie die Befehle ‘Knoten Expandieren’ und‘Knoten Kollabieren’ mit der gleichen Funktionalität.

Mit Drag&Drop können Sie die Objekte und auch die Ordner innerhalb ihrerObjektart verschieben. Selektieren Sie hierzu das Objekt und verschieben esbei gedrückter linker Maustaste an den gewünschten Ort.

Ordner haben keinerlei Einfluß auf das Programm, sondern dienen lediglichder übersichtlichen Strukturierung Ihres Projektes.

Page 61: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-31

‘Neuer Ordner’ Mit dem Befehl wird ein neuer Ordner als Ordnungsobjekt eingefügt. Ist einOrdner selektiert, wird der neue unter diesem Ordner angelegt, ansonsten aufgleicher Ebene.

Das Kontextmenü des Object Organizers, das diesen Befehl beinhaltet,erscheint, wenn ein Objekt oder die Objektart selektiert ist und Sie die rechteMaustaste oder <Umschalt>+<F10> drücken.

‘KnotenExpandieren’‘KnotenKollabieren’

Mit dem Befehl Expandieren werden die Objekte sichtbar aufgeklappt, die sichunter dem gewählten Objekt befindet. Mit Kollabieren werden die unter-geordneten Objekte nicht mehr angezeigt.

Bei Ordnern können Sie auch mit Doppelklick oder Drücken der <Eingabetaste>die Ordner auf- und zuklappen.

Das Kontextmenü des Object Organizers, das diesen Befehl beinhaltet,erscheint, wenn ein Objekt oder die Objektart selektiert ist und Sie die rechteMaustaste oder <Umschalt>+<F10> drücken.

‘Projekt’’Objektlöschen’

Kurzform: <Entf>

Mit diesem Befehl wird das aktuell markierte Objekt (ein Baustein, eineDatentyp, eine Visualisierung oder globale Variablen) oder ein Ordner mit dendarunterliegenden Objekten aus dem Object Organizer entfernt, und ist somitim Projekt gelöscht. Zuvor wird zur Sicherheit noch einmal abgefragt.

Wenn das Editorfenster des Objekts geöffnet war, wird es automatischgeschlossen.

Verwendet man zum Löschen den Befehl ‘Bearbeiten’‘Ausschneiden’, wirddas Objekt zusätzlich in die Zwischenablage geschoben.

‘Projekt’’Objekteinfügen’

Kurzform: <Einfg>

Mit diesem Befehl erstellen Sie ein neues Objekt. Die Art des Objekts(Baustein, Datentyp, Visualisierung oder globale Variablen) hängt von dergewählten Registerkarte im Object Organizer ab.

In der erscheinenden Dialogbox geben Sie den Namen des neuen Objekts an.Beachten Sie, daß der Name des Objekts noch nicht verwendet worden ist.

Wenn es sich um einen Baustein handelt, müssen zusätzlich der Typ desBausteins (Programm, Funktion oder Funktionsblock) und die Sprache, in der erprogrammiert werden soll, gewählt werden.

Page 62: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-32

Dialogbox zum Anlegen eines neuen Bausteins

Nach dem Bestätigen der Eingabe erscheint das zum Objekt passendeEingabefenster.

Verwendet man dagegen den Befehl ‘Bearbeiten’‘Einfügen’, wird das Objektaus der Zwischenablage eingefügt und es erscheint kein Dialog.

‘Projekt’’Objektumbenennen’

Kurzform: <Leertaste>

Mit diesem Befehl geben Sie dem aktuell ausgewählten Objekt oder Ordnereinen neuen Namen. Beachten Sie, daß der Name des Objekts noch nichtverwendet worden ist.

War das Bearbeitungsfenster des Objekts geöffnet, dann ändert sich sein Titelbei der Neubenennung des Objekts automatisch.

‘Projekt/Objektkonvertieren’

Mit diesem Befehl können Sie Bausteine in den Sprachen ST, FUP, KOP undAWL in eine der drei Sprachen AWL, FUP und KOP übersetzen.

Dazu muß das Projekt übersetzt sein. Wenn Sie den Menübefehl gegebenhaben, öffnet sich folgender Dialog:

Dialog zur Konvertierung eines Bausteins

Wählen Sie die Sprache, in die Sie konvertieren wollen, und geben Sie demneuen Baustein einen neuen Namen. Klicken Sie auf OK und der neueBaustein wird Ihrer Bausteinliste hinzugefügt.

‘Projekt/Objektkopieren’

Mit diesem Befehl wird ein ausgewähltes Objekt kopiert und unter neuemNamen abgespeichert.

Page 63: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-33

Dialog zum Kopieren eines Bausteins

‘Projekt ‘Objektbearbeiten’’

Kurzform: <Eingabetaste>

Mit diesem Befehl laden Sie ein im Object Organizer markiertes Objekt in denjeweiligen Editor. Ist bereits ein Fenster mit diesem Objekt geöffnet, so erhält esden Fokus, d. h. es wird in den Vordergrund geholt, und kann nun bearbeitetwerden.

Es gibt noch zwei weitere Möglichkeiten, um ein Objekt zu bearbeiten:

• Doppelklick mit der Maus auf das gewünschte Objekt

• Tippen Sie im Object Organizer die ersten Buchstaben des Objektnamensein.

Daraufhin öffnet sich ein Dialog, in dem alle Objekte der eingestellten Objektartmit diesen Anfangsbuchstaben zur Auswahl stehen. Selektieren Sie dasgewünschte Objekt und klicken auf die Schaltfläche Öffnen, um das Objekt insein Bearbeitungsfenster zu laden. Diese Möglichkeit wird bei der ObjektartRessourcen nur für globale Variablen unterstützt.

Die letzte Möglichkeit ist vor allem in Projekten mit vielen Objekten hilfreich.

‘Projekt’ ‘Aktionhinzufügen’

Mit diesem Befehl erzeugt man zum selektierten Baustein im Object Organizereine Aktion. Im erscheinenden Dialog wählt man den Aktionsnamen und dieSprache aus, in der die Aktion eingefügt werden soll.

Die neue Aktion wird im Object Organizer unter ihren Baustein gehängt. Vordem Baustein erscheint nun ein Pluszeichen. Durch einen einfachen Mausklickauf das Pluszeichen erscheinen die Aktionsobjekte und vor dem Baustein einMinuszeichen. Durch erneutes Klicken auf das Minuszeichen werden dieAktionen nicht mehr angezeigt und es erscheint wieder das Pluszeichen. Dieskönnen Sie auch mit den Kontextmenübefehlen ‘Knoten Expandieren’ und‘Knoten Kollabieren’ erreichen

Mit Doppelklick auf die Aktion oder durch Drücken der <Eingabetaste> wird eineAktion zum Editieren in ihren Editor geladen.

‘Projekt’ ‘Instanzöffnen’

Mit diesem Befehl kann man einzelne Instanzen von Funktionsblöcken öffnenund anzeigen lassen. Der Funktionsblock, dessen Instanz geöffnet werden soll,muß zuerst aus der Bausteinliste ausgewählt werden, bevor Sie diesen Befehlausführen.

Instanzen können erst nach dem Einloggen geöffnet werden! (Projekt wurdekorrekt übersetzt und mit ‘Online/Einloggen’ an den Controller übertragen).

Page 64: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-34

‘Projekt/Aufruf-baum ausgeben’

Mit diesem Befehl öffnen Sie ein Fenster, in dem der Aufrufbaum des in derObjektliste ausgewählten Objekts dargestellt wird. Hierfür muß das Projektübersetzt sein. Der Aufrufbaum beinhaltet sowohl Aufrufe von Bausteinen alsauch Verweise auf verwendete Strukturen.

Beispiel für einen Aufrufbaum

‘Projekt’’Querverweislisteausgeben’

Mit diesem Befehl öffnen Sie einen Dialog, der die Ausgabe aller Ver-wendungsstellen zu einer Variablen, einer Adresse oder einem Bausteinermöglicht. Hierfür muß das Projekt übersetzt sein.

Wählen Sie zuerst die Kategorie Variable, Adresse oder Baustein und gebenSie dann den Namen des gewünschten Elements ein. Mit Klicken auf dieSchaltfläche Querverweise erhalten Sie die Liste aller Verwendungsstellen.

Es wird neben dem Baustein und der Zeilen- bzw. Netzwerknummerangegeben

• ob lesender oder schreibender Zugriff an dieser Stelle erfolgt

• ob es sich um eine lokale oder globale Variable handelt

• und ob bei einer Variablen eine Adressbindung vorliegt.

Wenn Sie eine Zeile der Querverweisliste markieren und die Schaltfläche Gehezu betätigen oder einen Doppelklick auf die Zeile ausführen, wird der Bausteinin seinem Editor an der entsprechenden Stelle angezeigt. Auf diese Weisekönnen Sie zu allen Verwendungsstellen ohne aufwendige Suche springen.

Um sich das Handling zu erleichtern, können Sie mit der Schaltfläche InsMeldungsfenster die aktuelle Querverweisliste ins Meldungsfenster über-nehmen und von dort zum jeweiligen Baustein wechseln.

Page 65: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-35

Dialog und Beispiel einer Querverweisliste

‘Projekt/UnbenutzteVariablenausgeben’

Dieser Befehl ist ebenfalls nur ausführbar, wenn das Projekt bereits übersetztwurde. Mit diesem Befehl wird eine Liste mit allen Variablen ausgegeben, diezwar im Projekt deklariert wurden, aber nirgendwo angewendet werden. Wennes keine unbenutzten Variablen in Ihrem Projekt gibt, dann wird das gemeldet,ansonsten öffnet folgendes Fenster:

Unbenutzte Variablen eines Projekts

Page 66: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-36

Mit Doppelklick auf eine Variable wechseln Sie in den jeweiligen Baustein, indem die Variable deklariert wurde.

Dieselbe Aktion lösen Sie aus, indem Sie den Cursor auf die Variable setzenund die Schaltfläche Gehe zu betätigen.

‘Extras/VorhergehendeVersion’

Mit diesem Befehl können Sie den Baustein, den Sie momentan bearbeiten, aufden Zustand nach dem letzten Speichern zurücksetzen. Der wiederhergestellteZustand ist entweder der, der beim letzten manuellen Speichern(‘Datei/Speichern’) oder der, der beim automatischen Speichern festgehaltenwurde. Je nachdem, welche Version das jüngere Datum besitzt.

Allgemeine Editierfunktionen

Über die folgenden Befehle verfügen Sie in allen Editoren. Diese Befehlebefinden sich unter dem Menüpunkt ‘Bearbeiten’.

‘Bearbeiten’’Rückgängig’

Kurzform: <Strg>+<Z>

Dieser Befehl macht im aktuell geöffneten Editorfenster bzw. im ObjectOrganizer die letzte ausgeführte Aktion rückgängig.

Durch mehrfaches Ausführen dieses Befehls können alle Aktionen rückgängiggemacht werden bis zu dem Zeitpunkt, an dem das Fenster geöffnet wurde.Dies gilt für alle Aktionen in den Editoren für Bausteine, Datentypen,Visualisierungen und globalen Variablen und im Object Organizer.

Mit ‘Bearbeiten’’Wiederherstellen’ können Sie eine rückgängig gemachteAktion erneut wieder ausführen.

‘Bearbeiten’’Wieder-herstellen’

Kurzform: <Strg>+<Y>

Mit dem Befehl können Sie eine rückgängig gemachte Aktion(‘Bearbeiten’’Rückgängig’) im aktuell geöffneten Editorfenster bzw. im ObjectOrganizer wiederherstellen.

So oft wie zuvor der Befehl ’Rückgängig’ ausgeführt wurde, so oft kann auch’Wiederherstellen’ ausgeführt werden.

Die Befehle ’Rückgängig’ und ’Wiederherstellen’ beziehen sich jeweils aufdas aktuelle Fenster. Jedes Fenster führt seine eigene Aktionsliste. Wenn Siein mehreren Fenstern Aktionen rückgängig machen wollen, aktivieren Siejeweils das entsprechende Fenster. Beim Rückgängigmachen oder Wieder-herstellen im Object Organizer muß dort der Fokus liegen.

Page 67: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-37

‘Bearbeiten’’Ausschneiden’

Kurzform: <Strg>+<X> oder <Umschalt>+<Entf>

Dieser Befehl schiebt die aktuelle Markierung aus dem Editor in dieZwischenablage. Die Markierung wird aus dem Editor entfernt.

Beim Object Organizer gilt dies analog mit dem markierten Objekt, wobei nichtalle Objekte gelöscht werden können, z. B. nicht die Steuerungskonfiguration.

Beachten Sie, daß nicht alle Editoren das Ausschneiden unterstützen, unddaß es in einigen Editoren eingeschränkt sein kann.

Die Form der Auswahl hängt vom jeweiligen Editor ab:

• In den Texteditoren (AWL, ST, Deklarationen) ist die Markierung eine Listevon Zeichen.

• Im FUP- und im KOP-Editor ist die Auswahl eine Menge von Netzwerken,die jeweils durch ein gepunktetes Rechteck im Netzwerk-Zahlenfeldmarkiert sind bzw. eine Box mit allen vorangehenden Linien, Boxen undOperanden.

• Im AS-Editor ist die Auswahl ein Teil einer Schrittfolge, umgeben von einemgepunkteten Rechteck.

Um den Inhalt der Zwischenablage einzufügen, benutzen Sie den Befehl‘Bearbeiten’’Einfügen’. Im AS-Editor können Sie ebenso die Befehle‘Extras’’Parallelzweig einfügen (rechts)’ bzw. ‘Extras’’Einfügen danach’benutzen.

‘Bearbeiten/Kopieren’

Kopiert die aktuelle Markierung vom Editor in die Zwischenablage. Der Inhaltdes Editor-Fensters wird dabei nicht verändert.

Kurzform: <Strg>+<C>

Beim Object Organizer gilt dies analog mit dem markierten Objekt, wobei nichtalle Objekte kopiert werden können, z. B. die Steuerungskonfiguration.

Beachten Sie, daß nicht alle Editoren das Kopieren unterstützen, und daß esin einigen Editoren eingeschränkt sein kann.

Für die Form der Auswahl gelten die selben Regeln wie bei‘Bearbeiten’’Ausschneiden’.

Page 68: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-38

‘Bearbeiten’’Einfügen’

Kurzform: <Strg>+<V>

Fügt den Inhalt der Zwischenablage an die aktuelle Position im Editorfensterein. In den graphischen Editoren ist dieser Befehl nur dann ausführbar, wenndurch das Einfügen wieder eine korrekte Struktur entsteht.

Beim Object Organizer wird das Objekt aus der Zwischenablage eingefügt.

Beachten Sie, daß das Einfügen nicht von allen Editoren unterstützt wird, unddaß es in einigen Editoren eingeschränkt sein kann.

Die aktuelle Position wird je nach Typ des Editors unterschiedlich definiert:

• Bei den Texteditoren (AWL, ST, Deklarationen) ist die aktuelle Position diePosition des blinkenden Cursors (eine kleine senkrechte Linie, die man perMausklick positionieren kann).

• Im FUP- und im KOP-Editor ist die aktuelle Position das erste Netzwerk miteinem gepunkteten Rechteck im Netzwerknummernbereich. Der Inhalt derZwischenablage wird vor diesem Netzwerk eingefügt. Wurde eineTeilstruktur kopiert, so wird diese vor dem markierten Element eingefügt.

• Im AS-Editor ist die aktuelle Position durch die Auswahl festgelegt, die miteinem gepunkteten Rechteck umgeben ist. Der Inhalt der Zwischenablagewird, abhängig von der Markierung und dem Inhalt der Zwischenablage, vordieser Markierung, oder in einem neuen Zweig (parallel oder alternativ)links der Markierung eingefügt.

Im AS können auch die Befehle ‘Extras’’Parallelzweig einfügen (rechts)’bzw. ‘Extras’’Einfügen danach’ benutzt werden, um den Inhalt derZwischenablage einzufügen.

‘Bearbeiten’’Löschen’

Kurzform: <Entf>

Löscht den markierten Bereich aus dem Editorfenster. Der Inhalt der Zwischen-ablage wird dabei nicht verändert.

Beim Object Organizer gilt dies analog mit dem markierten Objekt, wobei nichtalle Objekte ausgeschnitten werden können, z. B. nicht die Steuerungs-konfiguration.

Für die Form der Auswahl gelten die selben Regeln wie bei ‘Bearbeiten’’Ausschneiden’.

Im Bibliotheksverwalter ist die Auswahl der aktuell gewählte Bibliotheksname.

Page 69: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-39

‘Bearbeiten/Suchen’

Mit diesem Befehl suchen Sie nach einer bestimmten Textstelle im aktuellenEditor-Fenster. Es öffnet der standardmäßige Windows-Dialog für die Suche.Hier können Sie den zu suchenden Text eingeben.

Außerdem können Sie auswählen, ob Sie den zu suchenden Text als Wortsuchen wollen, oder auch als Teil eines Worts, ob bei der Suche die Groß-/-Kleinschreibung beachtet werden soll und ob die Suche ausgehend von deraktuellen Cursorposition nach oben oder unten erfolgen soll.

Der Dialog zum Suchen

‘Bearbeiten/Weitersuchen’

Kurzform: <F3>

Mit diesem Befehl führen Sie einen Suchbefehl mit denselben Parameterndurch wie bei der letzten Ausführung des Befehls „Suchen“.

‘Bearbeiten/Ersetzen’

Mit diesem Befehl suchen Sie nach einer bestimmten Textstelle genau wie beimBefehl ‘Bearbeiten/Suchen’, und ersetzen Sie durch eine andere, die Sie ineinem zusätzlichen Dialogfeld eingeben können.

Der Dialog zum Suchen und Ersetzen

‘Bearbeiten’’Eingabehilfe’

Kurzform: <F2>

Mit diesem Befehl erhalten Sie einen Dialog zur Auswahl von möglichenEingaben an der aktuellen Cursorposition im Editorfenster. Wählen Sie in derlinken Spalte die gewünschte Kategorie der Eingabe aus. Markieren Sie in derrechten Spalte den gewünschten Eintrag und bestätigen Sie Ihre Wahl mit OK.Damit wird Ihre Auswahl an dieser Position eingefügt.

Die jeweils angebotenen Kategorien sind abhängig von der aktuellenCursorposition im Editorfenster, d. h. von dem was an dieser Stelle eingetragenwerden kann (z. B. Variablen, Operatoren, Bausteine, Konvertierungen, ...)

Page 70: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-40

Dialog zur Eingabehilfe

An manchen Positionen (z. B. in der Watchliste) werden mehrstufigeVariablennamen benötigt. Zunächst enthält der Dialog zur Eingabehilfe eineListe aller Bausteine sowie einen einzelnen Punkt für die globalen Variablen.Nach jedem Bausteinnamen steht ein Punkt. Durch Doppelklick bzw. Drückender <Eingabetaste> öffnet sich die Liste der Variablen zu einem markiertenBaustein. Instanzen und Datentypen können gegebenenfalls wieder aufgeklapptwerden. Durch OK wird die selektierte Variable übernommen.

Dialog zur Eingabehilfe bei mehrstufigen Variablennamen

Einige Einträge (z. B. Globale Variablen) werden erst nach einem Über-setzungslauf in der Eingabehilfe aktualisiert.

Page 71: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-41

‘Bearbeiten’’VariablenDeklaration’

Kurzform: <Umschalt>+<F2>

Mit diesem Befehl öffnet sich der Dialog zur Variablendeklaration, der sich beieingestellter Projektoption ‘Automatisch deklarieren ‘ auch öffnet, sobald Sie imDeklarationseditor eine neue Variable eingeben.

‘Bearbeiten’’Nächster Fehler’

Kurzform: <F4>

Nach dem fehlerhaften Übersetzen eines Projekts kann mit diesem Befehl dernächste Fehler angezeigt werden. Es werden jeweils das entsprechendeEditorfenster aktiviert, die fehlerhafte Stelle markiert und gleichzeitig imMeldungsfenster die passende Fehlermeldung angezeigt.

‘Bearbeiten’’VorherigerFehler’

Kurzform: <Umschalt>+<F4>

Nach dem fehlerhaften Übersetzen eines Projektes kann mit diesem Befehl dervorherige Fehler angezeigt werden. Es wird jeweils das entsprechendeEditorfenster aktiviert, die fehlerhafte Stelle markiert und gleichzeitig imMeldungsfenster die passende Fehlermeldung angezeigt.

Allgemeine Onlinefunktionen

Die zur Verfügung stehenden Online-Befehle sind unter dem Menüpunkt Onlinegesammelt. Die Ausführung einiger Befehle ist abhängig vom aktiven Editor.

Die OnlineBefehle stehen erst nach dem Einloggen zur Verfügung.

‘Online/Einloggen’

Das Programmiersystem versucht eine Verbindung mit dem Controlleraufzunehmen (oder startet das Simulationsprogramm).

Nach erfolgreichem Einloggen stehen alle Onlinefunktionen zur Verfügung(soweit die entsprechenden Einstellungen in ‘Online/Übersetzungsoptionen’eingegeben wurden). Zu allen am Bildschirm sichtbaren Variablendeklarationenwerden die aktuellen Werte eingeblendet.

Wenn sich dasSystem meldet

Eventuell erscheint die folgende Meldung:

Fehler:

„Es konnte keine Verbindung zur Steuerung aufgenommen werden“

Überprüfen Sie, ob die in ‘Online/Kommunikationsparameter’ eingestelltenParameter mit denen Ihres Controllers übereinstimmen.

Insbesondere sollten Sie prüfen, ob die Schnittstellennummer korrekt ist (wennSie COM1 eingestellt haben, sollte das Kabel auch tatsächlich an COM1eingesteckt sein) und ob die Baudraten in Controller und Programmiersystemübereinstimmen (Voreinstellung in ecolog: 9600 Bd).

Page 72: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-42

Fehler:

„Das Programm wurde geändert! Soll das neue Programm geladen werden?“

Das aktuelle Projekt im Editor paßt nicht zu dem aktuell im Controller geladenenProgramm (bzw. zu dem gestarteten Simulationsprogramm). Monitoring undDebugging ist deshalb nicht möglich. Sie können nun „Nein“ wählen, sichwieder ausloggen und das richtige Projekt öffnen oder mit „Ja“ das aktuelleProjekt in die Steuerung laden. Ein Einloggen ohne Programmabgleich ist nurdurch Nutzung des Projektierungsmodus in der Steuerungskonfigurationmöglich.

‘Online/Ausloggen’

Die Verbindung zum Controller wird abgebaut bzw. das Simulationsprogrammbeendet.

‘Online/Laden’ Das aktuelle Projekt wird in den Controller geladen (bzw. als Simulationgestartet).

‘Online/Start’ Kurzform: <F5>

Startet die Abarbeitung des Anwenderprogramms im Controller oder in derSimulation.

‘Online/Stop’ Stoppt die Abarbeitung des Anwenderprogramms am Ende des aktuellenProgrammdurchlaufs. Die Ausgänge werden zurückgesetzt. Ebenso werdenauch die an das übergeordnete Feldbussystem übertragenen Bytes auf 0gesetzt.

‘Online/Breakpointan/aus’

Kurzform: <F9>

Er setzt einen Breakpoint im aktiven Fenster.In den Texteditoren (AWL, ST)wird der Breakpoint auf die Zeile gesetzt, in der der Cursor steht, wenn dieseZeile eine Breakpointposition ist (zu erkennen an der dunkelgrauen Farbe desZeilennummernfeldes).

Dieser Menüpunkt ist nur im Simulationsbetrieb verfügbar!

Im FUP und KOP wird der Breakpoint auf das aktuell markierte Netzwerkgesetzt.

Im AS wird der Breakpoint auf den aktuell markierten Schritt gesetzt. Ist an deraktuellen Position ein Breakpoint gesetzt, so wird dieser gelöscht.

Ist ein Breakpoint gesetzt, so wird das Zeilennummernfeld bzw. dasNetzwerknummernfeld bzw. der Schritt mit hellblauer Hintergrundfarbedargestellt. Steht die Bearbeitung auf solch einem Breakpoint, so wird dasentsprechende Feld mit einer roten Hintergrundfarbe dargestellt.

Page 73: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-43

‘Online/Breakpoint-Dialog

Anstatt Breakpoints direkt im Code zu setzen und zu setzen, kann dies auch imBreakpointdialog erfolgen:

Dieser Menüpunkt ist nur im Simulationsbetrieb verfügbar!

Der Dialog zum Editieren der Breakpoints

Mit den beiden Auswahllisten Baustein und Ort kann ein Baustein und eineZeile bzw. Netzwerk ausgewählt werden, an dem ein Breakpoint gesetztwerden soll,. Die Liste unter Breakpoints enthält alle aktuell gesetztenBreakpoints.

Die folgenden Buttons können in der Dialog-Box aktiviert werden:

• Mit ‘Schließen’ verläßt man den Dialog.

• Mit ‘Hinzufügen’ wird der aktuell eingestellte Breakpoint hinzugefügt

• Mit ‘Löschen’ wird der aktuell in der Liste ausgewählte Breakpoint gelöscht.

• Mit ‘Alle löschen’ werden alle Breakpoints gelöscht.

• Mit ‘Gehe zu’ wird die Stelle angezeigt, an der der aktuell ausgewählteBreakpoint steht.

‘Online/Einzelschrittüber’

Kurzform: <F10>

Es wird ein Einzelschritt ausgeführt, wobei bei Aufrufen von Bausteinen erstnach dessen Abarbeitung angehalten wird. Im AS wird eine komplette Aktionabgearbeitet

Page 74: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-44

Dieser Menüpunkt ist nur im Simulationsbetrieb verfügbar!

‘Online/Einzelschritt in’

Kurzform: <F8>

Es wird ein Einzelschritt abgearbeitet, wobei bei Aufrufen von Bausteinen vorder Ausführung der ersten Anweisung des Bausteins angehalten wird.

Dieser Menüpunkt ist nur im Simulationsbetrieb verfügbar!

‘Online/Einzelzyklus’

Kurzform: <Strg>+<F5>

Es wird ein Steuerungszyklus abgearbeitet und dann angehalten.

‘Online/Werteschreiben bzw.Online Werteforcen

Um den Wert einer Variablen zu verändern, muß zunächst ein doppelterMausklick auf die Zeile, in der die Variable deklariert ist, ausgeführt werden.Anschließend kann in einer Dialogbox der neue Wert der Variablen eingegebenwerden.

Dialogbox zum Schreiben neuer Variablenwerte

Dieser wird noch nicht in den Controller geschrieben.

Es können nun die Werte einer Reihe von Variablen auf einen bestimmtenWert gesetzt und anschließend auf einmal (Zykluskonsistent) in denController geschrieben werden.

Mit ‘Werte schreiben’ werden die Werte einmalig geschrieben und könnensofort wieder überschrieben werden. Kurzform: <Strg>+<F7>

Mit ‘Werte forcen’ werden die Variablen solange nach jedem Zyklusgeschrieben, bis dieser Vorgang mit ‘Forcen aufheben’ gestoppt wird. Kurzform:<F7>

Page 75: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-45

‘Online/Forcenaufheben’

Kurzform: <Umschalt>+<F7>

Beendet das Forcen von Variablen im Controller.

‘Online/Aufrufhierarchie’

Diesen Befehl können Sie starten, wenn die Simulation an einem Breakpointstoppt. Es wird ein Dialog mit einer Liste der Bausteine, die sich momentan imAufrufkeller befinden, ausgegeben.

Beispiel für eine Aufrufhierarchie

Der erste Baustein ist stets PLC_PRG, denn hier beginnt die Abarbeitung.

Der letzte Baustein ist stets der Baustein, in dem die Abarbeitung momentansteht.

Nachdem Sie einen der Bausteine ausgewählt und die Schaltfläche ‘Gehe zu’betätigt haben, wird der ausgewählte Baustein in ein Fenster geladen. DieZeile, bzw. das Netzwerk, in dem sich die Abarbeitung befindet, wird angezeigt.

‘Online/Ablaufkontrolle’

Dieser Menüpunkt ist nur im Simulationsbetrieb verfügbar!Ist die Ablaufkontrolle gewählt, so erscheint ein Haken (ü) hinter demMenüpunkt. Danach wird jede Zeile, bzw. jedes Netzwerk, das während desletzten Simulationszyklus ausgeführt wurde, markiert.

Das Zeilennummernfeld bzw. das Netzwerknummernfeld der durchlaufenenZeilen bzw. Netzwerke wird grün dargestellt. Im AWL-Editor wird am linkenRand jeder Zeile ein weiteres Feld eingefügt, in dem der aktuelle Inhalt desAkkumulators angezeigt wird. In den graphischen Editoren zum Funktionsplanund Kontaktplan wird in allen Verbindungslinien, die keine boolschen Wertetransportieren, ein weiteres Feld eingefügt. Wenn diese Aus- und Eingängebelegt werden, dann wird der Wert, der über die Verbindungslinie transportiertwird, in diesem Feld angezeigt. Verbindungslinien, die ausschließlich boolscheWerte transportieren, werden dann blau eingefärbt, wenn sie TRUEtransportieren. So kann der Informationsfluß ständig mitverfolgt werden.

‘Online/Simulation’

Ist Simulation ausgewählt (Haken hinter dem Menüpunkt), so kommunizierendie Onlinedienste nicht mit dem Controller, sondern mit einemSimulationsprogramm, das auf dem PC läuft.

Page 76: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-46

‘Online/Kommunikationsparameter’

In einem Dialogfenster können die Parameter für die Übertragung über dieserielle Schnittstelle eingegeben werden. Wichtig ist, daß diese Parameter mitden im Controller eingestellten übereinstimmen.

Dialog zur Einstellung der Kommunikationsparameter

Page 77: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-47

Eingestellt werden können

• die Baudrate

• ob mit geradem, ungeradem oder keinem Parity übertragen werden soll

• die Zahl der Stopbits

• sowie die Schnittstelle (COM1, COM2 etc.), über die übertragen werdensoll.

Die Standardeinstellungen betragen 9600 Baud, 1 Stopp Bit und Kein Parity.Die gewählten Parameter werden mit dem Projekt gespeichert.

Fenster anordnen

Unter dem Menüpunkt ‘Fenster’ finden Sie alle Befehle zur Fensterverwaltung.Das sind sowohl Befehle zum automatischen Anordnen Ihrer Fenster, als auchBefehle zum Öffnen verschiedener Sonderfenster und zum Wechseln zwischenIhren geöffneten Fenstern. Am Ende des Menüs finden Sie eine Auflistung allergeöffneten Fenster in der Reihenfolge, in der sie geöffnet wurden. Mit einemMausklick auf den jeweiligen Eintrag wechseln Sie zum gewünschten Fenster.Vor dem aktiven Fenster erscheint ein Haken (ü).

‘Fenster/Nebeneinander’

Mit diesem Befehl ordnen Sie alle Fenster nebeneinander an, so daß sie sichnicht überlappen und die gesamte Arbeitsfläche ausfüllen.

‘Fenster/Untereinander’

Alle Fenster werden untereinander angeordnet. Sie überlappen sich nicht undfüllen die gesamte Arbeitsfläche aus.

‘Fenster/Überlappend’

Alle Fenster werden kaskadenförmig hintereinander angeordnet.

‘Fenster/Symboleanordnen’

Alle Fenster werden als Symbole am unteren Ende der Arbeitsfläche desHauptfensters angeordnet.

‘Fenster/Alle Schließen’

Alle geöffneten Fenster werden mit diesem Befehl geschlossen.

‘Fenster/Meldungen’

Mit diesem Befehl öffnen sie das Fenster mit den letzten Fehlermeldungen. Esenthält alle Meldungen aus dem letzten Übersetzungs- oder Überprüfungs-vorgang. Wenn Sie im Meldungen-Fenster mit der Maus auf eine Meldungklicken, öffnet das Fenster mit dem Baustein, in dem der Fehler erkannt wurde.Die fehlerhafte Zeile des Bausteins wird blau eingefärbt.

Page 78: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-48

Die rettende Hilfe

Sollten Sie während Ihrer Arbeit irgendwelche Probleme mit ecolog haben,steht Ihnen eine Online-Hilfe zur Verfügung. Dort finden Sie alle Informationen,die sich auch in diesem Handbuch befinden.

‘Hilfe’’Inhalt undIndex’

Mit diesem Befehl öffnet das Hilfethemen-Fenster.

Unter der Registerkarte Inhalt finden Sie das Inhaltsverzeichnis. Die Bücherlassen sich mit Doppelklick oder die entsprechenden Schaltflächen öffnen undschließen. Mit Doppelklick oder Betätigen der Schaltfläche Anzeigen auf einemmarkierten Thema, wird dieses im Hilfe-Hauptfenster oder im Stichwort-Fensterangezeigt.

Klicken Sie auf die Registerkarte Index, um nach einem bestimmten Stichwortzu suchen und klicken Sie auf die Registerkarte Suchen, um eine Volltextsuchedurchzuführen. Folgen Sie den Anweisungen in den Registerkarten.

Das Hilfethemen Fenster

Page 79: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-49

Hilfe-Hauptfenster

Im Hilfe-Hauptfenster werden Themen mit untergeordneten Stichwortenangezeigt.

Folgende Schaltflächen stehen zur Verfügung:

• Hilfethemen öffnet das Hilfethemen-Fenster.

• Zurück zeigt den Hilfeeintrag, der zuvor angezeigt wurde.

• Drucken öffnet den Dialog zum Drucken.

• << zeigt den Hilfeeintrag, der sequentiell vor dem jetzigen liegt

• >> zeigt den sequentiell nächsten Hilfeeintrag

Zusätzlich können Sie folgende Menübefehle nutzen:

• Mit ‘Datei’‘Thema drucken’ können Sie den aktuellen Hilfeeintragausdrucken.

• Wenn Sie den Befehl ‘Bearbeiten’‘Kopieren’ wählen, wird derausgewählte Text in die Zwischenablage kopiert. Von dort können Sie denText in anderen Anwendungen einfügen und weiterverwenden.

• Wenn Sie den Befehl ‘Bearbeiten’‘Anmerken’ geben, dann öffnet sich einDialog. Auf der linken Seite des Dialogs befindet sich ein Editierfeld, in demSie eine Anmerkung zu der Hilfeseite machen können.

Auf der rechten Seite befinden sich Schaltflächen

• zum Speichern des Textes

• zum Abbrechen der Anwendung

• zum Löschen der Anmerkung

• zum Kopieren eines markierten Texts in die Zwischenablage

• und zum Einfügen eines Texts aus der Zwischenablage.

Wenn Sie zu einem Hilfeeintrag eine Anmerkung gemacht haben, erscheintoben links eine kleine grüne Büroklammer. Mit Mausklick auf die Büroklammeröffnet sich der Dialog mit der gemachten Anmerkung.

• Wenn Sie sich eine Seite der Hilfe merken wollen, können Sie einLesezeichen setzen. Wählen Sie dafür den Befehl‘Lesezeichen’’definieren’. Es erscheint ein Dialog, in dem Sie einenneuen Namen eingeben können (als Vorgabe dient der Name der Seite),oder ein altes Lesezeichen löschen können. Wurden Lesezeichen definiert,dann werden diese im Menü ‘Lesezeichen’ angezeigt. Durch Wählendieser Menüpunkte gelangen Sie in die gewünschte Seite.

• Unter ‘Optionen’ können Sie einstellen, ob die Hilfefenster immer imVordergrund oder im Hintergrund oder nach Standard erscheinen.

Page 80: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die ecolog 100 PLUS-Komponenten im Einzelnen

4-50

• Unter ‘Optionen’ erhalten Sie mit ‘Bisherige Themen anzeigen’ einAuswahlfenster mit den bisher angezeigten Hilfethemen. Mit Doppelklickauf einen Eintrag wird dieser angezeigt.

• Je nach Wunsch können Sie unter ‘Optionen’ die ‘Schriftart’ klein, normaloder groß wählen.

• Ist ‘Optionen’‘Systemfarbe verwenden’ gewählt, wird die Hilfe nicht inden eingestellten Farben, sondern in den Systemfarben angezeigt.

Das Hilfe-Hauptfenster

Page 81: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-51

Stichwort-Fenster

Im Stichwort-Fenster werden Menübefehle, Begriffe oder Abläufe erklärt.

Das Stichwort-Fenster bleibt standardmäßig immer an der Oberfläche, außer esist im Hilfe-Hauptfenster die Option Hilfe im Hintergrund eingestellt.

Folgende Schaltflächen stehen zur Verfügung:

• Hilfethemen öffnet das Hilfethemen-Fenster.

• Zurück zeigt den Hilfeeintrag, der zuvor angezeigt war.

• Drucken öffnet den Dialog zum Drucken.

• << zeigt den Hilfeeintrag, der sequentiell vor dem jetzigen liegt.

• >> zeigt den sequentiell nächsten Hilfeeintrag.

Stichwort-Fenster

KontextsensitiveHilfe

Kurzform: <F1>

Sie können die Taste <F1> in einem aktiven Fenster, einem Dialog oder übereinem Menübefehl betätigen. Bei Menübefehlen wird die Hilfe für den derzeithervorgehobenen Befehl angezeigt.

Sie können auch einen Text markieren (z. B. ein Schlüsselwort oder eineStandardfunktion) und sich die Hilfe dazu anzeigen lassen.

Page 82: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-52

4.2. Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

In diesem Abschnitt werden wir ein kurzes Projekt schreiben. Das Ziel diesesAbschnitts ist es, Sie mit der grundsätzlichen Vorgehensweise bei derErstellung eines ecolog-Projekts vertraut zu machen.

Aufgaben-stellung

Eine Lampe C soll dann EIN sein, wenn zwei Schalter A und B geschlossensind. Dieses wirklich einfache System kann folgendermaßen dargestelltwerden.

Die Aufgabe

ecolog soll nun dieses System

• realisieren

• und visualisieren.

Es wird angenommen, daß ecolog bereits auf Ihrem Rechner installiert wordenist. (siehe Abschnitt Fehler! Verweisquelle konnte nicht gefunden werden.)

Der erste Schritt Die ersten Schritte sind folgende:

1. Start von MS-Windows

2. Start von ecolog

3. Öffnen eines existierenden oder Start eines neuen Projekts

Start einesneuen Projektes

Um ein neues Projekt zu starten, wählen Sie bitte die Option ’Datei/Neu.

Alternativ können Sie auch die nebenstehende Schaltfläche betätigen.

Eine neue Datei anlegen

C

A BANDA

BCèç

Page 83: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-53

Einfügen einesObjekts

Wählen Sie anschließend ‘Projekt\Objekt einfügen...’, um den Haupt-Programmbaustein PLC_PRG zu erzeugen.

Ein neues Objekt einfügen

Das Objekt soll

• den Namen PLC_PRG erhalten

• der Typ soll ein Programm sein

• und die Sprache soll FUP sein.

Bestätigen Sie die Einstellungen mit der Schaltfläche OK.

Der neue Baustein im Programmfenster

Sie haben damit den Baustein PLC_PRG in das Projekt eingefügt. PLC_PRGwird zyklisch ausgeführt und aktiviert dann diejenigen Bausteine (Programme,Funktionen oder Funktionsblocks), die dort aufgerufen werden.

Überprüfen Sie bitte dieÜbereinstimmung in allenPunkten:

• Name: PLC_PRG

• Typ: Programm

• Sprache: FUP

Page 84: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-54

Bitte beachten Sie die folgenden, sehr wichtigen Zusammenhänge:

Alle Projekte müssen ein PLC_PRG haben.

Alle Bausteine, die direkt durch PLC_PRG aktiviert werden sollen, müssenhier aufgerufen werden. Andernfalls werden sie nicht ausgeführt!

Der erste Punkt wurde bereits beschrieben. Um den zweiten Punkt zuillustrieren, möchten wir nun ein zweites Programm in das Projekt einfügen unddieses dann in PLC_PRG aufrufen, um seine zyklische Ausführungsicherzustellen.

Hinzufügen von‘Und’

Fügen Sie durch den Menüpunkt ‘Projekt/Objekt einfügen’ ein Programm mitdem Namen ‘Und’ in das Projekt ein.

Der Baustein Und

Bestätigen Sie die Einstellungen mit der Schaltfläche OK.

Die Tabellendarstellung des Und-Programms

Deklaration vonVariablen

Die Variablen-Deklaration kann in Tabellenform (siehe vorstehende Abbildung)oder in Textform erfolgen. Wir beschreiben im folgenden die Textform. Die Formder Variablen-Deklaration kann jederzeit umgeschaltet werden.

Alles mußstimmen:

• Name: Und

• Typ: Pro- gramm

• Sprache: FUP

Page 85: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-55

Öffnen Sie zunächst durch Anklicken des Menüpunkts ‘Projekt\Optionen’ dasOptionsfenster.

Einstellen der Variablen-Deklaration in Tabellenform

Unter der Kategorie Editor können Sie das Kontrollkästchen „Deklarationen alsTabelle“ anklicken. Die Variablen-Deklaration erfolgt in Tabellenform, wenn dasHäkchen im Kästchen erscheint. Das Umschalten in die Textform erfolgt, indemSie das Häkchen entfernen.

Alternativ dazu können Sie auch mit der rechten Maustaste zwischen denAnzeigeformen umschalten. Klicken Sie dazu mit der rechten Maustaste in dieobere Hälfte des rechten Programmfensters. Das Kontextmenü enthält denEintrag „Deklarationen als Tabelle“.

Definierenvon Variablen(Textform)

Die neuen Variablen A und B sollen als binär, d. h. BOOL, definiert sein. Um siezu definieren gehen Sie wie folgt vor:

• Bewegen Sie den Cursor an das Ende von Zeile 0002 und drücken Sie die'Enter' Taste.

• In Zeile 0003 ist nun eine leere Zeile eingefügt worden.

Eine leere Zeile einfügen

Bewegen Sie den Cursor an dasEnde der Zeile 0002. DrückenSie 'ENTER' . Eine leere Zeileerscheint als Zeile 0003.

Der obere Teil des Fensterskann durch Herunterziehen derTrennlinie mit der Mausvergrößert werden.

Page 86: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-56

Geben Sie die Definition wie in nachstehender Abbildung ein und beachten Siedie Großschreibung von BOOL (Schlüsselwort).

Definieren von Variablen

Diese Form der Variablen-Deklaration und –Darstellung ist die Textform.

Wir beschreiben die Variablen-Definition detailiert in den folgenden Kapiteln indiesem Handbuch. Sie können zwischen den Formen frei wählen. Wir nutzen indiesem Handbuch aber aus Platzgründen meist die Textform.

‘AND’-Operationeinfügen

Darstellung des ersten Netzwerks

Klicken Sie bitte mit der Maus auf das erste Netzwerk (graues Feld mit Nummer0001 im unteren Teil des Fensters). Den dort dargestellten Cursor in Formeines gepunkteten Rechtecks können Sie im Optionsfenster in seinerDarstellung verändern.

Sie finden das Fenster unter dem Menüeintrag ‘Projekt\Optionen’.

Definieren Sie dieVariablen A und B alsBOOL in der neuenZeile 0003.

Netzwerk 0001 mitgepunktetem Rechteck alsCursor

Page 87: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-57

Wählen Sie in dem Auswahlfenster „Kategorien“ den Eintrag „Editor“. Imrechten Teil des Fensters sehen Sie den Auswahlrahmen „Markierung“. DieMarkierung des Netzwerks können Sie mit den Optionsschaltflächen ändern.Sie haben die Wahl zwischen:

• Gepunktet

• Linie

• und Ausgefüllt.

Der Cursor wird gepunktet dargestellt

Wählen Sie die von Ihnen bevorzugte Darstellungsart.

Fügen Sie nun das ‘AND’ ein durch:

Klick auf die nebenstehend abgebildete Schaltfläche in der Symbolleiste.

Oder den Aufruf von ‘Einfügen\Operator’.

Einen Operator einfügen

Page 88: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-58

Unabhängig davon, welche Methode Sie verwendet haben, sollte nun ein Und-Baustein in Netzwerk 0001 eingefügt worden sein.

Der eingefügte Und-Baustein

F2 dieSchlüsseltaste

An dieser Stelle möchten wir auf eine Möglichkeit hinweisen, die Ihnen hilft,effektiver zu programmieren und gleichzeitig Tippfehler zu vermeiden: dieSchlüsseltaste F2. Oft kommen Sie bei der Arbeit mit ecolog an Punkte, dieeine Auswahl zwischen mehreren Eingabemöglichkeiten erfordern.

Ein Beispiel sehen Sie in der vorigen Abbildung. Von ecolog wurde hier einAND Operator als Vorgabe eingetragen. Das farbig hinterlegte Feld (WindowsStandard-Einstellung ist Blau) signalisiert eine solche Auswahlmöglichkeit. DasBetätigen der Taste F2 öffnet dann ein Auswahlfenster. Versuchen Sie es undSie erhalten eine Liste der an dieser Stelle möglichen Operatoren. Aus dieserListe können Sie mit einem Doppelklick den gewünschten Operator auswählenund einfügen. Diese Eingabemöglichkeit erspart Ihnen viel Tipparbeit undvermeidet zusätzlich Tippfehler! In diesem Fall ist die Vorgabe AND aberkorrekt. Verlassen Sie das Auswahlfenster durch Betätigen der SchaltflächeAbbrechen.

Durch die Schlüsseltaste F2 aufgerufen: Die Eingabehilfe.

Wenn derartige farbigunterlegte Felder auf demMonitor erscheinen,denken Sie an F2 !

Bewegen Sie denBalken zu demgewünschtenOperator undwählen Sie ihn mitDoppelklick oder‘OK’ aus.

Page 89: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-59

Operanden Fügen Sie die Operanden A und B als Eingänge des ‘AND’ Operators ein. Diesgeschieht durch das Ersetzen der ???.

Einfügen der Operanden

Ergebnis Ein Klick auf die rechte Seite außerhalb des AND Operator-Symbols erzeugteinen Cursor (gepunktetes Rechteck).

Stellen Sie bitte vor dem nächsten Schritt sicher, daß die Option Automatischdeklarieren aktiviert ist (ü). Sie finden diese im Optionen-Dialog unter demMenüpunkt Projekt/Optionen.

Die Option Automatisch deklarieren ist aktiviert

Ersetzen Sie die ???Eingänge jeweils durchA und B.

Page 90: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-60

Klicken Sie auf die nebenstehend abgebildete Schaltfläche in der Symbolleiste.Die Eingabe von C als Ausgangs-Zuweisung der ‘AND’ Operationvervollständigt unser Programm.

Die Variable C einfügen

Wenn Sie nun das Eingabefeld verlassen, stellt das System fest, daß dieVariable C bisher nicht deklariert wurde. Es wird automatisch ein Dialog für dieVariablendeklaration geöffnet. Die Einträge in diesem Dialog können individuellverändert werden, stimmen aber in diesem Fall exakt und sollten daher mit OKübernommen werden. Die Variablendeklaration wird nun im oberen Teil unseresBausteinfensters eingetragen.

Die Einträge im Fenster für die Variablendeklaration

Klicken Sie auf das IM--RIcon und ersetzen Sie??? durch C.

Page 91: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-61

Aktivieren vonUnd inPLC_PRG

Das Programm Und soll nun in PLC_PRG aufgerufen werden. Zu diesemZweck aktivieren Sie bitte das Fenster von PLC_PRG und rufen denMenüpunkt ‘Einfügen\Funktions Block’ auf.

Den Menüpunkt Funktionsblock aufrufen

Nun erscheint das Fenster der Eingabehilfe, wo Sie bitte links die Optiondefinierte Programme wählen. Wählen Sie dann bitte auf der rechten Seite‘Und’ und OK.

Das Und auswählen

Sie finden den Aufruf von ‘Und’ in Netzwerk 0001 von PLC_PRG.

Der Aufruf von Und in Netzwerk 0001 und PLC-PRG

1. Aktivierenvon PLC_PRG.

2. Hier denProgramm-Aufrufeinfügen

Page 92: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-62

Und das allesnur für ein AND?

Natürlich kann eine AND Operation auch direkt in PLC_PRG eingefügt werden.Wir haben den Weg über den Unterprogramm-Aufruf in PLC_PRG aus einemwichtigen Grund gewählt. Wir wollten damit hervorheben, daß alle Bausteine (indiesem Fall der Baustein Und), die von PLC_PRG direkt aktiviert werdensollen, auch dort eingetragen sein müssen. Es reicht also nicht, den Bausteinnur zu erstellen.

Die Bausteine eines Projektes werden nicht automatisch aufgerufen!

Nur der Baustein PLC_PRG wird automatisch zyklisch bearbeitet. Dahermüssen alle anderen Bausteine, direkt oder indirekt durch PLC_PRGaktiviert werden.

Es reicht nicht, wenn ein Baustein in der Bausteinliste des Projektseingetragen ist, um diesen auch auszuführen!

Und was ist nunmit den anderenSprachen?

Es würde an diesem Punkt zu weit führen, auch die anderen Sprachendetailierter zu erläutern. Wir holen dies zu einem späteren Zeitpunkt nach.Trotzdem möchten wir Ihnen unser kleines Beispielprogramm einmal inAnweisungsliste, in Strukturiertem Text sowie in Kontaktplan darstellen.

Das Programm in den Sprachen Anweisungsliste, Strukturierter Text und

Kontaktplan

Und wie weitsind wir jetzt?

Wir haben bis jetzt zwei Programme geschrieben (PLC_PRG und Und). DasUnterprogramm Und wurde in PLC_PRG eingetragen, so daß Und nun auchvon PLC_PRG aktiviert wird.

Page 93: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-63

Wie geht es nunweiter?

Unser Projekt ist nun so weit, daß wir es testen können. Der erste Programm-test läuft in der Regel folgendermaßen ab.

Online/Simulation

Wählen Sie die Option ‘Online’ und stellen Sie sicher, daß der Simulations-modus aktiv ist. Dies ist der Fall, wenn ein Haken (ü) bei Simulationeingetragen ist. Falls dem nicht so ist, klicken Sie auf Simulation, um diesnachzuholen.

Den Simulationsmodus aktivieren

Online/Einloggen Durch Wählen der Option ‘Online/Einloggen’ wird das Projekt zunächstübersetzt. Wenn dabei Syntaxfehler erkannt werden, wird ecolog Sie in demFenster Meldungen darüber informieren und das Einloggen verweigern.Sämtliche möglichen Syntaxfehler können an dieser Stelle leider nicht erläutertwerden. Durch einen Doppelklick auf die Fehlermeldung gelangen Sie übrigensautomatisch in das Programm an die fehlerhafte Zeile.

Gehen wir einmal davon aus, daß das Programm fehlerfrei ist bzw. daß Sie alleFehler korrigiert haben. In beiden Fällen müßte das System nun korrekteingeloggt haben.

Online/Start Aktivieren Sie nun den Programmablauf durch ‘Online/Start’ oder Drücken derF5-Taste. Die Statuszeile (unten im Programmfenster) sollte nun unteranderem:

• Online,

• Sim und

• Läuft anzeigen.

Page 94: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-64

Stellen Sie nun das Programm ‘Und’ auf dem Monitor dar (Doppelklick auf denProgrammnamen in der Bausteinliste links im Programmfenster). DasProgrammfenster sollte nun wie folgt aussehen.

Das Projekt im Simulationsmodus

Wenn die Statuszeile nicht zu sehen ist, können Sie diese über dasOptionsfenster aktivieren. Das Optionsfenster erreichen Sie unter‘Projekt\Optionen’. Aktivieren Sie unter der Kategorie Arbeitsbereich dasKontrollkästchen Statusleiste.

Variablenwerteändern

Wie in der vorigen Abbildung dargestellt sind die Werte der drei Variablen A, Bund C FALSE (=Unwahr oder AUS). Mit Hilfe der Option ‘Online\Werteschreiben’ können Sie die Werte ändern. Um die Werte zu ändern, müssenSie vorher unter ‘Online/Einloggen’ einloggen. Sie ändern die Wertefolgendermaßen:

Durch Doppelklick auf das FALSE bei A und B erscheint dort TRUE in rot.Diese Änderungen sind aber noch nicht aktiv! Sie müssen zuvor noch zum(simulierten) Controller geschickt werden.

Die Darstellung vor und nach dem Doppelklick

Online, Simulation undLäuft müssen aktiv sein

Page 95: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-65

Dies erfolgt mit der Option ‘Online/Werte schreiben’ oder alternativ mit derTastenkombination Strg.+F7.

Den Controller simulieren

Die Werte der Variablen A und B sind nun TRUE (=Wahr oder EIN). Dies hateinen Wechsel der Variablen C von FALSE zu TRUE (ebenso Farbveränderungzu Blau im unteren Fensterteil) als Ergebnis der Und-Verknüpfung zur Folge.

Sie können in gleicher Weise auch andere Kombinationen von A und B testen.

Kombinationen von A und B testen

Page 96: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-66

Visualisierung Da wir nun die Funktion des Systems überprüft haben, können wir jetzt zuseiner Visualisierung übergehen.

Die Erstellung einer Visualisierung mit ecolog muß Offline erfolgen. Loggen Sieecolog aus, indem Sie die Option ‘Online/Ausloggen’ aufrufen.

Darstellung derVisualisierungs-Liste

Rufen Sie die Liste der Visualisierungs-Fenster auf, indem Sie auf den Reiterder Karteikarte „Visualisierungen“ klicken.

Der Reiter der Karteikarte Visualisierung

NeuesVisualisierungs-bild einfügen

Nach Aufruf der Option ‘Projekt/Objekt einfügen’ werden Sie gebeten, denNamen des neuen Visualisierungsbildes anzugeben. Sie können aber auch mitder rechten Maustaste auf den Eintrag „Visualisierungen“ klicken. Es öffnet sichein Kontextmenü. Wenn Sie den Eintrag „Objekt einfügen“ wählen, erscheintebenfalls das Fenster “Neue Visualisierung”. Tragen Sie den Namen UndVisein.

Tragen Sie den Namen der neuen Visualisierung ein

Klicken Sie auf OK. Es erscheint ein Fenster, in dem Sie Ihr Programmvisualisieren können.

Das leere Visualisierungsfenster

Beachten Sie auch, daß sich die Symbolleiste ändert, sobald Sie dasVisualisierungsfenster aktiviert haben.

Page 97: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-67

"Ein Bildzeichnen"

Drei verschiedene Element-Arten können mit der Visualisierung gezeichnet undauch animiert werden. Wir nutzen zunächst das Rechteck. Die Art derErstellung und Animation ist für die anderen Arten gleich.

Rufen Sie die Option ‘Einfügen/Rechteck’ auf und zeichnen Sie ein Rechteck.

1. Plazieren Sie den Cursor im leeren Fenster.

2. Drücken Sie die linke Maustaste und halten Sie sie gedrückt.

3..Ziehen Sie die Maus nach unten rechts, bis ein Rechteck mit dergewünschten Größe entstanden ist.

4. Lassen Sie die Maustaste wieder los.

Das gezeichnete Rechteck

Zusammen-hänge

Um einen Zusammenhang zwischen Bildelement und Baustein-Variablenherzustellen, muß ein Zusammenhang zwischen (Visualisierungs–)Aktion und(Variablen–)Wert definiert werden.

Diese Eingaben erfolgen im Fenster ‘Element Konfigurieren’. Sie öffnen dasFenster „Element konfigurieren“, indem Sie mit der rechten Maustaste auf daszu konfigurierende Element klicken. Daraufhin öffnet sich ein Kontextmenü.Wählen Sie in diesem Kontextmenü den Eintrag „Konfigurieren…“.Für die Eingabe von Variablen kann dort wiederum die F2-Taste benutztwerden. Dafür muß aber zuvor das Projekt übersetzt werden, um die Variablen-listen zu generieren. Dazu rufen Sie bitte die Option ‘Projekt/Alles übersetzen’auf.

Page 98: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-68

Elementkonfigurieren

Durch einen Doppelklick auf Ihr neues Rechteck erscheint das Fenster zurKonfiguration der Bildelemente in der Visualisierung. Sie können aber auch denMenüeintrag „Extras“ und „Konfigurieren…“ wählen. Es öffnet sich in jedem Falldas Fenster „Element Konfigurieren“.

Das Fenster Element konfigurieren

Zu jeder Kategorie existieren Eingabefelder, die das Bildelement beschreiben.Es ist nicht erforderlich, in jedem der Felder eine Eingabe zu machen. Um dieFarbveränderungen des Bildelements (hier das Rechteck) zu definieren, gehenSie wie folgt vor:

1. Wählen Sie bitte zunächst die Kategorie Variablen.

2. Stellen Sie den Cursor in das Feld Farbwechsel und drücken Sie die TasteF2. Es erscheint die Eingabehilfe zur Variablenauswahl.

3. Doppelklicken Sie auf den Baustein Und. Es wird eine Liste der dortdefinierten Variablen erzeugt.

4. Doppelklicken Sie auf die Variable A. Es wird ein korrekter Variableneintragim Feld Farbwechsel des Fensters Element konfigurieren vorgenommen.

Page 99: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-69

Die Zuordnung ist nun ausgeführt.

Die Eingabehilfe zur Variablenauswahl

Die Variable eintragen

Interaktion Die Interaktion zwischen dem Bediener und den Variablen des Systems solldurch einen Mausklick auf das Bildelement erfolgen. Der Zustand(TRUE/FALSE) der zugeordneten Variablen soll dann verändert undentsprechend dargestellt werden.

Farbwechsel Der Status der Variablen wird durch die Farbe des entsprechenden Bild-elements dargestellt. Dies erfolgt nach folgender Zuordnung zwischen Bild-element und Variablenwert:

Farbe = Variable FALSE

Alarm Farbe = Variable TRUE

Interaktionaktivieren

Um die Veränderung des Variablenwertes durch den Bediener zu ermöglichen,klicken Sie in der Kategorie ‘Eingabe’, im Fenster „Elemente Konfigurieren“auf Variable toggeln.

Farbe Durch Klick auf die Schaltfläche „Innen“ im Auswahlrahmen „Farbe“ erscheintin der Kategorie ‘Farben’ das Farbauswahlfenster. Wählen Sie eine Farbedurch Anklicken aus und bestätigen Sie mit OK. Da dies die Farbe für denFALSE Zustand der Variablen ist, haben wir Grau ausgewählt.

Klick auf 'Und' öffnet eine Listeder dort definierten Variablen.

Unter '.' können übrigens dieglobalen Variablen des Projektesausgewählt werden.

Doppelklick auf 'A' oder Auswahlvon 'A' und bestätigen mit 'OK'trägt die Variable ein.

Page 100: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-70

Das Farbauswahlfenster

Alarm Farbe Wiederholen Sie diesen Vorgang bitte für die Schaltfläche „Innen“ imAuswahlrahmen „Alarmfarbe“, sowie, falls gewünscht, für den Rahmen desElements mit den Schaltflächen „Rahmen“. Wir haben für die Alarmfarbe Innen(TRUE-Zustand) die Farbe Grün gewählt. Aber wie bei Farben üblich, läßt sichdarüber natürlich trefflich streiten!

Text Um unserem Rechteck nun auch einen Namen zu geben, tragen Sie bitte in derKategorie ‘Text’, unter Inhalt im Auswahlrahmen Text, ein ‘A’ ein. DieseBezeichnung wird in das Element eingetragen.

Den Farbwechsel benennen Sie bitte im Eingabefeld unter der Kategorie„Variablen“ mit „Und.A“.

Das Fenster ‘Element konfigurieren’ sollte dem in der nachfolgendenAbbildung gleichen. Ist dies der Fall, schließen Sie es bitte mit OK.

Das Fenster Element konfigurieren

Variable B(einfach nurkopieren)

Wir möchten nun ein weiteres Bildelement für die Variable B erstellen, das demfür Variable A gleicht. Die Kopieren/Einfügen-Option kann uns hier sehr guthelfen.

Page 101: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-71

1. Klicken Sie auf Element A.

2. Klicken Sie auf das nebenstehendes Symbol in der Funktionsleiste. EineKopie des Elements wurde in der Zwischenablage erstellt.

3. Klicken Sie auf das nebenstehende Symbol in der Funktionsleiste. Die Kopiewird über dem Original in das Bild eingefügt.

4. Bewegen Sie den Cursor auf das neue Element A, drücken die linke Maus-taste, ziehen das Element in die gewünschte Position und lassen dieMaustaste wieder los.

Das Element A kopieren

Konfigurieren Sie nun das zweite Element.

1. Rufen Sie mit einem Doppelklick auf das eingefügte Element die Element-Konfiguration auf.

2. Im Feld Farbwechsel ersetzen Sie A durch B.

3. Ersetzen Sie ebenfalls im Auswahlrahmen Text, unter Inhalt in der KategorieText, A durch B.

4. Bestätigen Sie die Eingabe mit OK.

Das Einfügen des Elements für Variable B ist damit abgeschlossen.

Doppelklick um dieneue Konfigurationeinzustellen.

Klicken Sie auf das Kopieren-Symbol.

Dann klicken Sie auf das Einfügen-Symbol.

Anschließend klicken und ziehen Sie die Kopie zu derneuen Position.

Page 102: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-72

Die Änderungen vornehmen

Variable C Kopieren Sie jetzt bitte noch einmal das Element der Variablen A für dieDarstellung der Variablen C. Verändern Sie die Konfiguration des neuenElements folgendermaßen:

Form Ellipse

Eingabe Keine Eingabe

Farben/Alarm Farbe/Innen Rot

Variablen/Farbwechsel Und.C

Text/Text/Inhalt C

Das Visualisierungsfenster sollte der folgenden Abbildung zumindest ähnlichsein (künstlerische Freiheiten natürlich berücksichtigt).

Das Visualisierungsfenster

Arbeiten mit derVisualisierung

Sie können nun das neu erstellte Visualisierungsbild testen. Dazu müssen Sieecolog einloggen und das Programm starten. Gehen Sie dazu wie zuvorbeschrieben vor. Als Gedächtnisstütze sollen folgende Punkte dienen:

• ‘Online\Simulation’ (‘ü’ zeigt an, wenn die Simulation aktiv ist)

• ‘Online\Einloggen’

• ‘Online\Start’

Klicken Sie zunächst auf Rechteck A in der Visualisierung. Anschließend aufdas Rechteck B. Die Farbe der beiden Rechtecke sollte sich in Grün verändern.

Ändern Sie bitte A in B, sodaß die Variable B demneuen Element zugeordnetwird.

Page 103: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-73

Die Farbe zeigt an, daß die entsprechenden Variablen im Programm nun denZustand TRUE haben.

Wenn Sie nun auch die Farbe der Ellipse, der Variablen C beobachten, könnenSie dort das Ergebnis der programmierten Verknüpfung erkennen. Die Farbedes Elementes wechselt in Rot. Die rote Farbe entspricht dem Wert TRUE derVariablen C als Ergebnis der AND Operation (C = A AND B).

Durch Klicken auf die Rechtecke können Sie die unterschiedlichen Anlagen-zustände einstellen und die Reaktion des Programms verfolgen.

Die unterschiedlichen Reaktionen des Programms

Und jetzt nochSpeichern

Um Ihr Projekt zu speichern, benutzen Sie bitte die Option ‘Datei/Speichernunter...’.

Die Option Speichern unter

Page 104: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ein kurzes ecolog 100 PLUS-Projekt zum Einstieg

4-74

Wenn im Optionsfenster Projekt/Optionen/Laden & Speichern dasKontrollkästchen „Projektinformation verlangen“ aktiviert ist, wird vor demAbspeichern automatisch ein Eingabefenster für Projektinformationendargestellt.

Die Projektinformationen

Dieses können Sie dann entsprechend ausfüllen und gelangen anschließend indas Eingabefenster für den Dateinamen.

Das Speichern des Projekts

Dort können Sie wie in Windows üblich den Namen des Projekts in dasEingabefeld für den Dateinamen eingeben. Der Dateiname muß dieErweiterung .pro haben. Bestätigen Sie mit OK. Ihr gesamtes Projekt inklusiveVisualisierungsbild ist nun gespeichert!

Page 105: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-75

Nun ist es aber Zeit für eine kleine Pause und wir sollten einmal dasProgrammiersystem verlassen.

Zu diesem Zweck loggen Sie zunächst das System aus (‘Online/Ausloggen’).Anschließend benutzen Sie die Option ‘Datei/Beenden’ oder dieTastenkombination ALT+F4 um das Programm ecolog zu schließen.

Mit diesem Schnelldurchlauf haben wir Ihnen einen kleinen Einstieg in ecologgegeben, der Sie vielleicht neugierig auf die weiteren Möglichkeiten desSystems macht. In den folgenden Kapiteln vertiefen Sie Ihr Wissen und werdensehr schnell zum ecolog-Experten!

4.3. Übersicht Tastaturbefehle

Allgemeine Bedienung

Funktion Tastaturbefehl

Wechsel zwischen Deklarationsteil undAnweisungsteil eines Bausteins

<F6>

Wechsel zwischen Object Organizer, Objekt undMeldungsfenster

<Alt>+<F6>

Kontextmenü <Umschalt>+<F10>

Kurzformmodus für Deklarationen <Strg>+<Eingabetaste>

Wechsel von Meldung im Meldungsfenster zu derStelle im Editor

<Eingabetaste>

Auf- und Zuklappen mehrstufiger Variablen <Eingabetaste>

Auf- und Zuklappen von Ordnern <Eingabetaste>

Registerkartenwechsel im Object Organizer undBibliotheksverwalter

<Pfeiltasten>

Weiterspringen in Dialogen <Tabulator>

Kontextsensitive Hilfe <F1>

Page 106: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersicht Tastaturbefehle

4-76

Allgemeine Befehle

Funktion Tastaturbefehl

‘Datei’’Speichern’ <Strg>+<S>

‘Datei’’Drucken’ <Strg>+<P>

‘Datei’’Beenden’ <Alt>+<F4>

‘Projekt’’Alles Übersetzen’ <F11>

‘Projekt’’Objekt löschen’ <Entf>

‘Projekt’’Objekt einfügen’ <Einfg>

‘Projekt’’Objekt umbenennen’ <Leertaste>

‘Projekt’‘Objekt bearbeiten’ <Eingabetaste>

‘Bearbeiten’’Rückgängig’ <Strg>+<Z>

‘Bearbeiten’’Wiederherstellen’ <Strg>+<Y>

‘Bearbeiten’’Ausschneiden’ <Strg>+<X> oder<Umschalt>+<Entf>

‘Bearbeiten’’Kopieren’ <Strg>+<C>

‘Bearbeiten’’Einfügen’ <Strg>+<V>

‘Bearbeiten’’Löschen’ <Entf>

‘Bearbeiten’’Weitersuchen’ <F3>

‘Bearbeiten’’Eingabehilfe’ <F2>

‘Bearbeiten’’Nächster Fehler’ <F4>

‘Bearbeiten’’Vorheriger Fehler’ <Umschalt>+<F4>

‘Online’’Start’ <F5>

‘Online’‘Breakpoint an/aus’ <F9>

‘Online’‘Einzelschritt über’ <F10>

‘Online’‘Einzelschritt in’ <F8>

‘Online’’Einzelzyklus’ <Strg>+<F5>

‘Online’‘Werte schreiben’ <Strg>+<F7>

‘Online’‘Werte forcen’ <F7>

‘Online’‘Forcen aufheben’ <Umschalt>+<F7>

‘Fenster’‘Meldungen’ <Umschalt>+<Esc>

Page 107: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Software ecolog 100 PLUS

4-77

Befehle des FUP-Editors

Funktion Tastaturbefehl

‘Einfügen’‘Netzwerk (danach)’ <Umschalt>+<T>

‘Einfügen’‘Zuweisung’ <Strg>+<A>

‘Einfügen’‘Sprung’ <Strg>+<L>

‘Einfügen’‘Return’ <Strg>+<R>

‘Einfügen’‘Operator’ <Strg>+<O>

‘Einfügen’‘Funktion’ <Strg>+<F>

‘Einfügen’‘Funktionsblock’ <Strg>+<B>

‘Einfügen’‘Eingang’ <Strg>+<U>

‘Extras’‘Negation’ <Strg>+<N>

‘Extras’‘Zoom’ <Alt>+<Eingabetaste>

Befehle des KOP-Editors

Funktion Tastaturbefehl

‘Einfügen’‘Netzwerk (danach)’ <Umschalt>+<T>

‘Einfügen’’Kontakt’ <Strg>+<O>

‘Einfügen’’Paralleler Kontakt’ <Strg>+<R>

‘Einfügen’ ’Funktionsblock’ <Strg>+<B>

‘Einfügen’’Spule’ <Strg>+<L>

‘Extras’’Darunter Einfügen’ <Strg>+<U>

‘Extras’’Negation’ <Strg>+<N>

Page 108: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersicht Tastaturbefehle

4-78

Befehle des AS-Editors

Funktion Tastaturbefehle

‘Einfügen’’Schritt-Transition (davor)’ <Strg>+<T>

‘Einfügen’’Schritt-Transition (danach)’ <Strg>+<E>

‘Einfügen’’Alternativzweig (rechts)’ <Strg>+<A>

‘Einfügen’’Parallelzweig (rechts)’ <Strg>+<L>

‘Einfügen’’Sprung’ (AS) <Strg>+<U>

‘Extras’’Zoom Aktion/Transition’ <Alt>+<Eingabetaste>

Wechsel aus AS-Übersicht zurück in Editor <Eingabetaste>

Page 109: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

5-1

5. Das kleine Programmierhandbuch

In diesem Kapitel erhalten Sie Informationen über folgende Themen:

• Welche Editoren Ihnen zur Verfügung stehen.

• Die Visualisierung mit ecolog

• Die DDE-Schnittstelle

• Die Ressourcen

• Welche Operatoren von ecolog unterstützt werden.

• Die ecolog Operanden

• Welche Übersetzungsfehler vorkommen können.

5.1. Die Editoren in ecolog 100 Plus

Alle Editoren für Bausteine bestehen aus einem Deklarationsteil und einemRumpf. Diese sind getrennt durch einen Fensterteiler, den man nach Bedarfverschieben kann, indem man ihn mit der Maus anklickt, und mit gedrückterMaustaste nach oben oder unten fährt.

Schlüsselwörter Es gilt in allen Editoren, daß man Schlüsselwörter in Großbuchstaben schreibt.

Page 110: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-2

Der Deklarationseditor

Im Deklarationsteil werden alle Variablen deklariert, die nur in diesem Bausteinverwendet werden. Die Deklarationssyntax orientiert sich am Standard der IEC61131-3. Ein Beispiel für eine korrekte Variablendeklaration im ecolog-Editor:

Der Deklarationseditor

Eingabe-variablen

Zwischen den Schlüsselwörtern VAR_INPUT und VAR_END werden alleVariablen deklariert, die als Eingabevariablen dienen. Das heißt, an derAufrufstelle kann der Wert der Variablen beim Aufruf mitgegeben werden.

Ausgabe-variablen

Zwischen den Schlüsselwörtern VAR_OUTPUT und VAR_END werden alleVariablen deklariert, die als Ausgabevariablen dienen. Das heißt, diese Wertewerden dem aufrufenden Baustein zurückgeliefert. Dort können diese abgefragtund weiterverwendet werden.

EinAusgabe-variablen

Zwischen den Schlüsselwörtern VAR_IN_OUT und VAR_END werden alleVariablen deklariert, die als Ein- und Ausgabevariablen dienen..

Bei dieser Variablen wird direkt der Wert der übergebenen Variablenverändert („Übergabe als Pointer“). Deshalb kann der Eingabewert für einesolche Variable keine Konstante sein.

lokale Variablen Zwischen den Schlüsselwörtern VAR und VAR_END werden alle lokalenVariablen deklariert. Diese haben keine Verbindung nach außen. Das heißt, eskann nicht von außen auf sie zugegriffen werden.

Page 111: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-3

AT-Deklaration Wenn Sie eine Variable direkt an eine bestimmte Adresse binden wollen, dannmüssen Sie die Variable mit dem AT-Schlüsselwort deklarieren. Der Vorteileiner solchen Vorgehensweise ist, daß man einer Adresse einenaussagekräftigeren Namen geben kann, und daß man eine eventuelleVeränderung eines Ein- oder Ausgangssignals nur an einer Stelle (nämlich inder Deklaration) zu ändern braucht. Eine korrekte AT-Deklaration siehtfolgendermaßen aus:

<Bezeichner> AT <Adresse>: <Typ>;

Es ist zu beachten, daß man auf Variablen, die auf einen Eingang gelegt sind,nicht schreibend zugreifen kann. Als weitere Einschränkung gilt, daß AT-Deklarationen nur für lokale und globale Variablen gemacht werden können,also nicht für Ein- und Ausgabevariablen von Bausteinen.

Beispiele:

ventilator_heizung7 AT %QX1.2.0: BOOL;

lichtschrankenimpuls AT %IX1.7.2: BOOL;

ablage_remanent AT %MB2: BYTE;

‘Einfügen/DeklarationsSchlüsselworte’bzw. ‘.../Typen’

Unter dem Menü ‘Einfügen’ finden Sie die Befehle ‘DeklarationsSchlüsselworte’ bzw. ‘Typen’. Wenn Sie einen dieser Befehle aufrufen, dannwird Ihnen eine Liste der zulässigen Deklarationsarten bzw. eine Liste derzulässigen Typen zur Auswahl bereitgestellt.

Ecolog unterstützt die wichtigsten elementaren Datentypen des IEC61131-3Standards:

• BOOL (1 Bit)

• INT (16 Bit)

• DINT (32 Bit)

• UINT (16 Bit)

• UDINT (32 Bit)

• STRING (variable Länge)

• BYTE (8 Bit)

• WORD (16 Bit)

• DWORD (32 Bit)

• SINT (8 Bit)

• TIME (16 Bit)

• REAL (32 Bit)

Page 112: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-4

Darüberhinaus unterstützt ecolog ein-, zwei- und dreidimensionale Felder(arrays), wobei z. B. für ein zweidimensionales Feld folgende Schreibweise gilt:

<Feldname>:ARRAY [<ug1>..<og1>,<ug2>..<og2>] OF <elem. Typ>.

ug1, ug2 geben die untere Grenze des Feldbereichs an, og1, og2 die obereGrenze.

Beispiel: Kartenspiel: ARRAY [1..13, 1..4] OF INT;

Der Kurzform-modus

Der Deklarationseditor von ecolog bietet Ihnen die Möglichkeit des Kurz-formmodus. Dieser wird aktiviert, wenn Sie eine Zeile mit <Ctrl><Enter>beenden.

Folgende Kurzformen werden unterstützt:

• Alle Bezeichner bis auf den letzten Bezeichner einer Zeile werden zuVariablenbezeichnern der Deklaration.

• Der Typ der Deklaration wird durch den letzten Bezeichner der Zeilebestimmt, hierbei gilt:

B oder BOOL ergibt BOOL

I oder INT ergibt INT

S oder STRING ergibt STRING

• Wenn durch diese Regeln kein Typ festgelegt werden konnte, dann ist derTyp BOOL und der letzte Identifikator wird nicht als Typ benutzt (Beispiel 1.).

• Jede Konstante wird, je nach Typ der Deklaration, zu einer Initialisierungoder einer Stringlänge (Beispiele 2. und 3.).

• Eine Adresse (wie im %MB12) wird um das AT ... Attribut erweitert (Beispiel 4.).

• Ein Text nach einem Strichpunkt (;) wird ein Kommentar (Beispiel 4.).

• Alle anderen Zeichen in der Zeile werden ignoriert (wie z. B. das Ausrufe-zeichen in Beispiel 5.).

Beispiele:

Kurzform Deklaration

A A: BOOL;

A B I 2 A, B: INT := 2;

ST S 2;Dies ist ein String ST: STRING(2); (* Dies ist ein String *)

X %MB12 I 5; Integer Variable X AT %MB12: INT := 5; (* Integer Variable *)

B ! B: BOOL;

Page 113: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-5

Zeilennummern Im Offline-Modus markiert ein einfacher Klick auf eine spezielle Zeilennummerdie gesamte Textzeile.

Im Online-Modus läßt ein einzelner Klick auf eine bestimmte Zeilennummer dieVariable in dieser Zeile expandieren oder kollabieren, falls es sich um einestrukturierte Variable handelt.

Deklarationenals Tabelle’

Ist in der Kategorie Editor im Optiondialog die Option Deklarationen alsTabelle eingestellt, erhalten Sie den Deklarationseditor in einer tabellarischenDarstellung. Wie in einem Karteikasten können Sie einzeln die Registerkartender jeweiligen Variablenarten auswählen und die Variablen editieren.

Für jede Variable erhalten Sie folgende Felder zum Eintrag:

Name: Geben Sie den Bezeichner der Variablen ein.

Adresse: Geben Sie gegebenenfalls die Adresse der Variablen ein (AT-Deklaration)

Typ: Geben Sie den Typ der Variablen ein. (Bei der Instanziierungeines Funktionsblocks, den Funktionsblock)

Initial: Geben Sie eine eventuelle Initialisierung der Variablen ein.(entsprechend dem Zuweisungsoperator „ := “)

Kommentar: Geben Sie hier einen Kommentar ein.

Automatischdeklarieren

Wenn die Option Automatisch deklarieren gewählt wurde, erscheint in allenEditoren nach Eingabe einer noch nicht deklarierten Variablen ein Dialog, mitdessen Hilfe diese Variable deklariert werden kann.

Dialog zur Variablendeklaration

Wählen Sie mit Hilfe der Auswahlliste Klasse, ob es sich um eine

• lokale Variable (VAR)

• Eingabevariable (VAR_INPUT)

• Ausgabevariable (VAR_OUTPUT)

• EinAusgabevariable (VAR_IN_OUT)

• oder eine globale Variable (VAR_GLOBAL) handelt.

Page 114: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-6

Mit den Optionen CONSTANT und RETAIN können sie definieren, ob es sichum eine Konstante bzw. eine remanente Variable handelt.

Das Feld Name wurde mit dem im Editor eingegebenen Variablennamevorbelegt, das Feld Typ mit BOOL. Mit der Schaltfläche neben der Auswahllisteöffnet sich der Dialog der Eingabehilfe zur Auswahl aller möglichen Typen.

Im Feld Initialwert können Sie der Variablen einen Wert zuweisen, ansonstenwird der Standardinitialwert verwendet.

Mit dem Feld Adresse können Sie eine Variable an die Adresse binden (AT-Deklaration).

Gegebenenfalls geben Sie einen Kommentar ein.

Durch Drücken von OK wird die Variable in den entsprechenden Deklarations-editor eingetragen.

Den Dialog zur Variablendeklaration erhalten Sie ebenfalls auf Anfrage überden Befehl ‘Bearbeiten‘ ‘Variablen Deklaration'.

Die beiden Darstellungsarten des Deklarationseditors können problemlos ge-wechselt werden. Im Online-Modus gibt es für die Darstellung des Deklarations-editors keine Unterschiede.

Der Deklarationseditor als Tabelle

‘Einfügen’ ‘NeueDeklaration’

Mit diesem Befehl tragen Sie eine neue Variable in die Deklarationstabelle desDeklarationseditors ein. Befindet sich die aktuelle Cursorposition in einem Feldder Tabelle, wird die neue Variable vor dieser Zeile eingefügt, ansonsten ansEnde der Tabelle angefügt. Außerdem können Sie ans Ende der Tabelle eineneue Deklaration anfügen, indem Sie im letzten Feld der Tabelle die rechtePfeiltaste oder die Tabulatortaste betätigen.

Sie erhalten eine Variable, die als Vorbelegung im Feld Name ‘Name’, und imFeld Typ ‘Bool’ stehen hat. Diese Werte sollten Sie in die gewünschten Werteändern. Name und Typ genügen für eine vollständige Variablendeklaration.

Page 115: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-7

Deklarations-editoren imOnline-Modus

Im Online-Modus wird der Deklarationseditor zu einem Monitor-Fenster. In jederZeile steht eine Variable, gefolgt von einem Gleichheitszeichen (=) und demWert der Variablen. Wenn die Variable zu diesem Zeitpunkt undefiniert ist,erscheinen drei Fragezeichen (???).

Vor jeder mehrelementigen Variablen steht eine Pluszeichen. Durch dasDrücken der <Eingabetaste> oder nach einem Doppelklick auf eine solcheVariable klappt diese auf, im Beispiel wäre die Struktur Ampel1 aufgeklappt:

Bei einer aufgeklappten Variablen werden alle ihre Komponenten nachfolgendaufgelistet. Vor der Variablen erscheint ein Minuszeichen. Mit einem weiterenDoppelklick bzw. durch Drücken der <Eingabetaste> klappt die Variable zu unddas Pluszeichen erscheint erneut.

Durch Drücken der <Eingabetaste> oder ein Doppelklick auf eine einelementigeVariable öffnet sich der Dialog zum Schreiben einer Variablen. Hier ist esmöglich, den aktuellen Wert der Variablen zu ändern. Bei boolschen Variablenerscheint kein Dialog, sie werden getoggelt.

Der neue Wert wird rot und bleibt unverändert. Wenn der Befehl ‘Online’’Werteschreiben’ gegeben wird, dann werden alle Variablen auf die gewählten Wertegesetzt und wieder schwarz dargestellt.

Wenn der Befehl ‘Online’’Werte forcen’ gegeben wird, werden alle Variablenauf die gewählten Werte gesetzt, bis der Befehl ’Forcen aufheben’ erfolgt.

Kommentar Benutzerkommentare müssen in die speziellen Zeichenfolgen "(*" und "*)"eingeschlossen werden.

Kommentare sind in allen Texteditoren und dort an beliebiger Stelle erlaubt.Das sind alle Deklarationen, die Sprachen AWL und ST und selbstdefiniertenDatentypen.

In FUP und KOP können zu jedem Netzwerk Kommentare eingegeben werden.Suchen Sie hierzu das Netzwerk aus, das Sie kommentieren möchten undaktivieren Sie 'Einfügen' 'Kommentar'.

In AS können Sie Kommentare zum Schritt im Dialog zum Editieren vonSchrittattributen eingeben.

Verschachtelte Kommentare sind nicht erlaubt.

Wenn Sie den Mauszeiger im Online-Modus eine kurze Zeit über einerVariablen halten, werden der Typ und gegebenenfalls die Adresse und derKommentar der Variablen in einem Tooltip angezeigt.

Page 116: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-8

Die Texteditoren

Die Texteditoren (der Anweisungslisteneditor und der Strukurierter Text-Editor)von ecolog verfügen über die üblichen Funktionalitäten von WindowsTexteditoren.

Texteditoren für Anweisungsliste und Strukturierter Text

Die wichtigsten Befehle finden Sie im Kontextmenü (rechte Maustaste).

Folgende Menübefehle benutzen speziell die Texteditoren:

‘Einfügen/Operator’

Es wird eine Liste der in dieser Sprache verfügbaren Operatoren angezeigt.Wird einer der Operatoren ausgewählt und die Liste mit OK geschlossen, dannwird der markierte Operator an die aktuelle Cursorposition eingefügt.

Wird einer der Operatoren ausgewählt und die Liste mit OK geschlossen, dannwird der markierte Operator an die aktuelle Cursorposition eingefügt.

‘Einfügen/Operand’

Ein Dialog zur Auswahl von Variablen öffnet sich. Sie können wählen, ob Sieeine Liste der globalen, der lokalen oder der Systemvariablen dargestellt habenwollen.

Wird einer der Operanden ausgewählt, und der Dialog mit OK geschlossen,dann wird der markierte Operand an die aktuelle Cursorposition eingefügt.

‘Einfügen/Funktion’

Ein Dialog zur Auswahl von Funktionen öffnet sich. Sie können wählen, ob Sieeine Liste der benutzerdefinierten- oder der Standard-Funktionen dargestellthaben wollen.

Wird eine der Funktionen ausgewählt und der Dialog mit OK geschlossen, dannwird die markierte Funktion an die aktuelle Cursorposition eingefügt.

Page 117: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-9

‘Einfügen/Funktionsblock’

Ein Dialog zur Auswahl von Funktionsblöcken öffnet sich. Sie können wählen,ob Sie eine Liste der benutzerdefinierten- oder der Standard-Funktionsblöckedargestellt haben wollen.

Wird einer der Funktionsblöcke ausgewählt und der Dialog mit OK geschlossen,dann wird der markierte Funktionsblock an die aktuelle Cursorpositioneingefügt. Wurde im Dialog die Option Mit Argumenten angewählt, so werdendie erforderlichen Eingabevariablen der Funktion mit eingefügt.

Die Texteditorenim Online-Modus

Im Simulationsmodus besitzen die Editoren die Online-Features BreakpointSetzen und Einzelschrittabarbeitung (Steppen). Zusammen mit dem Monitoringhat der Anwender so die Diagnose-Funktionalität eines modernen Windows-Hochsprachen-Debuggers.

Im Online-Modus wird das Texteditor-Fenster vertikal zweigeteilt. Auf der linkenSeite des Fensters befindet sich dann der normale Programmtext, auf derrechten Seite finden Sie die Variablen dargestellt, deren Werte in der jeweiligenZeile geändert werden.

Die Darstellung ist dieselbe wie im Deklarationsteil. D. h. wenn die Steuerungläuft, dann werden die momentanen Werte der jeweiligen Variablen dargestellt.Wenn Sie den Mauszeiger eine kurze Zeit über einer Variablen halten, werdender Typ, die Adresse und der Kommentar der Variablen in einem Tooltipangezeigt.

‘Extras/MonitoringEinstellungen

Mit diesem Befehl können Sie Ihr Monitoring-Fenster konfigurieren. Sie könneneinstellen, welchen Platz der Monitoring-Bereich im Textfenster bekommen sollund welchen Abstand zwei Monitoring-Variablen in einer Zeile haben sollen. DieAbstandsangabe 1 entspricht dabei einer Zeilenhöhe in der gewähltenSchriftart.

Der Monitoring Einstellungen-Dialog

Wo kann manBreakpointssetzen?

Im Simulationsmodus kann die Programmbearbeitung individuell gestopptwerden. Diese Positionen werden durch Breakpoints markiert. Da intern inecolog mehrere AWL-Zeilen zu einer Verknüpfung zusammengefaßt werden,können nicht in jeder Zeile Breakpoints gesetzt werden.

Breakpoint-Positionen sind alle Stellen im Programm, an denen sich Variablen-werte ändern können oder an denen der Programmfluß verzweigt (Ausnahme:Funktionsaufrufe. Hier muß gegebenenfalls ein Breakpoint in der Funktiongesetzt werden). An den dazwischenliegenden Positionen ist ein Breakpointauch nicht sinnvoll, da sich an den Daten seit der vorhergehenden Breakpoint-position nichts geändert haben kann.

Page 118: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-10

Damit ergeben sich folgende Breakpoint-Positionen in der AWL:

• Am Anfang des Bausteins

• Auf jedem LD, LDN (oder falls ein LD direkt nach einer Marke steht, aufdieser Marke)

• Bei jedem JMP, JMPC, JMPCN

• Bei jeder Marke

• Bei jedem CAL, CALC, CALCN

• Bei jedem RET, RETC, RETCN

• Am Ende des Bausteins

Für Strukturierten Text ergeben sich folgende Breakpointpositionen:

• Bei jeder Zuweisung

• Bei jeder RETURN und EXIT-Anweisung

• In Zeilen, in denen Bedingungen ausgewertet werden (WHILE, IF ELSEIF,UNTIL)

• Am Ende des Bausteins

Breakpointpositionen sind dadurch gekennzeichnet, daß das Zeilennummern-feld in einem dunkleren Grau dargestellt ist.

AWL-Editor mit möglichen Breakpointpositionen (dunklere Nummernfelder)

Wie setzt maneinenBreakpoint?

Um einen Breakpoint zu setzen, klicken Sie mit der Maus dasZeilennummernfeld der Zeile an, in der Sie den Breakpoint setzen möchten. Istdas ausgewählte Feld eine Breakpointposition, so wechselt die Farbe desZeilennummernfeldes von dunkelgrau nach hellblau und der Breakpoint wird imSimulationsmodus aktiviert.

Löschen vonBreakpoints

Um einen Breakpoint zu löschen, klicken Sie das Zeilennummernfeld der Zeilemit dem zu löschenden Breakpoint an.

Setzen und Löschen von Breakpoints kann auch über Menü(‘Online/Breakpoint an / aus’) bzw. über die Funktionstaste <F9> ausgewähltwerden.

Page 119: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-11

Was passiert aneinemBreakpoint?

Ist im Programmablauf ein Breakpoint erreicht, so wird am Bildschirm derAusschnitt mit der entsprechenden Zeile dargestellt. Das Zeilennummernfeldder Zeile, in der das Programm steht, ist rot.

Steht das Programm auf einem Breakpoint, so kann die Bearbeitung mit‘Online/Start’ fortgesetzt werden.

Außerdem kann mit ‘Online/Einzelschritt über’ bzw. ‘Einzelschritt in’ nur biszur nächsten Breakpointposition gegangen werden. Ist die Anweisung auf derman steht ein CAL-Befehl oder steht in den Zeilen bis zur nächsten Breakpoint-position ein Funktionsaufruf, so wird dieser mit ‘Einzelschritt über’übersprungen. Mit ‘Einzelschritt in’ wird in den aufgerufenen Bausteinverzweigt.

Zeilennummerndes Texteditors

Die Zeilennummern des Texteditors geben die Nummer jeder Textzeile einerImplementierung eines Bausteins an.

Im Offline-Modus markiert ein einfacher Klick auf eine spezielle Zeilennummerdie gesamte Textzeile.

Im Online-Modus zeigt die Hintergrundfarbe der Zeilennummer den Breakpoint-zustand jeder Zeile an:

dunkelgrau Diese Zeile ist eine mögliche Position für einen Breakpoint.

hellblau In dieser Zeile wurde ein Breakpoint gesetzt.

rot Die Programmabarbeitung befindet sich an diesem Punkt.

Im Online-Modus wechselt ein einfacher Mausklick den Breakpointzustanddieser Zeile.

Der Anweisungs-listen-Editor

Der Anweisungslisten-Editor ist ein Texteditor mit den üblichen Funktionalitätenvon Windows-Texteditoren. Die wichtigsten Befehle finden Sie im Kontextmenü(rechte Maustaste). Die möglichen Operatoren und Modifikatoren der SpracheAWL finden Sie ab S. 5-63.

Auch finden Sie eine Auflistung sämtlicher IEC Operatoren in diesem Kapitel.

Beispiel für ein AWL-Programm unter Verwendung einiger Modifikatoren:

LD TRUE (*Lade TRUE in den Akkumulator*)

ANDN BOOL1 (*führe AND mit dem negierten Wert*)(*der Variable BOOL1 aus*)

JMPC marke (*wenn das Ergebnis TRUE war, springe*)(*zur Marke „marke“*)

LDN BOOL2 (*Speichere den negierten Wert von *)

ST ERG (*BOOL2 in ERG*)

marke:

LD BOOL2 (*Speichere den Wert von *)

ST ERG (*BOOL2 in ERG*)

Page 120: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-12

Ablaufkontrolle Im Simulationsmodus wird im AWL-Editor mit dem Befehl‘Online/Ablaufkontrolle’ auf der linken Seite jeder Zeile ein weiteres Feldeingefügt, in dem der Akkumulatorinhalt dargestellt wird.

Der Editor fürstrukturiertenText

Der Editor für Strukturierten Text ist ein Texteditor mit den üblichenFunktionalitäten von Windows-Texteditoren. Die wichtigsten Befehle finden Sieim Kontextmenü (rechte Maustaste). Entnehmen Sie bitte die näherenInformationen zur Sprache ST dem Abschnitt Strukturierter Text ab S. 5-66.

Die graphischen Editoren

Die Editoren der beiden graphisch orientierten Sprachen KOP und FUP habenviele Gemeinsamkeiten. In den nachfolgenden Abschnitten werden diesePunkte zusammengefaßt. Der Editor der Ablaufsprache weicht davon ab undwird daher erst später in diesem Kapitel beschrieben.

Sprungmarken Zu jedem Netzwerk gehört eine Sprungmarke, die wahlweise auch leer seinkann. Diese Marke wird editiert, indem man in die erste Zeile des Netzwerks,unmittelbar neben die Netzwerknummer klickt. Jetzt kann man eine Markegefolgt von einem Doppelpunkt eingeben.

Netzwerk-kommentare

Zu jedem Netzwerk kann ein mehrzeiliger Kommentar vergeben werden. In‘Extras’ ‘Optionen’ kann im Feld Maximale Kommentargröße die Anzahl derZeilen, die maximal für einen Netzwerkkommentar zur Verfügung stehen sollen,eingegeben werden (der voreingestellte Wert ist hier 4). Im Feld MinimaleKommentargröße kann die Zahl der Zeilen eingegeben werden, die generellfür Kommentare freigelassen werden sollen (). Ist hier z. B. 2 eingestellt, sostehen an jedem Netzwerkanfang nach der Labelzeile zwei leereKommentarzeilen. Der Vorgabewert ist hier 0, was den Vorteil hat, daß mehrNetzwerke in den Bildschirmbereich passen.

Ist die minimale Kommentargröße größer als 0, klicken Sie einfach in dieKommentarzeile und geben Sie den Kommentar ein. Andernfalls muß zunächstdas Netzwerk, zu dem ein Kommentar eingegeben werden soll, ausgewählt undmit ‘Einfügen’ ‘Kommentar’ eine Kommentarzeile eingefügt werden.Kommentare werden im Unterschied zu Programmtext grau dargestellt.

Netzwerkeinfügen

Um ein neues Netzwerk einzufügen, wählt man ‘Einfügen/Netzwerk (danach)’oder ‘Einfügen/Netzwerk (davor)’ , je nachdem, ob man das neue Netzwerkvor oder nach dem aktuellen Netzwerk einfügen will. Das aktuelle Netzwerkändert man durch Mausklick auf die Netzwerknummer. Man erkennt es amgepunkteten Rechteck unter der Nummer. Mit der <Shift>-Taste und Mausklickwird der ganze Bereich von Netzwerken zwischen dem aktuellen und demangeklickten Netzwerk ausgewählt.

Die Menüpunkte ‘Bearbeiten/Ausschneiden’, ‘Bearbeiten/Kopieren’,‘Bearbeiten/Einfügen’ und ‘Bearbeiten/Löschen’ wirken dann auf diesenausgewählten Netzwerkbereich.

Page 121: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-13

Die Netzwerk-editoren imOnline-Modus

In den graphischen Editoren können Breakpoints nur auf Netzwerke gesetztwerden. Das Netzwerknummernfeld eines Netzwerks, auf das ein Breakpointgesetzt wurde, wird blau dargestellt. Die Bearbeitung stoppt dann vor demNetzwerk, auf dem der Breakpoint steht. In diesem Fall wird das Netzwerk-nummernfeld rot dargestellt. Beim Steppen wird von Netzwerk zu Netzwerkgesprungen.

Alle Werte werden an den Ein- und Ausgängen der Netzwerkbausteinegemonitort.

Die Ablaufkontrolle starten Sie mit dem Menübefehl ‘Online/Ablaufkontrolle’.Mit ihr können Sie die aktuellen Werte, die in den Netzwerken über dieVerbindungslinien transportiert werden, einsehen. Wenn die Verbindungslinienkeine boolschen Werte transportieren, wird der Wert in einem eigenseingefügten Feld angezeigt. Wenn die Linien boolsche Werte transportieren,werden sie, für den Fall, daß sie TRUE transportieren, blau eingefärbt. So kannder Informationsfluß während des Steuerungslaufs mitverfolgt werden.

DerFunktionsplan-Editor

So sieht ein in FUP geschriebener Baustein unter dem entsprechendenecolog-Editor aus:

Der Funktionsplan-Editor

Page 122: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-14

Der Funktionsplan-Editor ist ein graphischer Editor. Er arbeitet mit einer Listevon Netzwerken, wobei jedes Netzwerk eine Struktur enthält, die jeweils

• einen logischen bzw. arithmetischen Ausdruck

• den Aufruf eines Funktionsblocks

• einen Sprung

• oder eine Return-Anweisung

darstellt.

Die wichtigsten Befehle finden Sie im Kontextmenü (rechte Maustaste).

Cursorpositionenim FUP

Jeder Text ist eine mögliche Cursorposition. Der selektierte Text ist blauhinterlegt und kann nun geändert werden.

Ansonsten ist die aktuelle Cursorposition durch ein gepunktetes Rechteckgekennzeichnet. Es folgt eine Aufzählung aller möglichen Cursorpositionen miteinem Beispiel:

1. Jedes Textfeld (mögliche Cursorpositionen schwarz umrahmt):

2. Jeder Eingang:

3. Jeder Operator, Funktion oder Funktionsbaustein:

4. Ausgänge, wenn danach eine Zuweisung oder ein Sprung kommt:

5. Das Linienkreuz über einer Zuweisung, einem Sprung oder einer Return-Anweisung:

6. Hinter dem äußerst rechten Objekt eines jeden Netzwerkes („letzteCursorposition“,dies ist auch die Cursorposition, wenn ein Netzwerkselektiertwurde):

Page 123: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-15

7. Das Linienkreuz unmittelbar vor einer Zuweisung:

Wie man denCursor setzt

Der Cursor kann durch Klicken der Maus oder mit Hilfe der Tastatur auf einebestimmte Position gesetzt werden.

Mit den Pfeiltasten wird jeweils zur nächstliegenden Cursorposition in derausgewählten Richtung gesprungen. Alle Cursorpositionen, einschließlich derTextfelder, können so erreicht werden. Ist die letzte Cursorposition selektiert, sokann mit Cursor Up bzw. Cursor Down die letzte Cursorposition desvorhergehenden bzw. nachfolgenden Netzwerkes selektiert werden.

Ein leeres Netzwerk enthält nur drei Fragezeichen ”???”. Durch Klicken hinterdiese wird die letzte Cursorposition selektiert.

‘Einfügen’‘Zuweisung’

Kurzform: <Strg>+<A>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt eine Zuweisung ein.

Eingefügt wird, je nach selektierter Position,

• unmittelbar vor dem selektierten Eingang (Cursorposition 2)

• unmittelbar nach dem selektierten Ausgang (Cursorposition 4)

• unmittelbar vor dem selektierten Linienkreuz (Cursorposition 5)

• oder am Ende des Netzwerkes (Cursorposition 6).

Zu einer eingefügten Zuweisung kann anschließend der eingetragene Text”???” selektiert und durch die Variable, an die zugewiesen werden soll, ersetztwerden. Dazu können Sie auch die Eingabehilfe verwenden.

Um zu einer existierenden Zuweisung eine weitere Zuweisung hinzuzufügen,benutzen Sie den Befehl ‘Einfügen’ ‘Ausgang’.

‘Einfügen’‘Sprung’

Kurzform: <Strg>+<L>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt einen Sprung ein.

Eingefügt wird, je nach selektierter Position,

• unmittelbar vor dem selektierten Eingang (Cursorposition 2)

• unmittelbar nach dem selektierten Ausgang (Cursorposition 4)

• unmittelbar vor dem selektierten Linienkreuz (Cursorposition 5)

• oder am Ende des Netzwerkes (Cursorposition 6).

Page 124: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-16

Zu einem eingefügten Sprung kann anschließend der eingetragene Text ”???”selektiert und durch die Sprungmarke, an die gesprungen werden soll, ersetztwerden.

‘Einfügen’‘Return’

Kurzform: <Strg>+<R>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt eine RETURN-Anweisung ein.

Eingefügt wird, je nach selektierter Position,

• unmittelbar vor dem selektierten Eingang (Cursorposition 2)

• unmittelbar nach dem selektierten Ausgang (Cursorposition 4)

• unmittelbar vor dem selektierten Linienkreuz (Cursorposition 5)

• oder am Ende des Netzwerkes (Cursorposition 6).

‘Einfügen’‘Operator’

Kurzform: <Strg>+<O>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt einen Operator ein.

Eingefügt wird je nach selektierter Position. Ist ein Eingang selektiert(Cursorposition 2), so wird der Operator vor diesem Eingang eingefügt. Dererste Eingang dieses Operators wird mit dem Zweig links vom selektiertenEingang verbunden. Der Ausgang des neuen Operators wird mit demselektierten Eingang verbunden.

Ist ein Ausgang selektiert (Cursorposition 4), dann wird der Operator nachdiesem Ausgang eingefügt. Der erste Eingang des Operators wird mit demselektierten Ausgang verbunden. Der Ausgang des neuen Operators wird mitdem Zweig, mit dem der selektierte Ausgang verbunden war, verbunden.

Ist ein Operator, eine Funktion oder ein Funktionsblock selektiert(Cursorposition 3), so wird das alte Element durch den neuen Operator ersetzt.Die Zweige werden, soweit möglich, wie vor der Ersetzung verbunden. Wenndas alte Element mehr Eingänge hatte als das neue, dann werden dieunverknüpfbaren Zweige gelöscht. Das gleiche gilt für die Ausgänge.

Ist ein Sprung oder ein Return selektiert, so wird der Operator vor diesemSprung bzw. Return eingefügt. Der erste Eingang des Operators wird mit demZweig links des selektierten Elements verbunden. Der Ausgang des Operatorswird mit dem Zweig rechts des selektierten Elements verbunden.

Ist die letzte Cursorposition eines Netzwerks selektiert (Cursorposition 6), sowird der Operator nach dem letzen Element eingefügt. Der erste Eingang desOperators wird mit dem Zweig links der selektierten Position verbunden.

Der eingefügte Operator ist stets ein AND. Dieser kann durch Selektieren undÜberschreiben des Textes in jeden anderen Operator umgewandelt werden. Mitder Eingabehilfe können Sie den gewünschten Operator aus der Liste derunterstützten Operatoren auswählen. Hat der neue Operator eine andereMindestanzahl von Eingängen, so werden diese angehängt. Hat der neue

Page 125: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-17

Operator eine kleinere Höchstzahl von Eingängen, so werden die letztenEingänge samt der davorliegenden Äste gelöscht.

Alle Eingänge des Operators, die nicht verbunden werden konnten, erhaltenden Text ”???”. Dieser Text muß angeklickt und in die gewünschte Konstantebzw. Variable geändert werden.

‘Einfügen’‘Funktion’

Kurzform: <Strg>+<F> (Funktion)

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt eine Funktion ein. Eingefügt wird jenach selektierter Position.

‘Einfügen’‘Funktionsblock’

Kurzform: <Strg>+<B>(Funktionsblock)

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt einen Funktionsblock ein. Eingefügtwird je nach selektierter Position.

Zunächst öffnet der Eingabehilfedialog mit allen zur Verfügung stehendenFunktionen bzw. Funktionsblöcken.

Das Einfügen erfolgt dann analog zum Befehl ‘Einfügen’ ‘Operator’. Ebenfallsanalog ist die Zuordnung von Eingängen und Ausgängen. Steht rechts voneinem eingefügten Funktionsbaustein ein Ast, so wird dieser dem erstenAusgang zugeordnet. Ansonsten bleiben die Ausgänge unbelegt.

‘Einfügen’‘Eingang’

Kurzform: <Strg>+<U>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt einen Operatoreingang ein. Die Zahlder Eingänge ist bei vielen Operatoren variabel (z. B. ADD kann 2 oder mehrEingänge haben).

Um einen solchen Operator um einen Eingang zu erweitern, muß der Eingangselektiert werden vor dem ein weiterer eingefügt werden soll (Cursorposition 1),oder der Operator selbst (Cursorposition 3), wenn ein unterster Eingangangefügt werden soll.

Der eingefügte Eingang ist mit dem Text ”???” belegt. Dieser Text mußangeklickt und in die gewünschte Konstante bzw. Variable geändert werden.Dazu können Sie auch die Eingabehilfe verwenden.

‘Einfügen’‘Ausgang’

Keine Kurzform

Klicken Sie auf das nebenstehend abgebildete Symbol in der Symbolleiste.Dieser Befehl fügt zu einer existierenden Zuweisung eine zusätzlicheZuweisung hinzu. Diese Funktionalität dient dem Erstellen sogenannterZuweisungskämme, d. h. der Zuweisung des aktuell an der Leitung anliegendenWerts an mehrere Variablen.

Page 126: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-18

Ist das Linienkreuz über einer Zuweisung (Cursorposition 5) bzw. derunmittelbar davorliegende Ausgang selektiert (Cursorposition 4), so wird nachden bereits vorhandenen Zuweisungen eine weitere angefügt.

Ist das Linienkreuz direkt vor einer Zuweisung selektiert (Cursorposition 4), sowird vor dieser Zuweisung eine weitere eingefügt.

Der eingefügte Ausgang ist mit dem Text ”???” belegt. Dieser Text mußangeklickt und in die gewünschte Variable geändert werden. Dazu können Sieauch die Eingabehilfe verwenden.

‘Extras’‘Negation’

Kurzform: <Strg>+<N>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Mit diesem Befehl können Sie Eingänge, Ausgänge,Sprünge oder RETURN-Anweisungen negieren. Das Symbol für die Negationist ein kleiner Kreis auf einer Verbindung.

• Wenn ein Eingang selektiert ist (Cursorposition 2), dann wird dieserEingang negiert.

• Wenn ein Ausgang selektiert ist (Cursorposition 4), dann wird dieserAusgang negiert.

• Wenn ein Sprung oder ein Return markiert ist, dann wird der Eingangdieses Sprungs, bzw. Returns negiert.

• Eine Negation kann durch erneutes Negieren gelöscht werden.

‘Extras’‘Set/Reset’

Keine Kurzform

Klicken Sie auf das nebenstehend abgebildete Symbol in der Symbolleiste. Mitdiesem Befehl können Ausgänge als Set- bzw. Reset-Ausgänge definiertwerden. Ein Gatter mit Set-Ausgang wird mit [S] und ein Gatter mit Reset-Ausgang mit [R] dargestellt.

SET/RESET Ausgänge in FUP

Ein Set-Ausgang wird auf TRUE gesetzt, wenn das zugehörige Gatter TRUEliefert. Der Ausgang behält nun diesen Wert, auch wenn das Gatter wieder aufFALSE zurückspringt.

Ein Reset-Ausgang wird auf FALSE gesetzt, wenn das zugehörige GatterTRUE liefert. Der Ausgang behält seinen Wert, auch wenn das Gatter wiederauf FALSE zurückspringt.

Page 127: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-19

Bei mehrfachen Ausführen des Befehls wechselt der Ausgang zwischen Set-,Reset- und normalem Ausgang.

‘Extras’ ‘Zoom’ Kurzform: <Alt>+<Eingabetaste>

Mit diesem Befehl laden Sie einen selektierten Baustein in seinen Editor(Cursorposition 3).

Handelt es sich um einen Baustein aus einer Bibliothek, so wird derBibliotheksverwalter aufgerufen und der entsprechende Baustein angezeigt.

Ausschneiden,Kopieren,Einfügen undLöschen

Die Befehle zum ‘Ausschneiden’, ‘Kopieren’, ‘Einfügen’ oder ‘Löschen’,befinden sich unter dem Menüpunkt ‘Bearbeiten’.

Ist ein Linienkreuz selektiert (Cursorposition 5), so werden die darunter-liegenden Zuweisungen, Sprünge oder RETURN-Anweisungen ausgeschnitten,gelöscht oder kopiert.

Ist ein Operator, eine Funktion oder ein Funktionsbaustein selektiert(Cursorposition 3), so werden das selektierte Objekt selbst, sowie alle an denEingängen anliegenden Äste mit Ausnahme des ersten Astes ausgeschnitten,gelöscht oder kopiert.

Ansonsten wird der gesamte vor der Cursorposition liegende Ast ausge-schnitten, gelöscht oder kopiert.

Nach dem Kopieren oder Ausschneiden liegt der gelöschte bzw. kopierte Teil inder Zwischenablage und kann nun beliebig oft eingefügt werden.

Dazu muß zunächst die Einfügeposition ausgewählt werden. Gültige Ein-fügepositionen sind Eingänge und Ausgänge.

Wenn in die Zwischenablage ein Operator, eine Funktion oder ein Funktions-baustein geladen wurde (zur Erinnerung: in diesem Fall liegen alle anliegendenZweige außer dem ersten mit in der Zwischenablage), wird der erste Eingangmit dem Ast vor der Einfügeposition verbunden.

Andernfalls wird der gesamte vor der Einfügeposition liegende Ast durch denInhalt der Zwischenablage ersetzt.

In jedem Fall wird das letzte eingefügte Element mit dem rechts von derEinfügeposition liegenden Ast verbunden.

Durch Ausschneiden und Einfügen läßt sich nun folgendes Problem lösen: Inder Mitte eines Netzwerks wird ein neuer Operator eingefügt. Der rechts vomOperator liegende Ast ist nun mit dem ersten Eingang verbunden, muß abermit dem 2. Eingang verbunden sein. Man selektiert nun den ersten Eingangund führt ein ‘Bearbeiten’ ‘Ausschneiden’ aus. Anschließend selektiert manden zweiten Eingang und führt ein ‘Bearbeiten’ ‘Einfügen’ aus. Somit hängtder Ast nun am 2. Eingang.

Page 128: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-20

DerFunktionsplan imOnline-Modus

Im Funktionsplan können (nur im Simulationsmodus) Breakpoints aufNetzwerke gesetzt werden. Wenn ein Breakpoint auf ein Netzwerk gesetztwurde, dann wird das Netzwerknummernfeld blau dargestellt. Die Bearbeitungstoppt dann vor dem Netzwerk, auf dem der Breakpoint steht. In diesem Fallwird das Netzwerknummernfeld rot. Beim Steppen (Einzelschritt) wird vonNetzwerk zu Netzwerk gesprungen (nur im Simulationsmodus verfügbar).

Zu jeder Variablen wird der aktuelle Wert dargestellt.

Ein Doppelklick auf eine Variable öffnet den Dialog zum Schreiben einerVariablen. Hier ist es möglich, den aktuellen Wert der Variablen zu ändern. Beiboolschen Variablen erscheint kein Dialog, sie werden getoggelt.

Der neue Wert wird rot und bleibt unverändert. Wenn der Befehl ‘Online’’Werteschreiben’ gegeben wird, dann werden alle Variablen auf die gewählten Wertegesetzt und wieder schwarz dargestellt.

Die Ablaufkontrolle starten Sie mit dem Menübefehl ‘Online’ ‘Ablaufkontrolle’.Mit ihr können Sie die aktuellen Werte einsehen, die in den Netzwerken überdie Verbindungslinien transportiert werden. Wenn die Verbindungslinien keineboolschen Werte transportieren, dann wird der Wert in einem eigenseingefügten Feld angezeigt. Wenn die Linien boolsche Werte transportieren,dann werden sie, für den Fall, daß sie TRUE transportieren, blau eingefärbt. Sokann der Informationsfluß während des Steuerungslaufs mitverfolgt werden.

Der Kontaktplan-Editor

So sieht ein in KOP geschriebener Baustein im ecolog-Editor aus:

Der Kontaktplan-Editor

Der KOP-Editor ist ein graphischer Editor. Die wichtigsten Befehle finden Sie imKontextmenü (rechte Maustaste).

Page 129: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-21

Cursorpositionenim KOP-Editor

Folgende Stellen können Cursorpositionen sein, wobei Funktionsblock- undProgrammaufrufe wie Kontakte behandelt werden können. Bausteine mit EN-Eingängen und daran geknüpfte andere Bausteine werden behandelt wie imFunktionsplan. Information über das Editieren dieser Netzwerkteile finden Sie indiesem Kapitel über den FUP-Editor.

1. Jedes Textfeld (mögliche Cursorpositionen schwarz umrahmt)

2. Jeder Kontakt oder Funktionsblock

3. Jede Spule

4. Die Verbindungslinie zwischen den Kontakten und den Spulen.

Folgende Menübefehle benutzt speziell der Kontaktplan:

‘Einfügen’’Kontakt’

Kurzform: <Strg>+<O>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Mit diesem Befehl fügen Sie im KOP-Editor einen Kontaktvor der markierten Stelle im Netzwerk ein.

Ist die markierte Stelle eine Spule (Cursorposition 3), oder die Verbindungsliniezwischen den Kontakten und den Spulen (Cursorposition 4), dann wird derneue Kontakt seriell zur bisherigen Kontaktschaltung geschaltet.

Der Kontakt erhält als Vorbelegung den Text ”???”. Sie können diesen Textanklicken und in die gewünschte Variable bzw. die gewünschte Konstanteändern. Dazu können Sie auch die Eingabehilfe verwenden.

Page 130: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-22

‘Einfügen’’ParallelerKontakt’

Kurzform: <Strg>+<R>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Mit diesem Befehl fügen Sie im KOP-Editor einen Kontaktparallel zur markierten Stelle im Netzwerk ein.

Ist die markierte Stelle eine Spule (Cursorposition 3), oder die Verbindungzwischen den Kontakten und den Spulen (Cursorposition 4), dann wird derneue Kontakt parallel zur gesamten bisherigen Kontaktschaltung geschaltet.

Der Kontakt erhält als Vorbelegung den Text ”???”. Sie können diesen Textanklicken und in die gewünschte Variable bzw. die gewünschte Konstanteändern. Dazu können Sie auch die Eingabehilfe verwenden.

‘Einfügen’’Funktionsblock’

Kurzform: <Strg>+<B>

Mit diesem Befehl öffnen Sie einen Dialog zum Auswählen einesFunktionsblocks oder eines Programms. Sie können zwischen selbst definiertenund Standardbausteinen wählen.

Der ausgewählte Baustein wird nach denselben Regeln eingefügt wie einKontakt, wobei der erste Eingang des Bausteins auf die Eingangsverbindung,der erste Ausgang auf die Ausgangsverbindung gelegt wird, daher müssendiese Variablen unbedingt vom Typ BOOL sein. Alle anderen Ein- undAusgänge des Bausteins werden mit dem Text ”???” besetzt. Diese Vor-belegungen können in andere Konstanten, Variablen oder Adressen geändertwerden. Dazu können Sie auch die Eingabehilfe verwenden.

‘Einfügen’’Spule’ Kurzform: <Strg>+<L>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Mit diesem Befehl fügen Sie im KOP-Editor eine Spuleparallel zu den bisherigen Spulen ein.

Wenn die markierte Stelle die Verbindung zwischen den Kontakten und denSpulen ist (Cursorposition 4), dann wird die neue Spule als letzte eingefügt.Wenn die markierte Stelle eine Spule ist (Cursorposition 3), dann wird die neueSpule direkt darüber eingefügt.

Die Spule erhält als Vorbelegung den Text ”???”. Sie können diesen Textanklicken und in die gewünschte Variable ändern. Dazu können Sie auch dieEingabehilfe verwenden.

Page 131: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-23

Bausteine mitEN-Eingängen

Wenn Sie mit Ihrem KOP-Netzwerk zur Steuerung von Aufrufen andererBausteine verwenden wollen, dann müssen Sie einen Baustein mit einem EN-Eingang einfügen. Ein solcher Baustein wird parallel zu den Spulen geschaltet.Ausgehend von solch einem Baustein können Sie das Netzwerk wie imFunktionsplan weiterentwickeln. Die Befehle zum Einfügen an einen EN-Baustein finden Sie unter dem Menüpunkt ‘Einfügen’ ‘Einfügen anBausteinen’.

Ein Operator, ein Funktionsblock oder eine Funktion mit EN-Eingang verhältsich wie der entsprechende Baustein im Funktionsplan, mit dem Unterschied,daß seine Ausführung über den EN-Eingang gesteuert wird. Dieser Eingangwird an der Verbindungslinie zwischen Spulen und Kontakten angeschlossen.Wenn diese Verbindung die Information ”An” transportiert, dann wird derBaustein ausgewertet.

Wenn einmal ein Baustein mit EN-Eingang angelegt wurde, kann mit diesemBaustein ein Netzwerk wie im Funktionsplan angelegt werden. D. h. in einenEN-Baustein können Daten von üblichen Operatoren, Funktionen,Funktionsblöcken fließen, und ein EN-Baustein kann Daten an solche üblichenBausteine transportieren.

Wenn Sie also im KOP-Editor ein Netzwerk wie in FUP programmieren wollen,müssen Sie in ein neues Netzwerk zuerst nur einen EN-Operator einfügen,anschließend können Sie von diesem Baustein aus ihr Netzwerk weiterbildenwie im FUP-Editor. Ein so gebildetes Netzwerk verhält sich wie dasentsprechende Netzwerk in FUP.

‘Einfügen’’Operator mit EN’

Mit diesem Befehl fügen Sie einen Operator mit EN-Eingang in ein KOP-Netzwerk ein.

Die markierte Stelle muß die Verbindung zwischen den Kontakten und denSpulen sein (Cursorposition 4) oder eine Spule (Cursorposition 3). Der neueOperator wird parallel zu den Spulen unterhalb derselben eingefügt und trägtzunächst die Bezeichnung AND. Diese Bezeichnung können Sie in diegewünschte ändern. Dazu können Sie auch die Eingabehilfe verwenden.

‘Einfügen’’Funktionsblockmit EN’

Mit diesem Befehl fügen Sie einen Funktionsblock mit EN-Eingang in ein KOP-Netzwerk ein.

Die markierte Stelle muß die Verbindung zwischen den Kontakten und denSpulen sein (Cursorposition 4) oder eine Spule (Cursorposition 3). Der neueFunktionsblock wird parallel zu den Spulen unterhalb derselben eingefügt. Siekönnen im erscheinenden Eingabehilfedialog wählen, ob Sie einenselbstdefinierten oder Standardfunktionsblock einfügen wollen.

‘Einfügen’’Funktion mit EN’

Mit diesem Befehl fügen Sie eine Funktion mit EN-Eingang in ein KOP-Netzwerk ein.

Die markierte Stelle muß die Verbindung zwischen den Kontakten und denSpulen sein (Cursorposition 4) oder eine Spule (Cursorposition 3). Die neueFunktion wird parallel zu den Spulen unterhalb derselben eingefügt. Sie könnenim erscheinenden Eingabehilfedialog wählen, ob Sie eine selbstdefinierte odereine Standardfunktion einfügen wollen.

Page 132: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-24

‘Einfügen’’Einfügen anBaustein’

Mit diesem Befehl können Sie an einen bereits eingefügten Baustein (auch einBaustein mit EN-Eingang), weitere Elemente anfügen. Die Befehle unterdiesem Menüpunkt sind an denselben Cursorpositionen ausführbar wie dieentsprechenden Befehle im Funktionsplan.

• Mit Eingang fügen Sie einen neuen Eingang an den Baustein an.

• Mit Ausgang fügen Sie einen neuen Ausgang an den Baustein an.

• Mit Operator fügen Sie einen neuen Operator an den Baustein an, dessenAusgang wird an den selektierten Eingang angelegt.

• Mit Zuweisung fügen Sie eine Zuweisung an den selektierten Eingang oderAusgang an.

• Mit Funktion fügen Sie eine Funktion an den selektierten Eingang an.

• Mit Funktionsblock fügen Sie einen Funktionsblock an den selektiertenEingang an.

‘Einfügen’’Sprung’

Mit diesem Befehl fügen Sie im KOP-Editor einen Sprung parallel am Ende zuden bisherigen Spulen ein. Wenn die eingehende Leitung den Wert ”An” liefert,dann wird der Sprung an die bezeichnete Marke durchgeführt.

Die markierte Stelle muß die Verbindung zwischen den Kontakten und denSpulen sein (Cursorposition 4) oder eine Spule (Cursorposition 3).

Der Sprung erhält als Vorbelegung den Text ”???”. Sie können diesen Textanklicken und in die gewünschte Sprungmarke ändern.

‘Einfügen’’Return’

Mit diesem Befehl fügen Sie im KOP-Editor eine RETURN-Anweisung parallelam Ende zu den bisherigen Spulen ein. Wenn die eingehende Leitung den Wert”An” liefert, wird die Abarbeitung des Bausteins in diesem Netzwerkabgebrochen.

Die markierte Stelle muß die Verbindung zwischen den Kontakten und denSpulen sein (Cursorposition 4) oder eine Spule (Cursorposition 3).

‘Extras’’DahinterEinfügen’

Mit diesem Befehl fügen Sie im KOP-Editor den Inhalt der Zwischenablage alsseriellen Kontakt nach der Markierungsstelle ein. Dieser Befehl ist nur möglich,wenn der Inhalt der Zwischenablage und die markierte Stelle Netzwerke ausKontakten sind.

‘Extras’’DarunterEinfügen’

Kurzform: <Strg>+<U>

Mit diesem Befehl fügen Sie im KOP-Editor den Inhalt der Zwischenablage alsparallelen Kontakt unter der Markierungsstelle ein. Dieser Befehl ist nurmöglich, wenn der Inhalt der Zwischenablage und die markierte StelleNetzwerke aus Kontakten sind.

‘Extras’’DarüberEinfügen’

Mit diesem Befehl fügen Sie im KOP-Editor den Inhalt der Zwischenablage alsparallelen Kontakt über der Markierungsstelle ein. Dieser Befehl ist nur möglich,wenn der Inhalt der Zwischenablage und die markierte Stelle Netzwerke ausKontakten sind.

Page 133: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-25

‘Extras’’Negation’

Kurzform: <Strg>+<N>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Mit diesem Befehl negieren Sie einen Kontakt, eine Spule,eine Sprung- oder RETURN-Anweisung oder Ein- bzw. Ausgang von EN-Bausteinen an der aktuellen Cursorposition (Cursorposition 2 und 3).

Zwischen den runden Klammern der Spule bzw. zwischen den geradenStrichen des Kontakts erscheint ein Schrägstrich ((/) bzw. |/|). Bei Sprüngen,Returns, Ein- bzw. Ausgängen von EN-Bausteinen erscheint wie im FUP-Editorein kleiner Kreis auf der Verbindung.

Die Spule schreibt nun den negierten Wert der Eingangsverbindung in diezugehörige boolsche Variable. Ein negierter Kontakt schaltet genau dann denZustand des Eingangs auf den Ausgang, wenn die zugehörige boolscheVariable den Wert FALSE liefert.

Wenn ein Sprung oder ein Return markiert ist, dann wird der Eingang diesesSprungs, bzw. Returns negiert.

Eine Negation kann durch erneutes Negieren gelöscht werden.

‘Extras’’Set/Reset’

Wenn Sie diesen Befehl auf eine Spule ausführen, erhalten Sie eine Set-Spule.Eine solche Spule überschreibt niemals den Wert TRUE in der zugehörigenboolschen Variablen. Das heißt, wenn der Wert dieser Variablen einmal aufTRUE gesetzt wurde, dann bleibt er für immer auf TRUE. Eine Set-Spule wirdmit einem ”S” im Spulensymbol gekennzeichnet.

Wenn sie diesen Befehl erneut ausführen, erhalten Sie eine Reset-Spule. Einesolche Spule überschreibt niemals den Wert FALSE in der zugehörigenboolschen Variablen. Das heißt, wenn der Wert dieser Variablen einmal aufFALSE gesetzt wurde, dann bleibt er für immer auf FALSE. Eine Reset-Spulewird mit einem ”R” im Spulensymbol gekennzeichnet.

Wenn Sie diesen Befehl öfter ausführen, dann wechselt diese Spule zwischenSet-, Reset- und normaler Spule.

Der Kontaktplanim Online-Modus

Im Online-Modus werden im Kontaktplan alle Kontakte und Spulen, die imZustand ”An” sind, blau eingefärbt, ebenso werden alle Leitungen über die ”An”transportiert wird, blau gefärbt. An den Ein- und Ausgängen vonFunktionsblöcken werden die Werte der entsprechenden Variablen angezeigt.

Breakpoints können nur auf Netzwerke gesetzt werden; beim Steppen wird vonNetzwerk zu Netzwerk gesprungen (Beides ist nur im Simulationsmodusmöglich).

Page 134: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-26

DerAblaufsprachen-Editor

So sieht ein in AS geschriebener Baustein im ecolog-Editor aus:

Der Ablaufsprachen-Editor

Der Ablaufsprachen-Editor ist ein graphischer Editor. Die wichtigsten Befehlefinden Sie im Kontextmenü (rechte Maustaste).

Der Editor für die Ablaufsprache muß auf die Besonderheiten von AS eingehen.Dazu dienen die folgenden Menüpunkte:

Blöckemarkieren im AS

Ein markierter Block ist eine Menge von AS-Elementen, die von einemgepunkteten Rechteck umgeben sind. (Im Beispiel oben etwa ist der SchrittSchalt1 markiert.)

Man kann ein Element (einen Schritt, eine Transition oder einen Sprung)auswählen, indem man den Mauszeiger auf dieses Element setzt und die linkeMaustaste drückt, oder indem man die Pfeiltasten benutzt. Um eine Menge vonmehreren Elementen zu markieren, drücken Sie zusätzlich zu einem bereitsmarkierten Block die <Umschalttaste>, und wählen das Element in der linkenoder rechten unteren Ecke der Menge aus. Die sich ergebende Auswahl ist diekleinste zusammenhängende Menge von Elementen, die diese beidenElemente beinhaltet.

Beachten Sie, daß alle Befehle nur dann ausgeführt werden können, wennsie nicht den Sprachkonventionen widersprechen.

Page 135: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-27

‘Einfügen’’Schritt-Transition(davor)’

Kurzform: <Strg>+<T>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt im AS-Editor einen Schritt gefolgt voneiner Transition vor dem markierten Block ein.

‘Einfügen’’Schritt-Transition(danach)’

Kurzform: <Strg>+<E>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt im AS-Editor einen Schritt gefolgt voneiner Transition nach der ersten Transition im markierten Block ein.

‘Einfügen’’Alternativzweig(rechts)’

Kurzform: <Strg>+<A>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt im AS-Editor eine Alternativ-verzweigung als rechte Verzweigung des markierten Blocks ein. Der markierteBlock muß hierfür mit einer Transition beginnen und enden. Der neue Zweigbesteht dann aus einer Transition.

‘Einfügen’’Alternativzweig(links)’

Keine Kurzform

Klicken Sie auf das nebenstehend abgebildete Symbol in der Symbolleiste.Dieser Befehl fügt im AS-Editor eine Alternativverzweigung als linkeVerzweigung des markierten Blocks ein. Der markierte Block muß hierfür miteiner Transition beginnen und enden. Der neue Zweig besteht dann aus einerTransition.

‘Einfügen’’Parallelzweig(rechts)’

Kurzform: <Strg>+<L>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt im AS-Editor eine paralleleVerzweigung als rechte Verzweigung des markierten Blocks ein. Der markierteBlock muß hierfür mit einem Schritt beginnen und enden. Der neue Zweigbesteht dann aus einem Schritt.

‘Einfügen’’Parallelzweig(links)’

Keine Kurzform

Klicken Sie auf das nebenstehend abgebildete Symbol in der Symbolleiste.Dieser Befehl fügt im AS-Editor eine parallele Verzweigung als linkeVerzweigung des markierten Blocks ein. Der markierte Block muß hierfür miteinem Schritt beginnen und enden. Der neue Zweig besteht dann aus einemSchritt.

Page 136: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-28

‘Einfügen’’Sprung’

Kurzform: <Strg>+<U>

Alternativ können Sie auf das nebenstehend abgebildete Symbol in derSymbolleiste klicken. Dieser Befehl fügt im AS-Editor einen Sprung am Endedes Zweigs ein, zu dem der markierte Block gehört. Die Verzweigung mußhierfür eine Alternativverzweigung sein.

Zu einem eingefügten Sprung kann anschließend der eingetragene Text 'Step'selektiert und durch den Schrittnamen, zu dem gesprungen werden soll, ersetztwerden.

‘Einfügen’’TransitionSprung’

Keine Kurzform

Klicken Sie auf das nebenstehend abgebildete Symbol in der Symbolleiste.Dieser Befehl fügt im AS-Editor eine Transition, gefolgt von einem Sprung amEnde der ausgewählten Verzweigung ein. Die Verzweigung muß hierfür eineparallele Verzweigung sein.

Zu einem eingefügten Sprung kann anschließend der eingetragene Text 'Step'selektiert und durch den Schrittnamen, zu dem gesprungen werden soll, ersetztwerden.

‘Einfügen’’Eingangsaktionhinzufügen’

Mit diesem Befehl können Sie einem Schritt eine Eingangsaktion hinzufügen.Eine Eingangsaktion wird nur einmal ausgeführt, gleich nachdem der Schrittaktiv geworden ist. Die Eingangsaktion kann in einer beliebigen Spracheimplementiert werden.

Ein Schritt mit Eingangsaktion wird durch ein ‘E’ in der linken unteren Eckegekennzeichnet.

‘Einfügen’’Ausgangsaktionhinzufügen’

Mit diesem Befehl können Sie einem Schritt eine Ausgangsaktion hinzufügen.Eine Ausgangsaktion wird nur einmal ausgeführt, bevor der Schritt deaktiviertwird. Die Ausgangsaktion kann in einer beliebigen Sprache implementiertwerden.

Ein Schritt mit Ausgangsaktion wird durch ein ‘X’ in der rechten unteren Eckegekennzeichnet.

‘Extras’’Parallelzweigeinfügen (rechts)’

Dieser Befehl fügt den Inhalt der Zwischenablage als rechteParallelverzweigung des markierten Blocks ein. Dafür muß der markierte Blockmit einem Schritt beginnen und enden. Der Inhalt der Zwischenablage mußebenfalls ein AS-Block sein, der mit einem Schritt beginnt und endet.

‘Extras’’Einfügendanach’

Dieser Befehl fügt den AS-Block in der Zwischenablage nach dem erstenSchritt bzw. der ersten Transition des markierten Blocks ein (normales Kopierenfügt ihn vor dem markierten Block ein). Das wird nur dann ausgeführt, wenn dieresultierende AS-Struktur nach den Sprachnormen korrekt ist.

Page 137: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-29

‘Extras’ ’ZoomAktion/Transition’

Kurzform: <Alt>+<Eingabetaste>

Die Aktion des ersten Schritts des markierten Blocks bzw. der Transitionsrumpfder ersten Transition des markierten Blocks wird in der jeweiligen Sprache, inder er geschrieben ist, in den Editor geladen. Wenn die Aktion oder derTransitionsrumpf leer ist, dann muß die Sprache ausgewählt werden, in der ergeschrieben werden soll.

‘Extras’ ’LöscheAktion/Transition’

Mit diesem Befehl können Sie die Aktionen des ersten Schritts des markiertenBlocks bzw. der Transitionsrumpf der ersten Transition des markierten Blockslöschen.

Ist bei einem Schritt nur entweder die Aktion, die Eingangsaktion oder dieAusgangsaktion implementiert, so wird diese mit dem Befehl gelöscht.Andernfalls erscheint ein Dialog, in dem gewählt werden kann, welche Aktionbzw. Aktionen gelöscht werden sollen.

Steht der Cursor in einer Aktion eines IEC-Schritts, wird nur diese Assoziationgelöscht. Ist ein IEC-Schritt mit einer asoziierten Aktion selektiert, so wird dieseAssoziation gelöscht. Bei einem IEC-Schritt mit mehreren Aktionen erscheintein Dialog zur Auswahl.

‘Extras’ ’SchrittAttribute’

Mit diesem Befehl öffnen Sie einen Dialog, in dem Sie Attribute zu demmarkierten Schritt editieren können.

Dialog zum Editieren von Schrittattributen

Sie können drei verschiedene Einträge im Schrittattribute-Dialog vornehmen.Unter Minimale Zeit geben Sie die Zeitdauer ein, die die Abarbeitung diesesSchritts mindestens dauern soll. Unter Maximale Zeit geben Sie die Zeitdauerein, die die Abarbeitung des Schritts höchstens dauern soll. Beachten Sie, daßdie Einträge vom Typ TIME sind, d. h. verwenden Sie eine TIME-Konstante(z. B. T#3s) oder eine Variable vom Typ TIME.

Page 138: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-30

Unter Kommentar können Sie einen Kommentar zum Schritt eingeben. Mit‘Extras’ ‘Optionen’ können Sie dann einstellen, ob im AS-Editor dieKommentare oder die Zeiteinstellung zu Ihren Schritten dargestellt werden soll.Rechts neben dem Schritt erscheint dann entweder der Kommentar oder dieZeiteinstellungen.

Bei Überschreiten der Maximalzeit werden AS-Flags gesetzt, die der Benutzerabfragen kann.

Im Beispiel ist ein Schritt dargestellt, dessen Ausführung mindestens zwei undhöchstens zehn Sekunden dauern soll. Im Online-Modus wird zusätzlich zudiesen beiden Zeiten angezeigt, wie lange der Schritt bereits aktiv ist.

‘Extras’‘Zeitenüberblick’

Mit diesem Befehl öffnen Sie ein Fenster, in dem Sie die Zeiteinstellungen IhrerAS-Schritte editieren können:

Zeitgrenzenübersicht zu einem AS-Fenster

In der Zeitgrenzenübersicht werden alle Schritte Ihres AS-Bausteins dargestellt.Wenn Sie zu einem Schritt eine Zeitbegrenzung angegeben haben, dann wirddiese rechts vom Schritt angezeigt (zuerst die Untergrenze, dann dieObergrenze). Außerdem können Sie die Zeitbegrenzungen editieren. KlickenSie dazu in der Übersicht auf den gewünschten Schritt. Der Schrittname wirddann unten im Fenster angezeigt, gehen Sie in das Feld Minimale Zeit oderMaximale Zeit, und geben Sie dort die gewünschte Zeitbegrenzung ein.

Page 139: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-31

Beachten Sie, daß die Einträge vom Typ TIME sind, d. h. verwenden Sie eineTIME-Konstante (z. B. T#3s) oder eine Variable vom Typ TIME. Wenn Sie dasFenster mit OK schließen, werden alle Veränderungen abgespeichert.

Im Beispiel haben die Schritte 2 und 6 eine Zeitbegrenzung. Schalt1 dauertmindestens zwei und höchstens zehn Sekunden. Schalt2 dauert mindestenssieben und höchstens acht Sekunden.

‘Extras’‘AS-Übersicht’

Mit diesem Befehl erhalten Sie ein verkleinerte Darstellung des aktiven AS-Bausteins. Es erscheint ein Haken vor dem Menüpunkt. Lassen Sie sich zurbesseren Orientierung die Namen der Schritte, Transitionen und Sprünge inTooltips anzeigen, indem Sie den Mauszeiger auf ein Element stellen.

Zum Wechseln zurück in den normale AS-Darstellung setzen Sie eineMarkierung und mit Betätigen der <Eingabetaste> oder erneutem Ausführendes Befehls wird dorthin gewechselt.

AS-Übersicht

Page 140: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-32

‘Extras’‘Optionen’

Mit diesem Befehl öffnen Sie einen Dialog, in dem Sie verschiedene Optionenzu Ihrem AS-Baustein einstellen können.

Dialog für die Ablaufsprachen-Optionen

Im AS-Optionen-Dialog können Sie verschiedene Einträge vornehmen.

• Unter Schritthöhe können Sie eingeben, wie viele Zeilen ein AS-Schritt inIhrem AS-Editor hoch sein soll. Die Standardeinstellung ist 4.

• Unter Schrittbreite können Sie eingeben, wie viele Spalten ein Schritt breitsein soll. Die Standardeinstellung ist 6.

• Die Kommentarbreite definiert die Anzahl der Zeichen, die dargestelltwerden, wenn Sie den Kommentar beim Schritt mit anzeigen lassen.

Unter Anzeige beim Schritt können Sie einstellen, welche der Eingaben, dieSie unter 'Extras’ ‘Schritt Attribute’ gemacht haben, angezeigt werden sollen.Sie können Nichts anzeigen lassen, den Kommentar oder die Zeitüber-wachung.

‘Extras’ ‘Aktionassoziieren’

Mit diesem Befehl können Aktionen und boolsche Variablen zu IEC-Schrittenassoziiert werden.

Rechts neben dem IEC-Schritt wird ein weiteres, zweigeteiltes Kästchen für dieAssoziation einer Aktion angehängt. Vorbelegt ist es im linken Feld mit demQualifier ‘N’ und dem Namen ‘Action’. Beide Vorbelegungen können geändertwerden. Dazu können Sie die Eingabehilfe benutzen.

Neue Aktionen für IEC-Schritte werden im Object Organizer zu einem AS-Baustein mit dem Befehl ‘Projekt’ ‘Aktion hinzufügen’ angelegt.

Page 141: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-33

‘Extras’‘IEC-Schrittebenutzen’

Keine Kurzform

Klicken Sie auf das nebenstehend abgebildete Symbol in der Symbolleiste. Istdieser Befehl aktiviert (erkennbar am Haken (ü) vor dem Menüpunkt und amgedrückten Symbol in der Funktionsleiste), werden beim Einfügen von Schritt-Transitionen und Parallelzweigen statt den vereinfachten Schritten IEC-Schritteeingefügt.

Ist diese Option gewählt, wird beim Anlegen eines AS-Bausteins der Init-Schrittals IEC-Schritt angelegt.

Diese Einstellung wird in der Datei "ecolog.ini" gespeichert, und beim nächstenStart von ecolog wiederhergestellt.

DieAblaufspracheim Online-Modus

Beim Ablaufspracheneditor werden im Online-Betrieb die aktuell aktivenSchritte als blaue Schritte angezeigt. Wenn Sie es unter ‘Extras’ ‘Optionen’eingestellt haben, dann wird neben den Schritten die Zeitüberwachungdargestellt. Unter den von Ihnen eingegebenen Unter- und Obergrenzenerscheint eine dritte Zeitangabe, von der Sie ablesen können, wie lange derSchritt bereits aktiv ist.

Im obigen Bild ist der abgebildete Schritt bereits seit 8 Sekunden und 410Millisekunden aktiv. Er muß aber mindestens 7 Minuten aktiv sein, bevor derSchritt verlassen wird.

Mit ‘Online’ ‘Breakpoint an/aus’ kann ein Breakpoint auf einen Schritt gesetztwerden. Die Bearbeitung hält dann vor Ausführung dieses Schritts an. DerSchritt mit dem Breakpoint färbt sich hellblau.

Sind in einer Parallelverzweigung mehrere Schritte aktiv, so wird der aktiveSchritt, dessen Aktion als nächstes bearbeitet wird, rot dargestellt.

Wurden IEC-Schritte verwendet, werden alle aktiven Aktionen im Onlinebetriebblau dargestellt.

Auch in AS wird ein schrittweises Steppen unterstützt (‘Online’ ‘Einzelschrittüber’). Dabei wird stets zum nächsten Schritt gesteppt, dessen Aktionausgeführt wird.

Mit ‘Online’ ‘Einzelschritt in’ kann in Aktionen bzw. Transitionenhineingesteppt werden. Innerhalb der Transitionen oder Aktionen stehen demAnwender alle Debugging-Funktionalitäten des entsprechenden Editors zurVerfügung.

Page 142: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Editoren in ecolog 100 Plus

5-34

Ablaufsprache im Online-Modus mit einem aktiven Schritt (Schalt1) und einem

Breakpoint (Step10)

Page 143: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-35

5.2. Visualisieren mit ecolog 100 PLUS

Ecolog stellt Ihnen zur Veranschaulichung Ihrer Projektvariablen dieMöglichkeit einer Visualisierung zur Verfügung. Mit Hilfe der Visualisierung kannman offline geometrische Objekte zeichnen. Diese Objekte können dann onlineihre Form verändern, in Abhängigkeit von bestimmten Variablenwerten.Beispielsweise ist es möglich, in einem Balkendiagramm das Wachstums-verhalten einer Variablen darzustellen.

In diesem Abschnitt erfahren Sie, welche Grundfunktionen Ihnen die Visuali-sierung zur Verfügung stellt.

Visualisierungerstellen

Um eine Visualisierung zu erstellen, müssen Sie im Object Organizer dieRegisterkarte Visualisierung wählen

Mit dem Befehl ‘Projekt’’Objekt einfügen’ erstellen Sie ein neuesVisualisierungsobjekt. Ein Fenster öffnet sich, in dem Sie den Namen der neuenVisualisierung eingeben können. Wenn Sie einen gültigen Namen eingegebenhaben, können Sie den Dialog mit OK schließen. Es öffnet sich ein Fenster, indem Sie die neue Visualisierung editieren können.

Visualisierungs-elementeeinfügen

Sie können vier verschiedene geometrische Formen sowie Bitmaps undbestehende Visualisierungen in Ihre Visualisierung einfügen.

Als geometrische Formen stehen zur Verfügung:

• Rechtecke

• abgerundete Rechtecke

• Ellipsen/Kreise

• und Polygone.

Gehen Sie auf den Menüpunkt ‘Einfügen’ und wählen nach Bedarf die Befehle

• Rechteck

• Abgerundetes Rechteck

• Ellipse

• Linienzug

• Kurve

• Polygon

• Bitmap

• oder Visualisierung

aus.

Vor dem gewählten Befehl erscheint ein Haken. Sie können auch die Symboleder Funktionsleiste verwenden.

Page 144: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Visualisieren mit ecolog 100 PLUS

5-36

Wenn Sie nun mit der Maus in das Editierfenster fahren, sehen Sie, daß derMauszeiger mit dem entsprechende Symbol gekennzeichnet ist (sieheRandspalte). Klicken Sie an den gewünschten Anfangspunkt Ihres Elementsund verschieben Sie bei gedrückter linker Maustaste den Mauszeiger bis dasElement die gewünschten Abmessungen hat.

Wollen Sie ein Polygon oder einen Linienzug erstellen, klicken Sie zuerst mitder Maus die Position der ersten Ecke des Polygons bzw. des Anfangspunktsdes Linienzugs an und danach die weiteren Eckpunkte. Durch einenDoppelklick am letzen Eckpunkt wird das Polygon geschlossen und vollständiggezeichnet bzw. der Linienzug beendet. Alternativ zum Doppelklick können Sieauch einmal mit der rechten Maustaste klicken.

Wollen Sie eine Kurve (Bezier-Kurve) erstellen, geben Sie per Mausklick denAnfangs- und zwei weitere Punkte an, die ein umschreibendes Rechteckdefinieren. Nach dem dritten Mausklick wird ein Kurvenbogen gezeichnet. Siekönnen daraufhin durch Verschieben mit der Maus den Kurvenendpunkt nochverändern und durch Doppelklick abschließen oder durch zusätzlichePositionsklicks einen weiteren Bogen direkt anschließen.

Beachten Sie auch die Statusleiste und den Wechsel von Selektions- undEinfügemodus.

‘Einfügen’‘Rechteck’

Mit dem Befehl können Sie ein Rechteck als Element in Ihre aktuelleVisualisierung einfügen. Bedienung siehe Visualisierungselemente einfügen abSeite 5-35.

Alternativ können Sie auch das nebenstehend abgebildete Symbol in derSymbolleiste betätigen.

‘Einfügen’‘AbgerundetesRechteck’

Mit diesem Befehl können Sie ein Rechteck mit abgerundeten Ecken alsElement in Ihre aktuelle Visualisierung einfügen. Bedienung sieheVisualisierungselemente einfügen ab Seite 5-35.

Alternativ können Sie auch das nebenstehend abgebildete Symbol in derSymbolleiste betätigen.

‘Einfügen’‘Ellipse’

Mit diesem Befehl können Sie einen Kreis oder eine Ellipse als Element in Ihreaktuelle Visualisierung einfügen. Bedienung siehe Visualisierungselementeeinfügen ab Seite 5-35.

Alternativ können Sie auch das nebenstehend abgebildete Symbol in derSymbolleiste betätigen.

‘Einfügen’‘Polygon’

Mit diesem Befehl können Sie einen Polygon als Element in Ihre aktuelleVisualisierung einfügen. Bedienung siehe Visualisierungselemente einfügen abSeite 5-35.

Alternativ können Sie auch das nebenstehend abgebildete Symbol in derSymbolleiste betätigen.

Page 145: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-37

‘Einfügen’‘Linienzug’

Mit dem Befehl können Sie einen Linienzug als Element in Ihre aktuelleVisualisierung einfügen. Bedienung siehe Visualisierungselemente einfügenab Seite 5-35.

Alternativ können Sie auch das nebenstehend abgebildete Symbol in derSymbolleiste betätigen.

‘Einfügen’‘Kurve’

Mit dem Befehl können Sie eine Bezier-Kurve als Element in Ihre aktuelleVisualisierung einfügen. Bedienung siehe Visualisierungselemente einfügenab Seite 5-35.

Alternativ können Sie auch das nebenstehend abgebildete Symbol in derSymbolleiste betätigen.

‘Einfügen’‘Bitmap’

Mit dem Befehl können Sie ein Bitmap als Element in Ihre aktuelleVisualisierung einfügen. Bedienung siehe Visualisierungselemente einfügenab Seite 5-35.

Alternativ können Sie auch das nebenstehend abgebildete Symbol in derSymbolleiste betätigen.

Ziehen Sie mit gedrückter linker Maustaste einen Bereich in der gewünschtenGröße auf. Es öffnet sich der Dialog zum Öffnen einer Datei. Nachdem Sie dasgewünschte Bitmap ausgewählt haben, wird es in den aufgezogenen Bereicheingefügt.

‘Einfügen’‘Visualisierung’

Mit dem Befehl können Sie eine bestehende Visualisierung in Ihre aktuelleVisualisierung einfügen. Bedienung siehe Visualisierungselemente einfügenab Seite 5-35.

Alternativ können Sie auch das nebenstehend abgebildete Symbol in derSymbolleiste betätigen.

Ziehen Sie mit gedrückter linker Maustaste einen Bereich in der gewünschtenGröße auf. Es öffnet sich eine Auswahlliste von bestehenden Visualisierungen.Nachdem Sie die gewünschte Visualisierung ausgewählt haben, wird sie in denaufgezogenen Bereich eingefügt.

Arbeiten mit Visualisierungselementen

In diesem Abschnitt werden Sie lernen, wie Sie Visualisierungelementebearbeiten können.

Visualisierungs-elementeselektieren

Um ein Element zu selektieren, klicken Sie mit der Maus auf das Element.Ebenso können Sie durch Drücken der <Tabulator>-Taste das erste Elementder Elementliste und mit jedem weiteren Drücken das jeweils nächste Elementanwählen. Wenn Sie die <Tabulator>- bei gleichzeitig gedrückter <Umschalt>-Taste anwenden, springen Sie in der Elementliste entsprechend rückwärts.

Um mehrere Elemente zu markieren, halten Sie die <Umschalt>-Taste gedrücktund klicken Sie mit der Maus nacheinander auf die entsprechenden Elemente.Oder ziehen Sie bei gedrückter linker Maustaste ein Fenster über die zumarkierenden Elemente auf.

Page 146: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Visualisieren mit ecolog 100 PLUS

5-38

Um alle Elemente zu selektieren, verwenden Sie den Befehl ‘Extras’ ‘AllesMarkieren’.

Ändern vonVisualisierungs-elementen

Ein bereits eingefügtes Element können Sie mit Mausklick auf das Elementbzw. über einen Durchlauf per <Tabulator>-Taste auswählen. An den Eckendes Elements erscheint jeweils ein schwarzes Quadrat (bei Ellipsen an denEcken des umschreibenden Rechtecks). Außer bei Polygonen, Linien undKurven erscheinen weitere Quadrate in der Mitte der Elementkanten zwischenden Eckpunkten.

Bei einem ausgewählten Element wird gleichzeitig der Drehpunkt mit angezeigt.Um diesen Punkt rotiert dann das Element bei eingestellter Bewegung/Winkel.Der Drehpunkt wird als kleiner schwarzer Kreis mit einem weißen Kreuzdargestellt ( ). Mit gedrückter linker Maustaste können Sie den Drehpunktverschieben.

Die Größe des Elements kann verändert werden, indem Sie auf eines derschwarzen Quadrate klicken und mit gedrückt gehaltener linker Maustaste dieneuen Umrisse ansteuern.

Bei der Auswahl eines Polygons, einer Linie oder Kurve kann so jede einzelneEcke verschoben werden. Wird dabei die <Strg>-Taste gedrückt, wird an demEckpunkt ein zusätzlicher Eckpunkt eingefügt, der durch Ziehen der Mausverschoben werden kann. Mit gedrückten <Umschalt>+<Strg>-Tasten kann einEckpunkt entfernt werden.

Verschieben vonVisualisierungs-elementen

Eins oder mehrere ausgewählte Elemente können Sie mit gedrückter linkerMaustaste oder den Pfeiltasten verschieben.

Kopieren vonVisualisierungs-elementen

Eins oder mehrere ausgewählte Elemente können Sie mit dem Befehl‘Bearbeiten’ ‘Kopieren’, der Tastenkombination <Strg>+<C> oder dementsprechenden Symbol kopieren und mit ‘Bearbeiten’ ‘Einfügen’ einfügen.

Eine weitere Möglichkeit ist, die Elemente zu selektieren und mit gedrückter<Strg>-Taste noch mal in eine Element mit der Maus klicken. Mit gedrückterlinker Maustaste können Sie die nun kopierten Elemente von denursprünglichen wegziehen.

Selektions- undEinfügemoduswechseln

Nach dem Einfügen eines Visualisierungselements wird automatisch wieder inden Selektionsmodus gewechselt. Will man nun ein weiteres Element derselben Art einfügen, so kann man erneut den entsprechenden Befehl im Menüoder das Symbol in der Funktionsleiste auswählen.

Zwischen Selektionsmodus und Einfügemodus kann, außer über Menübefehl(‚Extras‘ ‚Selektieren‘) oder nebenstehendem Symbol, auch mit gleichzeitiggedrückter <Strg>-Taste und rechter Maustaste gewechselt werden.

Im Einfügemodus erscheint das entsprechende Symbol am Mauszeiger und inder Statusleiste wird der Name schwarz angezeigt.

Page 147: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-39

Statusleiste inderVisualisierung

In einer Visualisierung wird immer die aktuelle X- und Y-Position desMauszeigers in Pixel relativ zur oberen linken Ecke des Bilds in der Statusleisteangegeben. Befindet sich der Mauszeiger auf einem Element oder wird einElement bearbeitet, wird die Nummer desselben angegeben. Haben Sie einElement zum Einfügen ausgewählt, so erscheint dies ebenfalls (z. B.Rechteck).

Visualisierungselemente konfigurieren

In diesem Abschnitt lernen Sie, wie Visualisierungselemente nach IhrenWünschen konfiguriert werden können. Lernen Sie die vielfältigenMöglichkeiten kennen.

‘Extras’‘Konfigurieren’

Mit diesem Befehl öffnet sich der Dialog zum Konfigurieren des selektiertenVisualisierungselements. Siehe Visualisierungselemente selektieren ab Seite 5-37. Den Dialog zum Konfigurieren erhalten Sie auch durch Doppelklick auf dasElement.

Wählen Sie im linken Bereich des Dialogs eine Kategorie aus und füllen Sie imrechten Bereich die gewünschten Angaben aus.

Je nach selektierten Visualisierungselement stehen verschiedene Kategorienzur Auswahl:

Form Rechteck, Abgerundetes Rechteck, Ellipse

Text Alle

Farbe Rechteck, Abgerundetes Rechteck, Ellipse, Polygon,Linienzug, Kurve

Bewegung absolut Alle

Bewegung relativ alle außer Polygon, Linienzug, Kurve

Variablen Alle

Eingabe Alle

Text für Tooltip Alle

Bitmap Bitmap

Visualisierung Visualisierung

Page 148: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Visualisieren mit ecolog 100 PLUS

5-40

Form Im Dialog zum Konfigurieren von Visualisierungselementen können Sie in derKategorie Form zwischen Rechteck, Abgerundetes Rechteck und Ellipsebzw. Polygon, Linienzug und Kurve wählen. Die Form wechselt in der bereitsfestgelegten Größe.

Die Kategorie Form

Text Im Dialog zum Konfigurieren von Visualisierungselementen können Sie in derKategorie Text einen Text für das Element festlegen.

Geben Sie den Text in das Feld Inhalt ein. Durch die Tastenkombination<Strg>+<Eingabetaste> können Sie Zeilenumbrüche einfügen.

Wenn Sie im Text ”%s” eingeben, wird diese Stelle im Online-Modus durch denWert der Variablen aus dem Feld Textausgabe der Kategorie Variablenersetzt.

Dieser Text wird im Element erscheinen, je nach angegebener AusrichtungHorizontal Links, Zentriert oder Rechts und Vertikal Oben, Zentriert oderUnten im Element.

Mit der Schaltfläche Schrift erscheint der Dialog zu Auswahl der Schriftart.Wählen Sie die gewünschte Schriftart und bestätigen Sie den Dialog mit OK.Mit der Schaltfläche Standard-Schrift wird die Schriftart eingestellt, die unterden ‘Projekt’ ‘Optionen’ gewählt ist. Wird sie dort verändert, wird in allenElementen diese Schriftart angezeigt außer bei Elementen, bei denen über dieSchaltfläche Schrift explizit eine andere gewählt wurde.

Page 149: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-41

Die Kategorie Text

Farben Im Dialog zum Konfigurieren von Visualisierungselementen können Sie in derKategorie Farben Grundfarben und Alarmfarben für die Innenfläche und denRahmen Ihres Elements auswählen. Die Optionen Keine Farbe innen undKeine Rahmenfarbe ermöglichen die Erstellung transparenter Elemente.

Die Kategorie Farben

Wenn Sie in der Kategorie Variablen im Feld Farbwechsel nun eine boolscheVariable eingeben, so wird das Element in der eingestellten Farbe dargestellt,solange die Variable FALSE ist. Ist die Variable TRUE, so wird das Element inseiner Alarmfarbe dargestellt.

Die Farbwechsel-Funktion ist erst aktiv, wenn sich die Steuerung im Online-Modus befindet!

Page 150: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Visualisieren mit ecolog 100 PLUS

5-42

Wenn Sie die Farbe für den Rand ändern wollen, drücken Sie die SchaltflächeRahmen, ansonsten Innen. In jedem Fall öffnet der Dialog zur Auswahl derFarbe.

Hier können Sie aus den Grundfarben und den selbstdefinierten Farben dengewünschten Farbton auswählen. Durch Drücken der Schaltfläche Farben de-finieren können Sie die selbstdefinierten Farben verändern.

Bewegungabsolut

Im Dialog zum Konfigurieren von Visualisierungselementen können in derKategorie Bewegung absolut in den Feldern X- bzw. Y-Offset Variableneingetragen werden, die das Element in X- bzw. Y-Richtung in Abhängigkeit desjeweiligen Variablenwertes verschieben. Eine Variable im Feld Skalierungverändert die Größe des Elements linear zum Variablenwert.

Eine Variable im Feld Winkel bewirkt eine Drehung des Elements um seinenDrehpunkt in Abhängigkeit des Variablenwerts (positiver Wert = mathematischpositiv = Uhrzeigersinn). Der Wert wird in Grad ausgewertet. Bei Polygonenrotiert jeder Punkt, das heißt, das Polygon dreht sich. Bei allen anderenElementen rotiert das Objekt, wobei immer die obere Kante oben bleibt.

Der Drehpunkt erscheint nach einmaligem Anklicken des Elements und wird alskleiner schwarzer Kreis mit einem weißen Kreuz dargestellt ( ). Mit gedrückterlinker Maustaste können Sie den Drehpunkt verschieben.

Die Kategorie Bewegung absolut

Page 151: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-43

Bewegung relativ Im Dialog zum Konfigurieren von Visualisierungselementen können Sie in derKategorie Bewegung relativ den einzelnen Elementkanten Variablenzuordnen. In Abhängigkeit der Variablenwerte bewegen sich dann dieentsprechenden Elementkanten. Die einfachste Möglichkeit, Variablen in dieFelder einzugeben ist, die Eingabehilfe.

Die vier Einträge geben die vier Seiten ihres Elements an. Die Grundpositionder Kanten ist stets auf Null. Ein neuer Wert der Variablen in der ent-sprechenden Spalte verschiebt die Grenze um diesen Wert in Pixel. Dieeingegebenen Variablen sollten also vom Typ INT sein.

Positive Werte verschieben die horizontalen Kanten nach unten bzw. dievertikalen Kanten nach rechts!

Die Kategorie Bewegung relativ

Variablen Im Dialog zum Konfigurieren von Visualisierungselementen können Sie in derKategorie Variablen die Variablen angeben, die den Zustand desVisualisierungselements beschreiben sollen. Die einfachste Möglichkeit,Variablen in die Felder einzugeben, ist die Eingabehilfe.

In den Feldern Unsichtbar und Farbwechsel können Sie boolsche Variablenangeben, die in Abhängigkeit ihrer Werte bestimmte Aktionen auslösen. Wenndie Variable im Feld Unsichtbar den Wert FALSE hat, ist dasVisualisierungselement sichtbar. Besitzt die Variable den Wert TRUE, ist dasElement unsichtbar.

Wenn die Variable im Feld Farbwechsel den Wert FALSE hat, wird dasVisualisierungselement in seiner Grundfarbe dargestellt. Ist die Variable TRUE,dann wird das Element in seiner Alarmfarbe dargestellt.

Page 152: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Visualisieren mit ecolog 100 PLUS

5-44

Im Feld Textausgabe können Sie eine Variable angeben, deren Wertausgegeben wird, sofern Sie in das Feld Inhalt der Kategorie Text zusätzlichzum Text ”%s” eingegeben haben. Das ”%s” wird im Online-Modus durch denWert der Variablen aus Textausgabe ersetzt.

Die Kategorie Variablen

Eingabe Wenn Sie das Feld Variable toggeln wählen, toggeln Sie im Online-Modus mitjedem Mausklick auf das Element den Wert der Variablen, die in demEingabefeld dahinter angegeben ist. Der Wert der boolschen Variable ändertsich mit jedem Mausklick von TRUE auf FALSE und mit dem nächsten wiederauf TRUE, usw.

Wenn Sie die Option Variable tasten wählen, können Sie im Online-Modus denWert der boolschen Variablen, die in dem Eingabefeld dahinter angegeben ist,zwischen TRUE und FALSE wechseln lassen. Plazieren Sie den Mauszeigerauf dem Element, drücken Sie die Maustaste und halten Sie sie gedrückt (Wertändert sich z. B. von TRUE auf FALSE). Sobald Sie die Taste wieder loslassen,springt der Variablenwert auf den Ausgangszustand (TRUE) zurück.

Wenn Sie das Feld Zoomen nach Vis... wählen, dann können Sie in dasnachfolgende Feld den Namen eines Visualisierungsobjekts im selben Projekteingeben. Im Online-Modus wechseln Sie dann per Mausklick auf das Elementin das Fenster der eingetragenen Visualisierung. Wird anstelle einesVisualisierungsobjekts eine Programmvariable vom Typ STRING (z. B.PLC_PRG.xxx) eingetragen, kann über diese Variable der Name desVisualisierungsobjekts vorgegeben werden (z. B. ‚visu1‘), zu dem bei Mausklickgewechselt werden soll.

Im Feld Zoomen nach Vis. kann mit dem Befehl ‚ZOOMTOCALLER‘ einZurückspringen in die aufrufende Visualisierung konfiguriert werden.

Wenn Sie die Option Programm ausführen wählen, können Sie imEingabefeld dahinter ein beliebiges ausführbares Programm eingeben, dasdann bei Mausklick auf das Element im Online-Modus ausgeführt wird.

Page 153: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-45

Wenn Sie die Option Text Eingabe der Variable ‘Textausgabe’ wählen,können Sie im Online-Modus einer Variablen einen Wert über diesesVisualisierungselement zuweisen. Der Wert wird in die Variable geschrieben,die im Feld Textausgabe der Kategorie Variablen steht. Klicken Sie im Online-Modus auf das Element, so erscheint ein Editierrahmen, in den Sie den neuenWert der Variablen über Tastatur eingeben können. Durch Drücken der<Eingabetaste> wird der Wert übernommen.

Die Kategorie Eingabe

Text für Tooltip Im Dialog Text für Tooltip finden Sie ein Eingabefeld für Text, der im Online-Modus im Tooltip des Elements erscheint. Der Text kann mittels derTastenkombination <Strg>+<Eingabetaste> mit Zeilenumbrüchen versehenwerden.

Bitmap Im Dialog zum Konfigurieren von Visualisierungselementen können Sie in derKategorie Bitmap die Optionen zu einer Bitmap-Datei angeben.

Im Feld Bitmap geben Sie die Bitmap-Datei mit ihrem Pfad an. Mit derSchaltfläche ... wird der Standarddialog von Windows zum Durchsuchengeöffnet und Sie können dort die gewünschte Bitmap-Datei auswählen.

Alle weiteren Angaben beziehen sich auf den Rahmen der Bitmap-Datei.

Bei der Auswahl Anisotropisch, Isotropisch und Fest geben Sie an, wie sichdie Bitmap-Datei auf Größenänderung des Rahmens verhalten soll.Anisotropisch bedeutet, daß das Bitmap so groß wie sein Rahmen ist und sichso durch Größenänderung beliebig verzerren läßt.

Bei Isotropisch bleiben die Proportionen des Bitmaps auch bei Größen-änderungen erhalten. D. h. das Verhältnis von Länge und Breite bleibt gewahrt.Wählen Sie Fest, so wird das Bitmap unabhängig von seinem Rahmen in derOrginalgröße dargestellt.

Ist die Option Abschneiden gewählt, so wird bei der Einstellung Fest nur derAusschnitt des Bitmaps angezeigt, der vom Rahmen umschlossen ist.

Page 154: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Visualisieren mit ecolog 100 PLUS

5-46

Wenn Sie die Option Zeichnen wählen, wird der Rahmen in der Farbedargestellt, die mit den Schaltflächen Farbe und Alarmfarbe in denFarbdialogen gewählt wurde. Die Alarmfarbe wird nur angezeigt, wenn dieVariable TRUE ist.

Ein Bitmap konfigurieren

Visualisierung Im Dialog zum Konfigurieren von Visualisierungselementen können Sie in derKategorie Visualisierung die Optionen zu einer Visualisierung als Element ineiner anderen Visualisierung angeben.

Im Feld Visualisierung geben Sie den Objektnamen der Visualisierung an. Mitder Schaltfläche neben dem Feld wird ein Dialog geöffnet mit den zurVerfügung stehenden Visualisierungen dieses Projektes. Es können alleVisualisierungen außer der aktuellen angegeben werden.

Alle weiteren Angaben beziehen sich auf den Rahmen der Visualisierung.

Wenn Sie die Option Zeichnen wählen, wird der Rahmen in der Farbedargestellt, die mit den Schaltflächen Farbe und Alarmfarbe in denFarbdialogen gewählt wurden. Die Alarmfarbe wird nur angezeigt, wenn dieVariable TRUE ist.

Wenn Sie Isotropisch wählen, bleiben die Proportionen der Visualisierungauch bei Größenänderungen immer erhalten, d. h. das Verhältnis von Längeund Breite zu einander bleibt gewahrt. Andernfalls kann die Visualisierung auchverzerrt werden.

Ist die Option Abschneiden gewählt, so wird im Online-Modus nur derOrginalausschnitt der Visualisierung angezeigt. Wandert z. B. ein Objektaußerhalb der ursprünglichen Anzeige, so wird dieses abgeschnitten undverschwindet möglicherweise ganz aus dem Blickfeld der Visualisierung.

Page 155: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-47

Eine Visualisierung als Referenz konfigurieren

Weitere Funktionen für Visualisierungselemente

In diesem Abschnitt lernen Sie weiterführende Funktionen kennen, wie SieVisualisierungselemente bearbeiten können.

‘Extras’ ‘Nachvorn bringen’

Mit diesem Befehl bringen Sie selektierte Visualisierungselemente in denVordergrund.

‘Extras’ ‘Nachhinten legen’

Mit diesem Befehl legen Sie selektierte Visualisierungselemente in denHintergrund.

‘Extras’‘HintergrundBitmapauswählen’

Mit diesem Befehl öffnen Sie den Dialog zur Auswahl von Dateien. Wählen Sieeine Datei mit dem Zusatz "*.bmp". Die ausgewählte Bitmap-Datei erscheint imHintergrund Ihrer Visualisierung.

Mit dem Befehl ‘Extras’ ‘Hintergrund Bitmap löschen’ können Sie dieBitmap-Datei wieder löschen.

‘Extras’‘HintergrundBitmap löschen’

Mit diesem Befehl löschen Sie die Bitmap-Datei im Hintergrund der aktuellenVisualisierung.

Mit dem Befehl ‘Extras’ ‘Hintergrund Bitmap auswählen’ können Sie einBitmap für die aktuelle Visualisierung wählen.

‘Extras’‘Ausrichten’

Mit diesem Befehl können Sie mehrere selektierte Visualisierungselementeausrichten.

Page 156: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Visualisieren mit ecolog 100 PLUS

5-48

Es stehen folgende Möglichkeiten der Ausrichtung zur Verfügung:

• Links: Alle Elemente werden nach dem am weitesten links liegendenElement mit ihrer jeweils linken Kante ausgerichtet.

• entsprechend Rechts / Oben / Unten

• Horizontale Mitte: Alle Elemente werden im Schwerpunkt aller Elementejeweils an deren horizontaler Mitte ausgerichtet.

• Vertikale Mitte: Alle Elemente werden im Schwerpunkt aller Elementejeweils an deren vertikaler Mitte ausgerichtet.

‘Extras’‘Alles Markieren’

Mit diesem Befehl werden alle Visualisierungselemente des aktuellenVisualisierungsobjekts selektiert.

‘Extras’‘Selektieren’

Mit diesem Befehl wird der Selektionsmodus ein- bzw. ausgeschaltet. DiesenBefehl können Sie auch mittels der rechten Maustaste bei gleichzeitiggedrückter <Strg>-Taste aufrufen.

Alternativ können Sie auch das nebenstehend abgebildete Symbol in derSymbolleiste betätigen.

‘Extras’‘Elementliste’

Mit diesem Befehl öffnet sich ein Dialog, der alle Visualisierungselemente mitihrer Nummer, Art und Position auflistet. Die Position bezieht sich auf die X-und Y-Positionen der linken, oberen und der rechten, unteren Ecke desElements.

Wenn Sie ein oder mehrere Einträge selektieren, werden die entsprechendenElemente in der Visualisierung zur optischen Kontrolle markiert. Gegebenenfallswird die Anzeige zu dem Abschnitt gescrollt, in dem sich die Elemente befinden.

Mit der Schaltfläche Eins nach vorne wird das selektierte Visualisierungs-element um eine Ebene Richtung Vordergrund verschoben. Eins nach hintenverschiebt das Element um eine Ebene Richtung Hintergrund.

Mit der Schaltfläche Nach vorne legen Sie selektierte Visualisierungselementein den Vordergrund. Mit der Schaltfläche Nach hinten legen Sie sie in denHintergrund.

Mit der Schaltfläche Löschen werden die selektierten Visualisierungselementeentfernt.

Mit Rückgängig und Wiederherstellen können Sie die vorgenommenenÄnderungen rückgängig machen und wiederherstellen wie bei ‘Bearbeiten’‘Rückgängig’ und ‘Bearbeiten’ ‘Wiederherstellen’. Die Vorgänge können Sieim Dialog beobachten. Zum Verlassen des Dialogs bestätigen Sie IhreÄnderungen mit OK.

Page 157: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-49

Der Dialog Elementliste

‘Extras’‘Einstellungen’

Mit diesem Befehl können Sie im sich öffnenden Dialog verschiedene Ein-stellungen zur Visualisierung vornehmen.

Die Kategorien Darstellung, Rahmen und Sprache können auch im Online-Modus bearbeitet werden.

Geben Sie in der Kategorie Darstellung im Feld Zoom eine Vergrößerungzwischen 10 und 500 % an, um die Anzeige der Visualisierung zu vergrößernbzw. zu verkleinern. Ist Elementnummern gewählt, so werden im Offline-Modus die Nummern der Elemente in jedem Visualisierungselement angezeigt.

Mit Auto-Scrolling in der Kategorie Rahmen erreicht man, daß beim Zeichnenoder Verschieben eines Visualisierungselements der sichtbare Bereich desVisualisierungsfensters automatisch verschoben wird, wenn man an denFensterrahmen stößt. Die gesamte Visualisierung mit allen Elementen wird imOnline-Modus im Fenster dargestellt, egal wie groß das Fenster ist, wennOnline automatisch anpassen gewählt ist. Ist Hintergrund Bitmapeinbeziehen angewählt, so wird beim Anpassen das Bitmap in die Berechnungeinbezogen, ansonsten werden nur die Elemente bedacht.

In der Kategorie Raster können Sie festlegen, ob die Rasterpunkte im Offline-Modus Sichtbar sind, wobei der Abstand der sichtbaren Punkte mindestens 10beträgt, auch wenn die angegebene Größe kleiner ist. In diesem Fallerscheinen nur die Rasterpunkte im Abstand eines Vielfachen derangegebenen Größe. Ist der Punkt Aktiv gewählt, so werden die Elementebeim Zeichnen und Verschieben auf die Rasterpunkte gelegt. Im Feld Größewird der Abstand der Rasterpunkte angegeben.

Page 158: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Visualisieren mit ecolog 100 PLUS

5-50

Einstellungsdialog von Visualisierungen

In der Kategorie Sprache können Sie den Text, den Sie im Konfigurationsdialogbei den Optionen Text und Text für Tooltip einem Element zugeordnet haben,in verschiedenen Sprachen im Visualisierungsfenster anzeigen lassen.

Um eine entsprechende Sprachdatei neu anzulegen, gehen Sie folgender-maßen vor:

Wählen Sie die Option Sprachdatei. Im zugehörigen Eingabefeld geben Sie an,wo die zu erstellende Datei gespeichert werden soll. Sie erhält den Zusatz ‚.vis‘.

Sie können dazu auch über das nebenstehende Symbol den Dialog Öffnen zuHilfe nehmen. Falls bereits eine Sprachdatei vorliegt, wird sie Ihnen hierangeboten.

Im Eingabefeld unter Sprache geben Sie ein Kennwort für die aktuell in derVisualisierung verwendete Sprache ein, z. B. „german“ (oder „D“ oder„deutsch“). Drücken Sie dann auf Speichern. Sie erzeugen eine Datei mit derErweiterung .vis, die Sie nun mit einem normalen Texteditor bearbeiten können.Öffnen Sie dazu die Datei beispielsweise mit dem Notepad:

Sie erhalten eine Liste der Textvariablen für die aktuelle Sprache, die mit z. B.„1=german“ eine Referenz auf den Titel [german] enthält. Sie können nun dieListe durch eine Kopie der Variablenzeilen erweitern, in der Sie dann diedeutschen durch englische Texte ersetzen und darüber ein „[english]“ setzen.Unter der vorhandenen Zeile „1=german“ ergänzen Sie entsprechend mit„2=english“.

Page 159: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-51

Beispiel einer Sprachdatei für eine Visualisierung

(Kategorie Einstellungen./.Sprache)

Um nun die Visualisierung in einer der vorbereiteten Sprachen anzeigen zulassen, öffnen Sie wieder den Dialog Sprache. Im Auswahlfenster unterSprache können Sie nun für das hier gezeigte Beispiel unter den Optionengerman und english wählen.

Die Textanzeige wechselt erst im Online-Modus!

Auswahl Sprachdatei für eine Visualisierung (Kategorie Einstellungen/Sprache)

Page 160: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Ressourcen

5-52

5.3. Die Ressourcen

Überblick über die Ressourcen

In der Registerkarte Ressourcen des Object Organizers befinden sich Objektezum Konfigurieren und Organisieren Ihres Projekts und zur Verfolgung vonVariablenwerten:

• Globale Variablen, die im ganzen Projekt verwendet werden können;sowohl die Globalen Variablen des Projekts als auch die dereingebundenen Bibliotheken

• Steuerungskonfiguration zum Konfigurieren Ihrer Hardware

• Traceaufzeichnung zur grafischen Aufzeichnung von Variablenwerten

• Watch- und Rezepturverwalter zum Anzeigen und Vorbelegen vonVariablenwerten

Die Ressourcen

Globale Variablen

Im Object Organizer befindet sich in der Registerkarte Ressourcen im OrdnerGlobale Variablen standardmäßig das Objekt Globale Variablenliste (Globa-le_Variablen).

Alle in diesem Objekt definierte Variablen sind im ganzen Projekt bekannt.

Ist der Ordner Globale Variablen nicht aufgeklappt (Pluszeichen vor dem Ord-ner), öffnen Sie ihn mit Doppelklick oder Drücken der <Eingabetaste> in derZeile.

Editieren Wählen Sie das entsprechende Objekt aus. Mit dem Befehl ‘Objekt bearbei-ten‘ öffnen Sie ein Fenster mit den bisher definierten globalen Variablen. DerEditor hierfür arbeitet wie der Deklarationseditor.

Page 161: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-53

Definition Normale globale Variablen werden in einem Objekt zwischen denSchlüsselwörtern VAR_GLOBAL und END_VAR definiert. Standardmäßig stehtim Object Organizer in der Registerkarte Ressourcen das Objekt Glo-bale_Variablen zur Verfügung. Das Objekt kann umbenannt werden und eskönnen weitere Objekte für globale Variablen angelegt werden.

Neue Variablen-liste anlegen

Zum Neuanlegen einer globalen Variablenliste erhalten Sie über ‘Projekt‘‘Objekt‘ ‘Einfügen‘den Dialog Neue Globale Variablenliste. Hier geben Sieeinen Namen für die neue Liste an. Haben Sie bereits eine Exportdatei (*.exp)oder DCF-Datei, die die entsprechenden Variablen enthält, können Sie dieseüber mit Datei verknüpfen anbinden. Über die Schaltfläche Auswählen er-halten Sie hierzu den Standarddialog Textdatei öffnen. DCF-Dateien werdenbeim Einlesen in IEC-Syntax umgewandelt.

Wenn Sie den Dialog Neue Globale Variablenliste mit OK bestätigen, wird dasneue Objekt angelegt und sofort der Variableneditor geöffnet. Der Editor fürGlobale Variablen arbeitet wie der Deklarationseditor. Falls allerdings eine ex-terne Variablenliste abgebildet wird, können Sie diese hier nicht mehr editieren.Externe Variablenlisten können nur extern bearbeitet werden und sie werdenbei jedem Öffnen und bei jedem Übersetzen des Projekts neu eingelesen.

Globale Variablen können im gesamten Projekt benutzt werden.

Syntax:

VAR_GLOBAL

(* Variablendeklarationen *)

END_VAR

Globale Konstanten erhalten zusätzlich das Schlüsselwort CONSTANT.

Syntax:

VAR_GLOBAL CONSTANT

(* Variablendeklarationen *)

END_VAR

Steuerungskonfiguration

Die Informationen über die Steuerungskonfiguration entnehmen Sie bitte demgerätespezifischen Teil.

Traceaufzeichnung

Was ist eineTraceauf-zeichnung?

Der Werteverlauf von Variablen kann über einen bestimmten Zeitraum hin auf-gezeichnet werden. Diese Werte werden in einen Ringspeicher geschrieben. Istder Speicher voll, so werden die „ältesten“ Werte vom Speicheranfang her wie-der überschrieben. Maximal können 20 Variablen gleichzeitig aufgezeichnetwerden. Pro Variable können maximal 500 Werte aufgezeichnet werden.

Page 162: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Ressourcen

5-54

Da die Größe des Tracespeichers im Controller 2000 Byte besitzt, können beisehr vielen oder sehr breiten Variablen (DWORD) weniger als 500 Werte aufge-zeichnet werden.

Beispiel: Sollen 5 WORD Variablen aufgezeichnet werden und ist der Speicherin der Steuerung 2000 Byte lang, so können von jeder Variablen 400 Werte auf-gezeichnet werden.

Die Traceauf-zeichnungstarten

Um einen Trace aufzeichnen zu können, öffnen Sie im Object Organizer, inder Registerkarte Ressourcen das Objekt Traceaufzeichnung. Danach müs-sen die Trace-Variablen, die aufgezeichnet werden sollen, eingegeben werden(siehe ‘Extras’ ‘Trace Konfiguration’). Nachdem Sie die Konfiguration mitSpeichern (im Konfigurationsdialog) an die Steuerung geschickt haben und dieAufzeichnung in der Steuerung gestartet (‘Trace starten’) haben, werden dieWerte der Variablen aufgezeichnet. Mit ‘Trace lesen’ werden die zuletzt aufge-zeichneten Werte ausgelesen und grafisch als Kurven dargestellt.

‘Extras’ ‘TraceKonfiguration’

Mit diesem Befehl öffnet sich der Dialog zur Eingabe der aufzuzeichnendenVariablen sowie diverser Traceparameter für die Traceaufzeichnung. Der Dialogkann ebenso durch Doppelklick in die graue Fläche des Dialogs Traceauf-zeichnung geöffnet werden.

Der Trace Konfigurations-Dialog

Page 163: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-55

Eine Variableeinfügen

Die Liste der aufzuzeichnenden Variablen ist zunächst leer. Um eine Variableanzufügen, muß diese in das Feld Eingabe von Trace-Variablen eingegebenwerden. Anschließend kann sie mit der Schaltfläche Einfügen oder der<Eingabetaste> an die Liste angefügt werden. Sie können auch die Eingabe-hilfe verwenden.

Eine Variable wird aus der Liste gelöscht, indem sie selektiert und anschließendauf die Schaltfläche Löschen geklickt wird.

In das Feld Trigger Variable kann eine boolsche oder analoge Variable einge-tragen werden. Sie können hier auch die Eingabehilfe verwenden. Die TriggerVariable beschreibt die Abbruchbedingung des Traces.

Im Trigger Level geben Sie an, bei welchem Wert einer analogen TriggerVariable das Triggerereignis eintritt.

Wenn im Feld Trigger Flanke: positiv gewählt wurde, tritt das Triggerereignisnach einer steigenden Flanke einer boolschen Trigger Variablen ein bzw. wenneine analoge Trigger Variable den Trigger Level von unten nach oben durch-schreitet.

Bei negativ wird entsprechend nach einer fallenden Flanke bzw. Durchschrei-ten von oben nach unten getriggert. Bei beide wird nach fallender und steigen-der Flanke bzw. positivem und negativem Durchlauf getriggert. Bei keine gibtes kein Triggerereignis.

In der Trigger Position geben Sie an, welcher Prozentsatz der Meßwerte vorEintreten des Triggerereignisses aufgezeichnet wird. Geben Sie hier beispiels-weise 25 ein, werden 25% der Meßwerte vor und 75% der Meßwerte nach demTrigger-Ereignis dargestellt, dann wird der Trace abgebrochen.

Mit dem Feld Abtastrate können Sie den Zeitabstand zwischen zwei Aufzeich-nungen in Millisekunden angeben. Die Vorbelegung ”0” bedeutet: ein Abtast-vorgang pro Zyklus.

Wählen Sie den Modus des Abrufens der aufgezeichneten Werte: Bei Einzelwird einmal die Anzahl der vorgegebenen Messungen dargestellt. Bei Fort-laufend wird das Auslesen der Aufzeichnung der vorgegebenen Meßwert-An-zahl immer wieder neu gestartet. Geben Sie beispielsweise für Anzahl '35' ein,umfaßt die erste Darstellung die ersten Meßwerte 1 bis 35, dann wird auto-matisch die Aufzeichnung der nächsten 35 Meßwerte (36-70) abgerufen, usw.Bei Manuell erfolgt ein Auslesen der Traceaufzeichnung gezielt mit ‚Ex-tras‘‘Trace lesen‘.

Der Abrufmodus funktioniert unabhängig davon, ob eine Trigger Variable ge-setzt ist. Ist keine Trigger Variable angegeben, wird der Trace-Buffer mit derAnzahl der vorgegebenen Meßwerte gefüllt und beim Abruf wird der Pufferinhaltgelesen und dargestellt.

Über die Schaltfläche Speichern wird die erstellte Trace Konfiguration in einerDatei gespeichert. Sie erhalten hierzu das Standardfenster ‚Datei speichernunter‘.

Über die Schaltfläche Laden können Sie eine abgespeicherte Trace-Konfigura-tion wieder laden. Dazu öffnet sich das Standardfenster ‚Datei öffnen‘.

Page 164: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Ressourcen

5-56

Beachten Sie, daß Speichern und Laden aus dem Konfigurationsdialog nurdie Konfiguration, nicht die Werte einer Traceaufzeichnung betrifft (imGegensatz zu den Menübefehlen 'Extras' Trace speichern' und 'Extras''Trace laden').

Ist das Feld Trigger Variable leer, läuft die Traceaufzeichnung endlos undkann explizit mit ‘Extras’ ‘Trace stoppen’ abgebrochen werden.

‘Extra’‘Trace starten’

Mit diesem Befehl wird die Trace Konfiguration in den Controller geladen unddie Traceaufzeichnung im Controller gestartet.

Alternativ können Sie auch die nebenstehend abgebildete Schaltflächebetätigen.

‘Extra’‘Trace lesen’

Mit diesem Befehl wird der aktuelle Trace-Buffer aus dem Controller aus-gelesen und die Werte der ausgewählten Variablen werden dargestellt.

Alternativ können Sie auch die nebenstehend abgebildete Schaltfläche betäti-gen.

‘Extra’ ‘Traceautomatischlesen’

Mit diesem Befehl wird der aktuelle Trace-Buffer aus dem Controllerausgelesen und die Werte werden fortlaufend dargestellt. Wird der Trace-Bufferautomatisch gelesen, befindet sich ein Haken (ü) vor dem Menüpunkt.

‘Extra’‘Trace stoppen’

Dieser Befehl stoppt die Traceaufzeichnung in der Steuerung.

Alternativ können Sie auch die nebenstehend abgebildete Schaltfläche betä-tigen.

Page 165: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-57

Auswahl derdarzustellendenVariablen

Die Auswahllisten rechts neben dem Fenster für die Darstellung der Kurvenenthalten jeweils alle in der Trace Konfiguration definierten Trace-Variablen.Wird eine Variable aus der Liste ausgewählt, so wird diese, nachdem ein Trace-Buffer gelesen wurde, in der entsprechenden Farbe ausgegeben (Var 0 grünetc.). Variablen können auch dann ausgewählt werden, wenn bereits Kurvenausgegeben sind.

Es können maximal bis zu acht Variablen gleichzeitig im Tracefenster beob-achtet werden.

Beispiel einer Traceaufzeichnung

Ist ein Trace-Buffer geladen, so werden die Werte aller darzustellenden Varia-blen ausgelesen und dargestellt. Wenn keine Abtastrate eingestellt ist, wird dieX-Achse mit der fortlaufenden Nummer des aufgezeichneten Wertesbeschriftet. In der Statusanzeige des Tracefensters wird angezeigt, ob derTrace-Buffer noch nicht voll ist und wann der Trace fertig ist.

Wurde ein Wert für die Abtastrate angegeben, dann gibt die x-Achse die Zeitdes Meßwerts an. Dem ”ältesten” aufgezeichneten Meßwert wird die Zeit 0 zu-geordnet. Im Beispiel werden die Werte der letzten 25s angezeigt.

Die Y-Achse wird mit Werten im passenden Datentyp beschriftet. DieSkalierung ist so ausgelegt, das der niedrigste und der höchste Wert in denBildbereich passen. Im Beispiel hat Var 0 den niedrigsten Wert 0, als höchstenWert 100.

Ist die Triggerbedingung erfüllt, so wird an der Schnittstelle zwischen den Wer-ten vor Eintreten der Triggerbedingung und danach eine senkrechte, gestri-chelte Linie ausgegeben.

Ein gelesener Speicher bleibt bis zum Projektwechsel oder Verlassen desSystems erhalten.

Page 166: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Ressourcen

5-58

‘Extras’ ‘Cursorausgeben’

Der schnellste Weg, einen Cursor im Graphikfenster zu setzen, ist, mit der lin-ken Maustaste innerhalb des Fensters zu klicken. Der Cursor kann mit derMaus beliebig verschoben werden. Über dem Graphikfenster können Sie je-weils die aktuelle x-Position des Cursors lesen. Neben Var0,.Var1, ... ,VarN wirdder Wert der jeweiligen Variable dargestellt.

Eine weitere Möglichkeit ist der Befehl 'Extras' 'Cursor ausgeben'. Mit diesemBefehl erscheinen in der Traceaufzeichnung zwei vertikale Linien, die zunächstübereinander liegen. Sie können eine der Linien mit den Pfeiltasten nach rechtsund links verschieben. Durch Drücken von <Strg>+<links>, bzw. von<Strg>+<rechts> erhöhen Sie die Geschwindigkeit der Bewegung um denFaktor 10.

Durch zusätzliches Drücken der <Umschalt>-Taste verschieben Sie die andereLinie, die den Differenzbetrag zur ersten Linie anzeigt.

‘Extras’‘Mehrkanal’

Mit diesem Befehl kann zwischen einkanaliger und mehrkanaliger Darstellungder Traceaufzeichnung gewechselt werden. Bei mehrkanaliger Darstellung be-findet sich ein Haken (ü) vor dem Menüpunkt.

Voreingestellt ist die mehrkanalige Darstellung. Hier wird das Darstellungs-fenster auf bis zu acht darzustellende Kurven aufgeteilt. Zu jeder Kurve werdenam Rand der maximale und der minimale Wert ausgegeben.

Bei einkanaliger Darstellung werden alle Kurven mit dem gleichen Skalierung-sfaktor dargestellt und überlagert. Dies kann von Nutzen sein, um Abwei-chungen von Kurven darstellen zu können.

‘Extras’‘Koordinaten-netz’

Mit diesem Befehl können Sie das Koordinatennetz im Darstellungsfenster ein-und ausschalten. Ist es eingeschaltet, erscheint ein Haken (ü) vor demMenübefehl.

‘Extras’‘Y-Skalierung’

Mit diesem Befehl können Sie die vorgegebene Y-Skalierung einer Kurve in derTracedarstellung ändern.

Geben Sie im Dialog die Nummer der gewünschten Kurve (Kanal), den neuenhöchsten (Max. Y-Wert) und den neuen niedrigsten Wert (Max. Y-Wert) auf derY-Achse an.

Mit Doppelklick auf eine Kurve öffnen Sie ebenfalls den Dialog. Der Kanal unddie bisherigen Werte sind vorbelegt.

Der Dialog für die Y-Skalierung

Page 167: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-59

‘Extras’‘Strecken’

Mit diesem Befehl können die ausgegebenen Werte der Traceaufzeichnunggestreckt (gezoomt) werden. Die Anfangsposition wird mit der horizontalenBildlaufleiste eingestellt. Bei mehrmaligem aufeinanderfolgenden Strecken wirdein immer kürzerer Traceausschnitt im Fenster angezeigt.

Alternativ können Sie auch die nebenstehend abgebildete Schaltflächebetätigen.

Dieser Befehl ist das Gegenstück zu ‘Extras’‘Komprimieren’.

‘Extras’‘Komprimieren’

Mit diesem Befehl können die ausgegebenen Werte der Traceaufzeichnungkomprimiert werden, d. h. nach diesem Befehl kann der Verlauf der Trace-Variablen innerhalb einer größeren Zeitspanne betrachtet werden. Einemehrmalige Ausführung des Befehls ist möglich.

Alternativ können Sie auch die nebenstehend abgebildete Schaltflächebetätigen

Dieser Befehl ist das Gegenstück zu ‘Extras’‘Strecken’.

‘Extras’‘Trace speichern’

Mit diesem Befehl kann eine Traceaufzeichnung (Werte + Konfiguration)abgespeichert werden. Es öffnet sich der Dialog zum Speichern einer Datei.Der Dateiname erhält den Zusatz "*.trc".

Beachten Sie, daß hier sowohl die Meßwerte als auch die Trace Konfigurationgespeichert werden, während Speichern im Konfigurationsdialog nur dieKonfiguration betrifft.

Die gespeicherte Traceaufzeichnung kann mit ‘Extras’ ‘Trace laden’ wiedergeladen werden.

‘Extras’‘Trace laden’

Mit diesem Befehl kann eine abgespeicherte Traceaufzeichnung (Werte +Konfiguration) wieder geladen werden. Es öffnet sich der Dialog zum Öffneneiner Datei. Wählen Sie die gewünschte Datei mit dem Zusatz "*.trc".

Mit ‘Extras’ ‘Trace speichern’ kann eine Traceaufzeichnung abgespeichertwerden.

‘Extras’‘Trace in ASCII-File’

Mit diesem Befehl kann eine Traceaufzeichnung in eine ASCII-Dateiabgespeichert werden. Es öffnet sich der Dialog zum Speichern einer Datei.Der Dateiname erhält den Zusatz "*.txt". In der Datei werden die Werte nachfolgendem Schema abgelegt:

ecolog Trace

D:\ECOLOG\PROJECTS\AMPEL.PRO

Zyklus PLC_PRG.ZAEHLER PLC_PRG.LIGHT1

0 2 1

1 2 1

2 2 1

.....

Wurde in der Trace Konfiguration keine Abtastrate eingestellt, so steht in derersten Spalte der Zyklus, d. h. jeweils ein Wert pro Zyklus wurde erfaßt.

Page 168: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Ressourcen

5-60

Im anderen Fall wird hier der Zeitpunkt in ms eingetragen, an dem die Werteder Variablen ab dem Start der Traceaufzeichnung abgespeichert wurden.

In den darauffolgenden Spalten werden die entsprechenden Werte der Trace-Variablen abgespeichert. Die Werte sind jeweils durch ein Leerzeichenvoneinander getrennt.

Die zugehörigen Variablennamen werden in der dritten Zeile der Reihenfolgenach nebeneinander dargestellt (PLC_PRG.ZAEHLER, PLC_PRG.LIGHT1).

Watch- und Rezepturverwalter

Wofür? Mit Hilfe des Watch- und Rezepturverwalters können die Werte vonausgesuchten Variablen angezeigt werden. Der Watch- und Rezepturverwalterermöglicht, auch die Variablen mit bestimmten Werten vorzubelegen und aufeinmal an den Controller zu übertragen (‘Rezeptur schreiben’). Genausokönnen aktuelle Werte der Steuerung als Vorbelegung in den Watch- undRezepturverwalter eingelesen und abgespeichert werden (‘Rezeptur lesen’).Hilfreich sind diese Funktionen z. B. für die Einstellung und Erfassung vonRegelungsparametern.

Alle erzeugten Watchlisten (‘Einfügen’ ‘Neue Watchliste’) werden in der linkenSpalte des Watch- und Rezepturverwalter angezeigt und können mit einemMausklick oder den Pfeiltasten ausgewählt werden. Im rechten Bereich desWatch- und Rezepturverwalters werden die jeweils zugehörigen Variablenangezeigt.

Um mit dem Watch- und Rezepturverwalter zu arbeiten, öffnen Sie im ObjectOrganizer in der Registerkarte Ressourcen das Objekt Watch- und Rezeptur-verwalter.

Offline-Modus Im Offline-Modus kann man im Watch- und Rezepturverwalter mehrereWatchlisten durch den Befehl ‘Einfügen’ ‘Neue Watchliste’ erzeugen.

Zum Eingeben der zu beobachtenden Variablen kann eine Liste aller Variablenmit der Eingabehilfe aufgerufen werden oder man gibt die Variablen mit derTastatur nach folgender Notation ein:

<Bausteinname>.<Variablenname>

Bei globalen Variablen fehlt der Bausteinname. Sie beginnen mit einem Punkt.Der Variablenname kann wiederum mehrstufig sein. Adressen können direkteingegeben werden.

Beispiel für eine mehrstufige Variable:

PLC_PRG.Taktgenerator.T1.ET

Beispiel für eine globale Variable:

.Timer1.Q

Page 169: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-61

Der Watch- und Rezepturverwalter im Offline-Modus

Die Variablen der Watchliste können mit konstanten Werten vorbelegt werden,d. h. im Online-Modus können diese Werte mit dem Befehl ‘Extras’ ‘Rezepturschreiben’ in die Variablen geschrieben werden. Dazu muß der konstante Wertmit := der Variablen zugewiesen werden:

Beispiel:

PLC_PRG.OnDelayTime:=50

Im Beispiel ist die Variable PLC_PRG.ZAEHLER mit dem Wert 6 vorbelegt

‘Einfügen’‘Neue Watchliste’

Mit diesem Befehl fügen Sie in den Watch- und Rezepturverwalter eine neueWatchliste ein. Geben Sie im erscheinenden Dialog den gewünschten Namender Watchliste ein.

‘Extras’‘Watchlisteumbenennen’

Mit diesem Befehl kann der Name einer Watchliste im Watch- undRezepturverwalter geändert werden. Geben Sie im erscheinenden Dialog denneuen Namen der Watchliste ein.

‘Extras’‘Watchlistespeichern’

Mit diesem Befehl kann eine Watchliste abgespeichert werden. Es öffnet sichder Dialog zum Speichern einer Datei. Der Dateiname ist vorbelegt mit demNamen der Watchliste und erhält den Zusatz "*.wtc".

Die gespeicherte Watchliste kann mit ‘Extras’ ‘Watchliste laden’ wiedergeladen werden.

‘Extras’‘Watchlisteladen’

Mit diesem Befehl kann eine abgespeicherte Watchliste wieder geladenwerden. Es öffnet sich der Dialog zum Öffnen einer Datei. Wählen Sie diegewünschte Datei mit dem Zusatz "*.wtc". Im erscheinenden Dialog können Sieder Watchliste einen neuen Namen geben. Vorbelegt ist der Dateiname ohneZusatz.

Mit ‘Extras’ ‘Watchliste speichern’ kann eine Watchliste abgespeichertwerden.

Online-Modus Im Online-Modus werden die Werte der eingegebenen Variablen angezeigt.

Strukturierte Werte (Arrays, Strukturen oder Instanzen von Funktionsblöcken)sind durch ein Pluszeichen vor dem Bezeichner gekennzeichnet. Mit Mausklickauf das Pluszeichen oder Drücken der <Eingabetaste>, wird die Variable auf-bzw. zugeklappt.

Page 170: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Ressourcen

5-62

Um neue Variablen einzugeben, kann die Anzeige durch den Befehl‘Extra’‘Monitoring aktiv’ ausgeschaltet werden. Nachdem die Variableneingegeben sind, können Sie mit demselben Befehl wieder das Anzeigen derWerte aktivieren.

Der Watch- und Rezepturverwalter im Online-Modus

Im Offline-Modus können Variablen mit konstanten Werten vorbelegt werden(durch Eingabe von := <Wert> nach der Variablen). Im Online-Modus könnennun diese Werte mit dem Befehl ‘Extras’ ‘Rezeptur schreiben’ in die Variablengeschrieben werden.

Mit dem Befehl ‘Extras’ ‘Rezeptur lesen’ wird die Vorbelegung der Variablenmit dem aktuellen Wert der Variablen ersetzt.

Es werden nur die Werte einer Watchliste geladen, die im Watch- undRezepturverwalter ausgewählt wurden!

‘Extra’‘Monitoring aktiv’

Mit diesem Befehl wird beim Watch- und Rezepturverwalter im Online-Modusdie Anzeige ein- bzw. ausgeschaltet. Ist die Anzeige aktiv, erscheint ein Haken(ü) vor dem Menüpunkt.

Um neue Variablen einzugeben oder einen Wert vorzubelegen (siehe Offline-Modus), muß die Anzeige durch den Befehl ausgeschaltet werden. Nachdemdie Variablen eingegeben sind, können Sie mit demselben Befehl wieder dasAnzeigen der Werte aktivieren.

‘Extras’‘Rezepturschreiben’

Mit diesem Befehl können im Online-Modus des Watch- undRezepturverwalters die vorbelegten Werte (siehe Offline-Modus) in dieVariablen geschrieben werden.

‘Extras’‘Rezeptur lesen’

Mit dem Befehl wird im Online-Modus des Watch- und Rezepturverwalters dieVorbelegung der Variablen (siehe Offline-Modus) mit dem aktuellen Wert derVariablen ersetzt.

Beispiel:

PLC_PRG.Zaehler [:= <aktueller Wert>] = <aktueller Wert>

Page 171: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-63

Werte forcen Sie können im Watch- und Rezepturverwalter auch ‘Werte forcen’ und ‘Werteschreiben’. Wenn Sie auf den jeweiligen Variablenwert klicken, öffnet sich einDialog, in dem Sie den neuen Wert der Variablen eingeben können. GeänderteVariablen erscheinen im Watch- und Rezepturverwalter rot.

5.4. Ergänzende Hinweise zu den Sprachen

In diesem Abschnitt erhalten Sie weiterführende Informationen zu denSprachen in ecolog.

Anweisungsliste (AWL)

Eine Anweisungsliste (AWL) besteht aus einer Folge von Anweisungen. JedeAnweisung beginnt in einer neuen Zeile. Sie beinhaltet einen Operator und, jenach Art der Operation, einen oder mehrere durch Kommata abgetrennteOperanden.

Vor einer Anweisung kann sich eine Identifikator-Marke befinden, gefolgt voneinem Doppelpunkt (:).

Ein Kommentar muß das letzte Element in einer Zeile sein (siehenachfolgendes Beispiel).

Zwischen Anweisungen können leere Zeilen eingefügt werden.

Beispiel:

LD Messwert 23

ST Istwert (* Kommentar *)

GE 5 (*keine Meldung, wenn ≥ 5*)

JMPC weiter

LD Sensor 23

AND Freigabe

STN Meldung 23

weiter:

Page 172: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ergänzende Hinweise zu den Sprachen

5-64

Modifikatorenund Operatorenin AWL

In der Sprache AWL können folgende Operatoren und Modifikatoren verwendetwerden:

Modifikatoren:

C bei JMP, CAL, RET: Die Anweisung wird nur ausgeführt, wenn dasErgebnis des vorhergehenden Ausdrucks TRUE ist.

N bei JMPC, CALC, RETC: Die Anweisung wird nur ausgeführt, wenndas Ergebnis des vorhergehenden Ausdrucks FALSE ist.

N sonst: Negation des Operanden (nicht des Akkus)

Nachfolgend finden Sie eine Tabelle aller Operatoren in AWL mit derenmöglichen Modifikatoren und der jeweiligen Bedeutung:

Operator Modifikatoren Bedeutung

LD N Setze aktuelles Ergebnis gleich demOperanden. Lade Wert des Operanden in Akku[=Akt. Erg.]

ST N Speichere aktuelles Ergebnis an dieOperandenstelle.

S Setze den Bool-Operand genau dann auf TRUE,wenn das aktuelle Ergebnis TRUE ist.

R Setze den Bool-Operand genau dann aufFALSE, wenn das aktuelle Ergebnis TRUE ist.

AND N,( Bitweise Und-Verknüpfung

OR N,( Bitweise Oder-Verknüpfung

XOR N,( Bitweise Exklusiv-Oder-Verknüpfung

ADD ( Addition

SUB ( Subtraktion

MUL ( Multiplikation

DIV ( Division

GT ( >Vergleich ob aktuelles Ergebnis größer als derOperand ist

Page 173: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-65

Operator Modifikatoren Bedeutung

GE ( >=Vergleich ob aktuelles Ergebnis größer odergleich als der Operand ist

EQ ( =Vergleich ob aktuelles Ergebnis gleich demOperand ist

NE ( <>Vergleich ob aktuelles Ergebnis ungleich demOperanden ist

LE ( <=Vergleich ob aktuelles Ergebnis kleiner odergleich als der Operand ist

LT ( <Vergleich ob aktuelles Ergebnis kleiner als derOperand ist

JMP CN Springe zur Marke.

CAL CN Rufe Programm oder Funktionsblock auf.

RET CN Verlasse den Baustein und kehre ggf. zurückzum Aufrufer.

) Werte zurückgestellte Operation aus.

Es ist in AWL auch möglich, Klammern nach einer Operation zu setzen. AlsOperand wird dann der Wert der Klammer betrachtet.

Zum Beispiel:

LD 2

MUL 2

ADD 3

ST Erg

Hier ist der Wert von Erg 7. Wenn man aber Klammern setzt:

LD 2

MUL( 2

ADD 3

) ST Erg

Page 174: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ergänzende Hinweise zu den Sprachen

5-66

Hier ergibt sich als Wert für Erg 10, denn die Operation MUL wird erst aus-gewertet, wenn man auf ”)” trifft; als Operand für MUL errechnet sich dann 5.

Strukturierter Text (ST)

Der Strukturierte Text besteht aus einer Reihe von Anweisungen, die wie inHochsprachen bedingt (”IF..THEN..ELSE”) oder in Schleifen (WHILE..DO)ausgeführt werden können.

Beispiel:

IFvalue<7THENWHILE value<8DO

value:=value+1;END_WHILE;

END_IF;

Ausdrücke Ein Ausdruck ist ein Konstrukt, das nach seiner Auswertung einen Wertzurückliefert.

Ausdrücke sind zusammengesetzt aus Operatoren und Operanden. EinOperand kann eine Konstante, eine Variable, ein Funktionsaufruf oder einweiterer Ausdruck sein.

Auswertung vonAusdrücken

Die Auswertung eines Ausdrucks erfolgt durch Abarbeitung der Operatorennach bestimmten Bindungsregeln. Der Operator mit der stärksten Bindung wirdzuerst abgearbeitet, dann der Operator mit der nächststärkeren Bindung, usw.,bis alle Operatoren abgearbeitet sind.

Operatoren mit gleicher Bindungsstärke werden von links nach rechtsabgearbeitet.

Nachfolgend finden Sie eine Tabelle der ST-Operatoren in der Ordnung ihrerBindungsstärke:

Operation Symbol Bindungsstärke

Einklammern (Ausdruck) Stärkste Bindung

Funktionsaufruf Funktionsname(Parameterliste)

Negieren

Komplementbildung

-

NOT

Multiplizieren

Dividieren

Modulo

*

/

MOD

Addieren

Subtrahieren

+

-

Page 175: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-67

Operation Symbol Bindungsstärke

Vergleiche <,>,<=,>=

Gleichheit

Ungleichheit

=

<>

Bool AND AND

Bool XOR XOR

Bool OR OR Schwächste Bindung

Es gibt folgende Anweisungen in ST, tabellarisch geordnet, samt Beispiel:

Anweisungsart Beispiel

Zuweisung A:=B; CV := CV + 1;

Aufruf eines FunktionsblocksundBenutzung der FB-Ausgabe

CMD_TMR(IN := %IX5, PT := 300);

A:=CMD_TMR.Q

RETURN RETURN;

IF D:=B*B;

IF D<0 THEN

C:=A;

ELSIF D=0.0 THEN

C:=B;

ELSE

C:=D;END_IF;

CASE CASE INT1 OF

1: BOOL1 := TRUE;

2: BOOL2 := TRUE;

ELSE

BOOL1 := FALSE;

BOOL2 := FALSE;

END_CASE;

Page 176: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ergänzende Hinweise zu den Sprachen

5-68

Anweisungsart Beispiel

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 ;

Anweisungen imStrukturiertenText

Wie der Name schon sagt, ist der Strukturierte Text auf strukturiertesProgrammieren ausgelegt, d. h. für bestimmte, häufig benutzte Konstrukte, wieetwa Schleifen, bietet ST vorgegebene Strukturen zur Programmierung.

Dies hat die Vorteile geringerer Fehlerwahrscheinlichkeit und größererÜbersichtlichkeit des Programms.

Vergleichen wir zum Beispiel zwei gleichbedeutende Programmsequenzen inAWL und ST:

Eine Schleife zum Berechnen von Zweierpotenzen in AWL:

schleife:

LD Zaehler

EQ 0

JMPC ende

LD Var1

Page 177: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-69

schleife:

MUL 2

ST Var1

LD Zaehler

SUB 1

ST Zaehler

JMP schleife

ende:

LD Var1

ST Erg

Dieselbe Schleife in ST programmiert würde ergeben:

WHILE Zaehler<>0 DO

Var1:=Var1*2;

Zaehler:=Zaehler-1;

END_WHILE;

Erg:=Var1;

Wie man sieht, ist die Schleife in ST nicht nur kürzer zu programmieren,sondern auch wesentlich leichter zu lesen, vor allem, wenn man sich nunineinander geschachtelte Schleifen in größeren Konstrukten vorstellt.

Die verschiedenen Strukturen im ST haben folgende Bedeutung:

Zuweisungs-operator

Auf der linken Seite einer Zuweisung steht ein Operand (Variable, Adresse),dem der Wert des Ausdrucks auf der rechten Seite zugewiesen wird mit demZuweisungsoperator :=

Beispiel:

Var1 := Var2 * 10;

Nach Ausführung dieser Zeile hat Var1 den zehnfachen Wert von Var2.

Aufruf vonFunktions-blöcken in ST

Ein Funktionsblock in ST wird aufgerufen, indem man den Namen der Instanzdes Funktionsblocks schreibt und anschließend in Klammern die gewünschtenWerte den Parametern zuweist. Im folgenden Beispiel wird ein Timer aufge-rufen mit Zuweisungen für die Parameter IN und PT. Anschließend wird dieErgebnisvariable 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 := %IX1.5.2, PT := 300);

A:=CMD_TMR.Q

Page 178: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ergänzende Hinweise zu den Sprachen

5-70

RETURN-Anweisung

Die RETURN-Anweisung kann man verwenden, um einen Baustein zuverlassen, beispielsweise abhängig von einer Bedingung.

IF-Anweisung Mit der IF-Anweisung kann man eine Bedingung abprüfen und abhängig vondieser Bedingung 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.

Andernfalls werden die Boolschen Ausdrücke, beginnend mit<Boolscher_Ausdruck2> der Reihe nach ausgewertet, bis einer der AusdrückeTRUE ergibt. Dann werden nur die Anweisungen nach diesem BoolschenAusdruck und vor dem nächsten ELSE oder ELSIF ausgewertet.

Wenn keine der Boolschen Ausdrücke TRUE ergibt, dann werdenausschließlich die <ELSE_Anweisungen> ausgewertet.

Beispiel:

IF temp<17

THEN heizung_an := TRUE;

ELSE heizung_an := FALSE;

END_IF;

Hier wird die Heizung eingeschaltet, wenn die Temperatur unter 17 Grad sinkt,ansonsten bleibt sie aus. Der ELSE-Zweig darf übrigens auch fehlen.Außerdem kann man IF-Anweisungen schachteln. Dann muß man das ELSEdurch ein ELSE_IF ersetzen.

Page 179: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-71

CASE-Anweisung

Mit der CASE-Anweisung kann man mehrere bedingte Anweisungen mitderselben Bedingungsvariablen in ein Konstrukt zusammenfassen.

Syntax:

CASE <Var1> OF

<Wert 1>: <Anweisung 1>

<Wert 2>: <Anweisung 2>

<Wert3, Wert4, Wert5: <Anweisung 3>

<Wert6 .. Wert10 : <Anweisung 4>

...

<Wert n>: <Anweisung n>

ELSE <ELSE-Anweisung>

END_CASE;

Eine CASE-Anweisung wird nach folgendem Schema abgearbeitet:

Wenn die Variable in <Var1> den Wert <Wert i> hat, dann wird die Anweisung<Anweisung i> ausgeführt.

Hat <Var 1> keinen der angegebenen Werte, dann wird die <ELSE-Anweisung>ausgeführt.

Wenn für mehrere Werte der Variablen dieselbe Anweisung auszuführen ist,dann kann man diese Werte mit Kommata getrennt hintereinanderschreibenund damit die gemeinsame Anweisung bedingen.

Wenn für einen Wertebereich der Variablen dieselbe Anweisung auszuführenist, dann kann man den Anfangs- und Endwert getrennt durch zwei Punktehintereinanderschreiben und damit die gemeinsame Anweisung bedingen.

Beispiel:

CASE INT1 OF

1, 5: BOOL1 := TRUE;

BOOL3 := FALSE;

2: BOOL2 := FALSE;

BOOL3 := TRUE;

ELSE

BOOL1 := NOT BOOL1;

BOOL2 := BOOL1 OR BOOL2;

END_CASE;

Page 180: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ergänzende Hinweise zu den Sprachen

5-72

FOR-Schleife Mit der FOR-Schleife kann man wiederholte Vorgänge programmieren.

Syntax:

INT_Var :INT;

FOR <INT_Var> := <INIT_WERT> TO <END_WERT> {BY <Schrittgröße>} DO

<Anweisungen>

END_FOR;

Der Teil in geschweiften Klammern {} ist optional.

Die <Anweisungen> werden solange ausgeführt, solange der Zähler <INT_Var>nicht größer als der <END_WERT> ist. Dies wird vor der Ausführung der<Anweisungen> überprüft, so daß die <Anweisungen> niemals ausgeführtwerden, wenn <INIT_WERT> größer als <END_WERT> ist.

Immer, wenn <Anweisungen> ausgeführt worden ist, wird <INT_Var> um<Schrittgröße> erhöht. Die Schrittgröße kann jeden Integerwert haben. Fehltsie, wird diese auf 1 gesetzt. Die Schleife muß also terminieren, da <INT_Var>nur größer wird.

Beispiel:

FOR Zaehler:=1 TO 5 BY 1 DO

Var1:=Var1*2;

END_FOR;

Erg:=Var1;

Nach dem Schlüsselwort FOR wird der „Zaehler“ initialisiert, in diesem Fall mit1.

Nach dem Schlüsselwort TO wird die Obergrenze des „Zaehlers“ festgelegt,wenn der „Zaehler“ diese Obergrenze überschreitet, wird die Schleife beendet.

Nach dem Schlüsselwort BY wird die Schrittweite des Zaehlers festgelegt, umdiesen Wert wird der Zaehler bei jedem Schleifendurchlauf erhöht. In unseremFall ist die Schrittweite 1, sie kann aber jeden Integerwert haben.

Nach dem Schlüsselwort DO wird die Anweisung für den Schleifendurchlaufgegeben. In unserem Beispiel wird die Variable Var1 mit 2 multipliziert.

Das Schlüsselwort END_FOR schließt die FOR-Schleife ab.

Nehmen wir an, daß die Variable Var1 mit dem Wert 1 vorbelegt wurde, dannwird sie nach der FOR-Schleife den Wert 32 haben.

Der <END_WERT> darf nicht der Grenzwert des Zählers <INT_VAR> sein.z. B. wenn die Variable Zaehler vom Typ SINT ist, darf der <END_WERT>nicht 127 sein, sonst erfolgt eine Endlosschleife.

Page 181: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-73

WHILE-Schleife Die WHILE-Schleife kann benutzt werden wie die FOR-Schleife, mit demUnterschied, daß die Abbruchbedingung ein beliebiger boolscher Ausdruck seinkann. Das heißt, man gibt eine Bedingung an, die, wenn sie zutrifft, die Aus-führung der Schleife zur Folge hat.

Syntax:

WHILE <Boolscher Ausdruck> DO

<Anweisungen>

END_WHILE;

Die <Anweisungen> werden solange wiederholt ausgeführt, wie<Boolscher_Ausdruck> TRUE ergibt. Wenn <Boolscher_Ausdruck> bereits beider ersten Auswertung FALSE ist, dann werden die <Anweisungen> niemalsausgeführt. Wenn <Boolscher_Ausdruck> niemals den Wert FALSE annimmt,dann werden die <Anweisungen> endlos wiederholt, wodurch ein Laufzeitfehlerentsteht.

Der Programmierer muß selbst dafür sorgen, daß keine Endlosschleifeentsteht, indem er im Anweisungsteil der Schleife die Bedingung verändert,also zum Beispiel einen Zähler hoch- oder runterzählt.

Beispiel:

WHILE Zaehler<>0 DO

Var1 := Var1*2;

Zaehler := Zaehler-1;

END_WHILE

Die While-Schleife ist folgendermaßen zu lesen:

Nach dem Schlüsselwort WHILE folgt die Ausführungsbedingung, in unseremFall ist das die Überprüfung, ob der Zähler ungleich der Null ist. Solange dieszutrifft, werden alle Anweisungen zwischen DO und END_WHILE ausgeführt,unter anderem auch das Update des Zaehlers.

Die While- und die nachfolgende Repeat-Schleife sind in gewissem Sinnemächtiger als die For-Schleife, da man nicht bereits vor der Ausführung derSchleife, die Anzahl der Schleifendurchläufe wissen zu braucht. In manchenFällen wird man also nur mit diesen beiden Schleifenarten arbeiten können.Wenn jedoch die Anzahl der Schleifendurchläufe klar ist, dann ist eine For-Schleife zu bevorzugen, da sie keine endlosen Schleifen ermöglicht.

Page 182: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ergänzende Hinweise zu den Sprachen

5-74

REPEAT-Schleife

Die REPEAT-Schleife unterscheidet sich von den WHILE-Schleifen dadurch,daß die Abbruchbedingung erst nach dem Ausführen der Schleife überprüftwird. Das hat zur Folge, daß die Schleife mindestens einmal durchlaufen wird,egal wie die Abbruchbedingung lautet.

Syntax:

REPEAT

<Anweisungen>

UNTIL <Boolscher Ausdruck>

END_REPEAT;

Die <Anweisungen> werden solange ausgeführt, bis <Boolscher Ausdruck>TRUE ergibt.

Wenn <Boolscher Ausdruck> bereits bei der ersten Auswertung TRUE ergibt,dann werden <Anweisungen> genau einmal ausgeführt. Wenn<Boolscher_Ausdruck> niemals den Wert TRUE annimmt, dann werden die<Anweisungen> endlos wiederholt, wodurch ein Laufzeitfehler entsteht.

Der Programmierer muß selbst dafür sorgen, daß keine Endlosschleifeentsteht, indem er im Anweisungsteil der Schleife die Bedingung verändert,also zum Beispiel einen Zähler hoch- oder runterzählt.

Beispiel:

REPEAT

Var1 := Var1*2;

Zaehler := Zaehler-1;

UNTIL

Zaehler=0

END_REPEAT

EXIT-Anweisung Wenn die EXIT-Anweisung in einer FOR-, WHILE- oder REPEAT-Schleifevorkommt, dann wird die innerste Schleife beendet, ungeachtet derAbbruchbedingung.

Page 183: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-75

Ablaufsprache (AS)

Die Ablaufsprache ist eine graphisch orientierte Sprache, die es ermöglicht, diezeitliche Abfolge verschiedener Aktionen innerhalb eines Programms zubeschreiben. Nähere Angaben zum Umgang mit dem Ablaufsprachen-Editorvon ecolog entnehmen Sie bitte dem Abschnitt ab S.5-26.

Schritt Ein in Ablaufsprache geschriebener Baustein besteht aus einer Folge vonSchritten, die über gerichtete Verbindungen (Transitionen) miteinanderverbunden sind.

Es gibt zwei Arten von Schritten.

• Die vereinfachte Form besteht aus einer Aktion und einem Flag, dasanzeigt, ob der Schritt aktiv ist. Ist zu einem Schritt die Aktion implementiert,so erscheint ein kleines Dreieck in der rechten oberen Ecke des Schrittes.

• Ein IEC-Schritt besteht aus einem Flag und einer oder mehrerenzugewiesenen Aktionen oder boolschen Variablen. Die assoziiertenAktionen erscheinen rechts vom Schritt.

Aktion Eine Aktion kann eine Folge von Instruktionen in AWL oder in ST, eine Mengevon Netzwerken in FUP oder in KOP oder wieder eine Ablaufstruktur(AS)enthalten.

Bei den vereinfachten Schritten ist eine Aktion immer mit ihrem Schrittverbunden. Um eine Aktion zu editieren, führen Sie auf dem Schritt, zu dem dieAktion gehört, einen doppelten Mausklick aus, oder markieren Sie den Schrittund führen den Menübefehl 'Extras''Zoom Aktion/Transition' aus.

Aktionen von IEC-Schritten hängen im Object Organizer direkt unter ihrem AS-Baustein und werden mit Doppelklick oder Drücken der <Eingabetaste> in ihrenEditor geladen. Neue Aktion können mit 'Projekt''Aktion hinzufügen' erzeugtwerden.

Eingangs- bzw.Ausgangsaktion

Einem Schritt kann eine Eingangsaktion und eine Ausgangsaktion hinzugefügtwerden. Eine Eingangsaktion wird nur einmal ausgeführt, gleich nachdem derSchritt aktiv geworden ist. Eine Ausgangsaktion wird nur einmal ausgeführt,bevor der Schritt deaktiviert wird.

Ein Schritt mit Eingangsaktion wird durch ein ‘E’ in der linken unteren Eckegekennzeichnet, die Ausgangsaktion durch ein ‘X’ in der rechten unteren Ecke .

Die Ein- und Ausgangsaktion kann in einer beliebigen Sprache implementiertwerden. Um eine Ein- bzw. Ausgangsaktion zu editieren, führen Sie auf dieentsprechende Ecke im Schritt einen doppelten Mausklick aus.

Beispiel eines Schritts mit Ein- und Ausgangsaktion:

Page 184: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ergänzende Hinweise zu den Sprachen

5-76

Transition /Transitions-bedingung

Zwischen den Schritten liegen sogenannte Transitionen. EineTransitionsbedingung kann eine Boolsche Variable, Boolsche Adresse, eineBoolsche Konstante (TRUE) sein oder eine Folge von Instruktionen mit einemBoolschen Ergebnis in ST-Syntax (z. B. (i <= 100) AND b) oderausprogrammiert in einer beliebigen Sprache (siehe ‘Extras’ ’ZoomAktion/Transition’).

Aktiver Schritt Nach dem Aufruf des AS-Bausteins wird zunächst die zum Initialschritt (doppeltumrandet) gehörende Aktion ausgeführt. Ein Schritt, dessen Aktion ausgeführtwird, heißt aktiv. Falls der Schritt aktiv ist, wird die zugehörige Aktion einmal proZyklus ausgeführt. Im Online-Modus werden aktive Schritte blau dargestellt.

In einem Steuerungszyklus werden alle Aktionen ausgeführt, die zu aktivenSchritten gehören. Danach werden die jeweils nachfolgenden Schritte deraktiven Schritte aktiv, wenn die Transitionsbedingungen der nachfolgendenSchritte TRUE sind. Die jetzt aktiven Schritte werden erst im nächsten Zyklusausgeführt.

IEC-Schritt Neben den vereinfachten Schritten stehen die normkonformen IEC-Schritte inAS zur Verfügung.

Zu einem IEC-Schritt können beliebig viele Aktionen zugewiesen werden. DieAktionen von IEC-Schritten liegen getrennt von den Schritten vor und könneninnerhalb ihres Bausteins mehrfach verwendet werden. Dazu müssen sie zuden einzelnen Schritten assoziiert werden mit dem Befehl 'Extras''Aktionassoziieren'.

Neben Aktionen können auch boolsche Variablen zu Schritten zugewiesenwerden. Über die sogenannten Bestimmungszeichen (Qualifier) werden dieAktionen und boolschen Variablen aktiviert und deaktiviert, zum Teil mitzeitlichen Verzögerungen. Da eine Aktion immer noch aktiv sein kann, auchwenn bereits der nächste Schritt abgearbeitet wird, z. B. durch Bestimmungs-zeichen S (Set), kann man Nebenläufigkeiten erreichen.

Eine assoziierte boolsche Variable wird bei jedem Aufruf des AS-Bausteinesgesetzt oder zurückgesetzt. Das heißt, ihr wird jedesmal entweder der WertTRUE oder FALSE zugewiesen.

Die assoziierten Aktionen zu einem IEC-Schritt werden rechts vom Schritt ineinem zweigeteilten Kästchen dargestellt. Das linke Feld enthält den Qualifier,evtl. mit Zeitkonstanten, und das rechte den Aktionsnamen bzw. boolschenVariablennamen.

Beispiel für einen IEC-Schritt mit zwei Aktionen:

Zur leichteren Verfolgung der Vorgänge werden alle aktiven Aktionen im Online-Betrieb wie die aktiven Schritte blau dargestellt. Nach jedem Zyklus wirdüberprüft, welche Aktionen aktiv sind.

Page 185: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-77

Wird eine Aktion deaktiviert, so wird sie noch einmal ausgeführt. Das heißt,daß jede Aktion mindestens zweimal ausgeführt wird (auch eine Aktion mitQualifier P).

Bei einem Aufruf werden zuerst die deaktivierten Aktionen in alphabetischerReihenfolge abgearbeitet und dann alle aktiven Aktionen wiederum inalphabetischer Reihenfolge.

Ob es sich bei einem neu eingefügten Schritt um einen IEC-Schritt handelt, istabhängig davon, ob der Menübefehl 'Extras''IEC-Schritte benutzen'angewählt ist.

Im Object Organizer hängen die Aktionen direkt unter ihrem jeweiligen AS-Baustein. Neue Aktionen können mit 'Projekt''Aktion hinzufügen' erzeugtwerden.

Um IEC-Schritte verwenden zu können, müssen Sie in Ihr Projekt diespezielle SFC-Bibliothek lecsfc.lib einbinden.

Qualifier Zum Assoziieren der Aktionen zu IEC-Schritten stehen folgende Qualifier(Bestimmungszeichen) zur Verfügung:

N Non-stored Die Aktion ist solange aktiv wie der Schritt.

R overriding Reset Die Aktion wird deaktiviert.

S Set (Stored) Die Aktion wird aktiviert und bleibt bis zu einemReset aktiv.

L time Limited Die Aktion wird für eine bestimmte Zeit aktiviert,maximal solange der Schritt aktiv ist.

D time Delayed Die Aktion wird nach einer bestimmten Zeit aktiv,sofern der Schritt noch aktiv ist und dann solangeder Schritt aktiv ist.

P Pulse Die Aktion wird genau einmal ausgeführt, wenn derSchritt aktiv wird.

SD Stored and timeDelayed

Die Aktion wird nach einer bestimmten Zeit aktiviertund bleibt bis zu einem Reset aktiv.

DS Delayed andStored

Die Aktion wird nach einer bestimmten Zeitaktiviert, sofern der Schritt noch aktiv ist und bleibtbis zu einem Reset aktiv.

SL Stored and timeLimited

Die Aktion ist für eine bestimmte Zeit aktiviert.

Die Bestimmungszeichen L, D, SD, DS und SL benötigen eine Zeitangabe imTIME-Konstantenformat, z. B. L T#5s.

Page 186: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Ergänzende Hinweise zu den Sprachen

5-78

ImpliziteVariablen in AS

In der AS gibt es implizit deklarierte Variablen, die verwendet werden können.Zu jedem Schritt gehört ein Flag, welches den Zustand des Schritts speichert.Das Schritt-Flag (aktiver oder inaktiver Zustand des Schritts) heißt<StepName>.x bei IEC-Schritten bzw. nur <StepName> bei den vereinfachtenSchritten. Diese boolsche Variable hat den Wert TRUE, wenn der zugehörigeSchritt aktiv ist, und FALSE, wenn er inaktiv ist. Sie kann in jeder Aktion undTransition des AS-Bausteins benutzt werden.

Ob eine IEC-Aktion aktiv ist oder nicht, kann man mit der Variablen<AktionsName>.x abfragen.

Beim Deaktivierungslauf der IEC-Action hat die Variable bereits den WertFALSE.

Bei den IEC-Schritten kann mit den impliziten Variablen <StepName>.t dieaktive Zeitdauer der Schritte abgefragt werden.

AS-Flags Wenn im AS ein Schritt länger aktiv ist, als in seinen Attributen angegeben,dann werden einige spezielle Flags gesetzt. Darüber hinaus gibt es weitereVariablen, die Sie definieren können, um den Ablauf in der Ablaufsprache zusteuern. Um die Flags zu benutzen, müssen Sie sie irgendwo deklarieren. Daskann global oder lokal, als Aus- oder Eingabevariable sein.

SFCEnableLimit: Diese spezielle Variable ist vom Typ BOOL. Wenn sie TRUEist, werden Zeitüberschreitungen bei den Schritten in SFCError registriert.Ansonsten werden Zeitüberschreitungen ignoriert.

SFCInit: Diese Variable hat ebenfalls den Typ BOOL. Wenn diese VariableTRUE ist, dann wird die Ablaufsprache auf den Init-Schritt zurückgesetzt unddie anderen AS-Flags werden zurückgesetzt. Der Init-Schritt bleibt so langeaktiv, wird aber nicht ausgeführt, so lange die Variable TRUE ist. Erst wennSFCInit wieder auf FALSE gesetzt wird, wird der Baustein wieder normalweiterverarbeitet.

SFCQuitError: Eine Variable vom Typ BOOL. Solange diese Variable TRUEist, wird die Abarbeitung des AS-Diagramms angehalten, eine eventuelleZeitüberschreitung in der Variablen SFCError wird dabei zurückgesetzt. Wenndie Variable wieder auf FALSE gesetzt wird, dann werden alle bisherigen Zeitenin den aktiven Schritten zurückgesetzt.

SFCPause: Eine Variable vom Typ BOOL. Solange diese Variable TRUE ist,wird die Abarbeitung des AS-Diagramms angehalten.

SFCError: Diese boolsche Variable wird gesetzt, wenn in einem AS-Diagrammeine Zeitüberschreitung aufgetreten ist.

SFCTrans: Diese Variable ist vom Typ BOOL. Diese Variable wird TRUE, wenneine Transition schaltet.

Page 187: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-79

SFCErrorStep: Diese Variable ist vom Typ STRING. Im Falle einer Zeitüber-schreitung wird in dieser Variable der Name des Schritts gespeichert, der dieZeitüberschreitung verursacht hat.

SFCErrorPOU: Diese Variable vom Typ STRING erhält im Falle einerZeitüberschreitung den Namen des Bausteins, in dem die Zeitüberschreitungaufgetreten ist.

SFCCurrentStep: Diese Variable ist vom Typ STRING. In dieser Variablen wirdder Name des Schritts gespeichert, der aktiv ist, unabhängig von derZeitüberwachung. Bei einer Parallelverzweigung wird der Schritt im äußerstenrechten Zweig gespeichert.

Wenn einmal eine Zeitüberschreitung aufgetreten ist, und die VariableSFCError nicht wieder zurückgesetzt wurde, wird keine weitere Zeitüber-schreitung registriert.

Alternativzweig Zwei oder mehr Zweige in AS können als Alternativverzweigungen definiertwerden. Jeder Alternativzweig muß mit einer Transition beginnen und enden.Alternativverzweigungen können Parallelverzweigungen und weitereAlternativverzweigungen beinhalten. Eine Alternativverzweigung beginnt aneiner horizontalen Linie (Alternativanfang) und endet an einer horizontalen Linie(Alternativende) oder mit einem Sprung.

Wenn der Schritt, der der Alternativanfangslinie vorangeht, aktiv ist, dann wirddie erste Transition jeder Alternativverzweigung von links nach rechtsausgewertet. Die erste Transition von links, deren Transitionsbedingung denWert TRUE hat, wird geöffnet und die nachfolgenden Schritte werden aktiviert(siehe aktiver Schritt, S. 5-76).

Parallelzweig Zwei oder mehr Verzweigungen in AS können als Parallelverzweigungendefiniert werden. Jeder Parallelzweig muß mit einem Schritt beginnen undenden. Parallelverzweigungen können Alternativverzweigungen oder weitereParallelverzweigungen beinhalten. Eine Parallelverzweigung beginnt bei einerdoppelten Linie (Parallelanfang) und endet bei einer doppelten Linie(Parallelende) oder bei einem Sprung.

Wenn der der Parallelanfangs-Linie vorangehende Schritt aktiv ist, und dieTransitionsbedingung nach diesem Schritt den Wert TRUE hat, dann werdendie ersten Schritte aller Parallelverzweigungen aktiv (siehe aktiver Schritt,S. 5-76). Diese Zweige werden nun alle parallel zueinander abgearbeitet. DerSchritt nach der Parallelende-Linie wird aktiv, wenn alle vorangehenden Schritteaktiv sind, und die Transitionsbedingung vor diesem Schritt den Wert TRUEliefert.

Sprung Ein Sprung ist eine Verbindung zu dem Schritt, dessen Name unter demSprungsymbol angegeben ist. Sprünge werden benötigt, weil es nicht erlaubtist, nach oben führende oder sich überkreuzende Verbindungen zu schaffen.

Page 188: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-80

5.5. Die Operatoren in ecolog 100 PLUS

Ecolog unterstützt nahezu alle IEC-Operatoren. Diese sind im Gegensatz zuden Standardfunktionen implizit im ganzen Projekt bekannt. In denBausteinrümpfen werden Operatoren wie Funktionen benutzt. Es folgt eineListe mit sämtlichen unterstützten Operatoren.

Arithmetische Operatoren

ADD Addition von Variablen vom Typ BYTE, DWORD, WORD, INT und DINT

Es können auch zwei TIME-Variablen addiert werden, die Summe ist dannwieder eine Zeit (z. B. gilt t#45s + t#50s = t#1m35s)

Beispiel in AWL:

LD 7

ADD 2,4,7

ST var1

Beispiel in ST:

var1 := 7+2+4+7;

Beispiel in FUP:

Beispiel in KOP (hier bedingtes ADD mit ENable Eingang):

Page 189: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-81

DIV Division einer Variablen vom Typ BYTE, DWORD, WORD, INT und DINT einerdurch eine andere Variable dieser Typen.

Beispiel in AWL:

LD 8

DIV 2

ST var1

Beispiel in ST:

var1 := 8/2;

Beispiel in FUP:

MOD Modulo Division (= Rest einer Division) einer Variablen vom BYTE, DWORD,WORD, INT und DINT durch eine andere Variable von einem dieser Typen.

Beispiel in AWL:

LD 9

MOD 2

ST var1 (* Ergebnis ist 1 *)

Page 190: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-82

Beispiel in ST:

var1 := 9 MOD 2;

Beispiel in FUP:

MUL Multiplikation von Variablen vom Typ BYTE, DWORD, WORD, INT und DINT

Beispiel in AWL:

LD 7

MUL 2,4,7

ST var1

Beispiel in ST:

var1 := 7*2*4*7;

Beispiel in FUP:

SIZEOF Als Ergebnis liefert diese Funktion die Anzahl der Bytes, die der angegebeneDatentyp benötigt.

Beispiel in AWL:

Var1 INT

LD arr1

SIZEOF

ST Var 1 (* Ergebnis ist 10 *)

Beispiel in ST:

var1 := SIZEOF(arr1);

Page 191: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-83

SUB Subtraktion einer Variablen vom Typ BYTE, DWORD, WORD, INT und DINTvon einer anderen Variablen von einem dieser Typen.

Eine TIME-Variable kann auch von einer anderen TIME-Variablen subtrahiertwerden, das Ergebnis ist dann wieder vom Typ TIME. Beachten Sie, daßnegative TIME-Werte nicht definiert sind.

Beispiel in AWL:

LD 7

SUB 2

ST var1

Beispiel in ST:

var1 := 7-2;

Beispiel in FUP:

Bitstring Operatoren

AND Bitweises AND von Operanden. Die Operanden müssen vom Typ BOOL,BYTE, oder WORD sein.

Beispiele in AWL:

LD Start

AND Enable

ANDN EmergencyOFF

ST Motor

Var1 :BYTE;

LD 2#1001_0011

AND 2#1000_1010

ST Var1 (* Ergebnis ist 2#1000_0010 *)

Beispiele in ST:

Motor := Start AND Enable AND NOT EmergencyOFF;

var1 := 2#1001_0011 AND 2#1000_1010;

Page 192: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-84

Beispiele in FUP:

Beispiel in KOP für boolsche Variablen:

Beispiel in KOP für Byte-Variablen mit ENable Eingang (hier ist EN immerTRUE):

NOT Bitweises NOT eines Operanden. Der Operand muß vom Typ BOOL, BYTEoder WORD sein

Beispiel in AWL:

Var1 :BYTE;

LD 2#1001_0011

NOT

ST Var1 (* Ergebnis ist 2#0110_1100 *)

Beispiel in ST:

var1 := NOT 2#1001_0011;

Beispiel in FUP:

Page 193: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-85

OR Bitweises OR von Operanden. Die Operanden müssen vom Typ BOOL, BYTEoder WORD sein.

Beispiel in AWL:

Var1 :BYTE;

LD 2#1001_0011

OR 2#1000_1010

ST Var1 (* Ergebnis ist 2#1001_1011 *)

Beispiel in ST:

var1 := 2#1001_0011 OR 2#1000_1010;

Beispiel in FUP:

XOR Bitweises XOR von Operanden. Die Operanden müssen vom Typ BOOL, BYTEoder WORD sein.

Beispiel in AWL:

Var1 :BYTE;

LD 2#1001_0011

XOR 2#1000_1010

ST Var1 (* Ergebnis ist 2#0001_1001 *)

Beispiel in ST:

var1 := 2#1001_0011 XOR 2#1000_1010;

Beispiel in FUP:

Page 194: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-86

Bit-Shift Operatoren

Die folgenden Funktionen werden mit einer Abbildung als FUP-Funktionsblockdargestellt. Dieselbe Darstellung erhalten Sie, wenn Sie in asisys derBibliotheksverwaltung eine bestimmte Funktion anklicken.

ROL

Bitweise Links-Rotation eines Operanden: A:= ROL (IN, N)

A, IN und N müssen vom Typ BYTE oder WORD sein. IN wird N mal um eineBitstelle nach links geschoben, wobei das ursprünglich linke Bit von rechtswieder eingeschoben wird.

Beispiel:

Var1 :BYTE;

LD 2#1001_0011

ROL3

ST Var1 (* Ergebnis ist 2#1001_1100 *)

ROR

Bitweise Rechts-Rotation eines Operanden: A:= ROR (IN, N)

A, IN und N müssen vom Typ BYTE oder WORD sein. IN wird N mal um eineBitstelle nach rechts geschoben, wobei das ursprünglich rechte Bit von linkswieder eingeschoben wird.

Beispiel:

Var1 :BYTE;

LD 2#1001_0011

ROR 3

ST Var1 (* Ergebnis ist 2#0111_0010 *)

Page 195: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-87

SHL

Bitweises Links-Shift eines Operanden: A:= SHL (IN, N)

A, IN und N müssen vom Typ BYTE oder WORD sein. IN wird um N Bits nachlinks geschoben, und von rechts mit Nullen aufgefüllt.

Beispiel:

LD 1

SHL 1

ST Var1 (* Ergebnis ist 2 *)

SHR

Bitweises Rechts-Shift eines Operanden: A:= SHR (IN, N)

A, IN und N müssen vom Typ BYTE oder WORD sein. IN wird um N bits nachrechts geschoben, und von links mit Nullen aufgefüllt.

Beispiel:

LD 32

SHL 2

ST Var1 (* Ergebnis ist 8 *)

Page 196: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-88

Auswahloperatoren

Sämtliche Auswahloperationen lassen sich auch auf Variablen durchführen.Wegen der besseren Anschaulichkeit beschränken wir uns in den folgendenBeispielen auf Konstanten als Operatoren.

LIMIT Limitierung

OUT := LIMIT(Min, IN, Max) bedeutet:

OUT := MIN (MAX (IN, Min), Max)

Max ist die obere, Min die untere Schranke für das Ergebnis. Wenn der Wert INdie obere Grenze Max überschreitet, dann liefert LIMIT Max. Wenn IN Minunterschreitet, dann ist das Ergebnis Min.

IN und OUT können von beliebigem Typ sein.

Beispiel in AWL:

LD 90

LIMIT 30,80

ST Var 1 (* Ergebnis ist 80 *)

MAX Maximumsfunktion. Liefert von zwei Werten den größten.

OUT := MAX(IN0, IN1)

IN0, IN1 und OUT können von beliebigem Typ sein.

Beispiel in AWL:

LD 90

MAX 30

MAX 40

MAX 77

ST Var1 (* Ergebnis ist 90 *)

Beispiel in FUP:

Page 197: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-89

MIN Minimumsfunktion. Liefert von zwei Werten den kleinsten.

OUT := MIN(IN0, IN1)

IN0, IN1 und OUT können von beliebigem Typ sein.

Beispiel in AWL:

LD 90

MIN 30

MIN 40

MIN 77

ST Var1 (* Ergebnis ist 30 *)

Beispiel in FUP:

MUX Multiplexer.

OUT := MUX(K, IN0,...,INn) bedeutet:

IN0, ...,INn und OUT können von beliebigem Typ sein. K muß von den TypenBYTE, DWORD, WORD, SINT, USINT, INT, UINT, DINT oder UDINT sein.MUX wählt aus einer Menge von Werten den K-ten aus.

Beispiel in AWL:

LD 0

MUX 30,40,50,60,70,80

ST Var1 (* Ergebnis ist 30 *)

Beispiel in KOP:

Page 198: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-90

SEL Binäre Auswahl (Selektion).

OUT := SEL(G, IN0, IN1) bedeutet:

OUT := IN0 wenn G=FALSE;

OUT := IN1 wenn G=TRUE.

IN0, IN1 und OUT können jeden Typ haben, G muß vom Typ BOOL sein. DasErgebnis der Selektion ist IN0, wenn G FALSE ist; IN1, wenn G TRUE ist.

Beispiel in AWL:

LD TRUE

SEL 3,4

ST Var1 (* Ergebnis ist 4 *)

LD FALSE

SEL 3,4

ST Var1 (* Ergebnis ist 3 *)

Beispiel in FUP:

Page 199: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-91

Vergleichsoperatoren

EQ Gleichheit.

Ein Boolscher Operator mit Ergebnis TRUE, wenn die Operanden gleich sind.Die Operanden können vom Typ BOOL, BYTE oder WORD sein.

Beispiel in AWL:

LD 40

EQ 40

ST Var1 (* Ergebnis ist TRUE *)

Beispiel in ST:

var1 := 40 = 40;

Beispiel in FUP:

GE Größer oder gleich.

Ein Boolscher Operator mit Ergebnis TRUE, wenn die Operanden eine monotonfallende Reihenfolge bilden. Der erste Operand muß also immer größer als derzweite Operand sein (oder gleich groß). Die Operanden können vom TypBOOL, BYTE, WORD oder INT sein.

Beispiel in AWL:

LD 60

GE 40

ST Var1 (* Ergebnis ist TRUE *)

Beispiel in ST:

var1 := 60 >= 40;

Beispiel inFUP:

Page 200: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-92

GT Größer als.

Ein Boolscher Operator mit dem Ergebnis TRUE, wenn die Operanden einestreng monoton fallende Reihenfolge bilden. Der erste Operand muß alsoimmer größer als der zweite Operand sein (diesmal darf er nicht gleich großsein). Die Operanden können vom Typ BOOL, BYTE, WORD oder INT sein.

Beispiel in AWL:

LD 20

GT 30

ST Var1 (* Ergebnis ist FALSE *)

Beispiel in ST:

var1 := 20 > 30;

Beispiel in FUP:

Beispiel in KOP:

Page 201: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-93

LE Kleiner oder gleich.

Ein Boolscher Operator mit Ergebnis TRUE, wenn die Operanden eine monotonansteigende Reihenfolge bilden. Der erste Operand muß also immer kleiner alsder zweite Operand sein (oder gleich groß). Die Operanden können vom TypBOOL, BYTE, WORD, oder INT sein.

Beispiel in AWL:

LD 20

LE 30

ST Var1 (* Ergebnis ist TRUE *)

Beispiel in ST:

var1 := 20 <= 30;

Beispiel in FUP:

LT Kleiner als.

Ein Boolscher Operator mit Ergebnis TRUE, wenn die Operanden eine strengmonoton steigende Reihenfolge bilden. Der erste Operand muß also immerkleiner als der zweite Operand sein (diesmal darf er nicht gleich groß sein). DieOperanden können vom Typ BOOL, BYTE, WORD oder INT sein.

Beispiel in AWL:

LD 20

LT 30

ST Var1 (* Ergebnis ist TRUE *)

Beispiel in ST:

var1 := 20 < 30;

Beispiel in FUP:

Page 202: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-94

NE Ungleichheit

Ein Boolscher Operator mit Ergebnis TRUE, wenn die Operanden ungleichsind. Die Operanden können vom Typ BOOL, BYTE, WORD oder INT sein.

Beispiel in AWL:

LD 40

NE 40

ST Var1 (* Ergebnis ist FALSE *)

Beispiel in ST:

var1 := 40 <> 40;

Beispiel in FUP:

Adreßoperator ADR

ADR Addressfunktion

ADR liefert die Adresse seines Arguments in einem WORD. Diese Adressekann an Herstellerfunktionen geschickt und dort wie ein Pointer behandeltwerden.

Beispiel in AWL:

LD var1

ADR

ST var2

man_fun1

Inhaltsoperator Die Dereferenzierung eines Pointers erfolgt über den Inhaltsoperator "^" nachdem Pointerbezeichner.

Beispiel in ST:pt:POINTER TO INT;

var_int1:INT;

var_int2:INT;

pt := ADR(var_int1);

var_int2:=pt^;

Page 203: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-95

Aufrufoperator CAL

CAL Aufruf eines Funktionsblocks

Mit CAL ruft man in AWL die Instanz eines Funktionsblock auf. Nach demNamen der Instanz eines Funktionsblocks folgt, in runde Klammern gesetzt, dieBelegung der Eingabevariablen des Funktionsblocks.

Beispiel:Aufruf der Instanz Inst eines Funktionsblocks mit Belegung derEingabevariablen Par1, Par2 auf 0 bzw TRUE.

CAL INST(PAR1 := 0, PAR2 := TRUE)

Kopieroperator MOVE

MOVE Zuweisung von Variableninhalten

Mit MOVE kann der Inhalt einer Variablen oder ein konstanter Wert in eineandere Variable kopiert werden. Er gilt für alle Variablentypen. Der Operatorkann in jeder Programmiersprache verwendet werden. Hauptanwendungs-bereich ist aber der Kontaktplan.

Beispiel in KOP:

Page 204: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-96

Numerische Operatoren

ABS Liefert den Absolutwert einer Zahl. ABS(-2). Folgende Typkombinationen für INund OUT sind möglich:

IN OUT

INT INT, REAL, WORD, DWORD, DINT

REAL REAL

BYTE INT, REAL, BYTE, WORD, DWORD, DINT

WORD INT, REAL, WORD, DWORD, DINT

DWORD REAL, DWORD, DINT

SINT REAL

USINT REAL

UINT INT, REAL, WORD, DWORD, DINT, UDINT, UINT

DINT REAL, DWORD, DINT

UDINT REAL, DWORD, DINT, UDINT

Beispiel in AWL:

LD 2

ABS

ST i (* Ergebnis ist 2 *)

Beispiel in ST: i: = ABS(-2);

Beispiel in FUP:

Page 205: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-97

SQRT Liefert die Quadratwurzel einer Zahl.

N kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 16

SQRT

ST q (* Ergebnis ist 4 *)

Beispiel in ST: q: = SQRT(16);

Beispiel in FUP:

LN Liefert den natürlichen Logarithmus einer Zahl

IN kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 45

LN

ST q (* Ergebnis ist 3.80666 *)

Beispiel in ST: q: =LN (45);

Beispiel in FUP:

Page 206: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-98

LOG Liefert den Logarithmus zur Basis 10 einer Zahl.

IN kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 314.5

LOG

ST q (* Ergebnis ist 2.49762 *)

Beispiel in ST: q: =LOG(314.5);

Beispiel in FUP:

EXP Liefert die Exponentialfunktion.

IN kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 2

EXP

ST q (* Ergebnis ist 9.7448e+009 *)

Beispiel in ST: q: =EXP(2);

Beispiel in FUP:

Page 207: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-99

SIN Liefert den Sinus einer Zahl. Der Wert wird in Bogenmaß errechnet.

IN kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 0.5

SIN

ST q (* Ergebnis ist 0.479426 *)

Beispiel in ST: q: =SIN(0.5);

Beispiel in FUP:

COS Liefert den Cosinus einer Zahl. Der Wert wird in Bogenmaß errechnet.

IN kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 0.5

COS

ST q (* Ergebnis ist 0.877583 *)

Beispiel in ST: q: =COS(0.5);

Beispiel in FUP:

Page 208: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-100

TAN Liefert den Tangens einer Zahl. Der Wert wird in Bogenmaß errechnet.

IN kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 0.5

TAN

ST q (* Ergebnis ist 0.546302 *)

Beispiel in ST: q: =TAN(0.5);

Beispiel in FUP:

ASIN Liefert den Arcussinus (Umkehrfunktion von Sinus) einer Zahl. Der Wert wird inBogenmaß errechnet.

IN kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 0.5

ASIN

ST q (* Ergebnis ist 0.523599 *)

Beispiel in ST: q: =ASIN(0.5);

Beispiel in FUP:

Page 209: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-101

ACOS Liefert den Arcuscosinus (Umkehrfunktion von Cosinus) einer Zahl. Der Wertwird in Bogenmaß errechnet.

Liefert den Arcuscosinus (Umkehrfunktion von Cosinus) einer Zahl. Der Wertwird in Bogenmaß errechnet.

IN kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 0.5

ABS

ST q (* Ergebnis ist 1.0472 *)

Beispiel in ST: q: =ACOS(0.5);

Beispiel in FUP:

ATAN Liefert den Arcustangens (Umkehrfunktion von Tangens) einer Zahl. Der Wertwird in Bogenmaß errechnet.

IN kann vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT,UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 0.5

ABS

ST q (* Ergebnis ist 0.463648 *)

Beispiel in ST: q: =ATAN(0.5);

Beispiel in FUP:

Page 210: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Operatoren in ecolog 100 PLUS

5-102

EXPT Potenzierung einer Variablen mit einer anderen: OUT = IN1IN2.

IN1 und IN2 können vom Typ BYTE, WORD, DWORD, INT, DINT, REAL, SINT,USINT, UINT, UDINT sein, OUT muß vom Typ REAL sein.

Beispiel in AWL:

LD 7

EXPT 2

ST var1 (* Ergebnis ist 49 *)

Beispiel in ST: var1: = (7,2);

Beispiel in FUP:

Page 211: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-103

5.6. Die Elemente der Bibliothek Standard.lib

Ecolog unterstützt IEC Standardfunktionen. Der Unterschied zwischen einerStandardfunktion und einem Operator ist, daß der Operator implizit demProgrammiersystem bekannt ist, während die Standardbausteine als Bibliothekan das Projekt gelinkt werden müssen (Standard.lib).

Typenkonversionsfunktionen und Typen

Ganzzahlige Datentypen

Zu den ganzzahligen Datentypen gehören BYTE, WORD, DWORD, SINT,USINT, INT, UINT, DINT, UDINT

Die unterschiedlichen Zahlentypen decken einen unterschiedlichenZahlenbereich ab. Für die ganzzahligen Datentypen gelten die folgendenBereichsgrenzen:

Typ Untergrenze Obergrenze Speicherplatz

BYTE 0 255 8 Bit

WORD 0 65535 16 Bit

DWORD 0 4294967295 32 Bit

SINT: -128 127 8 Bit

USINT: 0 255 8 Bit

INT: -32768 32767 16 Bit

UINT: 0 65535 16 Bit

DINT: -2147483648 2147483647 32 Bit

UDINT: 0 4294967295 32 Bit

Dadurch kann es passieren, daß bei der Typkonvertierung von größere aufkleinere Typen Information verloren geht.

Zahlenkonstanten

Zahlenwerte, können als Dualzahlen, Oktalzahlen, Dezimalzahlen undHexadezimalzahlen auftreten. Wenn ein Integerwert keine Dezimalzahl ist,dann muß seine Basis gefolgt von einem Doppelkreuz (#) vor dieIntegerkonstante geschrieben werden. Die Ziffernwerte für die Zahlen 10 bis 15bei Hexadezimalzahlen werden wie üblich durch die Buchstaben A-Fangegeben.

Unterstriche innerhalb eines Zahlenwertes sind erlaubt.

Page 212: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Standard.lib

5-104

Beispiele:

14 (Dezimalzahl)

2#1001_0011 (Dualzahl)

8#67 (Oktalzahl)

16#A (Hexadezimalzahl)

Der Typ dieser Zahlenwerte kann dabei BYTE, WORD, DWORD, SINT, USINT,INT, UINT, DINT, UDINT, REAL sein.

Implizite Konvertierungen von "größere" auf "kleinere" Typen sind nicht erlaubt.D.h. eine DINT- Variable kann nicht ohne weiteres als INT-Variable benutztwerden. Hierfür benutzt man die Typkonvertierungen.

Typenkonvertierungen

Es ist nicht erlaubt, von einem "größeren" Typ auf einen "kleineren" implizit zukonvertieren (beispielsweise von INT nach BYTE oder von DINT nach WORD).Wenn man das tun will, muß man spezielle Typkonvertierungen anwenden.Grundsätzlich kann von jedem elementaren Typ zu jeden anderen elementarenTyp konvertiert werden.

Syntax:

<elem.Typ1>_TO_<elem.Typ2>

Weiter hierzu:

BOOL_TO-Konvertierungen

TO_BOOL-Konvertierungen

Konvertierungen zwischen ganzzahligen Zahlentypen

REAL_TO-/ LREAL_TO-Konvertierungen

TIME_TO- / TIME_OF_DAY-Konvertierungen

DATE_TO- / DT_TO-Konvertierungen

STRING_TO-Konvertierungen

TRUNC

Weitere Informationen entnehmen Sie bitte der Online-Hilfe von ecolog.

Page 213: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-105

Bistabile Funktionsblöcke

RS

Bistabilen Funktionsblock zurücksetzen:

Der Setz- sowie der Rücksetz-Eingang (S1 und R0) und auch der Ausgang Q1müssen vom Typ BOOL sein. Q1 behält seinen Wert auch bei Wegfall derEingangsbedingung bei (speicherndes Setzen und Rücksetzen). Wenn beideEingangsbedingungen gleichzeitig erfüllt sind, so wird der Ausgang rückgesetzt.

SR

Bistabilen Funktionsblock dominant setzen.

Der Setz- sowie der Rücksetz-Eingang (S1 und R0) und auch der Ausgang Q1müssen vom Typ BOOL sein. Q1 behält seinen Wert auch bei Wegfall derEingangsbedingung bei (speicherndes Setzen und Rücksetzen). Wenn beideEingangsbedingungen gleichzeitig erfüllt sind, so wird der Ausgang gesetzt.

SEMA Ein Software-Semaphor (unterbrechbar).

BUSY = SEMA(CLAIM, RELEASE) bedeutet:

BUSY := X;

IF CLAIM THEN X:=TRUE;

ELSIF RELEASE THEN BUSY := FALSE; X:= FALSE;

END_IF

X ist eine interne BOOL Variable, die mit FALSE initialisiert ist.Die Eingänge CLAIM und RELEASE und der Ausgang BUSY sind vom TypBOOL.

Wenn SEMA aufgerufen wird und BUSY ist TRUE, dann bedeutet das, daßSEMA bereits vorher belegt wurde (SEMA wurde mit CLAIM = TRUEaufgerufen). Wenn BUSY FALSE ist, dann wurde SEMA noch nicht aufgerufen,oder es wurde freigegeben (Aufruf mit RELEASE = TRUE).

Page 214: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Standard.lib

5-106

Deklarationsbeispiel:

SEMAInst : SEMA ;

Beispiel in AWL:

CAL SEMAInst(CLAIM := VarBOOL1, RELEASE := VarBOOL2)

LD SEMAInst.BUSY

ST VarBOOL3

Beispiel in FUP:

Beispiel in ST:

SEMAInst(CLAIM:= VarBOOL1 , RELEASE:=VarBOOL2 );

VarBOOL3 := SEMAInst.BUSY;

Flankenerkennung

F_TRIG

Erkennung einer fallenden Flanke.

Solange die Eingabevariable S1 TRUE liefert, werden die Ausgabe Q0 und dieHilfsvariable M FALSE sein. Sobald S1 FALSE liefert, wird zuerst Q0 TRUEliefern, und dann M auf TRUE gesetzt. D.h: bei jedem weiteren Aufruf derFunktion wird Q0 wieder FALSE liefern, bis S1 eine steigende und wieder einefallende Flanke hat.

R_TRIG

Erkennung einer ansteigenden Flanke.

Solange die Eingabevariable S1 FALSE liefert, werden die Ausgabe Q0 und dieHilfsvariable M FALSE sein. Sobald S1 TRUE liefert, wird zuerst Q0 TRUEliefern, und dann M auf TRUE gesetzt. D.h: bei jedem weiteren Aufruf derFunktion wird Q0 wieder FALSE liefern, bis S1 eine fallende und wieder einesteigende Flanke hat.

Page 215: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-107

Zähler

CTD

Abwärtszähler

CD, LD_ und Q0 sind vom Typ BOOL, PV und CV sind vom Typ INT. (LD_heißt übrigens nur deswegen nicht LD, weil es sonst ein Schlüsselwort wäre).

Wenn LD_ TRUE ist, wird die Zählvariable CV mit der Obergrenze PVgleichgesetzt (initialisiert). Wenn LD_ FALSE ist, dann wird in jedem Aufruf desFunktionsblocks in dem eine steigende Flanke an CD auftritt, CV um 1verringert, solange CV größer als 0 ist.

Q0 liefert TRUE, wenn CV kleiner oder gleich 0 ist.

CTU

Aufwärtszähler

CU, R0 und Q0 sind vom Typ BOOL, PV und CV sind vom Typ INT.

Wenn R0 TRUE ist, wird die Zählvariable CV mit 0 besetzt (initialisiert). Prosteigender Flanke von CU bei Aufruf des Funktionsblocks wird CV um 1 erhöht,solange CV kleiner als PVmax ist (Wenn also kein Überlauf verursacht wird).

Q0 liefert TRUE, wenn CV die Obergrenze PV erreicht hat.

CTUD

Auf- und Abwärtszähler

CU, CD, R0, LD_, QU und QD sind vom Typ BOOL, PV und CV sind vom TypINT.

Wenn R0 TRUE ist, wird die Zählvariable CV mit 0 besetzt (initialisiert). Prosteigender Flanke von CU bei Aufruf des Funktionsblocks wird CV um 1 erhöht,solange CV kleiner als PVmax ist (Wenn also kein Überlauf verursacht wird).

Wenn LD_ TRUE ist, wird die Zählvariable CV mit der Obergrenze PVgleichgesetzt (initialisiert). Wenn LD_ FALSE ist, dann wird in jedem Aufruf desFunktionsblocks in dem eine steigende Flanke an CD auftritt, CV um 1verringert, solange CV größer als 0 ist.

QU liefert TRUE, wenn CV größer oder gleich PV geworden ist. QD liefertTRUE, wenn CV kleiner oder gleich 0 geworden ist

Page 216: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Standard.lib

5-108

Timer

TOF

Ausschaltverzögerung

TOF(IN, PT, Q0, ET) bedeutet:

IN und Q0 sind Variablen vom Typ BOOL, PT und ET sind Variablen vom TypTIME (z. B. T#12s). Wenn IN TRUE ist, sind die Ausgaben TRUE bzw. 0s.Sobald IN FALSE ist, wird in ET die Zeit hochgezählt, bis der Wert gleich demin PT ist, dann bleibt er gleich.

Q0 ist FALSE wenn IN FALSE und ET gleich PT ist. Andernfalls ist es TRUE.Q0 hat somit eine fallende Flanke, wenn die in PT angegebene Zeit abgelaufenist.

Graphische Darstellung des zeitlichen Verhaltens von TOF:

TON

Einschaltverzögerung

TON(IN, PT, Q0, ET) bedeutet:

IN und Q0 sind Variablen vom Typ BOOL, PT und ET sind Variablen vom TypTIME (z. B. T#12s). Wenn IN FALSE ist, sind die Ausgaben FALSE bzw. 0s.

Sobald IN TRUE ist, wird in ET die Zeit hochgezählt, bis der Wert gleich dem inPT ist, dann bleibt er gleich.

Q0 ist TRUE wenn IN TRUE und ET gleich PT ist. Andernfalls ist es FALSE. Q0hat somit eine steigende Flanke, wenn die in PT angegebene Zeit abgelaufenist.

Page 217: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-109

Graphische Darstellung des zeitlichen Verhaltens von TON:

TP

Pulsgeber

TP (IN, PT, Q0, ET) bedeutet:

IN und Q0 sind Variablen vom Typ BOOL, PT und ET sind Variablen vom TypTIME (z. B. T#12s).

Sobald IN TRUE ist, wird in ET die Zeit hochgezählt, bis der Wert gleich dem inPT ist, dann bleibt er gleich.

Q0 ist TRUE wenn IN TRUE ist oder war und wenn ET kleiner gleich PT ist.Andernfalls ist es FALSE. Q0 liefert somit für den in PT angegebenen Zeitraumein Signal.

Graphische Darstellung des zeitlichen Ablaufs von TP:

Page 218: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Standard.lib

5-110

RTC Der Funktionsblock Runtime Clock gibt ab einem vorgegebenen Startzeitpunktdie fortlaufende Datums- und Uhrzeit wieder.

RTC(EN, PDT, Q, CDT) bedeutet:

EN und PDT sind Eingabevariablen vom Typ BOOL bzw. DATE_AND_TIME. Qund CDT sind Ausgabevariablen vom Typ BOOL bzw. DATE_AND_TIME.Wenn EN FALSE ist, sind die Ausgaben Q und CDT FALSE bzw. DT#1970-01-01-00-00:00:00.

Sobald EN auf TRUE wechselt, wird die Zeit des PDT gesetzt und solange inSekunden hochgezählt und über CDT ausgegeben (siehe Beispiel inDarstellung oben) wie EN TRUE ist. Sobald EN wieder auf FALSE gesetzt wird,springt CDT auf den Ausgangswert von DT#1970-01-01-00-00:00:00 zurück.Beachten Sie, daß die Zeit aus PDT nur durch eine steigende Flanke in ENgesetzt wird.

String Funktionen

LEN Die Funktion LEN gibt die Länge eines Strings aus

Der Eingang STR ist vom Typ STRING, der Rückgabewert der Funktion vomTyp INT.

Beispiel in AWL:

LD 'SUSI'

LEN

ST VarINT1 (* Ergebnis ist 4 *)

Beispiel in FUP:

Beispiel in ST:

VarSTRING1 := LEN ('SUSI');

Page 219: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-111

LEFT Die Funktion LEFT liefert einen linken Anfangsstring eines Strings

Der Eingang STR ist vom Typ STRING, SIZE vom Typ INT, der Rückgabewertder Funktion vom Typ STRING.

LEFT (STR, SIZE) bedeutet: Nehme die ersten SIZE Zeichen von links imString STR.

Beispiel in AWL:

LD 'SUSI'

LEFT 3

ST VarSTRING1 (* Ergebnis ist 'SUS' *)

Beispiel in FUP:

Beispiel in ST:

VarSTRING1 := LEFT ('SUSI',3);

RIGHT Die Funktion RIGHT liefert einen rechtrn Anfangsstring eines Strings.

Der Eingang STR ist vom Typ STRING, SIZE vom Typ INT, der Rückgabewertder Funktion vom Typ STRING.

RIGHT (STR, SIZE) bedeutet: Nehme die ersten SIZE Zeichen von rechts imString STR.

Beispiel in AWL:

LD 'SUSI'

RIGHT 3

ST VarSTRING1 (* Ergebnis ist 'USI' *)

Beispiel in FUP:

Beispiel in ST:

VarSTRING1 := RIGHT ('SUSI',3);

Page 220: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Standard.lib

5-112

MID Die Funktion MID liefert einen Teilstring eines Strings.

Der Eingang STR ist vom Typ STRING, LEN und POS vom Typ INT, derRückgabewert der Funktion vom Typ STRING.

MID (STR, LEN, POS) bedeutet: Hole LEN Zeichen aus dem String STR,beginnend mit dem Zeichen an der Stelle POS.

Beispiel in AWL:

LD 'SUSI'

RIGHT 2,2

ST VarSTRING1 (* Ergebnis ist 'US' *)

Beispiel in FUP:

Beispiel in ST:

VarSTRING1 := MID ('SUSI',2,2);

CONCAT Die Funktion CONCAT liefert die Konkatenation (Aneinanderhängen) von zweiStrings.

Die Eingänge STR1 und STR2 und der Rückgabewert der Funktion sind vomTyp STRING.

Beispiel in AWL:

LD 'SUSI'

CONCAT 'WILLI'

ST VarSTRING1 (* Ergebnis ist 'SUSIWILLI' *)

Beispiel in FUP:

Beispiel in ST:

VarSTRING1 := CONCAT ('SUSI','WILLI');

Page 221: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-113

INSERT Die Funktion INSERT fügt einen String ab einer bestimmten Stelle in einenanderen ein.

Die Eingänge STR1 und STR2 sind vom Typ STRING, POS vom Typ INT, derRückgabewert der Funktion vom Typ STRING.

INSERT(STR1, STR2, POS) bedeutet: Füge STR2 in STR1 nach der POS-tenStelle ein.

Beispiel in AWL:

LD 'SUSI'

INSERT 'XY',2

ST VarSTRING1 (* Ergebnis ist 'SUXYSI' *)

Beispiel in FUP:

Beispiel in ST:

VarSTRING1 := INSERT ('SUSI','XY',2);

Page 222: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Standard.lib

5-114

DELETE Die Funktion DELETE löscht ab einer bestimmten Stelle einen Teilstring auseinem String.

Der Eingang STR ist vom Typ STRING, LEN und POS vom Typ INT, derRückgabewert der Funktion vom Typ STRING.

DELETE(STR, LEN, POS) bedeutet: Lösche LEN Zeichen aus STR, beginnendmit dem POS-ten.

Beispiel in AWL:

LD 'SUXYSI'

DELETE 2,23

ST Var1 (* Ergebnis ist 'SUSI' *)

Beispiel in FUP:

Beispiel in ST:

Var1 := DELETE ('SUXYSI',2,3);

Page 223: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-115

REPLACE Die Funktion REPLACE ersetzt einen Teilstring eines Strings durch einenanderen String.

Die Eingänge STR1 und STR2 sind vom Typ STRING, LEN und POS vom TypINT, der Rückgabewert der Funktion vom Typ STRING.

REPLACE(STR1, STR2, L, P) bedeutet: Ersetze L Zeichen aus STR1 durchSTR2 beginnend mit dem P-ten Zeichen.

Beispiel in AWL:

LD 'SUXYSI'

REPLACE 'K', 2,2

ST VarSTRING1 (* Ergebnis ist 'SKYSI' *)

Beispiel in FUP:

Beispiel in ST:

VarSTRING1 := REPLACE ('SUXYSI','K',2,2);

Page 224: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Standard.lib

5-116

FIND Die Funktion FIND sucht einen Teilstring in einem String

Die Eingänge STR1 und STR2 sind vom Typ STRING, der Rückgabewert derFunktion vom Typ INT.

FIND(STR1, STR2) bedeutet: Finde die Position des ersten Zeichens desersten Vorkommens von STR2 in STR1. Wenn STR2 in STR1 nicht vorkommt,dann gilt OUT := 0.

Beispiel in AWL:

LD 'SUXYSI'

FIND 'XY'

ST VarINT1 (* Ergebnis ist '3' *)

Beispiel in FUP:

Beispiel in ST:

VarINT1 := FIND ('SUXYSI','XY');

Page 225: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-117

5.7. Die Elemente der Bibliothek Util_ifmx.Lib

Die Bibliothek Util_ifm.Lib, enthält eine zusätzliche Sammlung verschiedenerBausteine, die für BCD-Konvertierung, Bit/Byte-Funktionen, mathematischeHilfsfunktionen, als Regler, Signalgeneratoren, Funktionsmanipulatoren und zurAnalogwertverarbeitung verwendet werden können.

BCD-Konvertierung

Ein Byte im BCD-Format enthält ganzzahlige Werte zwischen 0 und 99. Dabeiwerden für jede Dezimalstelle vier Bit verwendet. Die Zehnerdezimalstelle wirddabei in die Bits 4-7 gespeichert. Somit ähnelt das BCD-Format derhexadezimalen Darstellung, nur daß im BCD-Byte nur Werte zwischen 0 und 99gespeichert werden können, ein Hexadezimal-Byte jedoch von 0 bis FF reicht.

Bsp.: Die Integerzahl 51 soll ins BCD-Format umgewandelt werden. 5 istbinär 0101, 1 ist 0001, somit das BCD-Byte 01010001, was demWert $51=81 entspricht.

BCD_TO_INT Diese Funktion wandelt ein Byte im BCD-Format in einen INT-Wert um:

Der Eingabewert der Funktion ist vom Typ BYTE und die Ausgabe vom TypINT.

Sollte ein Byte übergeben werden, welches nicht dem BCD-Format entspricht,so wird die Ausgabe -1.

Beispiele in ST:

i:=BCD_TO_INT(73); (* Ergebnis ist 49 *)

k:=BCD_TO_INT(151); (* Ergebnis ist 97 *)

l:=BCD_TO_INT(15); (* Ausgabe -1, weil nicht BCD-Format *)

INT_TO_BCD_ Diese Funktion verwandelt einen INTEGER-Wert in ein Byte im BCD-Format :

Der Eingabewert der Funktion ist vom Typ INT, die Ausgabe vom Typ BYTE.

Sollte ein INTEGER-Wert übergeben werden, welcher nicht in ein BCD-Byteverwandelt werden kann, so wird 255 ausgegeben.

Beispiele in ST:

i:=INT_TO_BCD(49); (* Ergebnis ist 73 *)

k:=BCD_TO_INT(97); (* Ergebnis ist 151 *)

l:=BCD_TO_INT(100); (* Fehler! Ausgabe : 255 *)

Page 226: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Util_ifmx.Lib

5-118

Bit-/Byte Funktionen

EXTRACT Eingänge dieser Funktion sind ein DWORD X, sowie ein BYTE N.

Ausgegeben wird ein BOOL-Wert, der den Inhalt des N-ten Bits der Eingabe Xenthält, wobei mit dem nullten Bit zu zählen begonnen wird.

Beispiele in ST:

FLAG:=EXTRACT(X:=81, N:=4);

(* Ergebnis : TRUE, weil 81 ist binär 1010001, das 4. Bit also 1 *)

FLAG:=EXTRACT(X:=33, N:=0);

(* Ergebnis : TRUE, weil 33 ist binär 100001, das 0. Bit also 1 *)

PACK Diese Funktion vermag acht Eingabebits B0, B1, ..., B7 vom Typ BOOL als einBYTE zurückzugeben.

Eng verknüpft mit dieser Funktion ist der Funktionsblock UNPACK.

PUTBIT Die Eingabe dieser Funktion besteht aus einem DWORD X, einem BYTE N undeinem BOOLschen Wert B.

PUTBIT setzt das N-te Bit von X auf den Wert B, wobei mit dem nullten Bit zuzählen begonnen wird.

Beispiel in ST:

A:=38; (* binär 100110 *)

B:=PUTBIT(A,4,TRUE); (* Ergebnis: 54 = 2#110110 *)

C:=PUTBIT(A,1,FALSE); (* Ergebnis: 36 = 2#100100 *)

UNPACK UNPACK wandelt die Eingabe B vom Typ BYTE in 8 AusgabevariablenB0,...,B7 vom Typ BOOL um, und ist somit das Gegenstück zu PAC

Page 227: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-119

Beispiel in CFC: Ausgabe:

Mathematische Hilfsfunktionen

DERIVATIVE Dieser Funktionsblock bestimmt näherungsweise die lokale zeitliche Ableitung.

Über IN wird der Funktionswert als REAL-Variable übergeben. TM enthält dieverstrichene Zeit in msec in einem DWORD und durch den Eingang RESETvom Typ BOOL läßt sich der Funktionsblock durch Übergabe vom Wert TRUEneu starten.

Der Ausgang OUT ist vom Typ REAL.

Um ein möglichst gutes Ergebnis zu erzielen, nähert DERIVATIVE über dieletzten vier Werte, um Fehler verursacht durch Ungenauigkeiten in denEingabeparametern möglichst gering zu halten.

Baustein in CFC:

INTEGRAL Dieser Funktionsblock bestimmt näherungsweise das Integral einer Funktionnach der Zeit.

Analog zu DERIVATIVE wird über IN der Funktionswert als REAL-Variableübergeben. TM enthält die verstrichene Zeit in msec in einem DWORD unddurch den Eingang RESET vom Typ BOOL läßt sich der Funktionsblock mitTRUE neu starten. Der Ausgang OUT ist vom Typ REAL. Das Integral wirddurch zwei Treppenfunktionen genähert. Erreicht der Integralwert das Ende desWertebereichs einer REAL-Variable (ca.±1038), dann wird die BOOLscheAusgangsvariable OVERFLOW auf TRUE gesetzt, und der Baustein ist solange gesperrt, bis er mit RESET neu initialisiert wird.

Page 228: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Util_ifmx.Lib

5-120

Baustein in CFC: Beispiel: Integration einer linearen Funktion:

STATISTICS_INT

Dieser Funktionsblock berechnet einige statistische Standardwerte:

Die Eingabe IN ist vom Typ INT. Wird die BOOLsche Eingabe RESET TRUE,dann werden alle Werte neu initialisiert.

Die Ausgabe MN enthält den Minimal-, MX den Maximalwert von IN. AVGbeschreibt den Durchschnitt, also den Erwartungswert von IN. Alle dreiAusgaben sind vom Typ INT.

Baustein in CTC:

STATISTICS_REAL

Dieser Funktionsblock entspricht STATISTICS_INT, nur daß die Eingabe IN wiedie Ausgaben MN, MX, AVG vom Typ REAL sind.

VARIANCE VARIANCE berechnet die Varianz eingegebener Werte.

Die Eingabe IN ist vom Typ REAL, RESET vom Typ BOOL und die AusgabeOUT wieder vom Typ REAL.

Von den eingegebenen Werten berechnet dieser Funktionsblock die Varianz.Mit RESET=TRUE läßt sich VARIANCE neu initialisieren.

Die Standardabweichung kann leicht aus der Quadratwurzel von VARIANCEberechnet werden.

Page 229: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-121

Regler

P Der P-Regler-Funktionsblock:

ACTUAL (Istwert) und DESIRED (Sollwert) sowie K, derProportionalitätskoeffizient, sind Eingabewerte vom Typ REAL.

Die Ausgabe, der absolute Stellwert (OUT), ist ebenfalls vom Typ REAL undgenügt der Gleichung :

OUT = ACTUAL + K×D , wobei D=DESIRED-ACTUAL.

Beispiel in CFC:

Page 230: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Util_ifmx.Lib

5-122

PD Der PD-Regler-Funktionsblock:

Der PD-Regler-Funktionsblock

ACTUAL (Istwert) und SET_POINT (Sollwert) sowie KP, derProportionalitätskoeffizient, sind Eingabewerte vom Typ REAL. TV ist vom TypDWORD und enthält die Vorhaltzeit in msec. Y_OFFSET, Y_MIN und Y_MAXsind vom Typ REAL und dienen der Transformation der Stellgröße in einenvorgegebenen Bereich. MANUAL vom Typ BOOL schaltet auf Handbetrieb.RESET ist vom Typ BOOL und dient der Neuinitialisierung des Reglers.

Die Ausgabe, die Stellgröße (Y), ist vom Typ REAL, und berechnet sich wiefolgt :

Y = KP ⋅ (∆ + TV⋅ δ∆δt ) + Y_OFFSET, wobei ∆=SET_POINT-

ACTUALZusätzlich wird Y auf den zulässigen Bereich zwischen Y_MIN und Y_MAXbegrenzt. Überschreitet Y diesen Bereich, so wird LIMITS_ACTIVE, eineBOOL’sche Ausgabevariable, TRUE. Wünscht man keine Begrenzung derStellgröße, setzt man Y_MIN und Y_MAX auf 0.

Ist MANUAL TRUE, dann setzt der Regler so lange aus, d.h. Y wird (vomRegler) nicht verändert, bis MANUAL FALSE wird, wodurch der Regler neuinitialisiert wird.

Ein P-Regler läßt sich leicht dadurch erzeugen, indem TV fest auf 0 gesetztwird.

Page 231: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-123

PID Der PID-Regler-Funktionsblock:

Der PID-Regler-Funktionsblock:

Als Unterschied zum PD-Regler enthält dieser Funktionsbaustein einenweiteren DWORD-Eingang TN für die Nachstellzeit in msec.

Die Ausgabe, die Stellgröße (Y), ist wieder vom Typ REAL, und beinhaltet imGegensatz zum PD-Regler einen zusätzlichen integralen Anteil:

Y = KP ⋅ (∆ + 1TN ⌡⌠∆(t)dt + TV⋅δ∆

δt ) + Y_OFFSET

Der PID-Regler läßt sich leicht in einen PI-Regler verwandeln, indem TV=0gesetzt wird.

Durch den zusätzlichen I-Anteil kann es – bei falscher Reglerparametrierung,wenn das Integral über den Fehler ∆ zu groß wird – zum Überlauf kommen.Sicherheitshalber ist deshalb ein BOOL’scher Ausgang OVERFLOWvorhanden, der in diesem Fall TRUE wird. Gleichzeitig setzt der Regler aus,und wird erst durch eine Neuinitialisierung wieder aktiviert.

Page 232: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Util_ifmx.Lib

5-124

CTL Der CTL-Regler-Funktionsblock:

ACTUAL (Istwert) und DESIRED (Sollwert) sowie KP, derProportionalitätskoeffizient, sind Eingabewerte vom Typ REAL. TN, dieNachstellzeit, und TV, die Vorhaltzeit, werden in msec durch ein DWORDübergeben. RESET ist vom Typ BOOL und dient der Neuinitialisierung desReglers.

Die Ausgabe, der absolute Stellwert (OUT), ist wieder vom Typ REAL, undberechnet sich wie folgt :

OUT = ACTUAL + K× (D + + TV× )

Der CTL-Regler läßt sich leicht in einen PI-Regler verwandeln, indem TV=0gesetzt wird.

Beispiel in CFC:

Page 233: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-125

Signalgeneratoren

BLINK Der Funktionsblock BLINK erzeugt ein pulsierendes Signal. Die Eingabebesteht aus ENABLE vom Typ BOOL, sowie TIMELOW und TIMEHIGH vomTyp TIME. Die Ausgabe OUT ist vom Typ BOOL.

Wird ENABLE auf TRUE gesetzt, dann beginnt BLINK, abwechseln dieAusgabe für die Zeitdauer TIMEHIGH auf TRUE, danach für die DauerTIMELOW auf FALSE zu setzen.

Beispiel in CTC:

GEN Der Funktionengenerator erzeugt typische periodische Funktionen:

Die Eingaben setzen sich zusammen aus MODE vom vordefiniertenAufzählungs-Typ GEN_MODE, BASE vom Typ BOOL, der PERIOD vom TypTIME, zwei INT-Werten CYCLES und AMPLITUDE, wie dem BOOLschenRESET-Eingang. Ausgegeben wird ein INT mit der Bezeichnung OUT.

Der MODE beschreibt die Funktion, die erzeugt werden soll, wobei dieEnumerationswerte TRIANGLE und TRIANGLE_POS zwei Dreiecksfunktionenliefern, SAWTOOTH_RISE ein steigendes, SAWTOOTH_FALL ein fallendesSägezahn-, RECTANGLE ein Rechtecksignal und SINUS und COSINUS denSinus und Cosinus:

Page 234: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Util_ifmx.Lib

5-126

BASE gibt an, ob sich die Periodendauer tatsächlich auf eine vorgegebene Zeit(dann BASE=TRUE) oder auf eine gewisse Anzahl von Zyklen, also Aufrufendes Funktionsblocks, (BASE=FALSE) bezieht.

PERIOD bzw. CYCLES legen dann die entsprechende Periodendauer fest.

AMPLITUDE definiert trivialerweise die Amplitude der zu erzeugendenFunktion.

Der Funktionengenerator wird wieder auf 0 gesetzt, sobald RESET=TRUE.

Beispiel in CFC:

Page 235: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-127

Funktionsmanipulatoren

CHARCURVE Dieser Funktionsblock dient dazu, Werte auf eine stückweise lineare Funktionabzubilden:

IN vom Typ INT wird mit dem zu manipulierenden Wert gespeist. Das BYTE Nbezeichnet die Anzahl der Punkte, die die Abbildungsfunktion festlegt. ImARRAY P[0..10] mit P vom Typ POINT, einer Struktur bestehend aus zwei INT-Werten (X und Y), wird dann diese Kennlinie definiert.

Die Ausgabe besteht aus OUT vom Typ INT, dem manipulierten Wert und demBYTE ERR, das ggf. auf Fehler hinweist.

Die Punkte P[0]..P[N-1] im ARRAY müssen nach ihren X-Werten sortiert sein,ansonsten erhält ERR den Wert 1. Liegt die Eingabe IN nicht zwischen P[0].Xund P[N-1].X, so wird ERR=2 und OUT erhält den entsprechenden GrenzwertP[0].X oder P[N-1].X.

Liegt N außerhalb der zulässigen Werte zwischen 2 und 11, so wird ERR=4.

Page 236: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Util_ifmx.Lib

5-128

Beispiel in ST:

Zunächst muß im Header das ARRAY P definiert werden:

VAR

...

KENNLINIE:CHARCURVE;

KL:ARRAY[0..10] OF POINT:=(X:=0,Y:=0),(X:=250,Y:=50),

(X:=500,Y:=150),(X:=750,Y:=400),7((X:=1000,Y:=1000));

ZAEHLER:INT;

...

END_VAR

Dann speisen wir CHARCURVE mit einem zunehmend wachsenden Wert :

ZAEHLER:=ZAEHLER+10;

KENNLINIE(IN:=ZAEHLER,N:=5,P:=KL);

Das anschließende Tracing illustriert:

Page 237: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-129

RAMP_INT RAMP_INT dient dazu, den Anstieg bzw. den Abfall der eingespeisten Funktionzu begrenzen:

Die Eingabe besteht zum einen aus drei INT-Werten: IN, der Funktionseingabe,und ASCEND und DESCEND, der maximalen Zu- bzw. Abnahme proZeitintervall, welches durch TIMEBASE vom Typ TIME festgelegt wird. Setztman RESET auf TRUE, so wird RAMP_INT neu initialisiert.

Die Ausgabe OUT vom Typ INT enthält den an- und abstiegsbeschränktenFunktionswert.

Man beachte, dass sich Probleme ergeben können, wenn Die eingestellteTIMEBASE geringer ist, als die Dauer für einen Durchlaufzyklus

Wird TIMEBASE auf t#0s gesetzt, so beziehen sich ASCEND und DESCENDnicht auf ein Zeitintervall, sondern bleiben erhalten.

Beispiel in CFC:

RAMP_REAL RAMP_REAL funktioniert genau wie RAMP_INT, lediglich daß die Eingänge IN,ASCEND, DESCEND wie auch der Ausgang OUT vom Typ REAL sind.

Page 238: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Die Elemente der Bibliothek Util_ifmx.Lib

5-130

Analogwertverarbeitung

HYSTERESIS Der Eingang dieses Funktionsblocks besteht aus den drei INT-Werten IN, HIGHund LOW. Die Ausgabe OUT ist vom Typ BOOL.

Unterschreitet IN den Grenzwert LOW, so wird OUT TRUE. Wenn IN die obereGrenze HIGH überschreitet, so wird FALSE ausgegeben.

Illustrierendes Beispiel:

Page 239: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-131

LIMITALARM Dieser Funktionsblock gibt an, ob sich der Eingabewert in einemvorgegebenem Intervall befindet und welche Grenze er ggf. überschreitet.

Die Eingabewerte IN, HIGH und LOW sind jeweils vom Typ INT, die AusgabeO, U und IL vom Typ BOOL.

Wird die Obergrenze HIGH von IN überschritten, so wird O TRUE, beiUnterschreitung von LOW wird U TRUE. Liegt IN dagegen zwischen LOW undHIGH, so wird IL TRUE.

Beispiel in CFC: Ergebnis:

Page 240: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Funktionen, Programme und Funktions-Blöcke

5-132

5.8. Funktionen, Programme und Funktions-Blöcke

Wie schon erwähnt, beinhaltet ecolog Funktionen und Funktions-Blöcke. Es istauch möglich, selbstgeschriebene Bausteine dieser Art, sowie Programme(Programs) zu erzeugen und in ein Projekt einzubinden. In diesem Abschnittwerden Sie folgendes über Funktionen, Programme und Funktions-Blöckefinden:

• Unterschied zwischen diesen Bausteinen

• Syntax und Aufruf dieser Bausteine

• Beispiele für diese Bausteine.

Funktionen

Definition Eine Funktion ist ein Baustein. Sie arbeitet mit Variablen, genannt Operanden.Das Ergebnis der Operation (oder Operationen) ist der Funktionswert, derdem Funktionsnamen zugewiesen wird.

Die internen Variablen einer Funktion werden mit jedem Aufruf initialisiert.Daraus folgt, daß Aufrufe mit gleichen Operanden immer auch das gleicheErgebnis liefern.

Eine kleineAufgabe

Die Gesamtmasse eines Behälterinhalts, bestehend aus zwei Materialien(A und B verschiedener Dichte), soll mit Hilfe folgender Beziehung berechnetwerden:

Masse = (Volumen A) (Dichte A) + (Volumen B) (Dichte B)

Lösung:

Benutzen Sie die Option Projekt => Objekt => Einfügen, wie in Abschnitt 4.2beschrieben.

Page 241: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-133

Fügen Sie dann eine Funktion ein.

Die eingefügte Funktion

Die Funktion hat 4 Variablen mit den Namen

• VolumenA

• DichteA

• VolumenB

• DichteB

vom Typ WORD. Es sind INPUT-Variablen (Eingangsvariablen).

Rumpf Die ausführbaren Anweisungen sind im Rumpf des Bausteins enthalten.

Die Anweisungen

Deklarationsteil

Rumpf

multipliziereVolumenAmit DichteA

multipliziereVolumenBmit DichteB

addieredie beidenProdukte

transferierezu Ergebnisder Funktion

Page 242: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Funktionen, Programme und Funktions-Blöcke

5-134

In diesem Fall wird der Eingang Volumen mit dem Eingang Dichte für zweiWertepaare (..A und ..B) multipliziert. Die Summe der beiden Produkte ist dasErgebnis der Funktion 'Masse'.

Zusammenhangmit der Definition

Lassen Sie uns nun den Zusammenhang mit der allgemeinen Definition vonFunktionen betrachten:

• Operationen MUL, ADD

• Operanden Volumen, Dichten

• Ergebnis Masse, der Funktion zugeordnet.

An diesem Beispiel wird klar, daß Aufrufe mit gleichen Operanden auch immerdas gleiche Ergebnis liefern. Das können Sie selbst überprüfen.

Aufruf einerFunktion

Eine Funktion wird, wie unten gezeigt, in einem Projekt aufgerufen.

Aufruf von Masse in PLC_PRG

Programme

Definition Ein Programm ist ein Baustein. Es arbeitet mit Variablen. Diese Variablenwerden Operanden genannt und als Eingang, Ausgang oder Beides definiert.Das Ergebnis oder die Ergebnisse werden durch den Zustand der Operandenbestimmt.

Globale Variablen können als Operanden verwendet werden. Dies schränktaber die Universalität des Bausteins ein.

Es gibt nur einen Satz interner Variablen. Sie werden nur beim ersten Aufrufinitialisiert, nicht bei jedem Aufruf. Dadurch kann die Verwendung gleicherOperanden durchaus auch zu unterschiedlichen Ergebnissen führen.

Page 243: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-135

noch eine kleineAufgabe

Der Füllstand eines Silos soll angezeigt werden. Der Füllstand kann dreiZustände annehmen:

• über Nenn

• Nenn oder

• unter Nenn.

Die Anzeige wird durch Vergleich des aktuellen Füllstands mit demNennfüllstand gesteuert. Es soll ferner gezählt und angezeigt werden, wie oftdie Last über Nenn gegangen ist.

Lösung:

Benutzen Sie die Option Projekt => Objekt => Einfügen, wie in Abschnitt 4.2beschrieben und fügen Sie ein Programm ein.

Baustein-definition

Die Bausteindefinition definiert einen Baustein vom Typ Program mit demNamen Kategorie. Alle Programme werden in dieser Weise definiert.

Die Bausteindefinition

Variablen-definition

Variablen werden ähnlich wie in Funktionen definiert (Variablenname/-typ).Dieses Programm hat Eingangs- und Ausgangs-Variablen.

Die Bedeutung von Eingangs- und Ausgangs-Variablen sollte auch ohneweitere Erläuterung klar sein.

Bausteintyp Bausteinname

Page 244: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Funktionen, Programme und Funktions-Blöcke

5-136

Der Deklarationsteil

Zusammenhangmit der Definition

Lassen Sie uns zum Aufruf einer Funktion (siehe S. 5-134) zurückkehren undunser Beispiel mit der Begriffsdefinition eines Programms vergleichen.

• Operatoren vergleiche GT-, EQ-, LT- und AND-Verknüpfung

• Operanden Eingangs- und Ausgangs-Variablen

• Ergebnis zugewiesen auf Ein-/Ausgangs-Variablen.

Aufruf einesProgramms

Den Aufruf eines Programms hatten Sie bereits kennengelernt. In diesemProjekt erfolgt der Aufruf von Kategorie in PLC_PRG wie unten gezeigt.

Der Aufruf von Kategorie in PLC_PRG

Funktions-Blöcke

Definition Ein Funktions-Block ist ein Baustein. Er arbeitet mit Variablen, dieOperanden genannt und als Eingang, Ausgang oder Beides definiert werden.Das Ergebnis oder die Ergebnisse werden durch den Zustand der Operandenbestimmt.

Bausteindefinition

Variablendefinition

Page 245: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-137

Globale Variablen können als Operanden verwendet werden, dies schränktaber die Universalität des Bausteins ein.

Kopien des Sets der internen Variablen eines Funktions-Blocks werdenInstanz des Funktions-Blocks genannt. Der ausführbare Code einesFunktions-Blocks existiert nur einmal im Controller!

Ein Funktions-Block wird mit seinem Instanz-Namen aufgerufen. Diesveranlaßt den ausführbaren Code des Funktions-Blocks nur mit denOperanden und internen Variablen dieser Instanz zu arbeiten.

Die internen Variablen werden nur beim ersten Aufruf initialisiert, nicht beijedem Aufruf. Dadurch kann die Verwendung gleicher Operanden durchausauch zu unterschiedlichen Ergebnissen führen.

eine Aufgabe Nehmen wir die Silo-Aufgabe von Seite 5-110. Es soll, wie in der vorherigenAufgabe, der Füllstand angezeigt werden. Diesmal gibt es aber mehr als einenSilo.

Lösung:

Der Versuch, das Programm 'Kategorie' mehrmals aufzurufen, würde zuunbrauchbaren Ergebnissen führen. Um Abhilfe zu schaffen, benutzen wirdieselbe ausführbare Anweisung. Nur schreiben wir sie diesmal als FunctionBlock und nicht als Program.

Einfügen eines Function Block

Bausteindefinition

Variablendefinition

Page 246: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Funktionen, Programme und Funktions-Blöcke

5-138

Syntax Wie alle Bausteintypen besitzt auch der Funktions-Block einen Deklarationsteilund einen Rumpf.

Den Unterschied zum Baustein Program können Sie in Zeile 1 (im Dekla-rationsteil) sehen. Es handelt sich hierbei um unterschiedliche Bausteintypen.Dieser Baustein hier ist ein Baustein vom Typ Function Block.

Der Rest des Deklarationsteils und auch des Rumpfes der beiden Bausteine istidentisch, weil die Aufgabenstellung gleich ist. Zur Erarbeitung der Unterschiedewurden beide Lösungsansätze in diesem Handbuch realisiert. In einerpraktischen Anwendung würde dies natürlich keinen Sinn machen.

Aufruf einesFunktionsblocks

Wie zuvor die anderen Bausteine rufen wir nun unseren Baustein in PLC_PRG(hier für zwei Silos) auf.

Aufruf des Bausteins PLC_PRG

Page 247: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-139

5.9. Arrays und Strukturen

In diesem Abschnitt erklären wir zwei Optionen zur Datenorganisation desSystems ecolog: Arrays und Strukturen.

Sie finden in diesem Kapitel Erklärungen

• zur Syntax,

• zum Aufruf

und Beispiele.

Arrays

Definition Ein Array ist eine Gruppe gleichartiger Elemente. Der Typ dieser Elementekann frei gewählt werden (BYTE, INT, WORD, TIME, STRUCTURE).

Arrays können ein-, zwei- oder dreidimensional sein.

Auf das Element kann mittels Array-Name und einer oder mehrerer Variablenals Index (Indices) zugegriffen werden. Für jede Dimension ist ein Indexerforderlich.

Die Elemente eines Arrays können initialisiert werden.

Aufgabe Betrachten wir das folgende x-y–Transport-System. Die x-y-Koordinaten für diePunkte sollen vom Baustein MotorSystem an den Baustein MotorAntriebweitergegeben werden. Die Koordinaten-Auswahl wird durch eine Forder-Flanke an Eingang Weiter ermöglicht. Die Koordinaten-Auswahl (0;0) soll durcheine Forder-Flanke an Eingang Reset erfolgen. Die x-y-Koordinaten sollenjeweils in ein Array gespeichert werden.

Page 248: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Arrays und Strukturen

5-140

Das x-y Transport-System

Lösung

Die x-y-Koordinaten werden jeweils in den x- bzw. y-Arrays gespeichert.

Die x-y-Koordinaten in den Arrays

x-y Transport

Motx

Moty

MotorSystem MotorAntrieb

Weiter PreSetx MotxReset PreSety Moty

P5 (200,300)

P(y,x)

P4 (150,150)

P1 (10,10) P3 (50,10)

P2 (50,25) P6 (240,30)

x

y

Page 249: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-141

Strukturen

Definition Eine Struktur ist eine Gruppe von Elementen. Strukturen werden definiert undkönnen dann wie ein neuer Variablen-Typ verwendet werden

Der Typ dieser Elemente kann frei gewählt werden (Byte, INT, WORD, TIME,STRUCTURE) und auch innerhalb der Struktur unterschiedlich sein.

Auf das Element kann mittels Struktur-Name und Element-Name zugegriffenwerden. Struktur-Name und Element-Name werden durch einen Punkt getrennt.

Die Elemente einer Struktur können initialisiert werden.

Aufgabe Zur Herstellung von Keramikschüsseln gehören verschiedene Merkmale undprozesstechnische Daten. Für diese Betrachtung nehmen wir an, folgendeInformationen sind notwendig:

• Farbe

• Menge Material A

• Menge Material B

• Menge Material C

• Ofentemperatur Phase1

• Ofentemperatur Phase2

• Ofentemperatur Phase3

• Zeit Phase1

• Zeit Phase2

• Zeit Phase3.

Diese Daten sollen als Struktur abgelegt werden.

Lösung Die Daten werden, wie im Bild unten zu sehen, unter den Strukturen mit NamenSchuessel gespeichert.

Die Strukturen namens Schuessel

Page 250: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersetzungsfehler

5-142

5.10. Übersetzungsfehler

Hier finden Sie sämtliche Fehlermeldungen die bei einem Programmtest anzeigtwerden (kursiv), und deren mögliche Ursachen in alphabetischer Reihenfolge:

"ADR benötigt eine Variable undkeinen Ausdruck oder Konstante alsParameter"

Tauschen Sie den Ausdruck oder die Konstante gegen eine Variable aus.

"An dieser Stelle ist keinFunktionsname zulässig"

Tauschen Sie den Funktionsaufruf gegen eine Variable oder eine Konstanteaus.

"<Anzahl> Operanden sind zu vielefür <operator>. Es werden genau<Anzahl> benötigt"

Überprüfen Sie, wieviele Operanden der Operator <operator> benötigt undentfernen Sie die überzähligen.

"<Anzahl> Operanden sind zu wenigefür <operator>. Es werdenmindestens <Anzahl> benötigt"

Überprüfen Sie, wieviele Operanden der Operator <operator> benötigt undfügen Sie die fehlenden ein.

"Auf einer Bitadresse dürfen nurBOOL Variablen stehen"

Ändern Sie den Typ der Deklaration in BOOL oder ändern Sie die Adresse inein anderes Format.

"AWL Operator erwartet"

Ändern Sie das erste Wort in der Zeile in einen gültigen Operator oder einegültige Funktion.

Page 251: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-143

"Baustein endet nicht korrekt: STeinfügen oder letzten Ausdrucklöschen."

Der Baustein endet mit einem unvollständigen Ausdruck. Schließen Sie diesenab oder löschen Sie ihn.

"Baustein <Name> existiert nicht imProjekt"

Definieren Sie einen Baustein mit dem Namen <name> durch die Menü-Befehle'Projekt' 'Objekt anfügen' oder ändern Sie <name> in den Namen einesdefinierten Bausteins.

"Baustein <Name> verlangt genau<Anzahl> Eingänge"

Überprüfen Sie die Zahl der Eingangsvariablen, die dieser Baustein benötigt,und streichen Sie die überzähligen, oder fügen Sie fehlende ein.

"Bezeichner erwartet"

Schreiben Sie einen gültigen Bezeichner an den Anfang der Deklarationszeile.

"CAL, CALC oder CALN benötigt eineFunktionsblock-Instanz alsOperanden"

Deklarieren Sie eine Instanz des Funktionsblocks, den Sie aufrufen möchten.

"<component> ist keine Komponentevon <variable>"

Wenn die Variable eine Struktur ist, dann ändern Sie <component> in eine derKomponenten, die in dieser Struktur deklariert sind.

Wenn die Variable eine Instanz eines Funktionsblocks ist, dann ändern Sie<component> in einen Ein- oder Ausgabeparameter, der in diesemFunktionsblock deklariert ist.

"Der Ausdruck im Index eines Arraysmuß ein Ergebnis vom Typ INThaben"

Ändern Sie den Index in eine Konstante oder eine Variable vom Typ INT.

Page 252: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersetzungsfehler

5-144

"Der Ausdruck vor einem Operatormuß ein Ergebnis vom Typ BOOLliefern"

Das Ergebnis der vorangegangenen Anweisung ist nicht vom Typ BOOL.Fügen Sie einen Operator oder eine Funktion mit Ergebnis BOOL ein.

"Der Bausteinname imDeklarationsnamen stimmt nicht mitdem in der Objektliste überein"

Benennen Sie Ihren Baustein mittels der Menü-Befehle 'Projekt' 'Objektumbenennen' neu oder ändern Sie den Namen des Bausteins in dessenDeklarationsteil. Der Name muß direkt nach den Schlüsselwörtern PROGRAM,FUNCTION oder FUNCTION BLOCK stehen.

„Der Endwert der FOR-Anweisungmuß vom Typ INT sein“

Ändern Sie die Variable in eine Variable vom Typ INT.

„Der Inkrementationswert der FOR-Anweisung muß vom Typ INT sein“

Ändern Sie die Variable in eine Variable vom Typ INT.

"Der Schrittname ist kein zulässigerBezeichner: '<name>'"

Ändern Sie den Bezeichner <name> in einen gültigen Bezeichner.

„Der Selector der CASE-Anweisungmuß vom Typ INT sein“

Ändern Sie den Selektor in einen Selektor vom Typ INT.

„Der Startwert der FOR-Anweisungmuß vom Typ INT sein“

Ändern Sie die Variable in eine Variable vom Typ INT.

Page 253: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-145

„Der Zähler der FOR Anweisung mußvom Typ INT sein“

Ändern Sie die Variable in eine Variable vom Typ INT.

„Der Zähler in der FOR-Anweisung istkeine Variable mit Schreibzugriff“

Ändern Sie die Variable in eine Variable mit Schreiberlaubnis.

"Ein Array von Strings darf nicht aufeine Adresse gelegt werden"

Löschen sie die Adresszuweisung.

"Ein Array von Arrays darf nicht aufeine Adresse gelegt werden"

Löschen sie die Adresszuweisung.

"Einem gültigen Watchausdruckfolgen unzulässige Zeichen"

Entfernen Sie die überzähligen Zeichen.

„Ein Funktionsbausteinaufruf muß mitdem Namen einer Instanz beginnen“

Fügen Sie den Namen der gewünschten Instanz ein oder entfernen Sie denAufruf des Funktionsbausteins.

"Ein Sprung muß genau eine Markehaben"

Ändern Sie das Sprungziel in eine definierte Marke.

"END_STRUCT oder Bezeichnererwartet"

Eine Strukturdefinition muß mit Schlüsselwort END_STRUCT enden.

Page 254: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersetzungsfehler

5-146

"END_VAR oder Bezeichner erwartet"

Schreiben Sie einen gültigen Bezeichner oder END_VAR an den Anfang derDeklarationszeile.

„Es sind maximal 4 Adressfelderzulässig“

Entfernen Sie die überzähligen Adressfelder.

„Es wird ein Ausdruck erwartet“

An dieser Stelle muß ein Ausdruck eingegeben werden.

„EXIT ist nur innerhalb einer Schleifeerlaubt“

Entfernen Sie EXIT.

"Fehlerhafter Initialwert"

Schreiben Sie ein Konstante (Konstante) entsprechend des Typs in derDeklaration als Anfangswert.

"Funktion <Name> hat zu vieleParameter"

Löschen Sie die überzähligen Parameter.

"Funktion <Name> hat zu wenigParameter"

Fügen Sie die fehlenden Parameter hinzu.

"Für den Aufruf des Funktionsblocks<Name> wurde keine Instanzvereinbart"

Ändern Sie den Text der Instanz des Funktionsblocks <Name> (initialisiert mit"Instance") in den Bezeichner einer gültigen Instanzdeklaration.

Page 255: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-147

„Ganze Zahl oder symbolischeKonstante erwartet“

Als Bedingung eines CASE-Falls sind nur ganze Zahlen oder symbolischeKonstanten erlaubt. Ändern Sie die falsche Bedingung.

"<identifier> ist keine Funktion"

Ändern Sie <identifier> in eine der Funktionen aus den an das Projekt gelinktenBibliotheken oder in eine im Projekt deklarierte Funktion.

„IF und ELSIF benötigen alsBedingung einen BoolschenAusdruck“

Ändern Sie den Ausdruck zu einem Ausdruck mit einem Ergebnis vom TypBOOL.

„Illegale Zeitkonstante“

Überprüfen Sie, ob Sie eine korrekte Zeitkonstante geschrieben haben, undändern Sie eventuelle Fehler. Mögliche Fehler sind:

• Fehlen von t oder # am Anfang.

• Doppeltes Auftreten einer Zeitangabe (z. B.: t#4m2m).

• Falsche Reihenfolge der Zeiten.

• Falsche Zeitbezeichnung (kein m, s oder ms).

"'[<index>]' ist nur für Arrayvariablenzulässig"

Deklarieren Sie den Bezeichner vor der Klammer als ein Array oder ändern Sieihn in eine deklarierte Array-Variable.

„INI Operator benötigt eineFunktionsblockinstanz oder eineDatenbausteininstanz“

Ändern Sie den Operanden in die Instanz eines Funktionsblocks. Dazudeklarieren Sie den Operanden als Funktionsblock, oder verwenden einenbereits deklarierten Funktionsblock, oder Sie benutzen die Instanz einesDatenbausteins.

Page 256: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersetzungsfehler

5-148

”Kann kein *.obj finden”

Schalten Sie die Simulation an.

"Keine Sprungmarken innerhalb vonKlammerausdrücken"

Entfernen Sie die Marke oder die Klammern.

"Kein Schreibzugriff auf <Name>"

Ändern Sie <name> in eine Variable mit Schreiberlaubnis.

„Kommentar ist in AWL nur amZeilenende zulässig“

Schieben Sie den Kommentar an das Zeilenende.

"LD erwartet"

In dieser Zeile ist nur die Anweisung "LD" erlaubt.

"Mehrdimensionale Arrays dürfennicht auf Adressen gelegt werden"

Löschen sie die Adresszuweisung.

"Mehrere Deklarationen mit demgleichen Bezeichner <Name>

Benennen Sie einen der gleichnamigen Bezeichner neu.

"Mehrfache Definition derSprungmarke <Marke>"

Entfernen Sie eine der definierten Sprungmarken.

„Mehrfache Unterstriche imBezeichner“

Entfernen Sie einen Unterstrich im Bezeichner.

Page 257: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-149

„Mindestens eine Anweisung isterforderlich“

Geben Sie eine Anweisung ein.

"Nach 'AT' muß eine Adresse stehen"

Fügen Sie eine gültige Adresse nach dem Schlüsselwort AT ein oder ändernSie das Schlüsselwort AT.

"Nach '+' bzw. '-' wird eine Zahlerwartet"

Ändern Sie das Wort nach dem + oder – in eine gültige Konstante.

"Nach ')' ist kein Komma zulässig"

Entfernen Sie das Komma.

„Nach ‘,’ wird eine Zahl erwartet“

Entfernen Sie das Komma oder fügen Sie eine weitere Zahl ein.

"<Name> ist kein Eingabeparameterdes aufgerufenen Funktionsblocks"

Überprüfen Sie die Eingabevariablen des aufgerufenen Funktionsblocks undändern Sie <Name> in eine dieser Variablen

"<Name> ist kein Funktionsblock"

Tauschen Sie <Name> gegen einen gültigen Namen eines Funktionsblocks.

"<Name> muß eine deklarierteInstanz des Funktionsblocks<FBName> sein"

Ändern Sie den Text der Instanz des Funktionsblocks <Name> (initialisiert mit"Instance") in einen Bezeichner einer gültigen Instanzdeklaration einesFunktionsblocks.

Page 258: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersetzungsfehler

5-150

"'N' Modifikator verlangt einenOperanden vom Typ BOOL"

Entfernen Sie das N und negieren Sie den Operanden explizit mit dem NOT-Operator

"NOT verlangt einen boolschenOperanden"

Ändern Sie den Operanden zu einem Operanden vom Typ BOOL.

"Nur VAR und VAR_GLOBAL dürfenauf Adressen gelegt werden"

Kopieren Sie die Deklaration in einen VAR oder VAR_GLOBAL-Bereich.

"Operanden von ST, STN, S, Rmüssen Variable mit Schreibzugriffsein"

Ersetzen Sie den ersten Operanden durch eine Variable mit Schreiberlaubnis.

"Operand erwartet"

Fügen Sie einen zusätzlichen Operanden ein.

"<Operator> in Klammern ist nichtzulässig"

Dieser Operator ist nicht innerhalb von Klammern erlaubt. Entfernen Sieentweder die Klammern oder den Operator.

"Operator ist nicht extensibel.Entfernen Sie überzähligeOperanden"

Überprüfen Sie die Anzahl der Operanden für diesen Operator und entfernenSie die überzähligen Operanden.

Page 259: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-151

"Parameter <Nummer> ist vomfalschen Typ"

Überprüfen Sie den Typ des Operanden mit der Nummer <number> diesesOperators, dieser Funktion, oder dieses Funktionsblocks. Ändern Sie den Typder Variablen, die den Fehler hervorgerufen hat, in einen erlaubten Typen oderwählen Sie eine andere Variable mit erlaubtem Typ.

"Schließende Klammer ohnezugehörige öffnende Klammer"

Entfernen Sie die schließende Klammer oder fügen Sie eine öffnende ein.

„Schlüsselwörter müssen großgeschrieben werden“

Ändern Sie die Schreibweise des Schlüsselworts.

"Schrittnamen sind doppelt:'<Name>'"

Ändern Sie einen der doppelten Namen.

"Sprung auf nicht definierten Schritt:'<Name>'"

Ändern Sie <name> in den Namen eines existierenden Schritts, oder fügen Sieeinen Schritt mit Namen <name> ein.

„Sprung auf nicht definierten Schritt:<Name>„

Ändern Sie <name> in den Namen eines existierenden Schritts, oder fügen Sieeinen Schritt mit Namen <name> ein.

"Sprung bzw. Return benötigen eineboolsche Eingabe"

Das Ergebnis der vorangegangenen Anweisungen ist nicht vom Typ BOOL.Fügen Sie einen Operator oder eine Funktion mit einem Ergebnis vom TypBOOL ein.

Page 260: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersetzungsfehler

5-152

"Sprung bzw. Return ist nur auf derrechten Seite eines Netzwerkszulässig"

Löschen Sie den an dieser Stelle unzulässigen Sprung bzw. Return.

"Sprungmarke <Marke> ist nichtdefiniert"

Definieren Sie eine Marke mit dem Namen <LabelName> oder ändern Sie<LabelName> in eine definierte Marke.

"<string> ist kein Operator"

Ändern Sie <string> in einen gültigen Operator.

"Typbezeichner erwartet"

Schreiben Sie einen gültigen Typ hinter den Identifikator der Deklaration.

"Unbekannter Typ: <string>"

Ändern Sie <string> in einen gültigen Typ.

"Unbekannte Variable oder Adresse"

Diese watch-Variable ist im Projekt nicht deklariert. Durch Drücken von <F2>erhalten Sie Hilfe zu deklarierten Variablen.

"Unerwartetes Ende"

Im Deklarationsteil: Fügen Sie am Ende des Deklarationsteils dasSchlüsselwort END_VAR ein.

Im Text-Editor: Fügen Sie Anweisungen ein, die die letzteAnweisungssequenz beenden (z. B. ST).

"Unerwartetes Ende desKlammerausdrucks"

Fügen Sie eine schließende Klammer ein.

Page 261: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-153

„UNTIL benötigt als Bedingung einenBoolschen Ausdruck“

Ändern Sie den Ausdruck zu einem Ausdruck mit einem Ergebnis vom TypBOOL.

„Unverträgliche Typen: Kann <Typ1>nicht in <Typ2> konvertieren.“

Prüfen Sie die erforderlichen Typen des Operators (Suchen Sie dafür denOperator in Ihrer Hilfe-Datei) und ändern Sie den Typ der Variable, die denFehler produziert hat, in einen erlaubten Typ. Oder wählen Sie eine andereVariable.

"Unzulässige Adresse: <Adresse>"

Überprüfen Sie in ihrer Steuerungskonfiguration, welche Adressen erlaubt sind,und tauschen Sie die Adressen gegen erlaubte Adressen aus, oder ändern Siedie Steuerungs-Konfiguration.

„Unzulässiger Typ für denEingabeparameter <Name>: Kann<Typ1> nicht in <Typ2> konvertieren.“

Der Variablen <Name> wird ein Wert mit dem unzulässigen Typ <Typ2>zugewiesen. Ändern Sie die Variable oder die Konstante zu einer Variablenoder Konstanten mit dem Typ <Typ1>.

„Unzulässiger Typ für Parameter<Name> von <FBName>: Kann<Typ1> nicht in <Typ2> konvertieren.“

Verwenden Sie für die Zuweisung an den Parameter <Name> eine Variablevom Typ <Typ2> oder ändern Sie den Typ der zugewiesenen Variable in<Typ1>.

„Unzulässiger Typ in Parameter<Parameter> von <Baustein>: Kann<Typ1> nicht in <Typ2> konvertieren.“

Überprüfen Sie den benötigten Typ des Parameters <Parameter> desBausteins <Baustein>. Ändern Sie den Typ der Variable, die den Fehlerhervorgerufen hat, in <Typ2>, oder wählen Sie eine andere Variable mit<Typ2>.

Page 262: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersetzungsfehler

5-154

"Unzulässige Zeichen folgen demzulässigen Schrittnamen:'<name>'"

Entfernen Sie die überzähligen Zeichen.

"Variable <Name> nicht deklariert"

Deklarieren Sie diese Variable im Deklarationsteil des Bausteins oder in derglobalen Variablenliste.

"VAR, VAR_INPUT, VAR_OUTPUToder VAR_IN_OUT erwartet"

Die erste Zeile nach dem Namen eines Bausteins muß eines dieserSchlüsselwörter beinhalten.

"Vor dem '.' muß eine Strukturvariablestehen"

Der Bezeichner links von '.' ist keine Struktur-Variable oder Instanz einesFunktionsblocks. Ändern Sie den Bezeichner in eine Struktur-Variable oder ineine Instanz eines Funktionsblocks, oder entfernen Sie den Punkt und denBezeichner rechts davon.

„WHILE benötigt als Bedingung einenBoolschen Ausdruck“

Ändern Sie den Ausdruck zu einem Ausdruck mit einem Ergebnis vom TypBOOL.

„Zahl, ELSE oder END_CASEerwartet“

Ein CASE-Statement wurde falsch beendet. Fügen Sie das KeywordEND_CASE ein.

"Zu viele Array-Indizes"

Überprüfen Sie die Zahl der Indizes (1, 2, oder 3), für die das Array deklariertist, und entfernen Sie die überzähligen.

"Zu viele Bezeichner"

Löschen Sie die überflüssigen Bezeichner.

Page 263: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Das kleine Programmierhandbuch

5-155

"Zu wenig array Indizes"

Überprüfen Sie die Zahl der Indizes (1, 2, oder 3), für die das Array deklariertist, und ergänzen Sie die fehlenden.

"Zu wenig Speicher"

Verlassen Sie das System mit Speichern. Verlassen Sie Windows, starten Siees erneut und versuchen Sie erneut zu übersetzen.

Page 264: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Übersetzungsfehler

5-156

Page 265: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

157

6. Anhang

In diesem Abschnitt der Anleitung stellen wir Ihnen ein Glossar und einen Indexzur Verfügung. Im Glossar finden Sie Erläuterungen zu Begriffen aus der SPS-Technik in Anlehnung an die IEC 61131-3. Das Stichwortverzeichnis hilft Ihnenbeim Auffinden von Informationen zu einem bestimmten Begriff.

6.1. Glossar

Absolute Zeit Eine Kombination von Tageszeit und Datum, innerhalb eines Rechners oft alsSystemzeit definiert.

Aggregat Eine strukturierte Sammlung von Datenobjekten bilden einen Datentyp.

Aktion Eine boolsche Variable oder eine Sammlung von Operationen wird zusammenmit einer zugehörigen Kontrollstruktur ausgeführt.

Aktionsblock Ein graphisches Sprachelement mit boolscher Eingangsvariable, das den Wertfür eine Aktion bestimmt, mit boolscher Ausgangsvariable oderFreigabebedingung.

AllgemeinerDatentyp

Ein Datentyp, der mehr als einen Typ von Daten darstellt.

Anfangswert Ein Wert, der einer Variablen beim Systemstart zugewiesen wird.

Anwender-datenspeicher

In diese Einheit können vom Anwenderprogramm Daten gespeichert undzurückgelesen werden.

Argument Synonym für Eingangs- oder Ausgangsparameter.

Aufruf Die Ausführung einer Funktion oder eines Funktionsbausteins wird aufgerufen.

Aufruf Der Vorgang zur Ausführung einer Operation (die in einer Programm-Organisationseinheit festgelegt ist) wird eingeleitet.

Aus/Einschalt-verzögerung

Ein Funktionsbaustein, der die fallende oder steigende Flanke eines boolschenEingangs um eine definierte Zeitdauer verzögert.

Ausgangs-parameter

Über diesen Parameter werden die Ergebnisse (bzw. das Ergebnis) derAuswertung einer Programm-Organisationseinheit zurückgegeben.

Auswertung Während der Programmbearbeitung werden Werte ermittelt für einenAusdruck, eine Funktion, die Ausgänge eines Netzwerks oder einesFunktionsbausteins.

BasisbezogeneZahl

Eine Zahl ist mit fester Basis ungleich zehn dargestellt.

Begrenzungs-zeichen

Zur Trennung von Sprachelementen eingesetzte Zeichen oder eineZeichenkombination.

Bezeichner Bezeichnung eines Sprachelements aus einer Kombination von Buchstaben,Zahlen und/oder Unterstrich-Zeichen. Sie dürfen nicht mit einer Zahl beginnen.

Page 266: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Glossar

158

BezeichnetesElement

Durch den zugehörigen Bezeichner benanntes Element einer Struktur.

BistabilerFunktions-baustein

Ein über ein oder mehrere Eingänge gesteuerter Funktionsbaustein mit zweistabilen Zuständen.

Bitfolge Ein aus ein oder mehreren Bits bestehendes Datenelement.

Datentyp Eine Werte-Menge, auf die zugeordnete Operationen angewandt werdenkönnen.

Datum undUhrzeit

Das Tagesdatum und die Tageszeit (siehe auch „Absolute Zeit“).

Deklaration Die Definition eines Sprachelements. Sie umfaßt normalerweise dieVerbindung eines Bezeichners mit dem Sprachelement und die Zuordnung vonAttributen wie Datentypen und Algorithmen.

DirekteDarstellung

Die Darstellung einer Variablen in einem SPS-Programm. Ihr ist einphysikalischer oder logischer Speicherort direkt zugewiesen.

Doppelwort Ein Datenelement, das 32 Bits enthält.

Eingangs-parameter

Mit diesem Parameter wird einer Programm-Organisationseinheit ein Argumentübergeben.

Einzel-Datenelement

Ein aus einem einzelnen Wort bestehendes Datenelement.

Elemente zurAusführungs-steuerung

Ein Sprachelement, über das der Fluß der Programmausführung gesteuertwird.

Fallende Flanke Ein Wechsel von „1“ nach „0“ bei einer boolschen Variablen.

Feld Ein aus Datenobjekten mit identischen Attributen bestehendes Aggregat, demein Index zugeordnet ist.

Funktion Eine Programm-Organisationseinheit, die bei ihrer Ausführung genau einDatenelement liefert (es kann auch ein Multiwert wie zum Beispiel ein Feldoder eine Struktur sein). Ihr Aufruf in einer Textsprache kann als Operand ineinem Ausdruck benutzt werden. vergleiche auch S. 5-132.

Funktions-baustein-Instanz

Eine Instanz eines Funktionsbaustein-Typs.

Funktions-baustein-Sprache

Ein oder mehrere Netzwerke aus graphisch dargestellten Funktionen,Funktionsbausteinen, Datenelementen, Marken und/oder Verbindungs-elementen.

Funktions-baustein-Typ

Ein SPS-Sprachelement, welches aus der Definition einer Datenstruktur(aufgeteilt in Eingangs-, Ausgangs- und internen Variablen) und einer Mengevon Operationen (wenn eine Instanz des Funktionsbaustein-Typs aufgerufenwird, werden sie mit den Elementen der Datenstruktur durchgeführt) besteht.

GanzzahligesLiteral

Ein Literal, das einen Wert darstellt vom Typ: BOOL, BYTE, DINT, DWORD,INT oder WORD.

Page 267: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Anhang

159

Geltungs-bereich

Der Teil eines Sprachelementes, innerhalb dessen eine Deklaration oder eineMarke gilt.

GepufferteDaten

Diese Daten werden in einer Weise gespeichert, daß ihr Wert nach einer Folgevon Spannungsausfall/Wiederkehr unverändert erhalten bleibt.

GlobalerGeltungs-bereich

Der Geltungsbereich einer Deklaration. Er ist anwendbar auf alle Programm-Organisationseinheiten innerhalb einer Ressource oder einer Konfiguration.

Globale Variable Eine Variable mit globalem (nicht eingeschränktem) Geltungsbereich.

HierarchischeAdressierung

Die direkte Darstellung eines Datenelements als Teil einer logischen oderphysikalischen Hierarchie (zum Beispiel der Anschlußpunkt einer Baugruppe,die in einem Rahmen steckt, der wiederum in einem Schrank eingebaut ist).

Indizierung Ein Mechanismus zur Adressierung eines Feldelementes durch einenFeldverweis und einen oder mehrere Ausdrücke. Durch sie wird die Positiondes Elements bezeichnet.

Instanz Eine individuelle Datenstruktur, verknüpft mit einem Funktionsbaustein-Typoder einem Programm-Typ, die von einem Aufruf der zugehörigen Funktion biszum nächsten erhalten bleibt.

Instanz-Name Ein mit einer festgelegten Instanz verknüpfter Bezeichner.

Instanziierung Die Erzeugung einer Instanz.

Kommentar Ein Text in einem Programm, der keine Auswirkung auf die Pro-grammausführung hat.

Kompilieren Übersetzung eines Programms, Programmteils oder einer Datentyp-Festlegung in Maschinensprache oder eine Zwischenform.

Konfiguration Ein einem SPS-System entsprechendem Sprachelement.

Literal Eine lexikalische Einheit, die direkt einen Wert darstellt.

LokalerGeltungs-bereich

Geltungsbereich einer Deklaration oder Marke. Er gilt nur innerhalb derProgramm-Organisationseinheit, in der die Deklaration oder Marke auftritt.

Lange Realzahl Eine als Langwort dargestellt Realzahl.

Langwort 32-Bit-Datenelement.

LogischerSpeicherort

Der Speicherort in einem Schema von hierarchisch adressierten Variablen. DasSchema kann eine Relation zur physikalischen Struktur der Ein- und Ausgängeund des Speichers einer SPS besitzen.

Marke Damit wird eine Anweisung, ein Netzwerk oder eine Gruppe von Netzwerkenbezeichnet.

Operand Ein Sprachelement, mit dem eine Operation durchgeführt wird.

Operator Ein Symbol, das die Aktion darstellt, mit der eine Operation durchgeführt wird.

Programmieren Die Summe von Tätigkeiten beim Entwerfen, Schreiben und Testen einesAnwenderprogramms.

Page 268: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Glossar

160

Programm-Organisations-einheit

Eine Funktion, ein Funktionsbaustein oder ein Programm. Dieser Begriffbezieht sich auf Typen als auch auf Instanzen.

Reelles Literal Das Literal, das Daten vom Typ REAL und LREAL darstellt.

Ressource Ein Sprachelement, das einer „Signalverarbeitungsfunktion“ und ihrer „Mensch-Maschine-Schnittstelle“ und den „Funktionen der Sensor- und Aktuator-Schnittstelle“ entsprechen kann.

Rücksprung Das Ende einer Ausführungsfolge in einer Sprachkonstruktion (innerhalb einerProgramm-Organisationseinheit).

Rumpf Ein Teil einer Programm-Organisationseinheit, der die Operation festlegt, diemittels deklarierten Operanden bei Aufruf auszuführen sind.

Schlüsselwort Ein durch eine lexikalische Einheit charakterisiertes Sprachelement (zumBeispiel „IF“).

Schritt Das Verhalten einer Programm-Organisationseinheit folgt in bezug auf ihre Ein-und Ausgangszustände einer Menge von Regeln. Es ist durch die zugehörigeAktion des Schritts definiert.

Semantik Die Beziehung zwischen den Elementen einer Programmiersprache, ihrenBedeutungen, ihren Auslegungen und ihrer Anwendung.

SemigraphischeDarstellung

Die Darstellung einer graphischen Information durch Verwendung einesbegrenzten Zeichensatzes.

Sprachelement Das Element auf der linken Seite der Produktionsregeln (zum Beispiel:variable_name ::= identifier).

SteigendeFlanke

Ein Wechsel von „0“ nach „1“ bei einer boolschen Variablen.

Stromfluß Der symbolische Fluß des elektrischen Strom wird in einem Kontaktplanbenutzt, um das Fortschreiten eines logischen Algorithmus zu beschreiben.

StrukturierterDatentyp

Ein zusammengesetzter Datentyp (Aggregat), der unter Verwendung derDeklarationen STRUCT und FUNCTION_BLOCK deklariert wurde.

SymbolischeDarstellung

Variablen werden mit (leicht zuzuordnenden) Namen versehen.

Task Steuerung einer Gruppe von Programm-Organisationseinheiten mitperiodischer oder getriggerter Ausführung.

Transition Eine Bedingung, bei der die Steuerung von einem oder mehrerenVorgängerschritten zu einem oder mehreren Nachfolgerschritten übergeht.

Überladen Die Fähigkeit, bei einer Operation oder einer Funktion Operationen mit Datenverschiedenen Typs auszuführen.

VerdrahtetesODER

Durch Verbinden der rechten Enden von horizontalen und vertikalenVerbindungen im Kontaktplan auszuführende boolsche ODER-Funktion.

Vorzeichenloseganze Zahl

Ein ganzes Literal, dem kein führendes Pluszeichen (+) oder Minuszeichen (–)zugeordnet ist.

Page 269: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Anhang

161

Zähler-Baustein Ein Funktionsbaustein, in dem an einem oder mehrere Eingängen erkannteSignalwechsel addiert werden. Sie sind als Wert abrufbar.

Zeichenfolge Ein aus einer geordneten Folge von Zeichen bestehendes Aggregat.

Zeitliteral Ein Literal mit der Darstellung von Daten vom Typ DATE, DATE_AND_TIME,TIME oder TIME_OF_DATE.

Zugriffspfad Zur offenen Kommunikation wird eine Variable mit einem symbolischen Nameverknüpft.

Zuweisung Ein Aggregat oder eine Variable erhalten damit einen Wert.

Page 270: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Stichwortverzeichnis

162

6.2. Stichwortverzeichnis

A

Ablauf-kontrolle...................................................5-12

-sprache...........................................3-13, 5-75

Ablaufkontrolle....................................... 4-46

AblaufspracheAktion .......................................................5-75

Aktiver Schritt ............................................5-76

Alternativzweig ..........................................5-79

AS-Flags...................................................5-78

Ausgangsaktion.........................................5-75

Bestimmungszeichen.................................5-77

Eingangsaktion..........................................5-75

IEC-Schritt ................................................5-76

Implizite Variablen .....................................5-78

Parallelzweig.............................................5-79

Schritt .......................................................5-75

Sprung......................................................5-79

Transition..................................................5-76

Ablaufsprachen-Editor............................ 5-26

ABS....................................................... 5-96

Abtastrate .............................................. 5-55

ACOS .................................................. 5-101

ADD....................................................... 5-80

Addition ................................................. 5-80

Addressfunktion ..................................... 5-94

ADR....................................................... 5-94

Adreßoperator............................... 5-94, 5-95ADR..........................................................5-94

Aktion ........................... 3-13, 4-33, 5-75, 6-1

Alarm Farbe........................................... 4-70

Alternativzweig in AS ............................. 5-27

AnalogwertverarbeitungHYSTERESIS .........................................5-130

LIMITALARM ..........................................5-131

AND....................................................... 5-83

Anmerken in der Hilfe ............................ 4-49

AnweisungslisteAnweisung ....................................... 3-10, 5-63

Identifikator-Marke.....................................5-63

Kommentar ...............................................5-63

Modifikator ................................................5-64

Operator ...................................................5-64

Anweisungslisten-EditorAblaufkontrolle ..........................................5-12

Anzahl Datensegmente ..........................4-14

Arbeitsbereich ..........................................4-4

Argument .................................................6-1

Arithmetische OperatorenADD..........................................................5-80

DIV ...........................................................5-81

MOD.........................................................5-81

MUL..........................................................5-82

SIZEOF.....................................................5-82

SUB..........................................................5-83

Array ....................................................5-139

Arrays ......................................................5-4

AS-EditorAktion assoziieren .....................................5-32

Alternativzweig..........................................5-27

AS-Optionen .............................................5-32

AS-Übersicht.............................................5-31

Ausgangsaktion.........................................5-28

Eingangsaktion..........................................5-28

IEC-Schritte benutzen................................5-33

Löschen Aktion..........................................5-29

Löschen Transition ....................................5-29

Markieren..................................................5-26

Online-Modus............................................5-33

Parallelzweig.................................... 5-27, 5-28

Schritt .......................................................5-27

Schritt Attribute..........................................5-29

Sprung............................................. 5-26, 5-28

Transition......................................... 5-26, 5-28

Zeitenüberblick..........................................5-30

Zoom ........................................................5-29

Page 271: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Anhang

163

AS-Flags................................................ 5-78SFCCurrentStep ....................................... 5-79

SFCEnableLimit ........................................ 5-78

SFCError .................................................. 5-78

SFCErrorPOU........................................... 5-79

SFCErrorStep ........................................... 5-79

SFCInit ..................................................... 5-78

SFCPause ................................................ 5-78

SFCQuitError ............................................ 5-78

SFCTrans ................................................. 5-78

ASIN.................................................... 5-100

AS-Übersicht.......................................... 5-31

ATAN................................................... 5-101

Aufruf-baum....................................................... 4-34

-hierarchie................................................. 4-45

Ausgangin FUP ...................................................... 5-17

Ausgangsaktion ..................................... 5-28

Ausloggen..................................... 4-42, 4-66

Ausschneiden ........................................ 4-37in FUP ...................................................... 5-19

AuswahloperatorenLIMIT........................................................ 5-88

MAX ......................................................... 5-88

MIN .......................................................... 5-89

MUX ......................................................... 5-89

SEL .......................................................... 5-90

Automatischdeklarieren..................................................4-8

formatieren .................................................4-9

laden ..........................................................4-7

sichern........................................................4-7

Automatisch deklarieren...........................5-5

AWL ...................................................... 5-11

B

Baustein...................................................3-1definition................................................. 5-135

BCD_TO_INT ...................................... 5-117

BCD-Konvertierung

BCD_TO_INT ......................................... 5-117

INT_TO_BCD_ ....................................... 5-117

Bearbeiten..............................................4-37Ausschneiden ........................................... 4-37

Einfügen ................................................... 4-38

Eingabehilfe.............................................. 4-39

Ersetzen ................................................... 4-39

Kopieren ................................................... 4-37

Löschen.................................................... 4-38

Nächster Fehler ........................................ 4-41

Rückgängig .............................................. 4-36

Suchen ..................................................... 4-39

Variablen Deklaration ................................ 4-41

Vorheriger Fehler ...................................... 4-41

Weitersuchen............................................ 4-39

Wiederherstellen ....................................... 4-36

Beispielprojekt........................................4-52Definieren von Variablen ........................... 4-55

Eingabehilfe F2......................................... 4-58

Einloggen ................................................. 4-63

Objekt einfügen......................................... 4-53

Operanden einfügen ................................. 4-59

PLC_PRG................................................. 4-53

Projekt starten........................................... 4-52

Simulation................................................. 4-63

Speichern ................................................. 4-74

Und hinzufügen......................................... 4-54

Variablendeklaration ................................. 4-60

Variablenwerte ändern .............................. 4-64

Visualisierung ........................................... 4-66

Visualisierung testen ................................. 4-72

Bibliothek ...............................................4-17Definition .................................................... 3-4

Standard.lib ............................................ 5-103

Util_ifm.Lib.............................................. 5-117

Bildschirmteiler........................................ 4-4

Binäre Auswahl ......................................5-90

Bindung von ST-Operatoren...................5-66

Bit-/Byte FunktionenEXTRACT............................................... 5-118

Bit-/Byte FunktionenPACK ..................................................... 5-118

Page 272: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Stichwortverzeichnis

164

PUTBIT...................................................5-118

UNPACK.................................................5-118

Bitstring OperatorenAND..........................................................5-83

NOT..........................................................5-84

OR............................................................5-85

XOR..........................................................5-85

BitweisesAND..........................................................5-83

NOT..........................................................5-84

OR............................................................5-85

XOR..........................................................5-85

Bitwerte ................................................. 4-10

BLINK.................................................. 5-125

Breakpoint .................... 4-42, 4-43, 5-9, 5-33Definition...................................................3-15

C

CAL ....................................................... 5-95

CASE-Anweisung .................................. 5-71

CHARCURVE...................................... 5-127

CONCAT ............................................. 5-112

CONSTANT........................................... 5-53

COS ...................................................... 5-99

CTD..................................................... 5-107

CTL ..................................................... 5-124

CTU..................................................... 5-107

CTUD .................................................. 5-107

D

Darstellung ............................................ 5-49

Datei/Neu’ .........................................................4-16

Beenden ...................................................4-20

Drucken ....................................................4-17

Einstellungen Dokumentation.....................4-18

Öffnen.......................................................4-16

Schließen..................................................4-16

Speichern unter’ ........................................4-16

Speichern’ .................................................4-16

Dateisicherung....................................... 4-14

Datentypen........................................3-4, 5-3

DCF-Datei ..............................................5-53

Debugging.......................................2-2, 4-13Definition...................................................3-15

Definieren von Variablen ........................4-55

Deklaration...............................................6-2

Deklarationen als Tabelle ..................4-9, 5-5

Deklarationseditor ....................................5-2AT-Deklaration ............................................5-3

Ausgabevariablen........................................5-2

Eingabevariablen.........................................5-2

Kommentar .................................................5-7

Kurzformmodus...........................................5-4

lokale Variablen...........................................5-2

Online-Modus..............................................5-7

Variablendeklaration....................................5-5

Deklarieren, automatisch...................4-8, 5-5

DELETE...............................................5-114

Dereferenzierung....................................5-94

DERIVATIVE........................................5-119

DIV.........................................................5-81

Division ..................................................5-81

Dokumentation .........................................2-2

Drag&Drop .............................................4-30

Drucken in der Hilfe................................4-49

E

ecolog .....................................................2-1

ecolog Grundlagen ...................................2-1

Editoren ...................................................5-1Ablaufsprachen-Editor ...............................5-26

Anweisungslisten-Editor ............................5-11

Deklarationseditor .......................................5-2

Funktionsplan-Editor..................................5-13

Graphische Editoren..................................5-12

Kontaktplan-Editor.....................................5-20

ST-Editor ..................................................5-12

Texteditoren ................................................5-8

Einfügemodus ..........................................4-5

Einfügen.................................................4-38in AS.........................................................5-27

Page 273: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Anhang

165

in FUP ...................................................... 5-19

in KOP...................................................... 5-24

Eingabehilfe.................................. 4-39, 4-58

Eingangin FUP ...................................................... 5-17

Eingangs-aktion ...................................................... 5-28

Einloggen...................................... 4-41, 4-63

Einstellungen Dokumentation................. 4-18

Einzelschritt .................................. 4-44, 5-33Definition .................................................. 3-15

Einzelzyklus........................................... 4-44

Element konfigurieren ............................ 4-67

EN-Eingang ........................................... 5-23

EQ......................................................... 5-91

Ergebnis ................................................ 4-59

Ersetzen ................................................ 4-27

EXIT-Anweisung .................................... 5-74

EXP ....................................................... 5-98

Export .................................................... 4-23datei ......................................................... 5-53

EXPT................................................... 5-102

Externe Bibliothek.................................. 4-17

EXTRACT............................................ 5-118

F

F_TRIG................................................ 5-106

Farb-veränderungen......................................... 4-68

-wechsel ................................................... 4-69

Farbe..................................................... 4-69

Fenster .................................................. 4-47Alle schließen ........................................... 4-47

Meldungen................................................ 4-47

Nebeneinander ......................................... 4-47

Symbole anordnen .................................... 4-47

Überlappend ............................................. 4-47

Untereinander ........................................... 4-47

FIND.................................................... 5-116

Flankenerkennung ............................... 5-106

Forcen.............................................5-7, 5-63

Formatieren, automatisch ........................ 4-9

FOR-Schleife..........................................5-72

Funktion ........................................3-2, 5-132in FUP...................................................... 5-17

Funktionen .............................................. 5-8

Funktions-block .................................................. 3-3, 5-9

-deklaration................................................. 3-3

-leiste ......................................................... 4-3

-plan ........................................................... 3-5

-plan-Editor............................................... 5-13

Funktionsblock .....................................5-136Deklaration ................................................. 3-3

in FUP...................................................... 5-17

Instanzen von ............................................. 3-3

Funktionsleiste .......................................4-11

FunktionsmanipulatorenCHARCURVE......................................... 5-127

RAMP_REAL.......................................... 5-129

RAMP-INT.............................................. 5-129

FunktionsplanNetzwerk .................................................... 3-5

FUP-EditorAusgang einfügen ..................................... 5-17

Ausschneiden ........................................... 5-19

Cursorpositionen....................................... 5-14

Einfügen ................................................... 5-19

Eingang einfügen ...................................... 5-17

Funktion einfügen ..................................... 5-17

Funktionsblock einfügen............................ 5-17

Kopieren ................................................... 5-19

Löschen.................................................... 5-19

Negation................................................... 5-18

Online-Modus ........................................... 5-20

Operator einfügen ..................................... 5-16

Reset Ausgang ......................................... 5-18

Return einfügen ........................................ 5-16

Set Ausgang............................................. 5-18

Sprung einfügen........................................ 5-15

Zoom........................................................ 5-19

Zuweisung einfügen .................................. 5-15

Page 274: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Stichwortverzeichnis

166

G

GE......................................................... 5-91

GEN .................................................... 5-125

Gleichheit .............................................. 5-91

Globale Konstanten ............................... 5-53

Globale VariablenDefinition...................................................5-53

editieren ....................................................5-52

Syntax.......................................................5-53

Variablenliste anlegen ...............................5-53

Glossar .................................................... 6-1

Graphische Editoren .............................. 5-12Netzwerk einfügen.....................................5-12

Netzwerkkommentar..................................5-12

Online-Modus............................................5-13

Sprungmarken...........................................5-12

Größer als.............................................. 5-92

Größer oder gleich ................................. 5-91

GT ......................................................... 5-92

H

Hauptfenster ............................................ 4-2

Hilfe....................................................... 4-48Inhalt und Index.........................................4-48

Kontextsensitiv ..........................................4-51

Hilfe-Hauptfenster .................................. 4-49

Hilfethemen-Fenster .............................. 4-48

I

IEC 61131-3 ............................................ 2-1

IEC61131-3 ............................................. 3-1

IEC-Schritt ............................................. 5-33

IF-Anweisung......................................... 5-70

Import .................................................... 4-24

Inhaltsoperator....................................... 5-94

INSERT ............................................... 5-113

Instanz öffnen ........................................ 4-33

Instanzname............................................ 3-3

INT_TO_BCD_ .................................... 5-117

INTEGRAL...........................................5-119

Interne Bibliothek ...................................4-17

K

Kennworte..............................................4-14

Kleiner als ..............................................5-93

Kleiner oder gleich..................................5-93

KnotenExpandieren..............................................4-31

Kollabieren................................................4-31

Kommentar ............................5-7, 5-12, 5-30

Kommunikationsparameter.....................4-46

Komprimieren.........................................5-59

Kontakt...................................................5-21

KontaktplanEN-Baustein................................................3-9

EN-Eingang ................................................3-9

Funktionsblock ............................................3-9

Kontakt .......................................................3-8

Negierung ...................................................3-9

Netzwerk.....................................................3-8

Parallele Kontakte .......................................3-8

Set/Reset-Spulen ........................................3-9

Spule ..........................................................3-9

Kontaktplan-Editor..................................5-20

Kontext-menü .........................................................4-5

-sensitive Hilfe...........................................4-51

KOP.......................................................5-20

KOP-EditorCursorpositionen .......................................5-21

Einfügen an Baustein ................................5-24

EN-Eingang ..............................................5-23

Funktion mit EN.........................................5-23

Funktionsblock ..........................................5-22

Funktionsblock mit EN...............................5-23

Kontakt einfügen .......................................5-21

Negation ...................................................5-25

Online-Modus............................................5-25

Operator mit EN ........................................5-23

Paralleler Kontakt ......................................5-22

Page 275: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Anhang

167

Reset Ausgang ......................................... 5-25

Return ...................................................... 5-24

Set Ausgang ............................................. 5-25

Sprung...................................................... 5-24

Spule........................................................ 5-22

Kopieren ................................................ 4-24in der Hilfe ................................................ 4-49

in FUP ...................................................... 5-19

L

Laden, automatisch..................................4-7

LE.......................................................... 5-93

LEFT ................................................... 5-111

LEN ..................................................... 5-110

Lesezeichen in der Hilfe......................... 4-49

LIMIT ..................................................... 5-88

LIMITALARM ....................................... 5-131

LN.......................................................... 5-97

LOG....................................................... 5-98

Löschen................................................. 4-38einer Aktion............................................... 5-29

einer Transition ......................................... 5-29

in FUP ...................................................... 5-19

LT .......................................................... 5-93

M

Markieren in AS ..................................... 5-26

Markierung............................................. 4-10

Mathematische HilfsfunktionenDERIVATIVE .......................................... 5-119

INTEGRAL ............................................. 5-119

STATISTICS_INT ................................... 5-120

STATISTICS_REAL ................................ 5-120

VARIANCE ............................................. 5-120

MAX....................................................... 5-88

Maximum............................................... 5-88

Mehrkanal.............................................. 5-58

Meldungen............................................. 4-47

Meldungsfenster ......................................4-4

Menü Bearbeiten

Ausschneiden .................................. 4-37, 5-19

Einfügen .......................................... 4-38, 5-19

Eingabehilfe.............................................. 4-39

Ersetzen ................................................... 4-39

Kopieren ................................................... 4-37

Löschen.................................................... 4-38

Nächster Fehler ........................................ 4-41

Rückgängig .............................................. 4-36

Suchen ..................................................... 4-39

Variablen Deklaration ................................ 4-41

Vorheriger Fehler ...................................... 4-41

Weitersuchen............................................ 4-39

Wiederherstellen ....................................... 4-36

Menü DateiBeenden ................................................... 4-20

Drucken.................................................... 4-17

Einstellungen Dokumentation .................... 4-18

Neu .......................................................... 4-16

Öffnen ...................................................... 4-16

Schließen ................................................. 4-16

Speichern ................................................. 4-16

Speichern unter ........................................ 4-16

Menü EinfügenAbgerundetes Rechteck ................... 5-35, 5-36

Alternativzweig (links) ............................... 5-27

Alternativzweig (rechts) ............................. 5-27

Ausgang ................................................... 5-17

Ausgangsaktion hinzufügen....................... 5-28

Bitmap............................................. 5-35, 5-37

Einfügen an Baustein ....................... 5-23, 5-24

Eingang.................................................... 5-17

Eingangsaktion hinzufügen........................ 5-28

Ellipse ............................................. 5-35, 5-36

Funktion ................................................... 5-17

Funktion mit EN ........................................ 5-23

Funktionsblock................................. 5-17, 5-22

Funktionsblock mit EN............................... 5-23

Kommentar............................................... 5-12

Kontakt ..................................................... 5-21

Kurve............................................... 5-35, 5-37

Linie ................................................ 5-35, 5-37

Neue Deklaration ........................................ 5-6

Neue Watchliste........................................ 5-61

Page 276: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Stichwortverzeichnis

168

Operator ...................................................5-16

Operator mit EN ........................................5-23

Paralleler Kontakt ......................................5-22

Parallelzweig (links)...................................5-27

Parallelzweig (rechts) ................................5-27

Polygon............................................5-35, 5-36

Rechteck..........................................5-35, 5-36

Return..............................................5-16, 5-24

Schritt-Transition (danach).........................5-27

Schritt-Transition (davor) ...........................5-27

Sprung.................................... 5-15, 5-24, 5-28

Spule ........................................................5-22

Transition-Sprung......................................5-28

Visualisierung...................................5-35, 5-37

Zuweisung ................................................5-15

Menü ExtrasAktion assoziieren .....................................5-32

Alles markieren..........................................5-48

AS-Übersicht.............................................5-31

Ausrichten .................................................5-47

Cursor ausgeben.......................................5-58

Dahinter Einfügen......................................5-24

Darüber Einfügen ......................................5-24

Darunter Einfügen .....................................5-24

Einfügen danach .......................................5-28

Einstellungen.............................................5-49

Elementliste ..............................................5-48

Hintergrund Bitmap auswählen ..................5-47

Hintergrund Bitmap löschen.......................5-47

IEC-Schritte benutzen................................5-33

Komprimieren............................................5-59

Konfigurieren.............................................5-39

Koordinatennetz ........................................5-58

Lösche Aktion/Transition............................5-29

Mehrkanal .................................................5-58

Monitoring aktiv .........................................5-62

Nach hinten legen......................................5-47

Nach vorn bringen .....................................5-47

Negation ..........................................5-18, 5-25

Optionen ..........................................5-12, 5-32

Parallelzweig einfügen (rechts) ..................5-28

Rezeptur lesen ..........................................5-62

Rezeptur schreiben ...................................5-62

Schritt Attribute..........................................5-29

Selektieren ................................................5-48

Set/Reset ......................................... 5-18, 5-25

Strecken ...................................................5-59

Trace

-konfiguration ........................................5-54Trace in ASCII-File....................................5-59

Trace laden...............................................5-59

Trace lesen ...............................................5-56

Trace speichern ........................................5-59

Trace starten.............................................5-56

Trace stoppen ...........................................5-56

Vorhergehende Version.............................4-36

Watchliste laden........................................5-61

Watchliste speichern .................................5-61

Watchliste Umbenennen............................5-61

Y-Skalierung .............................................5-58

Zeitenüberblick..........................................5-30

Zoom ........................................................5-19

Zoom Aktion/Transition..............................5-29

Menü FensterAlle schließen............................................4-47

Meldungen ................................................4-47

Nebeneinander..........................................4-47

Symbole anordnen ....................................4-47

Überlappend .............................................4-47

Untereinander ...........................................4-47

Menü HilfeInhalt und Index.........................................4-48

Menü OnlineAblaufkontrolle ..........................................4-46

Aufrufhierarchie.........................................4-45

Ausloggen.................................................4-42

Breakpoint........................................ 4-42, 4-43

Einloggen..................................................4-41

Einzelschritt in...........................................4-44

Einzelschritt über.......................................4-44

Einzelzyklus ..............................................4-44

Forcen aufheben .......................................4-45

Kommunikationsparameter ........................4-46

Laden .......................................................4-42

Simulation.................................................4-46

Start..........................................................4-42

Page 277: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Anhang

169

Stop.......................................................... 4-42

Werte schreiben........................................ 4-44

Menü ProjektAktion hinzufügen...................................... 4-33

Alles übersetzen........................................ 4-67

Aufrufbaum............................................... 4-34

dokumentieren .......................................... 4-18

Dokumentieren.......................................... 4-22

Exportieren ............................................... 4-23

Global Ersetzen ........................................ 4-27

Global Suchen .......................................... 4-26

Importieren ............................................... 4-24

Instanz öffnen ........................................... 4-33

Kopieren ................................................... 4-24

Objekt bearbeiten...................................... 4-33

Objekt einfügen......................................... 4-31

Objekt konvertieren ................................... 4-32

Objekt kopieren......................................... 4-32

Objekt löschen .......................................... 4-31

Objekt umbenennen .................................. 4-32

Optionen.....................................................4-6

Projektinformation ..................................... 4-25

Querverweisliste ausgeben........................ 4-34

übersetzen................................................ 4-21

Unbenutzte Variablen................................ 4-35

Vergleichen............................................... 4-24

Menüleiste ...............................................4-3

MID...................................................... 5-112

MIN........................................................ 5-89

Minimum................................................ 5-89

MOD...................................................... 5-81

Modifikatoren ......................................... 5-64

Modulo................................................... 5-81

Monitoring....................................... 5-9, 5-62Definition .................................................. 3-16

MOVE.................................................... 5-95

MUL....................................................... 5-82

Multiplexer ............................................. 5-89

Multiplikation .......................................... 5-82

MUX ...................................................... 5-89

N

Nächster Fehler......................................4-41

NE..........................................................5-94

Negationin FUP...................................................... 5-18

in KOP...................................................... 5-25

Netzwerk .......................................4-56, 5-12einfügen ................................................... 5-12

-kommentar .............................................. 5-12

Neuer Ordner .........................................4-31

neues Projekt .........................................4-52

neues Visualisierungsbild .......................4-66

NOT .......................................................5-84

Numerische Operatoren .........................5-96ABS.......................................................... 5-96

ACOS..................................................... 5-101

ASIN....................................................... 5-100

ATAN ..................................................... 5-101

COS......................................................... 5-99

EXP.......................................................... 5-98

EXPT...................................................... 5-102

LN ............................................................ 5-97

LOG ......................................................... 5-98

SIN........................................................... 5-99

SQRT....................................................... 5-97

TAN........................................................ 5-100

O

Object Organizer ..................................... 4-3

Objekt ....................................................4-30bearbeiten ................................................ 4-33

einfügen ................................................... 4-31

konvertieren.............................................. 4-32

löschen..................................................... 4-31

umbenennen............................................. 4-32

Online ...........................................4-63, 5-61Ablaufkontrolle.......................................... 4-46

Aufrufhierarchie ........................................ 4-45

Ausloggen ................................................ 4-42

Breakpoint an/aus ..................................... 4-42

Breakpoint-Dialog ..................................... 4-43

Page 278: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Stichwortverzeichnis

170

Change .....................................................4-13

Einloggen..................................................4-41

Einzelschritt in...........................................4-44

Einzelschritt über.......................................4-44

Einzelzyklus ..............................................4-44

Forcen aufheben .......................................4-45

Kommunikationsparameter ........................4-46

Laden........................................................4-42

Modus................................................4-5, 5-13

Simulation ........................................4-46, 4-63

Start..........................................................4-42

Start (Simulation).......................................4-63

Stop..........................................................4-42

Werte schreiben ........................................4-44

Online ModusAblaufspracheneditor.................................5-33

Funktionsplaneditor ...................................5-20

Kontaktplaneditor ......................................5-25

Watch- und Rezepturverwalter ...................5-61

Onlinebetrieb im Sicherheitsmodus ........ 4-11

Online-Modus ................................... 5-7, 5-9

Operand .................................................. 5-8

Operanden............................................. 4-59

Operator in FUP..................................... 5-16

Operatoren ..................................... 5-8, 5-64Arithmetische Operatoren ..........................5-80

Auswahloperatoren....................................5-88

Bitstring Operatoren ..................................5-83

Vergleichsoperatoren.................................5-92

OptionenArbeitsbereich ...........................................4-11

Benutzerinformation ....................................4-7

Editor ..........................................................4-8

Farben ......................................................4-12

Kennworte.................................................4-14

Laden & Speichern......................................4-6

Symbolkonfiguration ..................................4-15

Übersetzungsoptionen ...............................4-13

Verzeichnisse............................................4-13

OR......................................................... 5-85

Ordner ................................................... 4-30

Orientierungshilfen

Fußzeilen ....................................................1-2

Kopfzeilen ...................................................1-2

Piktogramme...............................................1-2

P

P 5-121, 5-122, 5-123

PACK...................................................5-118

Parallele Kontakte ..................................5-22

Parallelzweig in AS.................................5-27

Passwort ................................................4-14

PLC_PRG ..............................................4-53Definition.....................................................3-1

Programm .....................................3-2, 5-134

Programmiersystem verlassen................4-75

Projekt .....................................................2-1Aktion hinzufügen......................................4-33

Aufrufbaum ausgeben ...............................4-34

-bestandteile ...............................................3-1

Dokumentieren..........................................4-22

Exportieren ...............................................4-23

Global ersetzen .........................................4-27

Importieren................................................4-24

-information........................................4-7, 4-25

Instanz öffnen ...........................................4-33

Kopieren ...................................................4-24

Objekt bearbeiten ......................................4-33

Objekt einfügen .........................................4-31

Objekt konvertieren ...................................4-32

Objekt löschen ..........................................4-31

Objekt umbenennen ..................................4-32

öffnen .......................................................4-16

Querverweisliste ausgeben........................4-34

speichern ..................................................4-73

Übersetzen................................................4-21

Unbenutzte Variablen ................................4-35

-vergleich ..................................................4-24

Vergleichen ...............................................4-24

Projekt Global suchen ............................4-26

PUTBIT ................................................5-118

Page 279: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Anhang

171

Q

Qualifier ................................................. 5-77

Querverweisliste .................................... 4-34

R

R_TRIG ............................................... 5-106

Rahmen................................................. 5-49

RAMP_INT .......................................... 5-129

RAMP_REAL....................................... 5-129

Raster.................................................... 5-49

Rechteck................................................ 4-67

ReglerCTL ........................................................ 5-124

P 5-121, 5-122, 5-123

REPEAT-Schleife................................... 5-74

REPLACE............................................ 5-115

Reset ................................................... 5-105

Reset Ausgang ............................. 5-18, 5-25

Ressourcen............................................ 5-52Definition ....................................................3-4

Globale Variablen...................................... 5-52

Traceaufzeichnung.................................... 5-53

Watch- und Rezepturverwalter................... 5-60

Rest ....................................................... 5-81

RETURN-Anweisung.............................. 5-70

Rezepturlesen......................................................... 5-62

schreiben......................................... 5-61, 5-62

-verwalter.................................................. 5-60

RIGHT ................................................. 5-111

ROL....................................................... 5-86

ROR ...................................................... 5-86

Rotation ................................................. 5-86

RS ....................................................... 5-105

RTC..................................................... 5-110

Rückgängig............................................ 4-36

S

Schlüsselwörter........................................5-1

Schreibschutz-Kennwort.........................4-14

Schriftart ................................................. 4-9

Schritt.....................................................5-26Attribute.................................................... 5-29

Init ............................................................ 5-76

SEL........................................................5-90

Selektion ................................................5-90

SEMA...................................................5-105

Set .......................................................5-105

Set Ausgang..................................5-18, 5-25

Shift .......................................................5-87

SHL........................................................5-87

SHR .......................................................5-87

Sicherheitskopie...................................... 4-7

Sichernautomatisch ................................................ 4-7

vor Übersetzen.......................................... 4-14

SignalgeneratorenBLINK..................................................... 5-125

GEN ....................................................... 5-125

Simulation .....................................4-46, 4-63Definition .................................................. 3-16

Simulationsmodus ................................... 2-2

SIN.........................................................5-99

SIZEOF..................................................5-82

Sprache..................................................5-50

SprachenAblaufsprache (AS) .......................... 3-13, 5-75

Anweisungsliste (AWL) .................... 3-10, 5-63

Funktionsplan (FUP) ................................... 3-5

Kontaktplan (KOP) ...................................... 3-7

Strukturierter Text (ST)..................... 3-12, 5-66

Sprung in AS .................................5-26, 5-28

Sprungmarken........................................5-12

Spule......................................................5-22

SQRT.....................................................5-97

SR........................................................5-105

st8051.lib..............................................5-103

standard.lib ..........................................5-103

Standardbausteine .................................. 3-2

Page 280: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Stichwortverzeichnis

172

Standardfunktion.................................. 5-103

Start....................................................... 4-63

STATISTICS_INT ................................ 5-120

STATISTICS_REAL............................. 5-120

Statistik.................................................. 4-26

Statusleiste..................................... 4-5, 4-11

Statuszeile............................................. 4-63

Steppen ................................................. 5-33

Stichwort-Fenster................................... 4-51

Strecken ................................................ 5-59

Struktur................................................ 5-141

Strukturierter TextAnweisung .......................................5-67, 5-68

Aufruf von Funktionsblöcken ......................5-69

Ausdruck...................................................5-66

Bindungsstärke .........................................5-66

CASE-Anweisung......................................5-71

EXIT .........................................................5-74

FOR-Schleife....................................5-68, 5-72

IF-Anweisung ............................................5-70

Operand....................................................5-66

Operator ...................................................5-66

REPEAT ...................................................5-68

REPEAT-Schleife......................................5-74

RETURN...................................................5-70

Schleife............................................3-12, 5-66

WHILE-Schleife................................5-68, 5-73

SUB....................................................... 5-83

Subtraktion ............................................ 5-83

Symbolkonfiguration .............................. 4-15

T

Tabulatorbreite......................................... 4-9

TAN..................................................... 5-100

Tastaturbefehle...................................... 4-75

Texteditoren............................................. 5-8Breakpoint setzen......................................5-10

Breakpoints.................................................5-9

Funktion......................................................5-8

Funktionsblock ............................................5-9

Monitoring ...................................................5-9

Online-Modus..............................................5-9

Operand......................................................5-8

Operatoren..................................................5-8

Zeilennummer ...........................................5-11

Timer ...................................................5-108

TOF .....................................................5-108

TON.....................................................5-108

Tooltip...............................4-3, 4-30, 5-7, 5-9

TP........................................................5-109

Traceautomatisch lesen .....................................5-56

-buffer .......................................................5-55

in ASCII-File..............................................5-59

-konfiguration laden ...................................5-55

-konfiguration speichern ............................5-55

laden.........................................................5-59

lesen.........................................................5-55

speichern ..................................................5-59

starten ......................................................5-56

stoppen.....................................................5-56

-variable....................................................5-57

-variablen eingeben ...................................5-54

Trace lesen ............................................5-56

TraceaufzeichnungCursor ausgeben.......................................5-58

Definition...................................................3-15

Komprimieren............................................5-59

Koordinatennetz ........................................5-58

Mehrkanal .................................................5-58

Speicherkapazität ......................................5-54

starten ......................................................5-54

strecken ....................................................5-59

Trace automatisch lesen............................5-56

Trace in ASCII-File....................................5-59

Trace laden...............................................5-59

Trace lesen ...............................................5-56

Trace speichern ........................................5-59

Trace starten.............................................5-56

Trace stoppen ...........................................5-56

Tracebuffer ...............................................5-57

Tracekonfiguration.....................................5-54

Tracekonfiguration laden ...........................5-55

Page 281: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Anhang

173

Tracekonfiguration speichern..................... 5-55

Tracevariablen wählen .............................. 5-57

Variablen einfügen .................................... 5-55

Y-Skalierung ............................................. 5-58

Tracebuffer ............................................ 5-57

Transition............................................... 5-26

Trigger .......................................... 3-15, 5-55Flanke ...................................................... 5-55

Level......................................................... 5-55

Position .................................................... 5-55

Typenkonvertierungen ......................... 5-104

Ü

Überschreibmodus...................................4-5

Übersetzungsfehler.............................. 5-142

Übersetzungsoptionen ........................... 4-13

Unbenutzte Variablen............................. 4-35

Ungleichheit ........................................... 5-94

UNPACK.............................................. 5-118

Util_ifm.Lib........................................... 5-117

V

VAR.........................................................5-5

VAR_GLOBAL ................................ 5-5, 5-53

VAR_IN_OUT ..........................................5-5

VAR_INPUT ............................................5-5

VAR_OUTPUT.........................................5-5

Variablendefinition................................................. 5-135

globale.................................................... 5-137

interne ......................................... 5-134, 5-137

Variablen Deklaration............................. 4-41

VARIANCE .......................................... 5-120

VergleichsoperatorenEQ............................................................ 5-91

GE............................................................ 5-91

GT............................................................ 5-92

LE ............................................................ 5-93

LT............................................................. 5-93

NE............................................................ 5-94

Verzeichnisse.........................................4-13

Visualisierung................................4-66, 5-35Abgerundetes Rechteck ............................ 5-36

Bitmap...................................................... 5-37

Definition .................................................... 3-4

Einfügemodus........................................... 5-38

erstellen.................................................... 5-35

Formen..................................................... 5-35

Kreis,Ellipse.............................................. 5-36

Kurve........................................................ 5-37

Linienzug .................................................. 5-37

Polygon .................................................... 5-36

Rechteck .................................................. 5-36

Selektionsmodus ...................................... 5-38

Statusleiste............................................... 5-39

Visualisierung ........................................... 5-37

Visualisierungselemente einfügen.............. 5-35

VisualisierungselementeAlles markieren ......................................... 5-48

ändern...................................................... 5-38

Ausrichten ................................................ 5-47

einfügen ................................................... 5-35

Einstellungen ............................................ 5-49

Elementliste.............................................. 5-48

Hintergrund Bitmap auswählen .................. 5-47

Hintergrund Bitmap löschen ...................... 5-47

konfigurieren............................................. 5-39

kopieren ................................................... 5-38

Nach hinten legen ..................................... 5-47

Nach vorn bringen..................................... 5-47

Selektieren....................................... 5-37, 5-48

verändern ................................................. 5-38

verschieben .............................................. 5-38

Visualisierungselemente konfigurierenBewegung absolut .................................... 5-42

Bewegung relativ ...................................... 5-43

Bitmap...................................................... 5-45

Eingabe.................................................... 5-44

Farben...................................................... 5-41

Form ........................................................ 5-40

Text .......................................................... 5-40

Text für Tooltip.......................................... 5-45

Variablen .................................................. 5-43

Page 282: Handbuch zur Programmentwicklung - ifm...Programmierung hilfreich sind, wie z. B. die Editoren, die Operatoren oder wie Sie mit ecolog Ihre Steuerung visualisieren können. Bibliotheken

Stichwortverzeichnis

174

Vorhergehende Version ......................... 4-36

Vorheriger Fehler................................... 4-41

Vorkenntnisse .......................................... 1-1

W

Watch- und Rezepturverwalter ............... 5-60Monitoring aktiv .........................................5-62

Neue Watchliste ...............................5-60, 5-61

Offline-Modus...................................5-60, 5-62

Online .......................................................5-61

Rezeptur lesen ..........................................5-62

Rezeptur schreiben ..........................5-61, 5-62

Watchliste laden ........................................5-61

Watchliste speichern .................................5-61

Watchliste umbenennen.............................5-61

Werte forcen .............................................5-63

Werte schreiben ........................................5-63

Watch Variable ............................... 5-7, 5-20

Watchliste.............................................. 5-60laden.........................................................5-61

Werte schreiben..................................... 4-65

WHILE-Schleife......................................5-73

Wiederherstellen ....................................4-36

X

XOR.......................................................5-85

Y

Y-Skalierung ..........................................5-58

Z

Zeilennummer des Texteditors ...............5-11

Zeiten...................................................5-108

Zeitüberwachung im AS-Editor ...............5-30

Zoom .....................................................5-19Aktion .......................................................5-29

Transition..................................................5-29

Zuweisungs-kämme.....................................................5-17

-operator ...................................................5-69

Zwischenablage .....................................4-37