Herunterladen Inhalt Inhalt Diese Seite drucken
Inhaltsverzeichnis

Werbung

Verfügbare Sprachen

Verfügbare Sprachen

Starterset-Handbuch
R
Controller-Familie R 360
für CoDeSys ab Version 2.3

Werbung

Kapitel

Inhaltsverzeichnis
loading

Inhaltszusammenfassung für IFM Electronic ecomot mobile R 360 Serie

  • Seite 1 Starterset-Handbuch Controller-Familie R 360 für CoDeSys ab Version 2.3...
  • Seite 2 weitere Informationen finden Sie bei www.ifm-electronic.com Starterset-Handbuch CoDeSys 2.3 Stand 12/2006, ab Softwarestand V020102 Hinweis zur Gewährleistung Dieses Handbuch wurde unter Beachtung der größtmöglichen Sorgfalt erstellt. Gleichwohl kann keine 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 Hin- weise jederzeit dankbar.
  • Seite 3: Inhaltsverzeichnis

    Was in dieser Anleitung steht 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. Übersicht zur Dokumentation ..............1-2 1.4. Hardware ....................1-3 1.5. Eigenschaften einer SPS................ 1-5 Zyklus .......................
  • Seite 4 Programm einfügen .................. 3-5 Definieren von Variablen ................3-6 Speichern ....................3-13 Andere Sprachen ..................3-14 Programmtest ..................3-15 Visualisierung..................3-19 1.3. Online-Test .................... 3-31 Vorbereitung.................... 3-31 Betriebssystem ..................3-32 Programmtest online ................3-37 Trace Aufzeichnung ................3-45 Dokumentation ..................3-51 Übungsaufgaben ..............
  • Seite 5 Editierfunktionen für FUP................5-4 Funktionen für die Traceaufzeichnung............5-4 Funktionen für die Visualisierung .............. 5-5 5.2. Kurzanleitung..................5-7 Neues Projekt ................... 5-7 Bibliotheken und Hardwarekonfiguration ..........5-8 5.3. Arbeit sparen ..................5-10 'Speichern unter...' .................. 5-10 'Projekt' 'Kopieren'................... 5-10 'Projekt exportieren...', 'Projekt importieren...' ..........5-11 Bibliothek ....................
  • Seite 7: Was Sie Wissen Sollten

    Was Sie wissen sollten In diesem Kapitel wird Ihnen ein Überblick über folgende Punkte gegeben: • Welche Vorkenntnisse sind notwendig, um mit dieser Anleitung arbeiten zu können? • Wie ist diese Anleitung aufgebaut? • Wie finden Sie sich in der Anleitung zurecht? •...
  • Seite 8: Übersicht Zur Dokumentation

    Übersicht zur Dokumentation Mit dem Stichwortverzeichnis am Ende des Handbuchs gelangen Sie ebenfalls schnell zu einem gesuchten Begriff. Am Anfang eines Kapitels geben wir Ihnen eine kurze Übersicht über den Inhalt des Kapitels. Kopfzeilen In der Kopfzeile jeder rechten Seite finden Sie den Titel des aktuellen Kapitels. Auf jeder linken Seite steht die aktuelle Überschrift der 2.
  • Seite 9: Hardware

    Was Sie wissen sollten Elektronische Medien Online-Hilfe Für manche Geräte ersetzt die Online-Hilfe be- reits das Systemhandbuch. Mehr und mehr Anwender wissen es zu schät- zen, wenn man auf die erforderlichen Informati- onen direkt dann zugreifen kann, wenn sie be- nötigt werden.
  • Seite 10 Hardware sie muss der Hardware angepasst werden Der Vorgang wird unten kurz be- • schrieben. Weitere Informationen stehen im Programmier- bzw. im System- handbuch. eventuell muss in Beispielprogrammen z. B. die Adresse von Ein- oder Aus- • gängen geändert werden. Es wäre viel zu umständlich, für jeden Typ eine Einführung in die Software zu verfassen.
  • Seite 11: Eigenschaften Einer Sps

    Was Sie wissen sollten 1.5. Eigenschaften einer SPS Zyklus Die Vorteile einer SPS gegenüber der konventionellen Schützsteuerung, auch "Klappertechnik" genannt, brauchen heute kaum noch herausgestellt zu wer- den. Inzwischen gibt es auch Steuerungen, die mechanische und elektrische Eigenschaften haben, die für einen mobilen Einsatz Voraussetzung sind, z, B. Schutzart IP 67, hohe mechanische Festigkeit und elektrische Störfestigkeit.
  • Seite 12: Priorität

    Eigenschaften einer SPS Der Wahlschalter steht auf 0, daher wird der Ausgang "nach links fahren" geschaltet. In diesem Moment legt jemand den Wahlschalter um. Würde jetzt der Zustand des Eingangs erneut abgefragt, dann wäre die Bedingung für den nächsten Programmschritt ebenfalls erfüllt: der Ausgang "nach rechts fahren" würde ebenfalls geschaltet mit womöglich spektakulärem Ergebnis.
  • Seite 13: Zeitverhalten

    Was Sie wissen sollten Zeitverhalten nur zeitkritische Wenn das Zeitverhalten unkritisch ist, wenn es nicht auf die ms ankommt, dann Vorgänge brauchen die Ausführungen zum Zeitverhalten nicht beachtet zu werden. Zykluszeit Die Zeit, die die Steuerung für einen Programmzyklus benötigt, wird Zykluszeit genannt.
  • Seite 14 Eigenschaften einer SPS Signal eine Länge von 9,5 ms und das TRUE-Signal eine von lediglich 0,5 ms, dann können die Impulse auch nicht sauber verarbeitet werden. Um sicher zu gehen, muss also verlangt werden, dass sowohl das FALSE- als auch das TRUE-Signal, jedes für sich, länger ist als die Zykluszeit.
  • Seite 15: Watchdog

    Was Sie wissen sollten Watchdog Eine SPS überwacht sich selbst daraufhin, ob der Zyklus korrekt abgearbeitet wird. Der Fall, dass ein Programmzyklus nicht beendet wird, ist gefährlich. Es werden dann keine Eingänge abgelesen. Eine Änderung des Zustands an ei- nem Eingang, z. B. "Endschalter erreicht" kann nicht verarbeitet werden. Der Zustand des Ausgangs kann sich auch nicht ändern, z.
  • Seite 17: Installation

    Installation 2.1. Hardware des Rechners PC mit Pentium Prozessor Minimum MS Windows © XP 128 MB RAM Festplatte mit 100 MB frei Maus und zusätzliche serielle Schnittstelle Es wird empfohlen, eine möglichst aktuelle Ausstattung an Software (Betriebs- system) und Hardware, z. B. Ethernet-Schnittstelle, zu verwenden. 2.2.
  • Seite 18 Software-Setup Hier soll es um CoDeSys 2.3 gehen. Das ist die Software zur Programmierung der aktuellen Hardware. Daher wurden die folgenden Programmbeispiele mit dieser Version erzeugt. Abbildung 5: Version Welche Version Sie verwenden, hängt u. a. von Ihrer Hardwareversion, von der Version deren Betriebssysteme usw.
  • Seite 19 Installation Auf der Festplatte befinden sich dann folgende Verzeichnisse: C:\Programme\ifm electronic\CoDeSys V2.3 Programmdatei CoDeSys Darunter liegen die Verzeichnisse: Compile Temporäre Hilfsdateien Documents Gerätespezifische Informationen Help Hilfedateien Library allgemeine Bibliotheken von 3S darunter: PLCConf gerätespezifische Dateien Für CAN-Anwender: hier befinden sich die EDS-Dateien. Falls weitere Geräte über CAN vernetzt werden sollen, müssen deren EDS-Dateien in das Ver-...
  • Seite 20 Software-Setup Falls mit unterschiedlichen Versionen gearbeitet wird, erkennbar an der Versi- onsnummer, z. B. V040001, dann ist darauf zu achten, dass die Versionen der Konfigurationsdateien und des Betriebssystems übereinstimmen! Diese Struktur erscheint vielleicht verwirrend. Im allgemeinen hat man wenig damit zu tun und braucht sich daher auch nicht darum zu kümmern Diese Struktur wird von CoDeSys bei der Installation angelegt.
  • Seite 21: Programmstart

    Installation Das ist ein wichtiges Tool. Auch hier kann nicht jedes Detail besprochen wer- den. Normalerweise wird nur die auf Seite 3-33 ff beschriebene Funktion benö- tigt. Wenn häufiger programmiert wird, dann lohnt es sich ausführlich mit die- sem Tool zu beschäftigen ( z.
  • Seite 22 Programmstart Fehlermeldung Falls eine oder mehrere Fehlermeldungen erscheinen, kann das z. B. daran liegen, dass beim Setup andere Pfade gewählt wurden. Sie können vorläufig ignoriert werden. Weiter unten wird beschrieben, welche Anpassungen dann noch vorgenommen werden müssen. Das Beispielprogramm hat z. B. folgendes Aussehen: Abbildung 8: Beispielprogramm Damit werden wir uns jetzt nicht weiter beschäftigen.
  • Seite 23: Einstellungen

    Installation Abbildung 9: Projekt Optionen 1 2.4. Einstellungen Neues Projekt Bevor im Normalfall mit der Programmierung der Steuerung begonnen werden kann, müssen noch weitere Einstellungen vorgenommen werden. Das muss für eine Konfiguration nur einmal am Anfang vorgenommen werden, vgl. Seite 2- Im Starter-Set wurden schon alle notwendigen Einstellungen vorgenommen.
  • Seite 24: Target Nachinstallieren

    Was ist zu tun, wenn die Artikelnummer nicht im Auswahlfenster erscheint? Das wird nur bei neuer Hardware vorkommen. Dann wird die entsprechende Datei von der ifm electronic angefordert oder aus dem Internet geladen und nachinstalliert. Target nachinstallieren Weil das gelegentlich vorkommen kann, wird der Ablauf kurz beschrieben.
  • Seite 25 Installation Abbildung 12: Startfenster InstallTarget Durch Klick auf den Button 'Öffnen...' öffnet sich das übliche Auswahlfenster für Dateien. Im Prinzip kann eine Vielzahl von Steuerungssystemen mit CoDeSys program- miert werden. Es ist aber nicht gesagt, dass jedes Target ohne weiteres, so wie beschrieben, hier installiert werden kann.
  • Seite 26: Hauptprogramm

    Einstellungen auf 'Öffnen' geklickt. Zunächst ist noch kein großer Unterschied zu erkennen. Es steht nur im linken Fester ein neuer Eintrag. Ein Klick auf das '+' neben 'ifm' zeigt die Struktur im Detail: Abbildung 14: InstallTarget mit Systemen In der Abbildung 14 ist zu erkennen, dass im rechten Fenster zwar schon ein CR0020...
  • Seite 27: Verzeichnisse

    Abbildung 16: Verzeichnisse einstellen Durch die Auswahl des Zielsystems (Target) sind schon einige Einträge erfolgt. C:\Programme\ifm electronic\CoDeSys V2.3\Library\ usw. Es fehlt aber noch ein ganz wichtiger Eintrag. Es muss zusätzlich angegeben werden, wo sich die Konfigurationsdateien des Projekts befinden. Dieser Ein- trag wird nicht automatisch vorgenommen, um das Arbeiten mit unterschiedli- chen Versionsnummern zu ermöglichen.
  • Seite 28 Hardwaretypen gearbeitet wird, dann ist der Eintrag entsprechend an- zupassen. Beispiel: CR0025 C:\ programme\ifm electronic\CoDeSys V2.3\targets\ifm\ifm_cr0020cfg\VXXXXXX XXXXXX bedeutet: Die Versionsnummer kann unterschiedlich sein. Im Starter-Set wurden schon Einstellungen vorgenommen, die normalerweise nicht festgelegt sind. Das macht es einfach, sofort mit dem Gerät zu arbeiten.
  • Seite 29: Bibliotheken

    Installation Bibliotheken Vordefinierte Bei einer zeitgemäßen Programmiersoftware nach der IEC 61131-3 können Funktionen selbst erstellte Programmbausteine verwaltet werden. Sie müssen nur einmal erstellt werden und können dann beliebig oft wiederverwendet werden. Die Verwaltung wird in CoDeSys über Bibliotheken realisiert. Außerdem sind schon eine Reihe von Standardfunktionen und hardwarespezifischer Funktionen vor- definiert.
  • Seite 30 Einstellungen Abbildung 19: Bibliotheksverwalter mit standard.lib Ein Blick auf den Bibliotheksverwalter zeigt, um welche Bausteine es sich han- delt. Damit erklärt sich auch der Name der Bibliothek. Hilfe Wenn man im Laufe der Programmerstellung nicht sicher ist, welcher Baustein benötigt wird oder welche Bedeutung die Ein- und Ausgänge haben, dann hat man die Möglichkeit, die Hilfe über 'Hilfe' in der Funktionsleiste aufzurufen.
  • Seite 31 Installation Abbildung 21: Bibliotheksauswahl Es gibt gerätespezifische Bibliotheken, die, zusammen mit anderen Konfigurati- onsdateien, im entsprechenden Unterverzeichnis, z. B. ifm_CR0020, liegen. Daneben gibt es meist geräteunabhängige Bibliotheken, die z. B. für den Be- trieb von CAN-Netzwerken benötigt werden. Library Die Verzeichnisstruktur ist dabei zu beachten! Es gibt auch direkt unter CoDeSys V2.3 ein Verzeich- nis 'Library'.
  • Seite 32: Steuerungskonfiguration

    Einstellungen Wir sind noch nicht fertig! Zur Programmierung werden nicht nur die Biblio- theksdateien benötigt, sondern z. B. auch das Betriebssystem oder vordefi- nierte Systemvariablen. Es genügt also nicht, nur Bibliotheken in den Verwalter einzufügen. Zusätzlich müssen die Einstellungen bei der Steuerungskonfigura- tion überprüft und ggf.
  • Seite 33 Installation Abbildung 24: Steuerungskonfiguration leer Wenn die Steuerungskonfiguration gleich bei der Zielsystemeinstellung geladen worden wäre, dann wäre es schwierig, mit unterschiedlichen Versionen zu ar- beiten. Daher wird auch die Hardwarekonfiguration "manuell" eingetragen. Damit der nächste Schritt zum Erfolg führt, ist es unbedingt notwendig, dass in der Option 'Verzeichnisse' der Pfad zu den Konfigurationsdateien eingetragen wurde, Abbildung 18.
  • Seite 34 Einstellungen Abbildung 27: Steuerungskonfiguration Wird nun noch auf das '+' neben CR0020 geklickt und anschließend zwei Mal auf die '+' neben 'Input/Outputs', dann ist zu sehen, wie genau hier in der Steuerungskonfiguration die Hardware abgebildet ist. Abbildung 28: Steuerungskonfiguration geöffnet Variable lassen sich ganz einfach (als global) deklarieren.
  • Seite 35 Installation hängen dazu ein Unterelement an. Klicken Sie mit der rechten Maustaste auf die Konfiguration ( Abbildung 27). Bei 'Unterlement anhängen' wählen sie CANopen Master. Damit wird die spätere Arbeit mit CAN werleichtert. Jetzt braucht dieser Eintrag nicht weiter beachtet zu werden. Abbildung 30: Unterelement anhängen Abbildung 31: Unterelement angehängt fertig!
  • Seite 37: Der Einstieg

    Der Einstieg Dieses Kapitel ist gedacht als "Schnupperkurs für CoDeSys". Sie werden die Arbeitsweise und die Bedienung des Programms kennen lernen, also in fast jede Funktionalität von CoDeSys einmal hineinschnuppern. Wichtigster Bestandteil dieses Schnupperkurses ist die komplette Erstellung ei- nes Beispielprogramms direkt auf Ihrem PC. 3.1.
  • Seite 38 Grundbegriffe und Konzepte Wie wird ein Die Definition eines Projektes umfasst: Projekt defi- ● Die Hardwarekonfiguration niert? - Ein-/Ausgangsfestlegungen ● Die Erstellung der Komponenten - Bausteine - Strukturen - Visualisierungen Wie teste ich Der wahre Test eines Projektes ist sicherlich die Inbetriebnahme der eigentli- mein Projekt? chen Anlage.
  • Seite 39: Ein Kurzes Codesys Projekt Zum Einstieg

    Der Einstieg 3.2. Ein kurzes CoDeSys Projekt zum Einstieg Beschreibung In diesem Abschnitt schreiben wir ein kurzes Projekt, das die grundlegenden Schritte in CoDeSys darstellen soll. Die Abläufe werden mehr oder weniger im "Kochbuch-Stil" dargestellt. Aufgabenstel- Eine Lampe C soll dann EIN sein, wenn zwei Schalter A und B geschlossen lung sind.
  • Seite 40 Ein kurzes CoDeSys Projekt zum Einstieg Zielsystem und Normalerweise wird das Einfügen eines neuen Objekts über das Menü veran- PLC_PRG lasst. Der Haupt-Programmbausteins PLC_PRG spielt eine besondere Rolle. Bei einem neuen Projekt sollte nach dem Parametrieren des Zielsystems als nächster Schritt immer der PLC_PRG eingefügt werden. Deshalb öffnen sich beim Start eines neuen Projekts automatisch die Fenster 'Zielsystem Einstel- lungen' und danach 'Neuer Baustein' mit der Voreinstellung PLC_PRG.
  • Seite 41: Programm Einfügen

    Der Einstieg Wir haben damit den Baustein PLC_PRG in das Projekt eingefügt. PLC_PRG wird zyklisch ausgeführt und aktiviert dann diejenigen Bausteine (Programme, Funktionen oder Funktionsblöcke; mehr darüber unten), die dort aufgerufen werden. Bitte beachten Sie die folgenden sehr wichtigen Zusammenhänge: Alle Projekte müssen ein und nur ein PLC_PRG haben.
  • Seite 42: Definieren Von Variablen

    Ein kurzes CoDeSys Projekt zum Einstieg Abbildung 36: Fenster Baustein Und Definieren von Variablen Das Festlegen der Eigenschaften einer Variablen, also ihre Definition, wird beim Programmieren als Deklaration bezeichnet. Die Variablen-Darstellung kann in einer Tabellenform oder in der Textform erfolgen. Wir beschreiben im Folgen- den die Textform Die Auswahl Deklarationen als Text ('Deklarationen als Ta- bellen' inaktiv) ist die Defaulteinstellung.
  • Seite 43 Der Einstieg Semikolon Abschluss der Zeile nicht vergessen! Abbildung 38: Deklaration eingegeben Es gibt dazu eine alternative Möglichkeit zur Deklaration, die gleich gezeigt wird (Abbildung 48). AND-Operation einfügen Netzwerk 0001 mit gepunktetem Cursor Abbildung 39: Baustein einfügen Klicken Sie bitte mit der Maus auf das erste Netzwerk (graues Feld mit Nummer 0001 im unteren Teil des Fensters), wie in Abbildung 41.
  • Seite 44 Ein kurzes CoDeSys Projekt zum Einstieg Wenn derartige farbig unterlegte Felder erscheinen, denken Sie an F2! Abbildung 41: Eingefügter Operator An dieser Stelle möchten wir auf eine Möglichkeit hinweisen, die Ihnen hilft ef- : die fektiver zu programmieren und gleichzeitig Tippfehler zu vermeiden: die Schlüsseltaste Schlüsseltaste <F2>.
  • Seite 45 Der Einstieg Operanden Fügen Sie die Operanden A und B als Eingänge des AND Operators durch Ersetzen von ??? ein, Abbildung 43. Dazu lässt sich auch <F2> verwen- den, Abbildung 44. Abbildung 43: Unterlegtes Eingabefeld Abbildung 44: Eingabehilfe für Variablen Abbildung 45 zeigt das Ergebnis.
  • Seite 46 Ein kurzes CoDeSys Projekt zum Einstieg Durch einen Klick auf die rechte Seite außerhalb des AND Operator-Symbols muss zuerst ein Cursor (gepunktetes Rechteck) erzeugt werden wie in Abbildung 45. Hier ist der Editor wenig flexibel. Es geschieht immer wieder, dass man ein Ele- Position des Cursors ment einfügen möchte, was aber der Editor verweigert.
  • Seite 47 Der Einstieg Nach Eingabe des Kommentars kann mit bestätigt werden. Die Vari- ablendeklaration wird nun im oberen Teil unseres Bausteinfensters eingetragen. Abbildung 49: Deklarierte Variablen A und B hätten oben natürlich auch auf die gleiche, einfache und bequeme Weise deklariert werden können. Hier sollten nur einmal die verschiedenen Auswahlmöglichkeiten bei der Deklaration gezeigt werden.
  • Seite 48 Ein kurzes CoDeSys Projekt zum Einstieg lokal Bei den Feldern Klasse und Typ wurden einfach die Vorgaben übernommen. Es soll hier nur kurz darauf hingewiesen werden, dass die Variablen im Beispiel lokal deklariert wurden. Das bedeutet, die Deklaration gilt nur in dem Baustein, in dem sie steht, hier im Programm Und.
  • Seite 49: Speichern

    Der Einstieg Abbildung 52: Eingefügter Baustein Und das alles Natürlich kann eine AND Operation auch direkt in PLC_PRG eingefügt werden. nur für ein Wir haben den Weg über den Unterprogramm-Aufruf in PLC_PRG aus einem AND? wichtigen Grund gewählt. Wir wollten damit hervorheben, dass alle Bausteine (in diesem Fall der Baustein Und), die von PLC_PRG direkt aktiviert werden sollen, auch dort eingetragen sein müssen.
  • Seite 50: Andere Sprachen

    Ein kurzes CoDeSys Projekt zum Einstieg Abbildung 53: Datei speichern Wenn das Projekt zum ersten Mal gespeichert wird, so öffnet sich automatisch das Fenster 'Datei speichern unter:..' Abbildung 54: Datei speichern unter... Außerdem wird das Verzeichnis Projects geöffnet (Default). Die Datei wird jetzt hier gespeichert.
  • Seite 51: Programmtest

    Der Einstieg wicklung CoDeSys, das auf der CD als PDF-Datei abgelegt ist, werden diese ausführlich beschrieben. Und wie weit Wir haben bis jetzt zwei Programme geschrieben (PLC_PRG und Und). Das sind wir jetzt? Unterprogramm Und wurde in PLC_PRG eingetragen, so dass Und nun auch von PLC_PRG aktiviert wird.
  • Seite 52 Ein kurzes CoDeSys Projekt zum Einstieg Gehen wir einmal davon aus, dass das Programm fehlerfrei ist bzw. dass Sie alle Fehler korrigiert haben. In beiden Fällen müsste das System nun korrekt eingeloggt haben. 'Online' 'Start' Aktivieren Sie nun den Programmablauf durch 'Online' 'Start' ( Abbildung 56) oder Drücken der F5-Taste oder Anklicken von .
  • Seite 53 Der Einstieg Abbildung 58: Werte ändern Dies erfolgt mit der Option 'Online' 'Werte schreiben' (Abbildung 59) oder al- ternativ mit der Tastenkombination <Strg.>+<F7>. Die Werte der Variablen A und B sind nun TRUE (=Wahr oder EIN). Dies hat einen Wechsel der Variablen C von FALSE zu TRUE (ebenso Farbveränderung zu Blau im unteren Fens- terteil) als Ergebnis der Und-Verknüpfung zur Folge ( Abbildung 60).
  • Seite 54 Ein kurzes CoDeSys Projekt zum Einstieg Abbildung 60: Werte variieren Sie sollten es sich zur Gewohnheit machen, nach Möglichkeit 'Werte schrei- ben' zu verwenden. Der Menüpunkt 'Werte forcen' kann in der Praxis gefähr- lich sein, Seite 3-18 und 4-9! Wenn Sie gerne mit Tasten arbeiten, sollten Sie also besser <Strg><F7> ver- wenden anstatt einfach <F7>! Wer genaueres über den Unterschied wissen möchte, der sollte den folgenden Absatz beachten...
  • Seite 55: Visualisierung

    Der Einstieg Visualisierung Da wir nun die Funktion des Systems überprüft haben, können wir jetzt zu sei- ner Visualisierung übergehen, die wir im Folgenden erläutern. Sicherheit Die Erstellung einer Visualisierung mit CoDeSys muss offline erfolgen. Sie sollten sich daran gewöhnen, aus Sicherheitsgründen die Programmbearbei- tung mit zu stoppen, bevor Sie ausloggen.
  • Seite 56 Ein kurzes CoDeSys Projekt zum Einstieg Abbildung 62: Visualisierung benennen Abbildung 63: Visualisierung Startfenster In der Default-Einstellung erscheint zunächst ein Raster. Wenn Sie es nicht Raster benötigen, können Sie die Anzeige unter 'Extras' 'Einstellungen...' unterdrü- cken. Ein Bild Achtzehn verschiedene Element-Arten können mit der Visualisierung gezeich- zeichnen net und auch animiert werden.
  • Seite 57 Der Einstieg Abbildung 64: Visualisierung Objekt einfügen Abbildung 65: Eingefügtes Rechteck Zusammen- Um einen Zusammenhang zwischen Bildelement und Baustein-Variablen her- hänge zustellen, muss ein Zusammenhang zwischen (Visualisierungs-)Aktion und (Va- riablen-)Wert definiert werden. Diese Eingaben erfolgen im Fenster 'Element konfigurieren'. Für die Eingabe von Variablen kann dort wiederum <F2>...
  • Seite 58 Ein kurzes CoDeSys Projekt zum Einstieg Abbildung 66: Konfiguration Variablen Um die Farbveränderungen des Bildelements (hier des Rechtecks) zu definie- ren, gehen Sie mit dem Cursor in das Feld neben Farbwechsel: und drücken <F2>, wodurch ein Fenster zur Variablenauswahl erscheint (Abbildung 67). Ein Doppelklick auf den Baustein Und erzeugt eine Liste der dort definierten Varia- blen (Abbildung 68).
  • Seite 59 Der Einstieg Abbildung 68: Variablen des Bausteins Die Eingabehilfe ist speziell an dieser Stelle nützlich, weil gerne nur A anstatt Und.A eingetragen wird. Dann erhalten Sie aber nicht das weiter unten be- schriebene Ergebnis. In diesem Zusammenhang soll daran erinnert werden, dass z.
  • Seite 60 Ein kurzes CoDeSys Projekt zum Einstieg Abbildung 69: Eingabe Variable toggeln Farbe Im Fenster 'Element konfigurieren' wird auf 'Farbe' geklickt. Abbildung 70: Element konfigurieren Farbe Durch Klick auf erscheint in der Kategorie Farben das Farbaus- wahlfenster Abbildung 71. Wählen Sie eine Farbe durch Anklicken aus und bestätigen Sie mit .
  • Seite 61 Der Einstieg Abbildung 71. Farbauswahl Text Um unserem Rechteck nun auch einen Namen zu geben, tragen Sie bitte in der Kategorie Text den Buchstaben A ein. Diese Bezeichnung wird zentriert in das Element eingetragen. Das Fenster 'Element konfigurieren' sollte dem in Abbildung 72 gleichen. Ist dies der Fall, schließen Sie es bitte mit Abbildung 72: Element konfigurieren Text 3-25...
  • Seite 62 Ein kurzes CoDeSys Projekt zum Einstieg Variable B (ein- Wir möchten nun ein weiteres Bildelement für die Variable B erstellen, das fach nur kopie- dem für Variable A gleicht. Die Option Kopieren/Einfügen kann uns hier sehr ren) gut helfen. Dazu: ●...
  • Seite 63 Der Einstieg Variable C Kopieren Sie jetzt bitte noch einmal das Element der Variablen A für die Dar- stellung der Variablen C. Verändern Sie die Konfiguration des neuen Elements folgendermaßen: Form : Ellipse Eingabe : Keine Eingabe Farben/Alarm Farbe/Innen : Rot Variablen/Farbwechsel : Und.C Text...
  • Seite 64 Ein kurzes CoDeSys Projekt zum Einstieg Abbildung 76: Fertige Visualisierung Arbeiten mit der Wir können nun das neu erstellte Visualisierungsbild testen. Dazu müssen Sie Visualisierung CoDeSys einloggen und das Programm starten. Gehen Sie dazu wie zuvor beschrieben vor. Als Gedächtnisstütze sollen folgende Punkte dienen: ●...
  • Seite 65 Der Einstieg Abbildung 77: Visualisierung Zustand 1 Abbildung 78: Visualisierung Zustand 2 Um Ihr Projekt zu speichern benutzen Sie bitte die Option 'Datei' 'Speichern Und jetzt wieder speichern unter...' ( Abbildung 53). Abbildung 79: Fenster Speichern unter... 3-29...
  • Seite 66 Ein kurzes CoDeSys Projekt zum Einstieg Dort können Sie, wie in Windows üblich, den Namen des Projektes in das Ein- gabefeld für den Dateinamen eingeben. Der Dateiname muss die Extension .pro haben, daher ersetzen Sie ' ' durch z. B. Einfachund und bestätigen dies Wenn die entsprechende Option ('Projekt' 'Optionen' 'Projektinfo automa- tisch') aktiviert ist, wird vor dem Abspeichern automatisch ein Eingabefenster für Projektinformationen dargestellt (Abbildung 80).
  • Seite 67: Online-Test

    Der Einstieg 3.3. Online-Test Das gleiche Programm soll nun in die Steuerung geladen und dort getestet werden. Vorbereitung Simulator Jetzt soll also mit der physikalischen Hardware gearbeitet werden. Dazu ist es erforderlich, Eingangszustände vorzugeben und die Reaktion der Ausgänge zu beobachten.
  • Seite 68: Betriebssystem

    Online-Test ● Die Verbindung wird über das mitgelieferte Kabel hergestellt. Auf der Seite des PC ist es mit einer 9-poligen Buchse versehen. Falls COM2 als 25-poliger Stek- ker am PC ausgeführt ist, muss zusätzlich ein Adapter besorgt werden. Auf der Seite des Simulators ist es mit einer Steckerleiste versehen.
  • Seite 69 Der Einstieg Abbildung 81: Setup Downloader Unter dem Reiter 'Beschreibung' sind ausführlichere Informationen zu finden. Weiter Nach der erfolgreichen Installation kann der Downloader gestartet werden: Abbildung 82: Downloader Start Ein erster Test der korrekten Kommunikation besteht aus dem Anklicken von 'Kennung lesen'.
  • Seite 70 Betriebssystem Klicken Sie auf Datei öffnen und wechseln Sie in das Verzeichnis (Hex-File) laden C:\Programme\ifm electronic\CoDeSys V2.3\Targets\ifm\Library\ifm_CR0020. Markieren Sie die dort vorgefundene Datei ifm_CR2500_V040001.H86. Abbildung 84: Downloader Datei öffnen Nach Anklicken von Öffnen erscheint in der Titelzeile der Name der Datei.
  • Seite 71 Der Einstieg Jetzt kann das Betriebssystem geladen werden. Wenn Sie gleich weiter arbeiten möchten, dann überspringen Sie den folgenden kurzen Überblick zum Downloader. Downloader Ausführliche Informationen zum Downloader finden Sie auf der CD unter Do- kumentation. Sie können mit dem Downloader z.B.: - das Betriebssystem in die Steuerung laden (was als nächster Schritt erfolgt) - die Programmdatei aus der Steuerung lesen - die vorher ausgelesene Programmdatei in eine neue Steuerung schreiben...
  • Seite 72 Online-Test Abbildung 87: Downloader Schnittstellenparameter Der COM-Port ist hier auf Com2 eingestellt. Ändern Sie diese Einstellung oder die Bits per Second bei Bedarf. Die anderen Einstellungen werden normalerweise nicht geändert. Der Downloader ist ein mächtiges Werkzeug, das aber mehr Erfahrung und Hintergrundwissen erfordert, um die Möglichkeiten auszuschöpfen.
  • Seite 73: Programmtest Online

    Der Einstieg Programmtest online Im folgenden Text wird nach und nach die Beschreibung der Zwischenschritte weggelassen. Bei der Arbeit mit CoDeSys wird manches (hoffentlich) zur Rou- tine. Man kann sich auf das wesentliche, den zu steuernden Prozess, konzent- rieren und muss nicht mehr lange suchen, was unter welchem Menüpunkt zu finden ist.
  • Seite 74 Online-Test Abbildung 91: Kommunikationsparameter 1 Die serielle Schnittstelle ist noch nicht angesprochen. Dazu wird auf geklickt. Es öffnet sich ein weiteres Fenster: Abbildung 92: Gateway 1 Hier wird auf das Pfeilsymbol neben Tcp/Ip geklickt. Abbildung 93: Gateway 2 In der geöffneten Liste wird 'Lokal' gewählt und mit .bestätigt.
  • Seite 75 Der Einstieg Abbildung 94: Kommunikationsparameter 2 Hier wird als Name z. B. 'seriell' eingetragen und der entsprechende Eintrag markiert. Nach Bestätigung mit ist der neue Kanal eingetragen. Abbildung 95: Kommunikationsparameter 3 Ein Vergleich mit Abbildung 87 zeigt, dass die Baudrate nicht übereinstimmt. Abbildung 96: Kommunikationsparameter 4 Ein Doppelklick auf den Wert aktiviert das Auswahlfenster.
  • Seite 76 Online-Test Falls beim Einloggen weitere Fehlermeldungen erscheinen, so kann eine Erhö- hung der Baudrate Abhilfe schaffen. Das hat den Vorteil, dass sich auch das Laden des Programms beschleunigt. Dabei ist zu beachten, dass es nicht ge- nügt, die Baudrate am PC zu erhöhen. Die Baudrate in der Steuerung muss diesen Werten angepasst werden.
  • Seite 77 Der Einstieg Zuordnung Zunächst ist kein Unterschied zum Simulationsmodus zu erkennen. Der Simu- lator wurde aber noch gar nicht eingesetzt! Der Zustand der Eingänge beein- flusst überhaupt nicht den Zustand der Variablen A, B und C! Das kann ja auch nicht sein, weil noch keine Zuordnung getroffen wurde.
  • Seite 78 Online-Test Wenn dieser Eingang in mehreren Bausteinen verwendet wird, kann es einfacher sein, ihn global zu deklarieren (Klasse VAR_GLOBAL). Der Vorteil dabei ist, dass er nur einmal deklariert werden muss. Der Nachteil ist, dass er beim Programmtest nicht in der Liste der Variablen des Bausteins erscheint ( Abbildung 57).
  • Seite 79: Einloggen

    Der Einstieg Entsprechend wird hier der erste Eingang der Adresse %IX0.08 zugeordnet. Nach Abschluss der Eingabe mit werden die übrigen Variablen dekla- riert. Abbildung 104: Eingetragene Deklarationen Zu beachten ist hier noch das Schlüsselwort AT, das für die eigentliche Zuord- nung steht.
  • Seite 80 Online-Test Nach dem erneuten Einloggen erscheint wieder die Meldung, ob das Programm geladen werden soll (Abbildung 98). Nach der Bestätigung mit wird das Programm geladen. Ein Blick auf die Statuszeile erinnert daran, dass das Programm noch gestartet werden muss. Das tun wir jetzt. Online Im Deklarationsteil werden die aktuellen Zustände angezeigt.
  • Seite 81: Trace Aufzeichnung

    Der Einstieg Der Name und die Zuordnung zu einer Merkeradresse ist vordefiniert. Diese Information ist im Fenster Steuerungskonfiguration zu finden. In der Einga- behilfe (F2) findet man die Variable als Systemvariable. Programmtest Nach dem Einloggen, dabei wird das geänderte Programm neu übersetzt, muss das Programm wieder gestartet werden.
  • Seite 82 Online-Test Abbildung 108: Sampling Trace neu Die weiteren Funktionen werden über das kontextsensitive Menü Extras er- Tracekonfigura- tion reicht. Zunächst werden die Variablen definiert, die überwacht werden sollen. Das geschieht über 'Extras' 'Tracekonfiguration'. Abbildung 109: Tracekonfiguration In dieses Fenster werden die (maximal 8) Variablen eingetragen, deren Werte aufgezeichnet werden sollen.
  • Seite 83 Der Einstieg Abbildung 110: Fenster Tracekonfiguration Wie funktioniert Dazu muss kurz der Hintergrund erklärt werden. Von jeder Trace Variablen können maximal 500 Werte gespeichert werden. Ist der Speicher voll, dann beginnt die Aufzeichnung von vorn. Die ältesten Werte werden überschrieben. Möchte man z.
  • Seite 84 Online-Test Abbildung 111: Eingabehilfe Tracevariable wird die Konfiguration abgeschlossen. Zuordnung Das Fenster Sampling Trace ist zunächst noch leer. Den Variablen muss noch die Farbe zugeordnet werden, mit der ihr Zustand dargestellt wird. Dazu wird neben dem Feld unter Var 0 angeklickt, wodurch die zur Auswahl stehenden Variablen angezeigt werden.
  • Seite 85 Der Einstieg Dazu wird der Menüpunkt 'Extras' 'Trace lesen' verwendet. Dadurch wird so- zusagen eine Momentaufnahme geladen. Interessanter ist es, mit 'Extras' 'Trace automatisch lesen' den Zustand dynamisch darzustellen. Es lohnt sich, alle Möglichkeiten der Trace Aufzeichnung einmal in Ruhe durch- zuspielen.
  • Seite 86 Online-Test Abbildung 114: Sampling Trace 2 Abbildung 115: Sampling Trace 3 3-50...
  • Seite 87: Dokumentation

    Der Einstieg In dieser kurzen Einführung können nicht alle Funktionen, z. B. zur Speicherung von Trace Aufzeichnungen, ausführlich beschrieben werden. Dazu muss auf das Handbuch zur Programmentwicklung verwiesen werden. Nur ein Hinweis noch zur Trace Aufzeichnung: folgen die Signale so schnell aufeinander, dass die Trace Aufzeichnung schwer ablesbar ist (z.
  • Seite 88 Online-Test Abbildung 117: Fenster Projekt dokumentieren Hier kann ausgewählt werden, was dokumentiert werden soll. Mit den üblichen Markierungsfunktionen können auch mehrere Komponenten ausgewählt wer- den. Abbildung 118: Auswahl von Bausteinen für die Dokumentation Die folgenden Punkte werden hier nicht ausführlich gezeigt, sondern nur kurz angedeutet.
  • Seite 89 Der Einstieg Abbildung 119: Einstellungen Dokumentation Man sieht, dass man auch hier vordefinierte Formate laden kann. Abbildung 120: Auswahl von Formaten für die Dokumentation Um die Datei zu modifizieren, in der die Parameter des Rahmens, wie es in CoDeSys heißt, gespeichert sind, wird auf 'Bearbeiten...' geklickt. Im Fenster, das sich dann öffnet, können die Einstellungen vorgenommen werden.
  • Seite 91: Übungsaufgaben

    Übungsaufgaben 4.1. Logikfunktionen In der kurzen Einführung von Kapitel 3, wurde lediglich eine einfache Logik- funktion (AND) als Beispiel verwendet. Wer das Kapitel durchgearbeitet hat, dem sollte es keine Schwierigkeiten bereiten, andere Logikfunktionen bzw. Netzwerke aus verknüpften Logikfunktionen selbständig aufzubauen. Das wird hier nicht mehr ausführlich beschrieben.
  • Seite 92 Logikfunktionen Es hilft dabei, das Programm übersichtlich aufzubauen, wenn regelmäßig die Selbsthaltung verwendet wird. Das muss nicht bei jedem Hilfsmerker gesche- hen. Der Autor bevorzugt eine Programmstruktur, bei der es zu jedem Ausgang zwei Netzwerke gibt. Am Ende des einen steht "SET OUTPUT" am Ende des anderen "RESET OUTPUT".
  • Seite 93: Beispiel 1! Fehler

    Übungsaufgaben Hier werden wei- Hier können weitere Verknüpfungen, z. tere Bedingungen B. ein AND Operator für und Verknüpfun- Sicherheitsabfragen eingefügt werden. gen für Start1 und Start2 eingefügt Abbildung 122: Beispiel Programmstruktur Das folgende Beispiel zeigt einen häufig vorkommenden Fehler. Beispiel 1! Fehler! Q bzw.
  • Seite 94: Beispiel 2

    Logikfunktionen Beispiel 2 Abbildung 124: Beispiel Befüllung Aufgabenstel- Es sollen Gefäße befüllt werden. lung 1 1. wenn Deckel und Material vorhanden sind, leuchtet die grüne Lampe (OK) 2. wenn das Gefäß die falsche Höhe oder Position hat, leuchtet die rote Lampe (Alarm) Das Vorhandensein von Deckeln und von Material wird von Sensoren gemeldet (für das Material soll zunächst ein Sensor genügen, das Beispiel kann später...
  • Seite 95: Höhere Funktionen

    Übungsaufgaben 4.2. Höhere Funktionen Zeit- und Zählfunktion Es gibt sehr viele Funktionen. In den folgenden Beispielen soll aber nur die An- wendung bei den wichtigsten, am häufigsten verwendeten Funktionen, genauer gesagt Funktionsblöcken, geübt werden. Das sind Zeiten und Zähler. Einzelheiten zu diesen Funktionen werden hier nicht mehr behandelt. Dafür soll daran erinnert werden, wo Informationen gefunden werden können.
  • Seite 96: Praktische Anwendung

    Ergänzungen Praktische Anwendung Abbildung 125: Beispiel Schieber Aufgabenstel- Ein Werkstück wird auf eine Aufnahmeplatte abgelegt (z. B. von einem Hand- lung 6 lingsroboter) und dort von einer Lichtschranke erfasst. Nach Betätigung des Starttasters fährt der Schieber nach rechts aus. In seiner rechten Endposition verharrt er für 3 s und fährt dann wieder nach links ein.
  • Seite 97: Zykluszeit

    Übungsaufgaben zeigt. Weitere Beispiele folgen. Um sie nicht aus dem Zusammenhang zu rei- ßen, soll hier nur kurz darauf verwiesen werden: Selbst definierter Funktionsblock ( Seite 5-21) Watchliste ( Seite 5-16) Aufrufbaum ( Seite 5-19) Zykluszeit In diesem Kapitel wird ein etwas spezielles Thema behandelt. Wer Wert auf ein tieferes Verständnis des Verhaltens einer SPS legt, der sollte es durcharbeiten.
  • Seite 98 Ergänzungen PLC-Browser Die Ermittlung der Zykluszeit ist, speziell bei zeitkritischen Abläufen, erforder- lich. Ein leistungsfähiges SPS-System wie ecomat mobile unterstützt den An- wender dabei. Entsprechende Routinen sind im Betriebssystem implementiert. Sie müssen dann von der Software zur Programmierung, von CoDeSys, aufge- rufen werden.
  • Seite 99: Visualisierung

    Übungsaufgaben Welche und wieviele dieser Befehle hier erscheinen, hängt vom Zielsystem ab. In Abbildung 129 ist es CR0020. Nur der erfahrene Programmierer kann mit den meisten der Befehle etwas an- fangen. Wem die Befehle nichts sagen, dem wird empfohlen, lieber nicht damit zu spielen, um den Zweck herauszufinden.
  • Seite 100 Ergänzungen Wir nehmen an, der Ausgang für den Antrieb des Schiebers für die Fahrt nach links sei in der Deklaration mit 'AntriebSl' bezeichnet worden. In einem Netz- werk des entsprechenden Bausteins wird er gesetzt. Hier wird jetzt ein OR- Operator mit einem weiteren Eingang 'AntriebSlmanuell' eingefügt. Abbildung 131: Handbetrieb 1 In die Visualisierung wird unter dem Textfeld Handbetrieb eine Schaltfläche mit der Beschriftung Schieber nach links eingefügt.
  • Seite 101 Übungsaufgaben In der Praxis wird gefordert, dass Hand- und Automatikbetrieb gegeneinander verriegelt sind. Im Folgenden wird kurz angedeutet, wie diese Forderung umgesetzt werden kann. Wenn die beiden Betriebsarten unabhängig voneinander sein sollen, dann ist es eine übersichtliche Struktur, in PLC_PRG zwei Bausteine dafür ein- zufügen.
  • Seite 103: Anhang

    Anhang 5.1. Buttons Funktionsleiste In diesem Anhang soll eine kurze Übersicht zu den diversen Buttons der Funk- tionsleiste gegeben werden. In der Funktionsleiste, der dritten Leiste von oben, sind eine Reihe von Buttons zu finden (falls über 'Optionen' 'Funktionsleiste' aktiviert). Hier können häufig benutzte Funktionen mit einem einzigen Mausklick gestartet werden.
  • Seite 104: Online-Funktionen

    Buttons Online-Funktionen 'Start' Die Programmbearbeitung wird gestartet. 'Stop' Die Programmbearbeitung wird angehalten. 'Einzelschritt über' Führt die nächste Anweisung aus (Debugging). 'Breakpoint an/aus' Stoppt die Programmbearbeitung an der aktuellen Anweisung (Debugging); sinnvoll z. B. in Kombination mit Einzelschritt über. 'Einloggen' Stellt die Verbindung zur Steuerung her (nur bei korrektem Programm). Falls das Programm geändert wurde, wird eine neue Übersetzung veranlasst.
  • Seite 105: Editierfunktionen Für As

    Anhang Editierfunktionen für AS 'Schritt-Transition (davor)' Fügt einen Schritt mit Transition vor dem markierten Block ein. 'Schritt-Transition (danach)' Fügt einen Schritt mit Transition hinter dem markierten Block ein. 'Alternativzweig (rechts)' Fügt eine Verzweigung rechts vom markierten Block ein. 'Alternativzweig (links)' Fügt eine Verzweigung links vom markierten Block ein.
  • Seite 106: Editierfunktionen Für Fup

    Buttons Editierfunktionen für FUP 'Eingang' Fügt einen zusätzlichen Eingang bei einem Operator, z. B. bei der UND-Funk- tion, ein. 'Ausgang' Fügt einen zusätzlichen Ausgang, z. B. bei einem Operator, ein. 'Baustein' Damit sind Operatoren, Funktionen, Funktionsblöcke, Programme, standard oder selbstdefiniert und Konvertierungen gemeint. Die Default-Einstellung UND- Operator muss entsprechend überschrieben werden.
  • Seite 107: Funktionen Für Die Visualisierung

    Anhang Funktionen für die Visualisierung 'Selektieren' Wählt ein Element aus. 'Rechteck' Fügt ein Rechteck ein. 'Abgerundetes Rechteck' Fügt ein abgerundetes Rechteck ein. 'Ellipse' Fügt einen Kreis bzw. eine Ellipse ein. 'Polygon' Fügt ein Polygon (abgeschlossenen Linienzug) ein. 'Linienzug' Fügt einen Linienzug ein. 'Kurve' Fügt eine Freihandkurve ein.
  • Seite 108 Buttons 'Alarmtabelle' Fügt eine Alarmtabelle ein zur Übersicht über Alarme, die als Ereignisse defi- niert werden. Nach dem Einfügen eines Platzhalters öffnet sich ein Fenster zur Konfiguration. 'Zeigerinstrument' Fügt ein Zeigerinstrument ein zur Darstellung von Werten als Winkelstellung. Nach dem Einfügen eines Platzhalters öffnet sich ein Fenster zur Konfiguration, u.
  • Seite 109: Kurzanleitung

    Anhang 5.2. Kurzanleitung Neues Projekt Nach dem Öffnen eines neuen Projekts öffnen sich automatisch zwei Fenster. Zielsystem Zuerst wird das Zielsystem festgelegt. Hier wird der Gerätetyp ausgewählt, mit dem gearbeitet werden soll. Abbildung 11 PLC_PRG Dann wird der Bausteins PLC_PRG eingefügt. Es öffnet sich automatisch das Fenster: 'Projekt' 'Objekt einfügen...' mit dem vorgegebenen Namen.
  • Seite 110: Bibliotheken Und Hardwarekonfiguration

    Kurzanleitung Abbildung 34. Wenn Sie eine andere Sprache bevorzugen, sieht der Baustein natürlich anders aus. Objekt einfügen Der nächste Schritt sollte unbedingt darin bestehen, ein neues Objekt einzufü- gen, unter 'Projekt' 'Objekt' 'Einfügen'. Abbildung 35 Im Beispiel von Kapitel 3 war es das Objekt Und in FUP. Das Programm wird sehr unübersichtlich, wenn Sie alles in PLC_PRG schrei- ben.
  • Seite 111 Anhang Abbildung 18 Abbildung 22 Abbildung 27...
  • Seite 112: Arbeit Sparen

    Arbeit sparen Abbildung 31 Relais Mit dem Setzen des Relais (falls vorhanden) sind die Vorbereitungen abge- schlossen. Jetzt kann die eigentliche Programmierung beginnen. 5.3. Arbeit sparen Unter dieser hoffentlich interessanten Überschrift soll kurz beschrieben werden, wie einmal erstellte Programme, Bausteine, Netzwerke usw. von einem Projekt in ein anderes übernommen werden können.
  • Seite 113: Projekt Exportieren

    Anhang Abbildung 137: Projekt kopieren Nach erfolgter Auswahl und Klick auf 'Öffnen' erscheint die Liste der Bausteine. Abbildung 138: Objekte kopieren Hier kann jetzt der Baustein UND markiert und durch Klick auf 'OK' übernom- men werden. Er erscheint dann im neuen Projekt in der Liste der Bausteine. In Abbildung 138 ist zu erkennen, dass auf diese Weise nicht nur Programmbau- steine sondern z.
  • Seite 114: Bibliothek

    Arbeit sparen Bibliothek Projekte, die in diesem Fall kein PLC_PRG enthalten dürfen, mit einem oder mehreren Objekten können durch 'Speichern unter...' als Bibliothek gespei- chert werden. Wie oben können sie dann in weitere Projekte eingebunden wer- den. Das ist z. B. dann sinnvoll, wenn es nicht erwünscht ist, dass der Bediener einer Anlage bestimmte Funktionsblöcke verändert, falls ihm CoDeSys zugäng- lich ist.
  • Seite 115: Hinweise Zu Lösungen

    Anhang 5.4. Hinweise zu Lösungen Oben wurde schon darauf hingewiesen: Es gibt selten nur eine und die optimale Lösung. Außerdem ist es zu Beginn besser, selbst Lösungen zu finden, anstatt fertige Muster zu übernehmen. Daher werden hier nur einige Hinweise als Vorschläge gegeben. Beispiel 1 (Seite Nur das zweite Netzwerk bestimmt den Zustand des Ausgangs.
  • Seite 116 Hinweise zu Lösungen Wert geändert werden können, z. B. durch den Maschinenführer über ein Ein- gabegerät, dann muss dieser Wert als symbolische Variable deklariert werden, die durch weitere Bausteine geändert werden kann. Der Istwert ET (Elapsed Time) braucht nicht in jedem Fall einer Variablen zugewiesen zu werden. In Abbildung 139 oben ist zu erkennen, wann das sinnvoll sein kann, z.
  • Seite 117: Weitere Hinweise

    Anhang 5.5. Weitere Hinweise Deklarationen In den bisherigen Beispielen wurden die Variablen lokal deklariert. Im Folgen- den wird als Beispiel gezeigt, wie Variable direkt bei der Hardwarekonfiguration global deklariert werden können. Abbildung 140: Standard-Steuerungskonfiguration Wie z. B. in Abbildung 28 gezeigt, werden unter 'Ressourcen' 'Steuerungs- konfiguration' die Einträge durch Klick auf '+' geöffnet.
  • Seite 118 Weitere Hinweise Abbildung 141: Deklarationen in der Steuerungskonfiguration Wie erwähnt, gibt es verschiedene Vorgehensweisen. Der Vorteil der hier ge- zeigten Möglichkeit besteht darin, dass wenn die Deklarationen einmal vorge- nommen wurden, die Variablen im ganzen Projekt zur Verfügung stehen und über die Eingabehilfe F2 einfach eingefügt werden können.
  • Seite 119: Reihenfolge

    Anhang Abbildung 142: Watchliste Schieber Diese Watchliste wurde unter dem Namen 'Schieberw' gespeichert. Abbildung 143: Watchliste online Wenn dann eingeloggt wurde und evtl. auch noch der Baustein 'Schieber' ge- öffnet wurde, dann stehen alle Informationen zur Verfügung, die man braucht, um die Funktion des Schiebers zu überprüfen.
  • Seite 120: Wiederholung

    Weitere Hinweise - Netzwerk für erneuten Stopp des Transportbandes. Man orientiert sich dabei an der Reihenfolge der einzelnen Vorgänge. Das kann auch zum Ziel führen. Aber sobald eine Fehlfunktion beim Band auftritt, ist es doppelt schwierig, die Ursache herauszufinden, weil das Band doppelt vor- kommt.
  • Seite 121: Programmstruktur

    Anhang Was tun? Auch hier leistet der Merker 'gebohrt', der oben im Abschnitt Reihenfolge be- schrieben wurde, gute Dienste. Er ist ja auch beim Programmtest des Bau- steins für das Transportbands nützlich. Die Flankenabfrage, z. B. R_TRIG, einer geeigneten Variablen ist auch eine gute Lösung.
  • Seite 122 Weitere Hinweise Konsequent Der Anwender sollte darauf achten, dass eine möglichst einheitliche Struktur eingehalten wird. Das ist speziell dann wichtig, wenn mehrere Personen mit dem Programm arbeiten sollen, z. B. auch bei der Wartung (Fehlersuche). Die zahlreichen CAN-Funktionen werden automatisch implementiert. Sie brauchen hier nicht beachtet zu werden.
  • Seite 123: Selbst Definierter Funktionsblock

    Anhang BandBohr (PRG-FUP) 0001 PROGRAM BandBohr 0002 VAR 0003 Baboaus: TON; (*Zeit Förderband Bohrer aus*) 0004 END_VAR 0001 Transportband Bohrmaschine starten: Band startet 2 Mal -> logisch ODER Sicherheitsabfrage (Anlauf nur wenn Bohrkopf oben) direkt vor Ausgang Werks_Bandanf_Bo Band_Bo Werks_Bohr_Pos Bohrko_oben gebohrt Werks_Bohr_Pos...
  • Seite 124 Weitere Hinweise Er erhält z. B. den Namen Aus_Ein für Aus- und Einfahren. Als Sprache wird wieder FUP verwendet. Abbildung 148: Neuer Funktionsblock Es fällt auf, dass mehr Variablenklassen als bei einem Programm vorhanden sind. Was es damit auf sich hat, wird gleich deutlich werden. Als erste Variable wird die Bedingung für den Start des Ausfahrens deklariert.
  • Seite 125 Anhang Abbildung 150: Funktionsblock Aus_Ein Als Letztes wird gezeigt, wie dieser Funktionsblock z. B. für den Schieber ver- wendet werden kann. Wieder über 'Projekt' 'Objekt' 'Einfügen...' wird ein neues Programm mit Na- men Schieber1 eingefügt. Abbildung 151: Neues Programm Schieber1 In das erste Netzwerk wird nun der Funktionsblock eingefügt.
  • Seite 126 Weitere Hinweise Abbildung 152: Definierten Funktionsblock einfügen Abbildung 153: Eingefügter Funktionsblock Jetzt wird auch die Bedeutung der Variablenklassen klar. Die Variablen im Funktionsblock werden auch interne Variablen genannt. Mann kann von außen darauf zugreifen, wenn sie als VAR_INPUT bzw. VAR_OUTPUT deklariert wur- den.
  • Seite 127 Stichwortverzeichnis %IX0.08 ............3-43 automatisch öffnen ........2-6 .pro ...............3-30 AWL ............... 3-1 ???..............3-9 'Balkenanzeige'..........5-6 3S..............2-3 Band............. 5-18 'Abgerundetes Rechteck' ......5-5 Baustein............3-7 Ablaufsprache..........3-1 Bausteine..........3-1, 3-2 Abtastrate.............3-47 Beispiel 1 ............. 5-13 Adresse............3-43 Betriebsarten ..........4-11 aktuelle Version ..........1-3 Betriebssystem ..........
  • Seite 128 Funktionsplan..........3-1 Deklarationen ..........5-15 Dokumentation........1-2, 3-51 FUP ..............3-1 Downloader ......1-8, 2-4, 3-32, 3-35 gebohrt ..........5-18, 5-19 ecolog Software Installer .......2-1 gerätespezifisch ..........2-3 ecomat mobile..........1-4 Gewährleistung ..........II Editierfunktionen für AS .........5-3 global .........3-12, 3-42, 5-15 Editierfunktionen für FUP.......5-4 Handbetrieb.........4-9, 4-10, 4-11 Editierfunktionen für KOP ......5-3 Handbuch zur Programmerstellung ....1-2...
  • Seite 129 Stichwortverzeichnis Markierung ........... 3-7 Projekt kopieren........... 5-10 Merker..........5-18, 5-19 Puls-Pausenverhältnis ........1-7 mobil............... 1-4 Quelldatei............. 3-35 ms..............1-6 Raster ............3-20 nachinstallieren..........2-8 Rechteck............3-20 Name ............3-6, 4-4 'Rechteck' ............. 5-5 'Negation'..........5-3, 5-4 Reihenfolge..........5-18 Netzwerk ............3-7 Relais ............3-45, 5-8 neues Projekt........
  • Seite 130 Starter-Set ............2-7 Unterverzeichnis ..........2-11 Statuszeile.........3-16, 3-40, 3-44 VAR_INPUT........5-22, 5-24 'Stop' ..............5-2 Variable ..........2-16, 3-11 'Strecken'............5-4 Variable toggeln ...........3-23 Strukturen..........3-1, 3-2 Variablen ............3-6 strukturierter Text ...........3-1 Variablenklassen..........5-22 Strukturierter Text ........3-14 Version ..........2-4, 3-34 'Suchen...'............5-2 Verzeichnis........1-3, 2-3, 2-11 Suchpfad .............
  • Seite 131 Manual Starter Set Controller family R360 for CoDeSys starting version 2.3...
  • Seite 132 You will find more details at: www.ifm-electronic.com Starter Set Manual CoDeSys 2.3, 12/2006, from software version V020102 Guarantee note This manual was written with the utmost care. However, we cannot assume any guarantee for the contents. Since errors cannot be totally avoided despite all efforts we appreciate your comments. We reserve the right to make technical alterations to the product which might result in a change of contents of the manual.
  • Seite 133 What you can find in this manual What you should know............1-1 1.1. Required previous knowledge............... 1-1 1.2. Structure of the manual................1-1 How to find your way around ..............1-1 1.3. Overview of the documentation............. 1-2 Printed media.................... 1-2 Electronic media ..................1-3 1.4.
  • Seite 134 Description ....................3-3 The first step ..................... 3-3 Add Program..................... 3-5 Defining variables ..................3-6 Saving ..................... 3-13 Other languages ..................3-14 Program test ................... 3-15 Visualisation .................... 3-19 3.3. Online test ..................... 3-31 Preparations.................... 3-31 Operating system..................3-32 Online program test ................3-37 Sampling Trace ..................
  • Seite 135 Editing functions for SFC ................5-3 Editing functions for LD................5-3 Editing functions for FBD ................5-4 Functions for sampling trace..............5-4 Functions for Visualisation ................ 5-5 5.2. Quick reference guide ................5-7 New project....................5-7 Libraries and hardware configuration............5-8 5.3.
  • Seite 137: What You Should Know

    What you should know In this chapter we will give you an overview of the following points: • What previous knowledge is required to be able to work with this manual? • What is the structure of this manual? • How do you find your way around this manual? •...
  • Seite 138: Overview Of The Documentation

    Overview of the documentation The header of each page on the right provides you with the title of the current Headers chapter. On the left you will find the current header of second order. In the footnotes of each page you will find the chapter-related number of the Footnotes page.
  • Seite 139: Electronic Media

    What you should know Electronic media Online Help For some devices the system manual is replaced by the online help.. It becomes more and more familiar that the programmer gets information just when needed. The search function and the links make it easy to work fast and effective.
  • Seite 140 Hardware It has to be adapted to the hardware. The process is briefly described • below. Further information is given in the programming or system manual. It might be necessary to change e.g. the addresses of inputs or outputs in •...
  • Seite 141: Features Of A Plc

    What you should know 1.5. Features of a PLC Cycle The advantages of a PLC as compared to a conventional contactor controller does no longer need to be pointed out today. Now there are also controllers with mechanical and electrical features which are necessary for use in mobile machines, e.g.
  • Seite 142 Features of a PLC At that very moment somebody flips the selector switch. If the state of the input were enquired about again, the condition for the next program step would also be fulfilled: the output "move to the right" would also be switched with a possibly spectacular result.
  • Seite 143: Time Response

    What you should know Time response Only time- If the time response is uncritical, if a ms does not matter, then the comments on critical the time response do not have to be taken into account. processes Cycle time The time the controller needs for one program cycle is called cycle time. How long is the There is no easy answer to this question.
  • Seite 144 Features of a PLC An unfavourable signal shape does indeed occur in practical use. If, for example, speed is to be monitored by evaluating the pulses of a puck, the TRUE signal is short if the diameter of the puck is small. An example is shown on the left side of Figure 3.
  • Seite 145: Watchdog

    What you should know Watchdog A PLC monitors itself if the cycle is correctly processed. The case that a program cycle is not complete is dangerous. Then no inputs are read. A change of the state on the input, e.g. "limit switch reached" cannot be processed. The status of the output cannot change, e.g.
  • Seite 147: Installation

    Installation 2.1. Hardware of the PC PC with Pentium processor Minimum MS Windows © XP 128 MB RAM Hard disk with 100 MB available Mouse and additional serial interface We recommend to use a current version of the software (operating system) and hardware, e.g.
  • Seite 148 Software setup Here we are dealing with CoDeSys 2.3. This is the software for programming the current hardware. Therefore the programming examples below were created using this version. Figure 5: Version The version you use depends for example on your hardware version, on the version of its operating systems, etc.
  • Seite 149 Installation The following directories are then on the hard disk: C:\Program files\ifm electronic\CoDeSys V2.3 Program file CoDeSys There are the directories: Compile temporary auxiliary files Documents device-specific information Help help files Library general libraries of 3S there: PLCConf device-specific files For CAN users: here are the EDS files.
  • Seite 150 Software setup If you work with different versions, to be seen from the version number, e.g. V040001, it is important to remember that the versions of the configuration data files and of the operating system match! This structure may seem a bit confusing. In general you are not confronted with it and therefore you do not have to worry about it.
  • Seite 151: Program Start

    Installation This is an important tool. Again, not each and every detail can be discussed here. Usually only the function described on page 3-33 et seqq is needed. In the event of frequent programming it is worthwhile to study this tool in detail ( e.g.
  • Seite 152 Program start Error message If one or several error messages are displayed, other paths may have been selected during set-up. For the time being they can be ignored. Further below we will describe the adaptations that will have to be made. The example program may look like this: Figure 8: Example Program We will not deal with this any further here.
  • Seite 153: Settings

    Installation Figure 9: Project Options 1 2.4. Settings New project Before starting with the programming of the controller you would normally have to make some additional settings. This has to be done for a configuration only once at the beginning, compare page 2-19. In the starter set all required settings have already been made.
  • Seite 154: Subsequent Installation Of The Target

    What has to be done, if the article number is not displayed in the selection screen? This will only happen with new hardware. Then the respective file will be ordered from ifm electronic or loaded from the Internet and installed subsequently. Subsequent installation of the target Since this happens occasionally, the process will be briefly described.
  • Seite 155 Installation Figure 12: Start Window InstallTarget By clicking on the 'Open...' button the usual selection screen for files will open. In principle a number of control systems can be programmed using CoDeSys. This does, however, not mean that each target can easily be installed here as described.
  • Seite 156: Main Program

    Settings was opened. The files that can be seen there have the extension: TNF (for target information). As an example ifm_CR0020_V030002.TNF is marked and 'Open' is clicked on. At first you cannot see a big difference. There is only a new entry in the left box.
  • Seite 157: Directories

    Figure 16: Set Directories By selecting the target some entries have already been made. C:\Program files\ifm electronic\CoDeSys V2.3\Library\ etc. A very important entry is still missing, however. In addition it has to be indicated where the configuration files of the project are. This entry is not made automatically to enable working with different version numbers.
  • Seite 158 Starter set be adapted accordingly. Example: CR0020 C:\ Program files\ifm electronic\CoDeSys V2.3\targets\ifm\ifm_cr0020cfg\VXXXXXX XXXXXX means: The version number may be different. Settings which are usually not preset were already made in the starter set. This makes it easy to work with the device right away.
  • Seite 159: Libraries

    Installation Libraries Predefined A modern programming software to IEC 61131-3 should allow the functions administration of self-created program modules. They only have to be created once and can then be used as often as required. Administration in CoDeSys is handled via libraries. Furthermore, a number of standard functions and hardware-specific functions have been predefined.
  • Seite 160 Settings Figure 19: Library Manager with standard.lib A glance at the library manager shows what kind of module it is. This also explains the name of the library. Help If during program creation you are not sure which module is needed or what the inputs and outputs mean you have the possibility to call help via Help in the toolbar.
  • Seite 161 Installation Figure 21: Selection of Libraries There are device-specific libraries which are in the corresponding subdirectory, e.g. ifm_CR0020 together with other configuration data files. In addition there are mostly device-independent libraries which are needed for the operation of CAN networks, for example. Library The directory structure must be observed! In CoDeSys V2.3 there is also a directory...
  • Seite 162: Plc Configuration

    Settings We are not done yet! Programming not only requires the library files but also e.g. the operating system or predefined system variables. It is therefore not sufficient to only insert the libraries in the manager. In addition the settings have to be verified and possibly adapted during PLC configuration.
  • Seite 163 Installation Figure 24: PLC Configuration Empty If the PLC configuration had been loaded directly together with the target settings, it would be difficult to work with different versions. Therefore the hardware configuration is entered “manually”. To ensure that the next step is successful it is absolutely necessary to enter the path to the configuration data files in the 'Directories' option, Figure 18.
  • Seite 164 Settings Figure 27: PLC Configuration If you now click on '+' next to CR0020 and then double click on '+' next to 'Inputs/Outputs' you can see the precision with which the hardware is represented in the PLC configuration. Figure 28: PLC Configuration Open Variables can be declared very easily (as global).
  • Seite 165 Installation subelement. Right-click on the configuration (Figure 27). Select the CANopen master in "Append Subelement". This facilitates working with CAN. Now this appendix need not be considered. Figure 30: Append Subelement Figure 31: Subelement appended Ready! Preparations are now finished and the work can start! Now the actual programming can start.
  • Seite 167: The Start

    The start This chapter is a kind of "introductory course for CoDeSys". You will get to know the operation and the handling of the program, i.e. you will get a brief insight into almost every function of CoDeSys. The most important part of this introductory course is the complete creation of a program example directly on your PC.
  • Seite 168 Basics and concepts How is a The definition of a project includes: project ● The hardware configuration defined? - definition of inputs and outputs ● The creation of components POUs - structures - visualisations How do I test The true test of a project is the commissioning of the actual system. On the my project? other hand, the simulation mode of CoDeSys has proven to be a very valuable possibility for testing the program.
  • Seite 169: A Small Ecolog Codesys Project As A Start

    The start 3.2. A small ecolog CoDeSys project as a start Description This chapter will describe a short project demonstrating the basic steps in CoDeSys. The processes are more or less described like a "recipe". Task A lamp C is to be ON when two switches A and B are closed. This really simple system can be shown as in Figure 32.
  • Seite 170 A small ecolog CoDeSys project as a start As shown in Figure 15 and then again in Figure 33 ● the object is to get the name PLC_PRG , ● the type is to be program and the ● language is to be FBD. Check if all these points correspond ●...
  • Seite 171: Add Program

    The start Point 1 has already been described. To illustrate point 2 we want to add a second program to the project and activate it with PLC_PRG to ensure its cyclical execution. Settings If you have not yet done so, work through the sections on pages 2-11 to 2-19. Add Program Add a program with the name P_AND to the project with menu item 'Project' Adding an...
  • Seite 172: Defining Variables

    A small ecolog CoDeSys project as a start Figure 36: Window POU P_AND Defining variables In the context of programming, the definition of the characteristics of a variable is called a declaration. Variables can be displayed as a table or a text. Below we will describe the text options.The selection “Declarations as text”...
  • Seite 173 The start Do not forget the semicolon at the end of the line! Figure 38: Declaration Entered There is an alternative to the declaration which will be shown shortly (Figure 48). Add ‘AND’- operation Network 0001 with dotted rectangle as cursor Figure 39: Add box Mouse click on the first network (grey field with the number 0001 in the bottom...
  • Seite 174 A small ecolog CoDeSys project as a start If windows with such a coloured background appear screen, remember F2! Figure 41: Inserted Operator Here we want to point out a possibility to help you program more efficiently and : The key avoid typing errors at the same time: the <F2>...
  • Seite 175 The start Operands Add the operands A and B as inputs of the AND operator by replacing ???, Figure 43. You can also use <F2>, Figure 44. Figure 43: Highlighted Input Field Figure 44: Input assistant for Variables Figure 45 shows the result. Figure 45: Add Operand The result of the operation has to be assigned to an operand.
  • Seite 176 A small ecolog CoDeSys project as a start Position of the Here the editor is not very flexible. It happens again and again that you want to add an element which the editor refuses, however. In most cases the reason cursor why is that the cursor is not in the right position.
  • Seite 177 The start Figure 49: Declared Variables A and B could have been defined in the same simple and comfortable way. We just wanted to demonstrate the different selection possibilities for declarations. In Figure 49 you can also see the syntax for entering comments. They can, of course, also be subsequently added or modified.
  • Seite 178 A small ecolog CoDeSys project as a start Local In the fields class and type the default settings were simply adopted. We just want to point out that the variables in the example were declared locally. That means that the declaration only applies to the POU in which it is located, here in the program And.
  • Seite 179: Saving

    The start Figure 52: Added POU And all this just Of course, an AND operation can also be directly inserted in PLC_PRG. We for an AND? have selected the way of activating the subroutine in PLC_PRG for an important reason. We wanted to demonstrate that all POUs (in this case POU P_AND) to be activated directly via PLC_PRG need to be listed there.
  • Seite 180: Other Languages

    A small ecolog CoDeSys project as a start Figure 53: Save File When the project is saved for the first time, the window 'Save file as:...' opens automatically. Figure 54: Save File as... The directory Projects also opens (default). The file is now stored here. At the beginning it is clearer to save the files here in the default directory.
  • Seite 181: Program Test

    The start What have we So far we have written two programs (PLC_PRG and P_AND). The subroutine P_AND was entered in PLC_PRG so that P_AND is now also activated by achieved so far? PLC_PRG. Program test How do we Our project has now reached a stage where we can test if it meets our continue? expectations.
  • Seite 182 A small ecolog CoDeSys project as a start Display the P_And program on the monitor (double click on the program name in the POU list on the left in the program window). The program window should look like Figure 57. ONLINE, SIM and RUN must now be active.
  • Seite 183 The start Figure 58: Change Values This is done with option 'Online' 'Write Values' (Figure 59) or alternatively with the key combination <Ctrl.> + <F7>. The values of the variables A and B are now TRUE (= ON). This causes variable C to change from FALSE to TRUE (the colour in the bottom part of the window changes to blue) as a result of the And link ( Figure 60).
  • Seite 184 A small ecolog CoDeSys project as a start Figure 60: Vary Values You should make it a matter of habit to use 'Write Values', if possible. The menu item 'Force Values' may be dangerous in practical use, Pages 3-18 and 4-9! If you like to work using the keys you had better use <Ctrl><F7>...
  • Seite 185: Visualisation

    The start Visualisation Now that we have tested the function of the system let's move on to visualisation which will be explained below. Safety Visualisation with CoDeSys has to be done offline. To be on the safe side you should try to remember to stop program processing by before logging out.
  • Seite 186 A small ecolog CoDeSys project as a start Figure 62: Name Visualisation Figure 63: Visualisation Start Window Grid At first a grid is displayed in the default setting. If you do not need it, you can eliminate it in 'Extras' 'Settings...' . Drawing a Eighteen different types of elements can be drawn and animated with the picture...
  • Seite 187 The start Figure 64: Visualisation Insert Object Figure 65: Inserted Rectangle Context To establish a context between picture element and module variable you need to define a context between (visualisation) action and (variable) value. These entries are made in the screen 'Regular Element Configuration'. For entering variables <F2>...
  • Seite 188 A small ecolog CoDeSys project as a start Figure 66: Variable Configuration To change the colour of the picture element (in this case the rectangle) move the cursor to the field next to Change color: and press <F2> to open a screen for selecting variables (Figure 67).
  • Seite 189 The start Figure 68: Variables of the POU The Input assistant is particularly helpful in this context because it often happens that only A instead of P_And.A is entered. Then you will not get the result described further below, however. In this context we would like to remind you that A, for example, is a local variable.
  • Seite 190 A small ecolog CoDeSys project as a start Figure 69: Input Toggle Variable Colour Select the screen 'Regular Element Configuration' and click on 'Colors'. Figure 70: Regular Element Configuration Color Click on to open the colour selection screen in the category Colors Figure 71.
  • Seite 191 The start Figure 71. Color Selection Text To give our rectangle a name, enter the letter A in the category Text. This designation is entered in the centre of the element. The window 'Regular Element Configuration' should now look like Figure 72. If this is the case, close by pressing Figure 72: Regular Element Configuration: Text 3-25...
  • Seite 192 A small ecolog CoDeSys project as a start Variable B (a We now want to create another picture element for variable B that should look simple copy) like the one for variable A. The option Copy/Paste will be helpful. To do so: ●...
  • Seite 193 The start Variable C Copy the element of variable A again for the presentation of variable C. Change the configuration of the new element as follows: Shape : ellipse Input : no input Color/Alarm Color/Inside : red Variables/Change color : P_AND.C Text The display of the elements has been slightly changed as compared to A and B to make clear that they are different variables (inputs and outputs).
  • Seite 194 A small ecolog CoDeSys project as a start Figure 76: Finished Visualisation Working with We can now test the newly created visualisation picture. Log in CoDeSys and start the program. Proceed as described before. The following points will serve visualisation as a reminder: ●...
  • Seite 195 The start Figure 77: Visualisation State 1 Figure 78: Visualisation State 2 And now Save To save your project, use the option 'File' 'Save as...' ( Figure 53). Figure 79: Window Save As... Here you enter the name of the project in the field for the file name as is common in Windows.
  • Seite 196 A small ecolog CoDeSys project as a start When the correct option is activated ('Project' 'Options' 'Ask for Project Info') is activated, a dialogue box for project information is shown automatically before saving (Figure 80). Figure 80: Project Information You can fill it in (or leave it). We strongly recommend to make abundant use of the various possibilities to document the project.
  • Seite 197: Online Test

    The start 3.3. Online test We now want to load the same program into the controller and test it there. Preparations Simulator We will now work with the physical hardware. You will need to define the input states and watch the reaction of the outputs. That is what we use the EC 2014 simulator for.
  • Seite 198: Operating System

    Online test and RS 232/TxD. Above it there is the marking CAN and CAN to point out that the CAN bus can be connected to the unassigned terminals. A power supply is integrated in the control panel used during the trainings. As long as you work with the simulator, the supply voltage can be taken via the CAN connection because the supply voltage is on the same potential in the whole (simulator) system.
  • Seite 199 The start Figure 81: Downloader Setup For detailed information see the 'Description' tab. Continue After successful installation the downloader can be started. Figure 82: Downloader Start A first test of the correct communication is clicking on 'Get Identity'. 3-33...
  • Seite 200 Online test Figure 83: Get Identity If there is already an operating system on the controller, its version number is displayed. This ensures that the communication works reliably. Load Operating Click on Open File and change to the directory C:\Program Files\ifm electronic\CoDeSys V2.3\Targets\ifm\Library\ifm_CR0020.
  • Seite 201 The start If you want to continue working right away, skip the following short overview of the downloader. Downloader For detailed information about the downloader see ‘Documentation’ on the CD. Using the downloader ensures, e.g.: - to load the operating system in the controller (which happens in the next step) - to read the program file from the controller - to write the previously read program file into a new controller - to save data from the controller...
  • Seite 202 Online test Figure 87: Downloader Interface Parameter In this case the COM port is set to Com2. Change this setting or the 'Bits per Second' as required. The other settings are usually not changed. The downloader is a powerful tool which, however, requires more experience and background knowledge to make full use of its possibilities.
  • Seite 203: Online Program Test

    The start Online program test In the following text we will start to gradually leave out the description of the intermediate steps. When working with CoDeSys a lot will (hopefully) become routine. You can focus on the important points, the process to be controlled, and it will not take a long time to find what you need in the menu items.
  • Seite 204 Online test Figure 90: Communication Parameters 1 The serial interface has not yet been activated. To do so, click on Another window will open: Figure 91: Gateway 1 Here you click on the arrow symbol next to Tcp/Ip. Figure 92: Gateway 2 Select 'Local' in the opened list and acknowledge with Now, can be clicked on in the Communication Parameters window...
  • Seite 205 The start Figure 93: Communication Parameters 2 For example, the name "serial1" is entered here and the respective entry is marked. After acknowledgment with the new channel has been entered. Figure 94: Communication Parameters 3 A comparison with Figure 87 shows that the baud rates do not correspond. Figure 95: Communication Parameters 4 A double click on the value activates the selection window.
  • Seite 206 Online test If other error messages are displayed during log-in, it may help to increase the baud rate. The advantage is that the program is loaded faster. It has to be noted that it is not sufficient to increase the baud rate on the PC. The baud rate in the controller must be adapted to these values.
  • Seite 207 The start Assignment At first you cannot see any difference to the simulation mode. But the simulator has not even been used yet! The state of the inputs does not influence the state of the variables A, B and C! This would not be possible anyhow since no assignment has been made.
  • Seite 208 Online test Figure 101: Global Variables For a correct assignment it is necessary to observe the correct spelling very carefully. This will be briefly described below. Refer to the hardware documentation to find out which addresses are available and which of them are binary or analogue inputs or outputs.
  • Seite 209 The start Figure 103: Entered Declarations Note the key word AT which stands for the actual assignment. The assignment of the inputs results from the location of the control box ( labelling of the simulator). B and C are declared accordingly, C of course as an output (%IX0.09 and %QX0.04).
  • Seite 210 Online test Online The declaration part shows the current states. In addition, the function AND simplifies the checking of the state of the variables by showing them in different colours depending on their state. The presentation on the monitor, in AND and in the visualisation, should show no change as compared to the simulation.
  • Seite 211: Sampling Trace

    The start Sampling Trace For a program test it is very useful that the current states of the variables are displayed. But there are limits. If, for example, you want to simultaneously monitor several variables defined in different windows, it is not always possible to change the windows fast enough.
  • Seite 212 Online test Figure 107: Sampling Trace New Trace You find the other functions via the context-sensitive menu Extras. First, we configuration define the variables to be monitored. This is done via 'Extras' 'Trace Configuration...'. Figure 108: Trace Configuration In this window you enter the variables (maximum 8) the values of which are to be sampled.
  • Seite 213 The start Figure 109: Window Trace Configuration How does it Let us first explain the background. Max. 500 values of each Trace Variable work? can be saved. When the memory is full, sampling starts again from the beginning. The oldest values are overwritten. If you want to evaluate the Sampling Trace in peace, for example, you have to stop it so that the values are not overwritten.
  • Seite 214 Online test Figure 110: Input assistant Trace Variable Click on to finish the configuration. Assignment The window Sampling Trace is empty. The variables now have to be assigned the colours with which their state is shown. Click on next to the field below Var 0 and the variables that can be selected are shown.
  • Seite 215 The start At first you see nothing. Sampling is started in the controller but you first have to give the instruction to transfer the contents of the Trace Buffer to the display. For this purpose use menu item 'Extras' 'Read Trace'. A kind of snapshot is loaded.
  • Seite 216 Online test Figure 113: Sampling Trace 2 Figure 114: Sampling Trace 3 3-50...
  • Seite 217: Documentation

    The start In this short introduction we cannot describe all functions such as saving sampling trace in detail. We refer you to the manual for program development. Just one quick note on the sampling trace: If the signals have such a high frequency that the sampling trace is difficult to read (e.g.
  • Seite 218 Online test Figure 116: Window Document Project Here you can select what is to be documented. You can also select several components using the standard marking functions. Figure 117: Selection of Modules for Documentation The following points will only be described briefly, not in detail. Documentation If you don't like the form of the documentation, you can click on e.g.
  • Seite 219 The start Figure 118: Documentation Setup You will find that you can load predefined formats. Figure 119: Selection of Formats for the Documentation In order to modify the file in which the parameters of the frame, as it is called in CoDeSys, are saved, click on 'Edit...'.
  • Seite 221: Exercises

    Exercises 4.1. Logic functions In the brief introduction of chapter 3 only a simple logic function (AND) was used as an example. Those who have studied this chapter should not have any problems to set up other logic functions or networks from linked logic functions without any help.
  • Seite 222 Logic functions Division It is mostly very different conditions with which the output is switched ON or OFF. In complex situations this easily causes conflicts. The division described above divides the problem into two partial problems each of which and when looked at separately can be easily handled.
  • Seite 223: Example 1! Error

    Exercises Example 1! Error! Q and I are meant to stand for output and input. Study the following example: Figure 122: Example of a Program Error What is the reaction of the output?
  • Seite 224: Example 2

    Logic functions Example 2 Figure 123: Example filling Task 1 Vessels are to be filled. 1. if the lid and the material are present, the green lamp will light (OK) 2. if the vessel is at the wrong height or in the wrong position, the red lamp will light (alarm) The presence of lids and material is indicated by sensors (for the time being one sensor should be sufficient for the material, the example can be extended...
  • Seite 225: Higher-Level Functions

    Exercises 4.2. Higher-level functions Timer and counter function There are very many functions. In the following examples, however, we only want to practise the most important and most frequently used functions, to be more precise, function blocks. These are the timers and the counters. Details about these functions will not be treated here any more.
  • Seite 226: Practical Application

    More details Practical application Figure 124: Example Slide Task 6 A workpiece is put onto a pickup plate (e.g. by a handling robot) and detected by a photoelectric sensor. After activation of the start button the slide moves to the right. It remains in its right end position for 3 s and then it moves back left. It remains in the left end position until the next start.
  • Seite 227: Cycle Time

    Exercises Watch list ( page 5-17) Call tree ( page 5-19) Cycle time In this chapter a somewhat special subject will be treated. Those to whom it is important to get a deeper understanding of a PLC, should study it. It can be skipped.
  • Seite 228 More details Restriction Please note, however, that this function is to be used for all targets (that support such a timer). The method described above with the 'TIMER_READ_US' module can be used more precisely and flexibly. Figure 126: PLC Browser After clicking an empty window opens.
  • Seite 229: Visualisation

    Exercises Most commands are only of use to the experienced programmer. Everybody who is at a loss to understand the command is well advised not to play around to find out the purpose. The 'cycle' command is of interest in connection with the cycle time. The result may look as follows: Figure 129: PLC Browser with Cycle In other systems, e.g.
  • Seite 230 More details Figure 130: Manual Operation 1 In the visualisation a button with the text Slide to the left is added under the text field Manual Mode. In the configuration in item 'Input' the variable X.DriveSImanual is assigned to this button in the field 'Tap variable'. The 'Toggle variable' field would be wrong here because then the drive would be started continuously until a new click is made.
  • Seite 231 Exercises ensured if two POUs are added to PLC_PRG. This will look somehow like in Figure 133: Figure 133: Operating Modes 1 Examples for the first network each in these modules will be shown in the next two figures. Figure 134: Operating Modes 2 Figure 135: Operating Modes 3 The signal 'Manual_Mode' is, e.g.
  • Seite 233: Appendix

    Appendix 5.1. Buttons Toolbar This appendix will give you a short overview of the different buttons in the toolbar. The toolbar, the third bar from the top, offers a variety of buttons (if activated via 'Options' 'Toolbar'). Regularly used functions can be started with a single mouse click.
  • Seite 234: Online Functions

    Buttons Online functions 'Start' Starts the program processing. 'Stop' Stops the program processing. 'Single step to' Carries out the next instruction (debugging). 'Breakpoint on/off' Stops the program processing at the current instruction (debugging); useful e.g. in combination with Single Step To. 'Login' Establishes the connection to the controller (only if the program is correct).
  • Seite 235: Editing Functions For Sfc

    Appendix Editing functions for SFC 'Step transition (before)' Inserts a step with transition before the marked block. ''Step transition (after)' Inserts a step with transition after the marked block. 'Alternative branch (right)' Inserts a branch on the right of the marked block. 'Alternative branch (left)' Inserts a branch on the left of the marked block.
  • Seite 236: Editing Functions For Fbd

    Buttons Editing functions for FBD 'Input' Inserts an additional input for an operator, e.g. an AND function. 'Output' Inserts an additional output, e.g. for an operator. 'Box' This means operators, functions, function blocks, programs (standard or self- defined) and conversions. The default setting AND operator has to be overwritten.
  • Seite 237: Functions For Visualisation

    Appendix Functions for Visualisation 'Selection' Selects an element. 'Rectangle' Inserts a rectangle. 'Rounded rectangle' Inserts a rounded rectangle. 'Ellipse' Inserts a circle or an ellipse. 'Polygon' Inserts a polygon (closed polyline). 'Polyline' Inserts a polyline. 'Graph' Inserts a free-hand graph. 'Pie' Inserts a pie.
  • Seite 238 Buttons 'Alarm table' Inserts an alarm table for an overview of alarms that are defined as events. When a wild-card has been inserted, a window for configuration opens. 'Pointer instrument' Inserts a pointer instrument to display values as angled position. When a wild- card has been inserted, a window for configuration opens, e.g.
  • Seite 239: Quick Reference Guide

    Appendix 5.2. Quick reference guide New project When a new project has been opened, two windows open automatically. Target system First of all the target system is specified. Here the device type is selected that is to be worked with. Figure 11 PLC_PRG Then the PLC_PRG POU is added.
  • Seite 240: Libraries And Hardware Configuration

    Quick reference guide Figure 34. If you prefer another language, the module will, of course, look different. Add object The next step should always be to add a new object in 'Project' 'Object' 'Add'. Figure 35 In the example in chapter 3 it was the object P_And in FBD. The program becomes very confusing if you write everything in PLC_PRG.
  • Seite 241 Appendix Figure 18 Figure 22...
  • Seite 242: Saving Work

    Saving work Figure 27 Figure 31 Relay When the relay has been set (if applicable), the preparations are completed. Now the actual programming can start. 5.3. Saving work Under this hopefully interesting headline we will describe briefly how already created programs, modules, networks, etc. can be transferred from one project to another.
  • Seite 243: Project' 'Merge

    Appendix 'Project' 'Merge...' This function is not often used, perhaps because the name may be misleading. No copy of the project is created. This is simply done by 'File' 'Save as...'. With this function another project or parts of it can be inserted in the currently processed project.
  • Seite 244: Export Project

    Saving work 'Export project...' 'Import project...' Similar to Figure 137 objects can also be exported and imported. Then they are available as a separate file (or files) for import to other projects. Library Projects that in this case must not contain a PLC_PRG with one or several objects can be saved as library by means of 'Save as...'.
  • Seite 245: Remarks For Solutions

    Appendix 5.4. Remarks for solutions We pointed out above: There is hardly ever one and the optimum solution. Furthermore it is better at the beginning to find solutions on one's own instead of adopting ready-made patterns. Therefore we will give only some hints as suggestions. Example 1 The second network defines the state of the output.
  • Seite 246: Notes

    Notes Other variants are conceivable, e.g. ● OR operator before the timer function, then both inputs are debounced or ● other timer functions between ‘Length' and OR operator so that the second input can be debounced with another timer value, etc. Task 4 (page 4- The easiest solution is to use the function block TOF.
  • Seite 247: Declarations

    Appendix Declarations In the examples given so far the variables were declared locally. This is, of course, also possible for the models. Below an example will be given how to declare the variables directly during hardware configuration. Figure 139: Standard PLC Configuration As shown in Figure 28, e.g., the entries are opened by clicking on '+' in 'Resources' 'PLC configuration'.
  • Seite 248 Notes Figure 140: Declarations in the PLC Configuration As already mentioned, there are several ways to proceed. The advantage of the possibilities shown here is that once declarations have been made the variables are available in the entire project and can easily be added by using F2. The disadvantage is that in an open program module, e.g.
  • Seite 249 Appendix Consistent Whichever possibility you may decide for: You should always be consistent and declare in the same way! Watch list A method to help is to create a watch list. It is also very useful for maintenance (troubleshooting). You collect all variables that are important for a certain context and save the list as a freely selectable name.
  • Seite 250: Sequence

    Notes Sequence It is confusing to program the conveyor and the drill in only one program module. This easily leads to an unfavourable arrangement of the networks like in the example below (see page 4-2): - network for starting the conveyor - network for stopping the conveyor - various networks for the drilling process - network for another start of the conveyor...
  • Seite 251: Program Structure

    Appendix As soon as the drill head has arrived its upper position, these conditions have been met (it is better if the conveyor starts moving when the head is in its upper position so that the tool does not break off and the drill head should leave the workpiece with the tool running).
  • Seite 252 Notes program the entire movement of the arm there. Above we already pointed out that the preset structure is nothing but an example. Consistent The user should see to it that a uniform structure is used. This is in particular important if several people are to work with the program, e.g.
  • Seite 253: Individually Defined Function Block

    Appendix Figure 145: Example Conveyor Drill Here the hints given in Figure 121 were carried out. You can find more information on the program structure in the comments. Individually defined function block The slide is not discussed in more detail here. Some information was already given on page 5-14.
  • Seite 254 Notes It gets e.g. the name To_and_Fro for moving it away from its home position and back. The language used is again FBD. Figure 147: New Function Block It stands out that there are more variable classes than with a program. It will become clear soon what this is all about.
  • Seite 255 Appendix Figure 149: Function block To_and_Fro At last we will show how this function block can be used for the slide, for example. A new program by the name slide1 is added via 'Project' 'Object' 'Add...'. Figure 150: New Program Slide1 The function block is now added to the first network.
  • Seite 256 Notes Figure 151: Add Defined Function Block Figure 152: Added Function Block Now the meaning of the variable classes becomes clear. The variables in the function block are also called internal variables. You can access them from the outside if they were declared as VAR_INPUT or VAR_OUTPUT. If, e.g., time_value had not been declared as VAR_INPUT, then it would not be possible to influence the preset time value.
  • Seite 257: Index

    Index %IX0.08 ............3-42 'Coil'............... 5-3 .pro ...............3-29 Color............. 3-23 ??? ..............3-9 Compilation...........3-40, 5-2 ‘New project' ..........5-7 Compilation..........3-43 3S..............2-3 'Compress' ........... 5-4 Adapt............5-12 Configuring element ........3-21 Add object............5-8 'Contact'............5-3 Address............3-42 Context sensitive ........... 5-1 Alarm colour..........3-23 Conveyor ..........4-2, 5-18 'Alarm table'..........
  • Seite 258 Editing functions for LD........5-3 'Histogram'............5-6 Editing functions for SFC .......5-3 IEC-61131-3...........3-1 EDS ..............2-3 IL ..............3-1 Element ............3-20 Import ............5-12 'Ellipse' ............5-5 Import project ..........5-12 Error message........2-6, 3-35 Individually defined function block..5-21 Error Message..........3-43 Input..............3-23 Example 1 ........... 5-13 'Input' .............5-4 Export ............
  • Seite 259 Index Name ............. 3-6 Program start ..........2-5 'Negate' ..........5-3, 5-4 Program structure........5-19 Network............3-7 Program test ........3-15, 3-45 New project..........2-7, 3-3 Programming Languages.....3-1, 3-14 New Visualisation Screen ......3-19 Programming system exit ......3-30 Notes.............1-2, 5-14 Project.............2-7, 3-1 Online..........3-28, 3-37 Protection............
  • Seite 260 Simulator ............. 3-31 Task 5........... 4-5, 5-14 'Single step to' ..........5-2 Task 6........... 4-6, 5-14 Slide............4-6, 5-21 Task 7............4-10 Software setup ..........2-1 Template ..........5-10, 5-12 Solutions............5-13 Test............3-2, 3-45 Source file............ 3-35 Text...............3-25 ST ............3-1, 4-11 Time characteristics ........1-7 Start ............

Inhaltsverzeichnis