
- •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

6 - Die Ressourcen
Dialog für die allgemeinen Einstellungen der Steuerungskonfiguration
Der globale Modus der Adressvergabe (flache Adressen / Adressen nach Id) innerhalb der Steuerungskonfiguration ist in der Konfigurationsdatei vordefiniert.
6.6.4Anwendungsspezifischer Parameterdialog
Durch eine anwendungsspezifische DLL, also einen individuellen Dialog, können die Parametriermöglichkeiten im Konfigurator erweitert werden. Diese 'Hook'-DLL wird im gleichen Verzeichnis wie die Konfigurationsdatei abgelegt und in dieser über einen Eintrag bei der Modulbzw. Kanalklassenbeschreibung eingehängt. Für das betreffende Modul bzw. die entsprechenden Kanäle erhält man dann anstelle des Standarddialogs 'Modulparameter' den in der DLL definierten Dialog.
Beispiel eines anwendungsspezifischen Parameterdialogs (Custom Parameters)
CoDeSys V2.3 |
6-25 |

Steuerungskonfiguration
6.6.5Konfiguration eines I/O Moduls...
Basisparameter eines I/O Moduls
Basisparameter-Dialog für ein I/O-Modul
Ist ein I/O Modul im Konfigurationsbaum selektiert, erscheint der Dialog 'Basisparameter' mit folgenden Einträgen
Modul-ID: Die Modul ID ist eine eindeutige Kennung des Moduls in der gesamten Konfigurationsumgebung. Sie wird aus der Konfigurationsdatei übernommen und ist nicht editierbar.
Knotennummer: Die Knotennummer ergibt sich aus einem Eintrag in der Konfigurationsdatei bzw., wenn dort kein Eintrag vorliegt, aus der Position im Konfigurationsbaum.
Eingabeadresse, Ausgabeadresse, Diagnoseadresse: Adressen für Einund Ausgabe bzw. zur Speicherung von Diagnosedaten.
Diese Adressen beziehen sich auf das Modul. Welche Adressen bereits vorgegeben, welcher AdressModus in der Konfiguration verwendet wird und ob an dieser Stelle noch editiert werden kann, hängt von den allgemeinen Einstellungen und den Definitionen in der Konfigurationsdatei ab.
Modulbeschreibung laden: Diese Option steht nur zur Verfügung, wenn dies in der Konfigurationsdatei so definiert ist. Auch die Default-Einstellung kann über die cfg-Datei vorgegeben werden. Wenn die Option deaktiviert ist, wird die Modulbeschreibung beim Projekt-Download und beim I/O-Update nicht berücksichtigt.
Adressen nicht automatisch anpassen: Diese Option ist nur verfügbar, wenn dies in der Konfigurationsdatei so definiert ist. Wenn sie aktiviert ist, wird das Modul beim automatischen Berechnen der Adressen ausgenommen. (Default: Option ist deaktiviert.)
Näheres zur Diagnose in der Steuerungskonfiguration:
Im Feld Diagnoseadresse muss eine Merkeradresse eingetragen werden, auf die dann automatisch die Diagnoseinformation geschrieben wird. Bei normalen I/O-Modulen hängt es von der speziellen Hardware-Konfiguration ab, wie die Diagnoseadresse gehandhabt wird. Für CAN Bus und PROFIBUS DP Systeme gilt bezüglich Diagnoseadresse folgendes: Es muss eine Merkeradresse angegeben werden, ab der die Diagnoseinformation gespeichert werden soll. Diese Information wird in der Struktur GetBusState angelegt, die in einer herstellerspezifischen Bibliothek (beispielsweise BusDiag.lib von 3S - Smart Software Solutions GmbH) enthalten ist:
Nachdem eine IEC-Task ihre Prozessdaten an die IO-Module gesendet bzw. von den Modulen gelesen hat, werden alle Module zyklisch aufgefordert, die Diagnosestruktur GetBusState zu füllen.
Meldet ein auf dem Bus verfügbarer Teilnehmer einen Fehler, kann seine spezifische Diagnoseinformation mit dem Baustein DiagGetState (ebenfalls in der o.g. Bibliothek definiert) gelesen werden. Diese Funktion ist allerdings nur aktiv, wenn der Busmaster auch in CoDeSys konfiguriert wurde.
6-26 |
CoDeSys V2.3 |
6 - Die Ressourcen
Sehen Sie im Folgenden die Einund Ausgangsparameter für den Funktionsblock DiagGetState, der zum Auslesen der Diagnoseinfo für einen bestimmten Busteilnehmer aufgerufen wird:
Eingangsvariablen von DiagGetState:
ENABLE: BOOL; |
Bei steigender Flanke beginnt die Abarbeitung des Bausteins |
DRIVERNAME:POINTER |
Name des Treibers (Adresse des Namens), an den der Diagnoseauftrag |
TO STRING; |
gehen soll. Wird hier 0 eingetragen, wird der Diagnoseauftrag an alle |
|
vorhandenen Treiber weitergereicht. |
DEVICENUMBER:INT; |
Identifikation des Busses, der von diesem Modul (Treiber) verwaltet wird. |
|
Beispielsweise kann der Hilscher-Karten-Treiber kann bis zu 5 Karten |
|
(Busse) verwalten.. Der Index ist 0-basiert. |
BUSMEMBERID:DWORD ; Eindeutige Busbzw. Modulspezifische Identifizierung des Busteilnehmers. (z.B. NodeID bei einer CANopen-Karte, Stationsadresse des Teilnehmers bei einer PB-DP-Karte)
Ausgangsvariablen von DiagGetState
READY: BOOL ; |
TRUE: die Bearbeitung des Diagnoseauftrags ist abgeschlossen |
STATE:INT; |
Wenn READY = TRUE, dann gibt STATE durch einen der folgenden |
|
Werte Auskunft über den aktuellen Status des Bausteins. Sie werden |
|
globalen Konstanten zugewiesen: |
|
-1: ungültiger Eingabeparameter |
|
(NDSTATE_INVALID_INPUTPARAM:INT;) |
|
0: Baustein arbeitet nicht (NDSTATE_NOTENABLED:INT;) |
|
1: Baustein ist dabei, die Diagnoseinfo abzurufen |
|
(NDSTATE_GETDIAG_INFO:INT;) |
|
2: Diagnoseinfo ist jetzt verfügbar |
|
(NDSTATE_DIAGINFO_AVAILABLE:INT;) |
|
3: keine Diagnoseinfo verfügbar |
|
(NDSTATE_DIAGINFO_NOTAVAILABLE:INT;) |
EXTENDEDINFO:ARRAY[ |
bis zu 100 Bytes herstellerspezifische Diagnosedaten des |
0..129] OF BYTE; |
Busteilnehmers. Für jeden möglichen Busteilnehmer wird dabei ein Byte |
|
reserviert, in dem die Bits 0 – 2 wie folgt genutzt werden: |
|
Bit 0: Busteilnehmer ist in der Konfiguration vorhanden. |
|
Bit 1: Busteilnehmer ist auf dem Bus verfügbar. |
|
Bit 2: Busteilnehmer meldet Fehler. |
Modulparameter / Custom Parameters eines I/O Moduls
Die in der Gerätedatei angegebenen Parameter werden dargestellt. Nur in der Spalte Wert kann editiert werden.
Index: Der Index ist eine fortlaufende Zahl (i), die die Parameter innerhalb des Moduls durchnummeriert.
Name: Name des Parameters
Wert: Wert des Parameters, veränderbar
Angezeigt wird zunächst der Defaultwert. Werte können direkt oder über symbolische Namen dargestellt werden. Wenn die Einträge in der Konfigurationsdatei nicht auf 'Read Only' gesetzt sind, können sie editiert werden, indem per Mausklick auf den Wert das Eingabefeld geöffnet wird bzw. über eine Auswahlliste ein anderer Wert ausgewählt wird. Besteht der Wert aus einer Dateiangabe,
CoDeSys V2.3 |
6-27 |

Steuerungskonfiguration
kann durch Doppelklick darauf der 'Datei öffnen'-Dialog geöffnet und eine andere Datei ausgewählt werden.
Modulparameter-Dialog
Default: Defaultwert des Parameters
Min.: minimaler Wert des Parameters (nur bei direkter Werte-Darstellung) Max.: maximaler Wert des Parameters (nur bei direkter Werte-Darstellung)
Gegebenenfalls erhält man über einen Tooltip zusätzliche Informationen zu dem aktuell selektierten Parameter.
Anstelle des Modul Parameter Dialogs kann der Dialog für Anwendungsspezifische Parameter (Custom Parameters) erscheinen. Dies ist der Fall, wenn für das betreffende Modul in der Konfigurationsdatei ein anwendungsspezifischer Parametrier-Dialog über eine Hook-DLL 'eingehängt' ist.
6.6.6Konfiguration eines Kanals
Basisparameter eines Kanals
Basisparameter-Dialog für einen Kanal
Kanal-Id: Global eindeutige Kennzeichnung des Kanals.
Klasse: Angabe, ob Kanal als Eingang (I), als Ausgang (Q) oder als Einund Ausgang (I&Q) verwendet wird, oder ob er diesbezüglich umschaltbar ist (I|Q). Ist der Kanal umschaltbar, können Sie dies über 'Extras' 'Element ersetzen' tun.
6-28 |
CoDeSys V2.3 |