
- •1 Kurzer Einblick in CoDeSys
- •1.1 Was ist CoDeSys
- •1.2 Überblick über die Funktionalität von CoDeSys...
- •1.3 Übersicht der Anwender-Dokumentation zu CoDeSys
- •2 Was ist was in CoDeSys
- •2.1 Bestandteile eines Projekts...
- •2.2 Die Sprachen...
- •2.2.1 Anweisungsliste (AWL)...
- •2.2.2 Strukturierter Text (ST)...
- •2.2.3 Ablaufsprache (AS)...
- •2.2.4 Funktionsplan (FUP)...
- •2.2.5 Der freigraphische Funktionsplaneditor (CFC)...
- •2.2.6 Kontaktplan (KOP)...
- •2.3 Debugging, Onlinefunktionalitäten...
- •2.4 Die Norm...
- •3 Wir schreiben ein kleines Programm
- •3.1 Die Steuerung einer Ampelanlage...
- •3.2 Die Visualisierung einer Ampelanlage...
- •4 Die Komponenten im Einzelnen
- •4.1 Hauptfenster...
- •4.2 Projekt Optionen...
- •4.3 Projekte verwalten...
- •4.4 Objekte verwalten...
- •4.5 Allgemeine Editierfunktionen...
- •4.6 Allgemeine Online Funktionen...
- •4.7 Fenster ...
- •4.8 Die rettende Hilfe...
- •5 Die Editoren
- •5.1 Das gilt für alle Editoren...
- •5.2 Der Deklarationseditor...
- •5.2.1 Arbeiten im Deklarationseditor
- •5.2.2 Deklarationseditoren im Online Modus
- •5.3 Editoren der textuellen Programmiersprachen...
- •5.3.1 Arbeiten in den Texteditoren
- •5.3.2 Der Anweisungslisteneditor...
- •5.3.3 Der Editor für Strukturierten Text...
- •5.4 Editoren der grafischen Programmiersprachen...
- •5.4.1 Arbeiten in den grafischen Editoren
- •5.4.2 Der Funktionsplaneditor...
- •5.4.3 Der Kontaktplaneditor...
- •5.4.4 Der Ablaufspracheneditor...
- •5.4.5 Der freigraphische Funktionsplaneditor (CFC)...
- •6 Die Ressourcen
- •6.1 Übersicht Ressourcen
- •6.2 Globale Variablen, Variablenkonfiguration, Dokumentvorlage
- •6.2.1 Globale Variablen
- •6.2.2 Variablenkonfiguration...
- •6.2.3 Dokumentvorlage
- •6.3 Alarmkonfiguration
- •6.3.1 Überblick
- •6.3.2 Alarmsystem, Begriffe
- •6.3.3 Alarmklassen
- •6.3.4 Alarmgruppen
- •6.3.5 Alarmspeicherung
- •6.3.6 Menü Extras: Einstellungen
- •6.4 Bibliotheksverwaltung...
- •6.5 Logbuch...
- •6.6 Steuerungskonfiguration
- •6.6.1 Überblick
- •6.6.2 Arbeiten im CoDeSys Steuerungskonfigurator
- •6.6.3 Allgemeine Einstellungen in der Steuerungskonfiguration
- •6.6.4 Anwendungsspezifischer Parameterdialog
- •6.6.5 Konfiguration eines I/O Moduls...
- •6.6.6 Konfiguration eines Kanals
- •6.6.7 Konfiguration von Profibus Modulen...
- •6.6.8 Konfiguration von CAN Modulen...
- •6.6.9 Konfiguration eines CanDevice (CANopen Slave)
- •6.6.10 Steuerungskonfiguration im Online Modus
- •6.6.11 Hardware Scan/Status/Diagnose aus dem Zielsystem
- •6.7 Taskkonfiguration...
- •6.7.1 Arbeiten im Taskkonfigurator
- •6.7.2 System-Ereignisse
- •6.7.3 Taskkonfiguration im Online Modus
- •6.8.1 Überblick
- •6.9 Traceaufzeichnung...
- •6.9.1 Überblick und Konfiguration
- •6.9.2 Darstellung der Traceaufzeichnung
- •6.9.3 'Extras' 'Tracewerte speichern'
- •6.9.4 'Extras' 'Externe Tracekonfigurationen'
- •6.10 Arbeitsbereich
- •6.11 Parameter Manager ..
- •6.11.1 Aktivieren des Parameter Managers
- •6.11.2 Der Parameter Manager Editor, Overview
- •6.11.3 Parameterlisten: Typen und Attribute
- •6.11.4 Parameterlisten verwalten
- •6.11.5 Parameterlisten editieren
- •6.11.6 Parameter Manager im Online Modus
- •6.11.7 Export / Import von Parameterlisten
- •6.12 Zielsystemeinstellungen
- •6.13 PLC Browser...
- •6.13.1 Allgemeines zur PLC-Browser- Bedienung
- •6.13.2 Kommandoeingabe im PLC-Browser
- •6.13.3 Verwendung von Makros bei der Kommandoeingabe im PLC-Browser
- •6.13.4 Weitere PLC-Browser-Optionen
- •6.14 Tools
- •6.14.1 Eigenschaften der bestehenden Verknüpfungen (Objekt Eigenschaften)
- •6.14.2 Verwalten von Verknüpfungen
- •6.14.3 Die wichtigsten Fragen zu Tools
- •7 ENI Versionsverwaltung
- •7.1.2 Voraussetzungen für das Arbeiten mit einer ENI Projektdatenbank
- •7.1.3 Arbeiten in CoDeSys mit der Projektdatenbank
- •7.1.4 Kategorien innerhalb der Projektdatenbank
- •8 DDE Kommunikation
- •8.1 DDE Schnittstelle des CoDeSys Programmiersystems...
- •8.2 DDE Kommunikation über den GatewayDDE-Server...
- •9 Lizenzmanagement in CoDeSys
- •9.1 Der 3S Licensing Manager
- •9.1.1 Erstellen einer lizenzpflichtigen Bibliothek
- •10 ANHANG
- •Anhang A IEC Operatoren und zusätzliche normerweiternde Funktionen
- •Arithmetische Operatoren...
- •Bitstring Operatoren...
- •Bit-Shift Operatoren...
- •Auswahloperatoren...
- •Vergleichsoperatoren...
- •Adressoperatoren...
- •Aufrufoperator...
- •Typkonvertierungen...
- •Numerische Operatoren...
- •Anhang B Operanden in CoDeSys
- •Konstanten...
- •Variablen...
- •Adressen...
- •Funktionen...
- •Anhang C Datentypen in CoDeSys
- •Standard Datentypen
- •Definierte Datentypen
- •Anhang D CoDeSys Bibliotheken
- •Die Bibliothek Standard.lib
- •String Funktionen...
- •Bistabile Funktionsblöcke...
- •Flankenerkennung...
- •Zähler...
- •Timer...
- •Die Bibliothek Util.lib
- •BCD-Konvertierung...
- •Bit-/Byte-Funktionen...
- •Mathematische Hilfsfunktionen...
- •Regler...
- •Signalgeneratoren...
- •Funktionsmanipulatoren...
- •Analogwertverarbeitung...
- •Die Bibliothek AnalyzationNew.lib
- •Die CoDeSys Systembibliotheken
- •Anhang E Übersicht: Operatoren und Bibliotheksbausteine
- •Anhang F Kommandozeilen-/Kommandodatei-Befehle
- •Kommandozeilen-Befehle
- •Kommandodatei (Cmdfile)-Befehle
- •Anhang G Siemens Import
- •SEQ-Symbolikdatei importieren
- •S5-Datei importieren
- •Konvertierung S5 nach IEC 1131-3
- •Anhang H Dialoge der Zielsystemeinstellungen
- •Einstellungen in Kategorie Zielplattform
- •Einstellungen in Kategorie Allgemein
- •Einstellungen in Kategorie Speicheraufteilung
- •Einstellungen in Kategorie Netzfunktionen
- •Einstellungen in Kategorie Visualisierung
- •Anhang I Tastaturbedienung
- •Tastaturbedienung
- •Tastenkombinationen
- •Anhang J Übersetzungsfehler und -warnungen
- •Warnungen...
- •Übersetzungsfehler...
- •Index

3 - Wir schreiben ein kleines Programm
Dem Namen der Variable (z.B. EIN) folgt nach AT mit einem Prozentzeichen beginnend die IECAdresse. I steht dabei für Eingang, Q für Ausgang, X (in diesem Beispiel verwendet) steht für Byte und mit 0.0 (0.1, 0.2 usw.) werden die einzelnen Bits des Moduls angesprochen. Die erforderliche Steuerungskonfiguration werden wir in diesem Beispiel nicht vornehmen, da sie davon abhängt, welche Ausstattung an Konfigurationsdateien Ihnen zur Verfügung steht. Siehe gegebenenfalls hierzu Kapitel 6.6, Ressourcen, Steuerungskonfiguration.
Wir wollen nun den Baustein PLC_PRG fertig stellen.
Dazu gehen wir ins Editorfenster. Wir haben den freigraphischen Funktionsplaneditor CFC gewählt, dementsprechend erhalten wir unter der Menüleiste die CFC-Symbolleiste mit den verfügbaren Bauelementen.
Klicken Sie mit der rechten Maustaste ins Editorfenster und wählen Sie das Element Baustein. Klicken Sie auf den Text AND und schreiben Sie stattdessen "ABLAUF". Daraufhin erhalten Sie den Baustein ABLAUF mit den bereits definierten Einund Ausgangsvariablen dargestellt. Fügen Sie zwei weitere Baustein-Elemente hinzu, die Sie AMPEL benennen. Ampel ist ein Funktionsblock, deshalb erhalten Sie über dem Baustein drei rote Fragezeichen, die Sie durch die Namen der oben lokal deklarierten Variablen AMPEL1 und AMPEL2 ersetzen. Nun setzen Sie ein Element des Typs Eingang, den Sie mit EIN betiteln und sechs Elemente des Typs Ausgang, die Sie wie dargestellt mit den Variablennamen A1_gruen, A1_gelb, A1_rot, A2_gruen, A2_gelb A2_rot versehen.
Nun sind alle Elemente des Programms platziert und Sie können ihre Einund Ausgänge verbinden, indem Sie mit der Maus auf die kurze Linie an Einoder Ausgang eines Elements klicken und diese bei gedrückter Maustaste zum Einoder Ausgang des gewünschten Elements ziehen.
Ihr Programm sollte letztendlich wie hier dargestellt aussehen:
Ampelsimulation
Testen Sie nun Ihr Programm. Dazu müssen Sie es wieder übersetzen ('Projekt' 'Alles übersetzen'), laden ('Online' 'Einloggen') und starten. Führen Sie dazu 'Online' 'Start' aus und setzen Sie die Variable EIN auf TRUE, letzteres beispielsweise dadurch, dass Sie in PLC_PRG einen Doppelklick auf den Eintrag "EIN" in der Eingangsbox im CFC-Editor ausführen. Daraufhin erscheint die Variable als mit <TRUE> vormarkiert. Führen Sie dann <Strg><F7> oder den Befehl 'Online' 'Schreiben' aus, um diesen Wert zu setzen. Die Variable START in ABLAUF, die wir in der ersten Ausbaustufe des Programms noch per Hand auf TRUE gesetzt hatten, erhält diesen Wert nun also von Variable EIN aus PLC_PRG. Daraufhin laufen die Ampelzyklen los. Das Fenster des Bausteins PLC_PRG hat sich bereits zum Monitor Fenster gewandelt. Mit Doppelklick auf das Pluszeichen im Deklarationseditor klappt die Variablendarstellung auf und Sie können die Werte der einzelnen Variablen beobachten.
3.2 Die Visualisierung einer Ampelanlage...
Mit der Visualisierung von CoDeSys kann man schnell und einfach Projekt variablen mit Leben erfüllen. Wir werden im Folgenden zu unserer Ampelanlage zwei Ampeln und einen EIN-Schalter zeichnen, die den Schaltvorgang veranschaulichen sollen.
CoDeSys V2.3 |
3-11 |

Die Visualisierung einer Ampelanlage...
Erstellen einer neuen Visualisierung
Um eine Visualisierung zu erstellen, müssen Sie zuerst im Object Organizer den Bereich Visualisierung auswählen. Klicken Sie hierzu am unteren Rand des Fensters auf der linken Seite, in
dem Bausteine steht, auf die Registerkarte mit diesem Symbol und dem Namen Visualisierung. Wenn Sie nun den Befehl 'Projekt' 'Objekt einfügen' ausführen, öffnet sich ein Dialog.
Geben Sie hier einen beliebigen Namen ein. Wenn Sie den Dialog mit OK bestätigen, öffnet sich ein Fenster, in dem Sie Ihre neue Visualisierung erstellen können.
Element in Visualisierung einfügen
Für unsere Ampel-Visualisierung gehen Sie am besten folgendermaßen vor:
•Geben Sie den Befehl 'Einfügen' 'Ellipse' und versuchen Sie einen nicht allzu großen Kreis ( 2cm) zu zeichnen. Dazu klicken Sie in das Editierfeld und ziehen mit gedrückter linker Maustaste den Kreis in die Länge.
•Führen Sie nun einen Doppelklick auf den Kreis aus. Es öffnet der Dialog zum Editieren von Visualisierungselementen.
•Wählen Sie die Kategorie Variablen und tragen im Feld Farbwechsel den Text "A1_rot" oder ".A1_rot" ein. Das bedeutet, dass die globale Variable A1_rot den Farbwechsel bewirkt, wenn Sie den Wert TRUE erhält. Der Punkt vor dem Variablennamen zeigt an, dass es sich um eine globale Variable handelt, ist jedoch nicht zwingend erforderlich:
•Anschließend wählen Sie die Kategorie Farben und klicken auf die Schaltfläche Innen im Bereich Farbe. Wählen Sie eine möglichst neutrale Farbe, beispielsweise schwarz.
•Klicken Sie nun auf die Schaltfläche Innen im Bereich Alarmfarbe, und wählen Sie ein Rot aus, das am ehesten einem Ampelrot entspricht.
3-12 |
CoDeSys V2.3 |

3 - Wir schreiben ein kleines Programm
Der so entstandene Kreis wird im Normalzustand schwarz sein, und wenn die Variable ROT von AMPEL1 TRUE ist, wird seine Farbe auf Rot wechseln. Wir haben also bereits das erste Licht der ersten Ampel erstellt !
Die weiteren Ampellichter
Geben Sie nun die Befehle 'Bearbeiten' 'Kopieren' (<Strg>+<C>) und dann zweimal 'Bearbeiten' 'Einfügen' (<Strg>+<V>). So erhalten Sie zwei weitere, exakt gleich große Kreise, die über dem ersten liegen. Sie können die Kreise verschieben, indem sie auf den Kreis klicken, und mit gedrückter linker Maustaste in die gewünschte Position verschieben. Die gewünschte Position sollte in unserem Fall in einer Reihe übereinander in der linken Hälfte des Editorfensters sein. Mit einem Doppelklick auf einen der beiden unteren Kreise öffnen Sie wieder den Konfigurationsdialog. Geben Sie im Feld Farbwechsel des entsprechenden Kreises die folgenden Variablen ein:
für den mittleren Kreis: A1_gelb für den unteren Kreis: A1_gruen
Wählen Sie nun für die Kreise in der Kategorie Farben und im Bereich Alarmfarbe die entsprechende Farbe aus (gelb bzw. grün).
Das Ampelgehäuse
Geben Sie nun den Befehl 'Einfügen' 'Rechteck', und fügen Sie in derselben Weise wie eben den Kreis, ein Rechteck ein, das die drei Kreise umfasst. Wählen Sie für das Rechteck wiederum eine möglichst neutrale Farbe und geben Sie den Befehl 'Extras' 'Nach hinten legen', damit die Kreise wieder sichtbar werden.
Falls der Simulationsmodus noch nicht eingeschaltet ist, können Sie ihn mit dem Befehl 'Online' 'Simulation' aktivieren.
Wenn Sie nun die Simulation mit den Befehlen 'Online' 'Einloggen' und 'Online' 'Start' starten, können Sie den Farbwechsel der ersten Ampel mit verfolgen.
Die zweite Ampel
Die zweite Ampel können Sie am einfachsten erstellen, indem Sie sämtliche Komponenten der ersten Ampel kopieren. Dazu markieren Sie alle Elemente der ersten Ampel und kopieren sie (wie vorhin die Lichter der ersten Ampel) mit den Befehlen 'Bearbeiten' 'Kopieren' und 'Bearbeiten' 'Einfügen'. In den jeweiligen Visualisierungsdialogen müssen Sie dann nur noch den Text "A1" in "A2" ändern, und schon ist die Visualisierung der zweiten Ampel fertig.
Der EIN-Schalter
Fügen Sie ein Rechteck ein und vergeben Sie wie oben für die Ampeln beschrieben beliebige Farben und tragen bei Variablen für den Farbwechsel ".EIN " ein. In der Kategorie Text tragen Sie bei Inhalt "EIN" ins Eingabefeld ein:
CoDeSys V2.3 |
3-13 |

Die Visualisierung einer Ampelanlage...
Um mit Mausklick auf den Schalter die Variable EIN auf TRUE setzen zu können, müssen Sie in der Kategorie Eingabe die Option Variable tasten aktivieren und dahinter die Variable .EIN eingeben. Variable tasten bedeutet, dass bei Mausklick auf das Visualisierungselement die Variable .EIN auf TRUE, bei Loslassen der Maustaste aber wieder auf FALSE zurückgesetzt wird (Wir schaffen uns somit einen einfachen Einschalter für unser Ampelprogramm).
Visualisierungskonfiguration, 'Eingabe'
Schrift in der Visualisierung
Um die Visualisierung zu vervollständigen, sollten Sie noch zwei weitere flache Rechtecke einfügen, die Sie unterhalb der Ampeln platzieren.
Im Visualisierungsdialog stellen Sie jeweils in der Kategorie Farben für Rahmen 'Keine Rahmenfarbe' ein und schreiben in der Kategorie Text ins Feld Inhalt "Ampel 1" beziehungsweise "Ampel 2". Nun sieht Ihre Visualisierung folgendermaßen aus:
3-14 |
CoDeSys V2.3 |