Sie sind auf Seite 1von 277

Programmierhandbuch

DE
ecomatDisplay 4.3"
CR1140
CR1141
Betriebssystem: ab V1.0.x.x
CODESYS-Version: 3.5 SP19
11534353 / 00 09 / 2023
CR1140 CR1141

Inhaltsverzeichnis
1 Vorbemerkung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1 Rechtliche Hinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Zweck des Dokuments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Verwendete Symbole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Warnhinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5 Übersicht: ifm Anwender-Dokumentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.6 Übersicht: CODESYS-Dokumentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.7 Änderungshistorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.7.1 Änderungen 09 / 2023. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2 Sicherheitshinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.1 Notwendige Vorkenntnisse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2 Cyber-Sicherheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.1 Sicherheitsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.2 Empfohlener Zugriffsschutz für das Gerät . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.3 Empfohlener Zugriffsschutz für das CODESYS-Projekt auf dem PC. . . . . . . . . . . . . 14
3 Systemvoraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.1 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4 Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.1 CODESYS Development System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.1.1 CODESYS Development System installieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.2 ifm-Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.2.1 Komponenten des Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.2.2 Package installieren (PC/Laptop) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.2.3 Package aktualisieren (PC/Laptop) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.2.4 Package deinstallieren (PC/Laptop) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.3 Laufzeitsystem des Geräts aktualisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3.1 Allgemeine Hinweise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3.1.1 Softwarepaket herunterladen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3.2 Laufzeitsystem aktualisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3.2.1 Firmware-Update via USB-Schnittstelle (lokal) . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3.2.2 Firmware-Update via Web-Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.3.3 IP-Parameter der Ethernet-Schnittstelle einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.3.3.1 IP-Parameter von DHCP-Server beziehen . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.3.3.2 IP-Parameter manuell einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5 Erste Schritte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.1 CODESYS starten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.2 CODESYS-Projekt erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.2.1 Projekt-Template. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.2.2 Übersicht: Projektstruktur mit ecomatDisplay4.3“ . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.2.3 Neues Projekt mit ecomatDisplay4.3“ erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.3 CODESYS-Bedienungsanleitung nutzen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.4 Programmierschnittstelle konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.4.1 Eindeutige Identifizierung des Geräts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.4.2 Kommunikationspfad der SPS setzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.5 Zugriffsschutz für Projekt aktivieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.6 Geräte-Benutzer verwalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.7 Informationen zu Applikationen eingeben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.8 Auf das Linux-System des Geräts zugreifen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
6 Gerätekonfiguration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6.1 Setup-Modus starten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6.1.1 Bedienhinweise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.1.1.1 Tastenfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.1.1.2 Kreuzwippe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.1.1.3 Touchscreen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.1.1.4 Setup: Passwort eingeben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6.1.2 Setup-Modus: Menüs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

2
CR1140 CR1141

6.1.2.1 Gerät neu starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31


6.1.2.2 Gerät im Recovery-Modus starten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6.1.3 Device-Info: Geräte-Informationen anzeigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.1.4 IOs: EAs anzeigen/steuern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.1.5 Setup: Geräte-Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.1.5.1 Zeitzone einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
6.1.5.2 Datum und Uhrzeit einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
6.1.5.3 Displayausrichtung einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
6.1.5.4 System-Passwort einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
6.1.5.5 System-Passwort für Setup-Modus aktivieren . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.1.5.6 System-Passwort für Setup-Modus deaktivieren (nicht empfohlen). . . . . . . . . 37
6.1.5.7 Splashscreen einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.1.5.8 Displayhelligkeit einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
6.1.6 Ethernet: Ethernet-Schnittstelle konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
6.1.7 Services: Netzwerkdienste einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.1.8 Backup: Datensicherung erstellen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.1.9 Tests: Gerät testen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6.1.10 CAN Test: CAN-Schnittstelle testen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6.1.10.1 CAN Test: Daten empfangen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6.2 Recovery-Modus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6.2.1 Lokalen Recovery-Modus starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.2.1.1 Bedienhinweise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.2.2 Recovery-Modus beenden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.3 SPS-Anwendung starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6.4 Setup verlassen, Gerät neu starten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7 Systemkonfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.1 SPS konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.2 Schriftart hinzufügen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.3 CAN-Schnittstellen konfigurieren. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.3.1 Gerätebeschreibungsdateien (EDS-Dateien) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.3.2 CANbus hinzufügen und konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.3.3 RawCAN: CANLayer 2 konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
7.3.4 CANopen: CANopen Manager konfigurieren (Master). . . . . . . . . . . . . . . . . . . . . . . . 47
7.3.5 CANopen: CANopen Device konfigurieren (Slave) . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.3.6 J1939: J1939-Manager konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
8 Programmierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
8.1 Objekte der SPS-Anwendung mit ecomatDisplay4.3"-Template . . . . . . . . . . . . . . . . . . . . 50
8.2 SPS-Anwendung erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
8.2.1 Unterstützte Programmiersprachen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
8.2.2 PLC_PRG in FUP und ST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
8.2.3 Verfügbarer Speicher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
8.2.4 Unterstützte Variablentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
8.2.5 Persistente Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
8.2.6 Symbolnamen der Bedienelemente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
8.2.7 Arbeitsreihenfolge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
8.3 ifm-Funktionsbibliotheken nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
8.3.1 Gerät konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
8.3.2 Gerät steuern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
8.3.3 Ethernet-Schnittstelle konfigurieren. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
8.3.4 Gerätetasten konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
8.3.5 Gerätedisplay konfgurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
8.3.6 Auf Gerätesensoren und Eingänge/Ausgänge zugreifen. . . . . . . . . . . . . . . . . . . . . . 56
8.3.7 Systemzeit konfigurieren/lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
8.3.8 Dateien verwalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
8.3.9 Touchscreen konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
8.3.10 Screenshot erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
8.3.11 CSV-Dateien verwalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
8.3.12 Hilfsfunktionen nutzen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
8.3.13 ecomatPanel einstellen und nutzen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
8.4 Visualisierungen nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
8.4.1 Einstellungen im Projekt-Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

3
CR1140 CR1141

8.4.2 Externe Dateien einbinden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59


8.4.2.1 Konventionen für Dateinamen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
8.4.3 Texte und Schriftarten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
8.4.4 Sprachumschaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
8.4.4.1 Beispiel Sprachumschaltung bei Mausklick . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
8.4.4.2 Beispiel Variable CurrentLanguage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
8.4.5 Bildersammlung verwenden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
8.4.5.1 Bildereigenschaften. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
8.4.5.2 Bootscreen einstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
8.4.6 Visualisierungsmanager nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
8.4.6.1 Funktionen für Bedienelemente definieren . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
8.4.6.2 Globales Umschalten der Visualisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
8.4.6.3 Lokales Umschalten der Visualisierung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
8.4.6.4 Target-Visualisierung konfigurieren. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
8.4.6.5 Web-Visualisierung konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
8.4.7 Visualisierung erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
8.5 Touchscreen-Funktionen nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
8.5.1 Hinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
8.5.2 Eingabeobjekte der Visualisierung konfiguieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.5.3 Multitouch-Funktionalität nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.6 Bedienung ohne Touch-Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.7 CSV-Datei-Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.7.1 CSV-Datei schreiben. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.7.1.1 Vorgehensweise: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
8.7.2 CSV-Datei lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
8.7.3 Stringformat uiGenericLogSizeMax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
8.8 CODESYS IIoT Libraries SL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
8.9 CANopen nutzen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
8.9.1 CANopen: SDO senden und empfangen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.9.2 CANopen: Network Management (NMT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.10 RawCAN nutzen (CAN Layer 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.10.1 RawCAN: CAN-Netzwerkknoten steuern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.10.2 RawCAN: CAN-Nachrichten versenden und empfangen. . . . . . . . . . . . . . . . . . . . . . 70
8.10.3 RawCAN: Remote CAN-Nachrichten anfordern und versenden . . . . . . . . . . . . . . . . 71
8.11 J1939 nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8.11.1 CAN-Bus anhängen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8.11.2 CAN-Schnittstelle zuordnen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8.11.3 J1939-Manager anhängen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8.11.4 J1939-Manager parametrieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8.11.5 J1939-ECU anhängen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
8.11.6 J1939-ECU parametrieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
8.12 EtherNet/IP nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
8.12.1 Ethernet-Adapter an ein Ethernet anhängen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.12.2 EtherNet/IP-Adapter anhängen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.12.3 EtherNet/IP-Modul anhängen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.12.4 EtherNet/IP-Schnittstelle konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.13 Modbus nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
8.13.1 Ethernet-Adapter an ein Ethernet anhängen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
8.13.2 Modbus TCP Master anhängen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
8.13.3 Modbus TCP Slave Device anhängen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
8.13.4 Modbus TCP Slave Device konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
8.14 Task-Abarbeitung konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
8.14.1 Task konfigurieren. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
8.14.2 Visualisierungs-Task konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
8.15 ecomatPanel nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
8.15.1 ecomatPanel anschließen und aktivieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
9 Betrieb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.1 CODESYS-Projekt auf das Gerät übertragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.1.1 Anwendung auf das Gerät laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.1.2 Anwendung auf dem Gerät löschen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.2 Betriebszustände der SPS-Anwendung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

4
CR1140 CR1141

9.2.1 Betriebszustand der SPS-Anwendung anzeigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79


9.2.2 SPS-Anwendung starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
9.2.3 SPS-Anwendung stoppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
9.3 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
9.3.1 Unterstützte Reset-Varianten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
9.3.2 Anwendung rücksetzen (warm) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
9.3.3 Anwendung rücksetzen (kalt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
9.3.4 Anwendung rücksetzen (Ursprung) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
9.4 Systeminformationen anzeigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
10 ifm-Funktionsbibliotheken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
10.1 Verhaltensmodell der ifm-Funktionsbausteine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
10.1.1 Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
10.1.1.1 Meldungen / Diagnose-Codes der Funktionsbausteine . . . . . . . . . . . . . . . . . . 82
10.1.2 Verhaltensmodell ENABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
10.1.2.1 Reaktion auf Fehler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
10.1.3 Verhaltensmodell EXECUTE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
10.1.3.1 Reaktion auf Fehler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
10.2 Bibliothek ifm_ecomatDisplay43inch_Cnt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
10.3 Bibliothek ifmCANopenManager.library. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
10.3.1 COP_GetNodeState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
10.3.2 COP_SDOread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
10.3.3 COP_SDOwrite. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.3.4 COP_SendNMT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
10.3.5 NMT_SERVICE (ENUM). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
10.3.6 NMT_STATES (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
10.4 Bibliothek ifmDevice_ecomatDisplay43inch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
10.4.1 Common . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
10.4.1.1 BootIntoRecovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
10.4.1.2 BootIntoSetup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
10.4.1.3 GetDeviceOrientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
10.4.1.4 HideSplashScreen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
10.4.1.5 LoadSplashScreen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .104
10.4.1.6 SetDeviceOrientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106
10.4.1.7 ShutdownDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108
10.4.2 Ecomat Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110
10.4.2.1 SetKeyLED_ecomatPanel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110
10.4.2.2 ControlAllKeyLEDs_ecomatPanel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .112
10.4.2.3 SetKeyMapping_ecomatPanel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
10.4.2.4 GetKeyMapping_ecomatPanel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .116
10.4.2.5 GetStatus_ecomatPanel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118
10.4.3 Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
10.4.3.1 GetEthernetInterfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
10.4.3.2 GetIPsettings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .121
10.4.3.3 GetIPsettings2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .123
10.4.3.4 SetIPsettings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .125
10.4.3.5 SetIPsettings2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127
10.4.4 Keypad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
10.4.4.1 GetKeyMapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
10.4.4.2 ResetAllKeyLED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .131
10.4.4.3 ResetKeyMapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .133
10.4.4.4 SetKeyLED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .135
10.4.4.5 SetKeyMapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137
10.4.5 LCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .139
10.4.5.1 GetBootupBacklight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .139
10.4.5.2 GetLCD_Backlight. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141
10.4.5.3 SetBootupBacklight. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .143
10.4.5.4 SetLCD_Backlight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .145
10.4.6 Local IO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .147
10.4.6.1 GetServiceInput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .147
10.4.6.2 GetTemperatures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .149
10.4.6.3 GetTemperatures2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .151

5
CR1140 CR1141

10.4.6.4 GetTemperaturesCyclic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153


10.4.7 Status LED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154
10.4.7.1 GetBootupStatusLEDState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154
10.4.7.2 SetBootupStatusLEDState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .156
10.4.7.3 SetStatusLEDstate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158
10.4.8 Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .160
10.4.8.1 USBstorageHandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .160
10.4.9 System Commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162
10.4.9.1 LinuxSysCallAsync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162
10.4.9.2 LinuxSysCallAsync2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .164
10.4.9.3 LinuxSysCallSync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .166
10.4.9.4 LinuxSysCallSync2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .168
10.4.10 System Info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .170
10.4.10.1 GetSysInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .170
10.4.10.2 GetSysResources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172
10.4.11 System Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .174
10.4.11.1 GetAvailableTimesZones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .174
10.4.11.2 GetNTP_Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .176
10.4.11.3 GetSysTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .178
10.4.11.4 GetSysTimeCyclic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180
10.4.11.5 SetNTP_Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182
10.4.11.6 SetSysTime. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .184
10.4.11.7 SetTimeZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186
10.4.12 Touch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .188
10.4.12.1 DisableTouchScreen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .188
10.4.12.2 SetTouchOptimisationMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190
10.4.13 Window Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .192
10.4.13.1 PrintScreen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .192
10.4.14 Enums. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
10.4.14.1 CAN_BAUDRATE (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
10.4.14.2 CAN_CHANNEL (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
10.4.14.3 eDAY_OF_WEEK (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
10.4.14.4 eETHERNET_INTERFACES (ENUM). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
10.4.14.5 eIP_ADDRESS_VERSION (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195
10.4.14.6 eKEY_LED_ID (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195
10.4.14.7 eKEY_LED_ID_ECOMAT_PANEL (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . .195
10.4.14.8 eKEY_MAP_CODES (ENUM). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196
10.4.14.9 eOBJECT_FLIP (ENUM). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
10.4.14.10eOBJECT_ROTATION (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
10.4.14.11eSTATUS_LED_FLASH_FREQ (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
10.4.14.12eTOUCH_OPTIMISATION_MODE (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . .198
10.4.15 Structs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
10.4.15.1 stCPU_CORE (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
10.4.15.2 stDATE_TIME (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199
10.4.15.3 stIPV4SETTING (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199
10.4.15.4 stIP_SETTING (STRUCT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199
10.4.15.5 stKEY_LED_NIGHT_MODE (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199
10.4.15.6 stKEY_MAP_LIST (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
10.4.15.7 stKEY_MAP_LIST_ECOMAT_PANEL (STRUCT) . . . . . . . . . . . . . . . . . . . . .200
10.4.15.8 stLED_CONTROL_ECOMAT_PANEL (STRUCT) . . . . . . . . . . . . . . . . . . . . .201
10.4.15.9 stLED_SETTINGS (STRUCT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .201
10.4.15.10stLED_SETTINGS_ECOMAT_PANEL (STRUCT) . . . . . . . . . . . . . . . . . . . . .201
10.4.15.11stNETWORK_USAGE_INFO (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . .202
10.4.15.12stNTP_SETTINGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202
10.4.15.13stSYSTEM_TEMPERATURES (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . .202
10.4.15.14stSYS_INFO_BASIC (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202
10.4.15.15stSYS_INFO_EXTENDED (STRUCT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .203
10.4.15.16stSYS_INFO_INTERNAL (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .204
10.4.15.17stSYS_MEMORY (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .204
10.4.15.18stSYS_USAGE_INFO (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .204
10.4.16 Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205
10.4.16.1 aETH_ITF_LIST (ALIAS). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205

6
CR1140 CR1141

10.4.16.2 aTIME_ZONE_LIST (ALIAS). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205


10.4.17 Global Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205
10.4.17.1 CANconstants (GVL). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205
10.4.17.2 GCL_Data (GVL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205
10.4.17.3 GCL_RGB_COLOUR(_ECOMAT_PANEL) (GVL) . . . . . . . . . . . . . . . . . . . . .205
10.4.18 Global Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .206
10.4.18.1 GVL_Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .206
10.5 Bibliothek ifmFileUtil.library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207
10.5.1 Enums. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207
10.5.1.1 eCSV_MODE (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207
10.5.2 Structs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207
10.5.2.1 stCSV_HEADER (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207
10.5.2.2 stLOG_DATA (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207
10.5.2.3 stLOG_FILE_CONFIG (STRUCT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .207
10.5.2.4 stSEPARATOR_CONFIG (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .208
10.5.3 Generic File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .208
10.5.3.1 Copy_Device_To_USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .208
10.5.3.2 Copy_USB_To_Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .210
10.5.3.3 DeleteFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .212
10.5.3.4 FileCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .214
10.5.3.5 SyncFileMemory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .216
10.5.4 Log File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .218
10.5.4.1 ReadCSV8Byte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .218
10.5.4.2 ReadCSVData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220
10.5.4.3 WriteCSV8Byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .222
10.5.4.4 WriteCSV8ByteHeader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225
10.5.4.5 WriteCSVData_Linear. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .227
10.5.4.6 WriteCSVData_Ring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .230
10.5.4.7 WriteCSVHeader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233
10.5.5 Parameter File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235
10.5.5.1 ReadParmSingleAsync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235
10.5.5.2 WriteParmSingleAsync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .237
10.5.6 Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .239
10.5.6.1 Buffer_To_String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .239
10.5.6.2 GetFileSizeAsync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .241
10.5.7 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243
10.5.7.1 ANY_TYPE_TO_STRING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243
10.5.7.2 ByteArray_To_String. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244
10.5.7.3 DW_To_4Byte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
10.5.7.4 ifmCONCAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .246
10.5.7.5 ifmFIND. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .247
10.5.7.6 ifmMID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .248
10.5.7.7 Pack2Byte_To_Word . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249
10.5.7.8 Pack4Byte_To_DW. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .250
10.5.7.9 RTC_TO_STRING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
10.5.7.10 VALIDATE_FILE_NAME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
10.5.7.11 Word_To_2Byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
10.5.7.12 _8Byte_To_CSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
10.5.8 GlobalConstants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .255
10.5.8.1 ifmGCL (GVL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .255
10.6 Bibliothek ifmRawCAN.library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .256
10.6.1 CAN_Enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .256
10.6.2 CAN_Recover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .258
10.6.3 CAN_RemoteRequest. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .260
10.6.4 CAN_RemoteResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262
10.6.4.1 Eingangsparameter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262
10.6.5 CAN_Rx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .264
10.6.6 CAN_RxMask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .266
10.6.7 CAN_RxRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .268
10.6.8 CAN_RxRangeExt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .270
10.6.9 CAN_Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .272
10.6.10 CAN_Tx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .274

7
CR1140 CR1141

10.6.11 BUS_STATE (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .276


10.6.12 CAN_Info (GVL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .276
10.6.13 CAN_BUS_STATE (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .276
11 Anhang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .277
11.1 Adressvergabe in Ethernet-Netzwerken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .277

8
CR1140 CR1141

1 Vorbemerkung
Anleitung, technische Daten, Zulassungen und weitere Informationen über den QR-Code auf dem
Gerät / auf der Verpackung oder über documentation.ifm.com.

1.1 Rechtliche Hinweise


© Alle Rechte bei ifm electronic gmbh. Vervielfältigung und Verwertung dieser Anleitung, auch
auszugsweise, nur mit Zustimmung der ifm electronic gmbh.
Alle auf unseren Seiten verwendeten Produktnamen, -Bilder, Unternehmen oder sonstige Marken sind
Eigentum der jeweiligen Rechteinhaber:
• AS-i ist Eigentum der AS-International Association, (→ www.as-interface.net)
• CAN ist Eigentum der Robert Bosch GmbH, Deutschland (→ www.bosch.de)
• CANopen ist Eigentum der CiA (CAN in Automation e.V.), Deutschland (→ www.can-cia.org)
• CODESYS™ ist Eigentum der CODESYS GmbH, Deutschland (→ www.codesys.com)
• DeviceNet™ ist Eigentum der ODVA™ (Open DeviceNet Vendor Association), USA
(→ www.odva.org)
• EtherNet/IP® ist Eigentum der → ODVA™
• EtherCAT® ist eine eingetragene Marke und patentierte Technologie, lizenziert durch die Beckhoff
Automation GmbH, Deutschland
• IO-Link® ist Eigentum der → PROFIBUS Nutzerorganisation e.V., Deutschland (→ www.io-
link.com)
• ISOBUS ist Eigentum der AEF – Agricultural Industry Electronics Foundation e.V., Deutschland
(→ www.aef-online.org)
• Microsoft® ist Eigentum der Microsoft Corporation, USA (→ www.microsoft.com)
• Modbus® ist Eigentum der Schneider Electric SE, Frankreich (→ www.schneider-electric.com)
• PROFIBUS® ist Eigentum der PROFIBUS Nutzerorganisation e.V., Deutschland
(→ www.profibus.com)
• PROFINET® ist Eigentum der → PROFIBUS Nutzerorganisation e.V., Deutschland
• Windows® ist Eigentum der → Microsoft Corporation, USA

1.2 Zweck des Dokuments


Dieses Dokument gilt für folgende Geräte des Typs ecomatDisplay 4.3“ ab Firmware-Version
V 1.x.x.x:
• CR1140
• CR1141
Diese Anleitung beschreibt folgende Themen:
• Konfiguration des Geräts im Setup-Modus
• Aktualisierung der Firmware des Geräts im Recovery-Modus
• Konfiguration des Geräts mit CODESYS 3.5
• Programmierung der geräteinternen SPS mithilfe des Programmiersystems CODESYS 3.5
• Beschreibung der gerätespezifischen CODESYS-Funktionsbibliotheken

9
CR1140 CR1141

1.3 Verwendete Symbole


Voraussetzung
Handlungsanweisung
Reaktion, Ergebnis
[...] Bezeichnung von Tasten, Schaltflächen oder Anzeigen
Querverweis
Wichtiger Hinweis
Fehlfunktionen oder Störungen sind bei Nichtbeachtung möglich
Information
Ergänzender Hinweis

1.4 Warnhinweise
Warnhinweise warnen vor möglichen Personen- und Sachschäden. Dadurch wird der sichere Umgang
mit dem Produkt ermöglicht. Warnhinweise sind wie folgt abgestuft:

WARNUNG
Warnung vor schweren Personenschäden
w Tödliche und schwere Verletzungen sind möglich, wenn der Warnhinweis nicht beachtet
wird.

VORSICHT
Warnung vor leichten bis mittelschweren Personenschäden
w Leichte bis mittelschwere Verletzungen sind möglich, wenn der Warnhinweis nicht
beachtet wird.

ACHTUNG
Warnung vor Sachschäden
w Sachschäden sind möglich, wenn der Warnhinweis nicht beachtet wird.

1.5 Übersicht: ifm Anwender-Dokumentation


Die Dokumentation für das Gerät besteht aus folgenden Modulen:

Dokument Inhalt / Beschreibung


Datenblatt • Technische Daten
Montageanleitung / Betriebsanleitung • Anleitung für Montage, elektrische Installation und
Inbetriebnahme
• Technische Daten
Programmierhandbuch • Erstellen eines CODESYS-Projekts mit diesem Gerät
• Zielsystem einstellen mit CODESYS
• Geräteinterne SPS mit CODESYS programmieren
• Beschreibung der gerätespezifischen CODESYS-
Funktionsbibliotheken

Soweit Dokumente nicht vorliegen, können diese bei ifm angefordert werden oder stehen als
Download auf der ifm-Website zur Verfügung: www.ifm.com

10
CR1140 CR1141

1.6 Übersicht: CODESYS-Dokumentation


Die CODESYS GmbH stellt für die Programmierung der SPS des Geräts die folgende Anwender-
Dokumentation bereit:

Dokument Inhalt / Beschreibung


Online-Hilfe • Kontextsensitive Hilfe
• Beschreibung des Programmiersystems CODESYS
• Beschreibung der Komponenten und Bibliotheken
CODESYS Installation und Erste Schritte • Hinweise zur Installation des Programmiersystems CODESYS
• Erste Schritte beim Umgang mit dem Programmiersystem CODESYS

Alle Dokumente sind nach der Installation des Programmiersystems CODESYS 3.5 auf der Festplatte
des PC/Laptops gespeichert und aufrufbar:
• Online-Hilfe:
...\Programme\3S CoDeSys\CoDeSys\Online-Help
• CODESYS Installation und Erste Schritte:
...\Programme\3S CoDeSys\CoDeSys\Documentation

1.7 Änderungshistorie

1.7.1 Änderungen 09 / 2023


• Neuerstellung des Dokuments

11
CR1140 CR1141

2 Sicherheitshinweise
• Das beschriebene Gerät wird als Teilkomponente in einem System verbaut.
– Die Sicherheit dieses Systems liegt in der Verantwortung des Erstellers.
– Der Systemersteller ist verpflichtet, eine Risikobeurteilung durchzuführen und daraus eine
Dokumentation nach den gesetzlichen und normativen Anforderungen für den Betreiber und
den Benutzer des Systems zu erstellen und beizulegen. Diese muss alle erforderlichen
Informationen und Sicherheitshinweise für den Betreiber, Benutzer und ggf. vom
Systemersteller autorisiertes Servicepersonal beinhalten.
• Dieses Dokument vor Inbetriebnahme des Produktes lesen und während der Einsatzdauer
aufbewahren.
• Das Produkt muss sich uneingeschränkt für die betreffenden Applikationen und
Umgebungsbedingungen eignen.
• Das Produkt nur bestimmungsgemäß verwenden (Ò Montageanleitung / Betriebsanleitung,
Bestimmungsgemäße Verwendung).
• Die Missachtung von Anwendungshinweisen oder technischen Angaben kann zu Sach- und / oder
Personenschäden führen.
• Für Folgen durch Eingriffe in das Produkt oder Fehlgebrauch durch den Betreiber übernimmt der
Hersteller keine Haftung und keine Gewährleistung.
• Unsachgemäße oder nicht bestimmungsgemäße Verwendung können zu Funktionsstörungen des
Gerätes, zu unerwünschten Auswirkungen in der Applikation oder zum Verlust der
Gewährleistungsansprüche führen.
• Montage, elektrischer Anschluss, Inbetriebnahme, Programmierung, Konfiguration, Bedienung und
Wartung des Produktes darf nur für die jeweilige Tätigkeit ausgebildetes, autorisiertes
Fachpersonal durchführen.
• Mitgeltende Dokumente beachten.

2.1 Notwendige Vorkenntnisse


Das Dokument richtet sich an Fachkräfte. Dabei handelt es sich um Personen, die aufgrund ihrer
einschlägigen Ausbildung und ihrer Erfahrung befähigt sind, Risiken zu erkennen und mögliche
Gefährdungen zu vermeiden, die der Betrieb oder die Instandhaltung eines Produkts verursachen
kann.
Für die Programmierung sollten die Personen zusätzlich über Kenntnisse der Steuerungstechnik und
Erfahrung in der SPS-Programmierung nach IEC 61131-3 verfügen.
Das Dokument enthält Angaben zum korrekten Umgang mit dem Produkt.

12
CR1140 CR1141

2.2 Cyber-Sicherheit

WARNUNG
Bei Betrieb des Gerätes in einer ungeschützten Netzwerkumgebung.
w Unzulässiger Zugriff auf Daten (Lesen oder Schreiben) möglich.
w Unzulässige Beeinflussung der Gerätefunktion möglich.
u Zugriffsmöglichkeiten auf das Gerät prüfen und einschränken.
u Zugriff auf autorisierte Personen beschränken.
u Gerät nicht mit offenen Netzwerken oder dem Internet verbinden.
u Wenn ein Zugriff aus dem Internet dennoch erforderlich ist, dann zwingend ein sicheres
Verfahren wählen, um sich mit dem Gerät zu verbinden (z.B. VPN).
u Verschlüsselte Datenübertragung nutzen (z. B. https / TLS).

2.2.1 Sicherheitsfunktionen
Die Sicherheitsfunktionalitäten des Geräts basieren auf den Anforderungen des Bundesamtes für
Sicherheit in der Informationstechnik (BSI):
Das Gerät bietet folgende Sicherheitsfunktionen:

Design
• gehärtete Yocto-Linux-Distribution

Integrität
• Komfortables Update des Gesamtsystems (Recovery-System)
• Backup & Restore der Systemkonfiguration

Authentifizierung
• Benutzerverwaltung über CODESYS Development System
• Individuelle Rechteverwaltung sowohl für das Programmiersystem als auch für das Laufzeitsystem
über CODESYS Development System
• Individuelles System-Passwort zum Schutz der Systemkonfiguration und der Backup & Restore-
Funktion
• Individuelles System-Passwort zum Schutz des Zugriffs über FTP, Telnet oder SSH

Vertraulichkeit
• Gesicherte Datenverbindung über SFTP oder SCP

Beschränkter Datenfluss
• Werkseitige Separierung von Maschinennetzwerk (CAN) und OT-Netzwerk (Ethernet)

2.2.2 Empfohlener Zugriffsschutz für das Gerät


u Den Zugriffsschutz des Geräts durch die Kombination folgender Maßnahmen realisieren:

u Das Standard-System-Passwort in ein individuelles und sicheres Passwort ändern (Ò


System-Passwort ändern / 35).
w Der Zugriff auf das Gerät über FTP, Telnet und SSH ist nur noch nach Eingabe des
geänderten System-Passworts möglich.

13
CR1140 CR1141

u Das System-Passwort für den Zugriff auf den Setup-Modus aktivieren (Ò System-Passwort
für Setup-Modus aktivieren / 37).
w Nach einem Geräte-Neustart ist das Ändern von Einstellungen und das Erstellen von
System-Backups im Setup-Modus nur noch nach Eingabe des geänderten System-
Passworts möglich.

u Das Benutzer-Management in CODESYS auf dem Gerät aktivieren und den Benutzer
Administrator mit einem individuellen und sicheren Passwort in CODESYS einrichten (Ò
Geräte-Benutzer verwalten / 26).
w Der Zugriff auf das Gerät über CODESYS (z.B. Verbinden mit dem Gerät, Projekt laden,
etc.) ist nur noch nach Eingabe der Login-Daten möglich.

w Wenn alle genannten Maßnahmen umgesetzt worden sind: Das Gerät ist vor nicht autorisiertem
Zugriff und vor unerlaubter Manipulation bestmöglich geschützt.

2.2.3 Empfohlener Zugriffsschutz für das CODESYS-Projekt auf dem PC


u Den Zugriffsschutz für das CODESYS-Projekt auf dem PC durch folgende Maßnahme realisieren:

u Benutzer-Management (Ò Zugriffsschutz für Projekt aktivieren / 26) für den Zugriff auf das
CODESYS-Projekt aktivieren und einrichten.

w Das CODESYS-Projekt auf dem PC ist vor nicht autorisiertem Zugriff und vor unerlaubter
Manipulation geschützt.

14
CR1140 CR1141

3 Systemvoraussetzungen

3.1 Hardware
Zum Programmieren der geräteinternen SPS des ecomatDisplay 4.3" sind folgende Hardware-
Komponenten erforderlich:
• Ein Gerät der Produktfamilie ecomatDisplay 4.3"
• Ein PC für das Programmiersystem CODESYS
• Bei Geräten mit Ethernet-Schnittstelle:
– Eine Ethernet-Verbindung zwischen CODESYS-PC und der Ethernet-Schnittstelle des Geräts
• Bei Geräten mit USB-Schnittstelle:
– Einen an die USB-Schnittstelle des Geräts angeschlossenen USB-Ethernet-Adapter
– Eine Ethernet-Verbindung zwischen CODESYS-PC und dem USB-Ethernet-Adapter

3.2 Software
Zum Programmieren der geräteinternen SPS des ecomatDisplay 4.3" sind folgende Software-
Komponenten erforderlich:

Komponente Beschreibung Version


CODESYS Development Programmiersoftware CODESYS für normenkonforme SPS- 3.5 SP19
System Programmierung nach IEC 61131-3
Package "CODESYS für • Geräte- und Schnittstellenbeschreibung des Geräts 1.0.x.x
ifm ecomatDisplay43" • Funktionsbibliotheken für Programmierung des Geräts

Die in diesem Handbuch zugesicherten Eigenschaften und Funktionen sind nur mit den
Software-Komponenten in den hier angegebenen Versionen erreichbar.
ifm electronic stellt auf seiner Webseite die Software-Komponenten zum Herunterladen bereit:
www.ifm.com

15
CR1140 CR1141

4 Installation

4.1 CODESYS Development System


Das CODESYS Development System (kurz: CODESYS) ist eine Entwicklungsumgebung für die
Erstellung von SPS-Anwendungen (Applikationen) gemäß Norm IEC 61131-3.

4.1.1 CODESYS Development System installieren


Um die Software "CODESYS Development System" zu installieren:
u Programmiersystem CODESYS 3.5 SP19 installieren.
w CODESYS 3.5 SP19 ist auf dem PC/Laptop installiert.

4.2 ifm-Package
u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Package Manager: Ò Online-Hilfe > CODESYS Development System > Packages und
Lizenzen verwalten

4.2.1 Komponenten des Packages


ifm stellt für die Programmierung der geräteinternen SPS das CODESYS-Package "CODESYS für ifm
ecomatDisplay43" bereit. Das Package enthält folgende Komponenten:
• Gerätebeschreibungsdateien
• ifm-Funktionsbibliotheken und Erweiterungen

u Detaillierte Informationen zu den ifm-Funktionsbibliotheken: ifm-Funktionsbibliotheken


(Ò / 82)

4.2.2 Package installieren (PC/Laptop)


Um ein Package zu installieren:

Voraussetzungen
• CODESYS 3.5 SP19 ist auf dem PC/Laptop installiert.
• Das Softwarepaket für das Gerät ecomatDisplay 4.3" ist auf dem PC/Laptop gespeichert und
entpackt.
• CODESYS ist geschlossen.

1 CODESYS Installer starten


u In Windows: Den [CODESYS Installer] als Administrator starten.
w Der [CODESYS Installer] erscheint.
w Das Fenster zeigt installierte CODESYS-Komponenten an.

2 Package installieren
u [Datei installieren] klicken.
w Der Datei Explorer erscheint.
u Die gewünschte Datei *.package wählen.
u Auf [Öffnen] klicken und mit [OK] bestätigen.

16
CR1140 CR1141

u Das Feld [Ich möchte trotz der fehlenden Signatur(en) fortfahren] aktivieren.
u Auf [Fortfahren] klicken.
w Das Package wird installiert.
w Eine Erfolgsmeldung erscheint.
u Auf [OK] klicken.
w Das Fenster [CODESYS Installer] zeigt die installierten Packages.
u Optional: Zur Installation eines weiteren Packages erneut wie beschrieben vorgehen.
u Den CODESYS Installer schließen.
u CODESYS starten.
w Das installierte Package steht jetzt zur Verfügung.

4.2.3 Package aktualisieren (PC/Laptop)


Um ein Package zu aktualisieren:

1 Alte Version des Packages deinstallieren


u Package deinstallieren (Ò Package deinstallieren (PC/Laptop) / 17)

2 Neue Version des Packages installieren


u Package installieren (Ò Package installieren (PC/Laptop) / 16)

3 Gerät aktualisieren
u Im Gerätebaum: Knoten [ecomatDisplay 4.3" (ecomatDisplay 4.3")] markieren.
u [Projekt] > [Gerät aktualisieren...] wählen.
w Dialogfenster erscheint.
u [Gerät aktualisieren] klicken, um den Aktualisierungsvorgang zu starten.
w CODESYS lädt neue Gerätebibliotheken.
w Ansicht des Gerätebaums wird aktualisiert.
u [Schließen] klicken, um den Package Manager zu beenden.
u Projekt speichern.

4.2.4 Package deinstallieren (PC/Laptop)


Um ein Package zu deinstallieren:

Voraussetzungen:
• CODESYS ist geschlossen.

1 CODESYS Installer starten


u In Windows: Den [CODESYS Installer] als Administrator starten.
w Der [CODESYS Installer] erscheint.
w Das Fenster zeigt installierte CODESYS-Komponenten an.

2 Package deinstallieren
u Das gewünschte Package im Bereich [AddOns] auswählen.
w Informationen zum gewählten Package werden angezeigt.
u Die Package-Version wählen, die deinstalliert werden soll.

17
CR1140 CR1141

u Auf [Deinstallieren] klicken und mit [OK] bestätigen.


w Die gewählte Package-Version wird entfernt.
u Den [CODESYS Installer] schließen.

4.3 Laufzeitsystem des Geräts aktualisieren

4.3.1 Allgemeine Hinweise


Um das Laufzeitsystem zu aktualisieren, muss sich das Gerät im Recovery-Modus befinden.

4.3.1.1 Softwarepaket herunterladen


Die Update-Datei befindet sich im Softwarepaket für das Gerät.
u Das aktuelle Softwarepaket von der ifm-Webseite herunterladen: www.ifm.com > Seite des
Produkts > [Downloads] > [Software]
u Das Softwarepaket (zip-Archiv) mit der Update-Datei entpacken.
w Die Update-Datei ist auf dem PC gespeichert.

4.3.2 Laufzeitsystem aktualisieren

ACHTUNG
Gefahr von Datenverlust!
w Eine Unterbrechung des Update-Vorgangs kann zu einem Verlust der auf dem Gerät
gespeicherten Anwenderdaten führen.
u Den Update-Vorgang nicht unterbrechen!

Das Laufzeitsystem des Geräts kann nur im Recovery-Modus aktualisiert werden.


Die aktuelle Version des Laufzeitsystems steht auf der ifm-Webseite zum Herunterladen bereit.
Softwarepaket herunterladen (Ò / 18)

u Eine der folgenden Optionen wählen:


• Firmware-Update via USB-Schnittstelle (lokal) (Ò / 18)
• Firmware-Update via Web-Browser (Ò / 19)

4.3.2.1 Firmware-Update via USB-Schnittstelle (lokal)


u Neues Laufzeitsystem von ifm-Webseite herunterladen: Softwarepaket herunterladen (Ò / 18)
u Update-Datei *.swu auf einen USB-Speicher kopieren.
u USB-Speicher mit Gerät verbinden: Ò Betriebsanleitung
u Recovery-Modus starten: Lokalen Recovery-Modus starten (Ò / 43)

18
CR1140 CR1141

Recovery App

INSTALL FROM FILE

NETWORK SETUP

START DEVICE SETUP

RESTART

eth0: 192.168.82.245 255.255.255.0

Abb. 1: Lokaler Recovery-Modus

u Während des Update-Vorgangs keine Tasten am Gerät drücken.


u Während des Update-Vorgangs die Spannungsversorgung nicht unterbrechen.

u Mit Schaltfläche [INSTALL FROM FILE] Dateibrowser öffnen.


w Dateibrowser erscheint.
u Im Dateibrowser die Update-Datei *.swu wählen.
u Mit Schaltfläche [OPEN] den Update-Vorgang starten.
w Softwarekomponenten des Geräts werden automatisch aktualisiert: Allgemeine Hinweise
(Ò / 18)
w Display zeigt Statusmeldungen.
w Wenn erfolgreich: Statusmeldung auf dem Display erscheint: [Success!]
u Mit Schaltfläche [RESTART] das Gerät neu starten.
w Gerät startet neu.
w Das Firmware-Update ist abgeschlossen.

4.3.2.2 Firmware-Update via Web-Browser


u Neues Laufzeitsystem von ifm-Webseite herunterladen: Softwarepaket herunterladen (Ò / 18)
u Recovery-Modus starten: Recovery-Modus starten
u Ethernet-Netzwerkverbindung zwischen Gerät und PC herstellen: Ò Betriebsanleitung
u Optional: Parameter der Ethernet-Schnittstelle einstellen.
u In die Adresszeile eines Browsers folgende Adresse eingeben: http://<IP-Adresse des
Geräts>:8080 ; standardmäßig: http://192.168.82.245:8080
w Web-Interface des Geräts erscheint im Browser.
w Web-Interface wechselt direkt auf Registerkarte [Software Update].

19
CR1140 CR1141

Abb. 2: Recovery-Modus Web

Damit der Zugriff auf den Recovery-Modus über einen Web-Browser möglich ist, muss der
lokale Recovery-Modus des Geräts gestartet sein.

u Während des Update-Vorgangs keine Tasten am Gerät drücken.


u Während des Update-Vorgangs Schaltfläche [Restart] im Web-Interface nicht klicken.
u Während des Update-Vorgangs die Spannungsversorgung nicht unterbrechen.

u In den Datei-Bereich [Click here...] klicken.


w Windows Datei-Explorer erscheint.
u Heruntergeladene Update-Datei *.swu wählen und mit [Open] übernehmen und Update starten.
w Datei-Bereich zeigt Dateiname der gewählten Update-Datei.
w Gewählte Update-Datei wird auf das Display geladen.
w Softwarekomponenten des Geräts werden automatisch aktualisiert: Allgemeine Hinweise
(Ò / 18)
w Web-Interface und Geräte-Display zeigen Statusmeldungen.
w Wenn erfolgreich: Statusmeldung im Web-Interface erscheint: [Update successfully] .

20
CR1140 CR1141

u Schaltfläche [Restart] im Web-Interface klicken.


w Gerät startet neu.
w Das Firmware-Update ist abgeschlossen.

4.3.3 IP-Parameter der Ethernet-Schnittstelle einstellen


Um das Laufzeitsystem des Geräts über ein Netzwerk zu aktualisieren, muss das Gerät mit dem
entsprechenden Netzwerk verbunden sein.

Standardeinstellungen der IP-Adresse:


IP-Adresse = 192.168.82.245
Subnetzmaske = 255.255.255.0
Gateway-Adresse = 192.168.82.1

Für die Konfiguration der Ethernet-Schnittstelle stehen folgende Optionen zur Verfügung:
• Manuell: Der Bediener stellt die Schnittstellen-Parameter (IP-Adresse, Subnetzmaske, Gateway-
Adresse) manuell ein.
• Automatisch: Die Schnittstellen-Parameter werden über das Dynamic Host Configuration Protocol
(DHCP) eingestellt.

WARNUNG
Bei Betrieb des Gerätes in einer ungeschützten Netzwerkumgebung.
w Unzulässiger Zugriff auf Daten (Lesen oder Schreiben) möglich.
w Unzulässige Beeinflussung der Gerätefunktion möglich.
u Zugriffsmöglichkeiten auf das Gerät prüfen und einschränken.
u Zugriff auf autorisierte Personen beschränken.
u Gerät nicht mit offenen Netzwerken oder dem Internet verbinden.
u Wenn ein Zugriff aus dem Internet dennoch erforderlich ist, dann zwingend ein sicheres
Verfahren wählen, um sich mit dem Gerät zu verbinden (z.B. VPN).
u Verschlüsselte Datenübertragung nutzen (z. B. https / TLS).

u Um die IP-Parameter der Ethernet-Schnittstelle einzustellen:


u Eine der folgenden Optionen wählen:
• IP-Parameter von DHCP-Server beziehen (Ò / 21)
• IP-Parameter manuell einstellen (Ò / 22)

4.3.3.1 IP-Parameter von DHCP-Server beziehen


u Ethernet-Schnittstelle des Geräts mit dem IP-Netzwerk verbinden.
u Gerät im Recovery-Modus starten: Lokalen Recovery-Modus starten (Ò / 43)
u Mit [▲] / [▼] das Menü [NETWORK SETUP] wählen und mit [RETURN] aktivieren.
w Die Menüseite zeigt aktuelle Einstellungen ([DHCP], [IP-ADDRESS], [NETMASK]) der
vorhandenen Netzwerk-Schnittstellen.
u Mit [▲] / [▼] die Netzwerk-Schnittstelle wählen und mit [RETURN] bestätigen.
w Die gewählte Netzwerk-Schnittstelle ist markiert.
u Mit [◀] / [▶] das Kontrollfeld [DHCP] wählen und mit [RETURN] aktivieren.

21
CR1140 CR1141

u Mit [◀] / [▶] die Schaltfläche [APPLY] wählen und mit [RETURN] aktivieren.
w DHCP ist für die gewählte Netzwerk-Schnittstelle aktiviert. In der Spalte [DHCP] der Übersicht
wird [yes] angezeigt.
w Gerät versucht, IP-Parameter der Ethernet-Schnittstelle vom DHCP-Server des Netzwerks zu
beziehen.
w Wenn erfolgreich:
w Menüseite [NETWORK SETUP] erscheint.
w Informationszeile zeigt aktive Werte der IP-Parameter [DHCP], [IP-ADDRESS], [NETMASK].
w Gerät ist im IP-Netzwerk unter den angezeigten Parametern erreichbar.
u Optional: Um die Erreichbarkeit des Geräts zu prüfen, in der Eingabeaufforderung folgenden
Befehl ausführen: ping <Geräteadresse>
z.B.: ping 192.168.82.245

4.3.3.2 IP-Parameter manuell einstellen

u Weitere Infos zur Vergabe von IP-Adressen Ethernet-Netzwerken: Adressvergabe in


Ethernet-Netzwerken (Ò / 277)

u Gerät im Recovery-Modus starten. Lokalen Recovery-Modus starten (Ò / 43)


u Mit [▲] / [▼] das Menü [NETWORK SETUP] wählen und mit [RETURN] aktivieren.
w Die Menüseite zeigt aktuelle Einstellungen ([DHCP], [IP-ADDRESS], [NETMASK]) der
vorhandenen Netzwerk-Schnittstellen.
u Mit [▲] / [▼] die Netzwerk-Schnittstelle wählen und mit [RETURN] bestätigen.
w Die gewählte Netzwerk-Schnittstelle ist markiert.
u Mit [◀] / [▶] den ersten IP-Parameter im Bereich [IP-Address] wählen.
w Der gewählte IP-Parameter ist markiert.
u Mit [RETURN] die gewählte Zahl schrittweise einstellen. Dauerhaftes Drücken von [RETURN] =
Schnelles Inkrementieren der Zahl.
w Eingabefeld zeigt eingestellten Wert.
u Mit [◀] / [▶] das nächste Eingabefeld wählen und den gewünschten Wert einstellen.
u Vorgang wiederholen, bis gewünschte IP-Adresse eingestellt ist.
u Oben beschriebene Schritte für die Parameter der Subnetzmaske im Bereich [Netmask]
wiederholen.
u Mit [◀] / [▶] die Schaltfläche [APPLY] wählen und mit [RETURN] aktivieren.
w Eingestellte Parameterwerte sind aktiviert.
w Wenn erfolgreich:
w Menüseite [NETWORK SETUP] erscheint.
w Informationszeile zeigt aktive Werte der IP-Parameter [DHCP], [IP-ADDRESS], [NETMASK].
w Gerät ist im IP-Netzwerk unter den angezeigten Parametern erreichbar.
u Optional: Um die Erreichbarkeit des Geräts zu prüfen, in der Eingabeaufforderung folgenden
Befehl ausführen: ping <Geräteadresse>
z.B.: ping 192.168.82.245

22
CR1140 CR1141

5 Erste Schritte

5.1 CODESYS starten


ü Die Software-Komponenten sind korrekt installiert. Installation (Ò / 16)
u CODESYS starten: Doppelklick auf das Symbol CODESYS 3.5 SP19
w CODESYS startet.
w Die CODESYS-Bedienoberfläche erscheint.

5.2 CODESYS-Projekt erstellen


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Projekt erstellen: Ò Online-Hilfe > CODESYS Development System > Projekt anlegen und
konfigurieren

Projekt verwalten: Ò Online-Hilfe > CODESYS Development System > Projekt schützen und
speichern

5.2.1 Projekt-Template
ifm stellt für jedes Modell der Gerätefamilie ein spezielles Projekt-Template bereit. Das Template
enthält die optimalen Voreinstellungen für das jeweilige Zielgerät (Target). Der Anwender kann das
Template während der Projekterstellung wählen. Die Templates sind nach der Installation des
Gerätepackages verfügbar.

Um Fehler bei einer manuellen Systemkonfiguration zu vermeiden, wird ausdrücklich


empfohlen, bei der Erstellung eines Projekts in CODESYS das Projekt-Template der ifm zu
verwenden.

5.2.2 Übersicht: Projektstruktur mit ecomatDisplay4.3“


Ein CODESYS-Projekt enthält alle Komponenten für die Konfiguration, Verwaltung und
Programmierung des ecomatDisplay4.3“. Alle Komponenten eines Projekts sind im Fenster [Geräte] in
einer Baumansicht hierarchisch abgebildet. CODESYS-Projekte mit einem ecomatDisplay4.3“ besitzt
folgende Struktur:

Abb. 3: Legende:

Device (ecomatDisplay43inch_64bit) Logische Vatersteuerung, bietet Zugriff auf die allgemeinen Einstellungen des
ecomatDisplay4.3“.
SPS-Logik Enthält die Applikation des ecomatDisplay4.3“.
Application Enthält die Objekte, die für ein Steuerungsprogramm und die Visualisierung
benötigt werden.
Communication Bietet Zugriff auf die Konfigurationsoptionen der Kommunikationsschnittstel-
len.

23
CR1140 CR1141

Ethernet / CAN Verfügbare Kommunikationsschnittstellen.

5.2.3 Neues Projekt mit ecomatDisplay4.3“ erstellen


ü Alle notwendigen Software-Komponenten sind korrekt installiert. Installation (Ò / 16)
ü CODESYS wurde fehlerfrei gestartet.
u [Datei] > [Neues Projekt...] wählen.
w Fenster [Neues Projekt] erscheint.
u Folgende Werte einstellen:
[Kategorie]: ecomatDisplay wählen.
[Vorlagen]: Das zum Gerät passende Template wählen: [ifm ecomatDisplay43inch ...
Name]: Projektname eingeben
[Ort]: Speicherort der Projektdatei wählen.
u [OK] klicken, um die eingegebenen Werte zu bestätigen.
w CODESYS erzeugt ein neues Projekt mit ecomatDisplay4.3“.
w Fenster [Geräte] zeigt den Gerätebaum des Projekts. Übersicht: Projektstruktur mit
ecomatDisplay4.3“ (Ò / 23)
u [Datei] > [Projekt speichern] wählen.
w CODESYS speichert das Projekt.

5.3 CODESYS-Bedienungsanleitung nutzen


Dieses Handbuch beschreibt ausschließlich die Integration, Konfiguration und Programmierung des
Geräts mithilfe des Programmiersystems CODESYS.
Für die Beschreibung von Nutzeraktionen und Komponenten der Bedienoberfläche wird die
CODESYS-eigene Terminologie verwendet.
Standard-Funktionen und -Mechanismen von CODESYS werden nicht beschrieben. Am Anfang jedes
Abschnitts erfolgt ein Verweis auf die entsprechenden Kapitel der Online-Hilfe von CODESYS.
Um die Online-Hilfe von CODESYS aufzurufen:
u CODESYS starten.
w Bedienoberfläche von CODESYS erscheint.
u [F1] drücken.
w Online-Hilfe des Programmiersystems CODESYS erscheint.

u Machen Sie sich mit dem Programmiersystem CODESYS vertraut! Dies gilt insbesondere für
folgende Themen:
- Bezeichnungen und Funktionen der Elemente der Bedienoberfläche
- Grundlegende Menüfunktionen
- Programmiertechniken und Mechanismen zur Datenhaltung
- Feldbusunterstützung

5.4 Programmierschnittstelle konfigurieren


Die Programmierung der geräteinternen SPS erfolgt über die Ethernet-Schnittstelle des Geräts (Lage
der Anschlüsse: Ò Betriebsanleitung).

24
CR1140 CR1141

u Für Geräte ohne integrierte Ethernet-Schnittstelle einen USB-Ethernet-Adapter verwenden.


Entsprechende Herstellerdokumentation beachten.

Gerät und PC können entweder direkt oder indirekt über ein Ethernet-Netzwerk miteinander
gekoppelt werden.
u Für die Verbindung der Ethernet-Schnittstellen nur empfohlenes Zubehör nutzen. Ò
Betriebsanleitung
u Für den Anschluss im Netzwerk sollte ein erfahrener Anwender oder ein System-
Administrator die Einrichtung der Netzwerkadressen und die Konfiguration vornehmen.
u Bei Bedarf die Ethernet-Schnittstelle des Geräts oder des Adapters im Setup-Modus
einstellen. Connection

Voraussetzungen für die Verbindung zwischen dem CODESYS-PC und dem Gerät:
ü Die Firmwarestände des verwendeten Projekt-Templates und des Geräts stimmen überein.
ü Die Applikation auf dem Gerät ist geöffnet.
– oder -

u Wenn keine Applikation auf dem Gerät läuft, das Setup mit beenden: SPS-Anwendung
starten
w Das Display des Geräts ist schwarz.

WARNUNG
Bei Betrieb des Gerätes in einer ungeschützten Netzwerkumgebung.
w Unzulässiger Zugriff auf Daten (Lesen oder Schreiben) möglich.
w Unzulässige Beeinflussung der Gerätefunktion möglich.
u Zugriffsmöglichkeiten auf das Gerät prüfen und einschränken.
u Zugriff auf autorisierte Personen beschränken.
u Gerät nicht mit offenen Netzwerken oder dem Internet verbinden.
u Wenn ein Zugriff aus dem Internet dennoch erforderlich ist, dann zwingend ein sicheres
Verfahren wählen, um sich mit dem Gerät zu verbinden (z.B. VPN).
u Verschlüsselte Datenübertragung nutzen (z. B. https / TLS).

5.4.1 Eindeutige Identifizierung des Geräts


u Um sich erfolgreich auf dem gewünschten Gerät einzuloggen und das Einloggen auf dem falschen
Gerät zu vermeiden, mindestens eine der folgenden Maßnahmen durchführen:
• (Manuelle) Prüfung der Seriennummer und der IP-Adresse des Geräts
• Das Gerät identifizieren mit der Blink-Test-Funktion (Wink-Funktion)
• Unterschiedliche Passwörter für unterschiedliche Geräte verwenden
• Geräte in unterschiedlichen Netzwerken oder Subnetzen betreiben

5.4.2 Kommunikationspfad der SPS setzen


Um den Kommunikationspfad zwischen dem Programmiersystem CODESYS und der geräteinternen
SPS zu konfigurieren:
ü CODESYS-PC/Laptop und Ethernet-Schnittstelle des Geräts sind verbunden.
ü Optional: IP-Einstellungen der Ethernet-Schnittstelle anpassen.
u Im Gerätebaum: Doppelklick auf Symbol [Device (ecomatDisplay)]

25
CR1140 CR1141

u Im Editor-Fenster: Registerkarte [Kommunikation] wählen.


w Editor-Fenster zeigt Kommunikationseinstellungen.
u In Liste [Gateway] das gewünschte Gateway wählen.
w Liste zeigt gewählten Gateway.
u [Netzwerk durchsuchen...] aktivieren.
w Fenster [Gerät auswählen] erscheint.
u Gateway-Knoten wählen und mit [Geräte suchen] den Scan-Vorgang starten.
w CODESYS durchsucht Netzwerk nach Geräten.
w Fenster zeigt Netzwerkpfad und erkannte Geräte.
u Knoten des Geräts wählen und [OK] aktivieren, um den Kommunikationspfad zur geräteinternen
SPS zu setzen.
w CODESYS kann Daten auf die geräteinterne SPS übertragen.

5.5 Zugriffsschutz für Projekt aktivieren


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Projekt schützen und speichern: Ò Online-Hilfe > CODESYS Development System > Projekt
schützen und speichern

Um das Projekt auf dem Gerät vor nicht autorisiertem Zugriff zu schützen, kann der Nutzer einen
Passwortschutz nutzen.
u [Projekt] > [Projekteinstellungen] wählen.
w Fenster [Projekteigenschaften] erscheint.
u [Sicherheit] wählen.
u Kontrollfeld [Projektdateiverschlüsselung] aktivieren.
u Im Feld [Neues Passwort] das gewünschte Passwort eingeben.
u Im Feld [Neues Passwort bestätigen] das eingegebene Passwort erneut eingeben.
u [OK] wählen, um den Zugriffsschutz für das Projekt zu aktivieren.
w Zugriffsschutz ist aktiviert. Projekt ist verschlüsselt.

5.6 Geräte-Benutzer verwalten


Die Geräte-Benutzer-Verwaltung ist defaultmäßig deaktiviert.
u Der Systemersteller muss einen Benutzer und ein Passwort einrichten, damit ein unerlaubter
Fremdzugriff auf das Gerät verhindert wird.

u Im CODESYS-Gerätebaum: Doppelklick auf das Gerät.


u Im Editor-Fenster: Registerkarte [Benutzer und Gruppen] wählen.
u Auf die Schaltfläche [Laden] klicken.
w Die Benutzerkonfiguration wird aus der Steuerung geladen.
w Das Editor-Fenster zeigt die Benutzerkonfiguration an.
u Einen neuen Benutzer Administrator hinzufügen.
w Das Fenster [Benutzer bearbeiten] erscheint.
u Passwort 2-malig eingeben (maximal 32 Zeichen).
u Fenster mit [OK] schließen.

26
CR1140 CR1141

u Nach Änderung: Benutzerdaten mit [Download] auf Steuerung laden.


u Das Gerät neu starten.
u Die Änderungen abspeichern mit: Auf [Datei] > [Projekt speichern] klicken.

5.7 Informationen zu Applikationen eingeben


u Zur Identifikation und besseren Unterscheidung der Standard-Applikation und der Safety-
Applikation aussagekräftige Informationen bei beiden Applikationen wie folgt eingeben:
u Rechtsklick auf [Applikation] > [Eigenschaften] > Registerkarte [Information]
u Aussagekräftige Texte eingeben bei:
[Author]
[Version]
[Beschreibung], z.B. Safety-SPS Schaltschrank vorne oder Standard-SPS Schaltschrank
hinten
u Fenster schließen mit Klick auf [OK]
u Projekt speichern mit [Datei] > [Projekt speichern]
w Nach Übersetzen und Laden in die jeweilige SPS: Die Datei swinfo.txt -enthält die
entsprechenden Informationen auf der Steuerung. (Software-Informationen (swinfo.txt))

5.8 Auf das Linux-System des Geräts zugreifen


Der Nutzer kann über die Ethernet-Schnittstelle direkt auf das Linux-System des Geräts zugreifen.
Folgende Optionen werden unterstützt:

Option Beschreibung Beispielanwendung


Telnet unverschlüsselter Zugang zu Linux-Kommandozeile Putty (→ www.putty.org)
SSH verschlüsselter Zugang zur Linux-Kommandozeile Putty (→ www.putty.org)
FTP unverschlüsselter Zugriff auf Linux-Dateisystem (Dateien kopieren) WinSCP (→ www.winscp.net)
File-Transfer in CODESYS
SCP verschlüsselter Zugriff auf Linux-Dateisystem (Dateien kopieren) WinSCP (→ www.winscp.net)

Benutzername und Passwort: Login-Daten

27
CR1140 CR1141

6 Gerätekonfiguration
Dieses Kapitel beschreibt die Konfiguration des Geräts im Setup-Modus.

6.1 Setup-Modus starten


Der Setup-Modus des Geräts dient zur Einstellung grundlegender Geräteeigenschaften.

Wenn keine gültige Anwendung auf dem Gerät gespeichert ist, geht das Gerät nach dem
Systemstart automatisch in das Startmenü. Von dort kann der Setup-Modus gestartet werden.

Wenn eine gültige Anwendung auf dem Gerät gespeichert ist, den Setup-Modus manuell
starten:
u Gerät vom Stromkreis trennen.
u Folgende Aktionen gleichzeitig ausführen:
Klemme SERVICE0 auf VBB legen.
Gerät durch Verbinden mit dem Stromkreis wieder einschalten.
w Gerät startet neu.
w Gerät ist im Setup-Modus.

Alternativ bei Geräten mit integriertem Tastenfeld möglich:


u Gerät vom Stromkreis trennen.
u Folgende Aktionen gleichzeitig ausführen:
Am Gerät gleichzeitig 2 beliebige Tasten drücken und gedrückt halten.
Gerät durch Verbinden mit dem Stromkreis einschalten.
w Gerät startet neu.
w Gerät ist im Setup-Modus.

Startseite im Setup-Modus:

Abb. 4: Setup-Modus: Device Info / System

28
CR1140 CR1141

6.1.1 Bedienhinweise
Im Setup-Modus gelten für die Bedienelemente folgende Regeln:

6.1.1.1 Tastenfunktion
Die Belegung der Funktionstasten ist kontextabhängig. Welche Aktion bei der Betätigung einer Taste
ausgelöst wird, zeigt das Symbol der korrespondierenden Schaltfläche auf dem Bildschirm.
Die folgende Tabelle gibt eine Übersicht der verfügbaren Tastenfunktionen:

Schaltfläche Bedeutung Beispiel


[▼], [▶] Nächstes Bildschirmelement markieren Nächsten Menüpunkt wählen
[▲], [◀] Vorheriges Bildschirmelement markieren Vorherigen Menüpunkt wäheln
[RETURN] Funktion des markierten Bildschirmelements akti- Untermenü aufrufen
vieren In Menüansicht in das markierte Verzeichnis wechseln
[▲], [▼], [◀], [▶] • in jeweilige Richtung navigieren Taste auf Bildschirmtastatur wählen
• Ziffernwerte inkrementieren / dekrementieren
Setup beenden. -

Gerät neu starten. -

Starten CAN-Test starten


Backup starten
Recovery-Modus starten. -

Datei oder Einstellung speichern IP-Adresse speichern

Empfang / Senden stoppen Empfang / Senden von CAN-Telegrammen stoppen

Senden starten Senden von CAN-Telegrammen starten

Bestätigung / OK Backup-Einstellungen sind ok. Backup-Vorgang star-


ten.
Stoppen CAN-Test stoppen
Backup stoppen

Bedienung: Im Setup-Modus navigieren


Um im Setup-Modus zu navigieren:
u Mit [▼] den nächsten Menüpunkt wählen (vorwärts).
- oder -
Mit [▲] den vorherigen Menüpunkt wählen (rückwärts).
w Gewählter Menüpunkt hat den Fokus (orangefarben markiert).
u Mit [RETURN] oder [▶] zur gewählten Menüseite wechseln.

Bedienung: Auf einer Menüseite navigieren


Um innerhalb einer Menüseite zu navigieren:
u Mit [▼] / [▶] oder [▲] / [◀] das gewünschte GUI-Element wählen (z.B. Ziffernfeld, Optionsfeld).
w Gewähltes Bildschirm-Element hat Fokus (orangefarbener Rahmen).
w Gewähltes Element ist aktiv und kann geändert werden.
u Mit [RETURN] das gewählte Bildschirm-Element aktivieren oder deaktivieren (z.B. Optionsfeld)
- oder -
Mit [▲] oder [▼] den Wert des gewählten Bedienlementes schrittweise vergrößern oder verkleinern
(z.B. Ziffernfeld).

29
CR1140 CR1141

w Änderungen werden angezeigt.

u Mit die Änderungen speichern.

Bedienung: Text eingeben mit der Bildschirmtastatur


Die Bedienoberfläche des Laufzeitsystems verfügt über eine Bildschirmtastatur. Sie erscheint
automatisch, sobald vom Bediener die Eingabe von Zeichen erwartet wird.

Die Bildschirmtastatur zeigt die QWERTY-Tastaturbelegung. Diese Einstellung kann nicht


geändert werden.
Bei der Passworteingabe: Zum Schutz sensibler Information erscheint nur das zuletzt
eingegebene Zeichen im Klartext. Alle anderen Zeichen werden durch ein * ersetzt.

Um Text mit der Bildschirmtastatur einzugeben:


u Mit [▲] / [▼] und [▶] / [◀] die Schaltfläche des gewünschten Zeichens wählen.
w Die gewählte Schaltfläche hat den Fokus (orangefarbener Rahmen).
u Mit [RETURN] die gewählte Schaltfläche aktivieren.
w Im Textfeld erscheint das eingegebene Zeichen.
u Vorgang wiederholen, um alle benötigten Zeichen einzugeben.

u Mit das eingegebene Passwort bestätigen.

6.1.1.2 Kreuzwippe
Die Kreuzwippe besteht aus folgenden Einzeltasten:
• 4 Navigationstasten ([▲], [▼], [◀], [▶])
• 1 RETURN-Taste (Center-Taste)
Bestimmte Navigationsfunktionen können sowohl mit den Funktionstasten als auch mit der
Kreuzwippe ausgeführt werden. Die folgende Tabelle zeigt die Funktionen der Kreuzwippe:

Kreuzwippe Funktionstaste Funktion


[▲] nach oben bewegen
vorheriges Menü-Element wählen

[◀] nach links bewegen


vorheriges Menü-Element wählen

[▶] nach rechts bewegen


nächstes Menü-Element wählen

[▼] nach unten bewegen


nächstes Menü-Element wählen

[RETURN] Menüpunkt / Schaltfläche aktivieren

6.1.1.3 Touchscreen
Im Setup-Modus ist die Touchscreen-Funktionalität des Geräts aktiviert.
Bestimmte Navigationsfunktionen können sowohl mit den Funktionstasten als auch mithilfe des
Touchscreens ausführt werden. Folgende Bedienelemente kann der Bediener direkt per Berührung
auf dem Touchscreens aktivieren:

30
CR1140 CR1141

• Schaltflächen
• Menüpunkte
• Tasten der Bildschirmtastatur
• Symbole im Datei-Verzeichnis
• Eingabefelder

6.1.1.4 Setup: Passwort eingeben


Um das Passwort für den uneingeschränkten Zugriff auf den Setup-Modus einzugeben:
u Korrektes Passwort eingeben. Bedienung: Text eingeben mit der Bildschirmtastatur

u Mit das eingegebene Passwort bestätigen.


w Der Setup-Modus erscheint.
w Der Bediener hat uneingeschränkten Zugriff auf alle Setup-Funktion.

Der uneingeschränkte Zugriff auf alle Setup-Funktionen gilt nur so lange, bis der Nutzer den
Setup-Modus verlässt.
u Beim Aufruf des Setup-Modus das Passwort erneut eingegeben!

6.1.2 Setup-Modus: Menüs


Der Setup-Modus enthält folgende Menüs:

Schaltfläche Bedeutung
[Device Info] Device-Info: Geräte-Informationen anzeigen (Ò / 32)
[IOs] IOs: EAs anzeigen/steuern (Ò / 32)
[Setup] Setup: Geräte-Setup (Ò / 32)
[Ethernet] Ethernet: Ethernet-Schnittstelle konfigurieren (Ò / 38)
[Services] Services: Netzwerkdienste einstellen (Ò / 39)
[Backup] Backup: Datensicherung erstellen (Ò / 39)
[Tests] Tests: Gerät testen (Ò / 40)
[CAN-Test] CAN Test: CAN-Schnittstelle testen (Ò / 40)

6.1.2.1 Gerät neu starten


Um das Gerät neu zu starten (Reboot):
u Mit  in der Fußzeile das Gerät neu starten.
w Das Gerät startet neu.

Wenn auf dem Gerät ein gültiges Projekt geladen ist, wird nach dem Neustart dieses Projekt
automatisch gestartet.
Wenn kein gültiges Projekt gespeichert ist, dann erscheint nach dem Neustart das Setup-
Startmenü.

6.1.2.2 Gerät im Recovery-Modus starten


Um das Gerät im Recovery-Modus zu starten:

31
CR1140 CR1141

u Mit in der Fußzeile den Recovery-Modus starten.


w Das Gerät startet im Recovery-Modus.

6.1.3 Device-Info: Geräte-Informationen anzeigen


Die folgenden Informationen werden ohne Eingabe des System-Passworts angezeigt.
Um die System-Informationen anzuzeigen:
u Navigationspfad: [Device Info] > Registerkarte [System]
Um die Geräte-Informationen anzuzeigen:
u Navigationspfad: [Device Info] > Registerkarte [Device]
Um die Display-Informationen anzuzeigen:
u Navigationspfad: [Device Info] > Registerkarte [Display]

6.1.4 IOs: EAs anzeigen/steuern


Eingänge
u Navigationspfad: [IOs]
w Folgende Eingangswerte werden angezeigt:

Bezeichnung Bedeutung
Core Temp Temperatur des Prozessors
Board Temp Temperatur auf der Platine
CPU Auslastung des Prozessors
Service Pin Zustand des Service-Pins:
• OFF: Der Service-Pin ist nicht mit der Betriebsspannung verbunden.
• ON: Der Service-Pin ist mit der Betriebsspannung verbunden.
RAM (MB) Anzeige: Verwendeter RAM / Gesamter RAM

Ausgänge
u Navigationspfad: [IOs]
w Folgende Ausgangswerte werden angezeigt und können gesteuert werden:

Bezeichnung Bedeutung
Backlight Aktuelle Displayhelligkeit: 0…100 %
Status LED Farbe der Status-LED
Keypad Farbe der Keypad-LEDs

6.1.5 Setup: Geräte-Setup


u Navigationspfad: [Setup] aktivieren.
u Folgende Einstellungen vornehmen:

Bezeichnung Bedeutung
[Timezone] Zeitzone einstellen (Ò / 33)
[Datetime] Datum und Uhrzeit einstellen (Ò / 33)
[Orientation] Displayhelligkeit einstellen (Ò / 38)

32
CR1140 CR1141

Bezeichnung Bedeutung
[Password] System-Passwort einstellen (Ò / 34)
[Splashscreen] Splashscreen einstellen (Ò / 37)
[Boot Backlight] Displayhelligkeit einstellen (Ò / 38)

6.1.5.1 Zeitzone einstellen


Um die Zeitzone einzustellen:

Eingabefelder wählen
u Navigationspfad: [Setup] > Zeile [Timezone]

Bezeichnung Bedeutung Mögliche Werte


1. Liste Vorauswahl der Zeitzonenregion. z.B. All, America, Asia, Australia, Europe, US
Die Auswahl einer Region wirkt als Filter auf
die Liste mit der Zeitzone.
2. Liste Zeitzone z.B. US/Michigan, Europe/London

Zeitzonenregion wählen
u Die 1. Liste auswählen.
w Die markierte Liste hat orangefarbenen Rahmen.
u Mit [▲] / [▼] den gewünschten Wert einstellen.
u Mit [RETURN] bestätigen.

Zeitzone ändern
u Die 2. Liste auswählen.
w Die markierte Liste hat orangefarbenen Rahmen.
u Mit [▲] / [▼] den gewünschten Wert einstellen.
u Mit [RETURN] bestätigen.

Geänderte Werte speichern


u Mit Verlassen des Setup-Modus werden die geänderten Werte übernehmen und gespeichert.

6.1.5.2 Datum und Uhrzeit einstellen


Um Datum und Uhrzeit (Systemzeit) einzustellen:

Eingabefelder wählen
u Navigationspfad: [Setup] > Zeile [Datetime]

Bezeichnung Bedeutung Mögliche Werte


1. Eingabefeld Datum z.B. 2023.05.31
2. Eingabefeld Uhrzeit z.B. 10:24:21

Datum ändern
u Das 1. Eingabefeld wählen.

33
CR1140 CR1141

w Das markierte Eingabefeld hat orangenen Rahmen.


u Mit dem Softkeyboard den gewünschten Wert einstellen.

u Mit bestätigen.
w Bei ungültigem Wert: Das Eingabefeld wird rot markiert.

Uhrzeit ändern
u Das 2. Eingabefeld wählen.
w Das markierte Eingabefeld hat orangenen Rahmen.
u Mit dem Softkeyboard den gewünschten Wert einstellen.

u Mit bestätigen.
w Bei ungültigen Werten: Das Eingabefeld wird rot markiert.

Geänderte Werte speichern


u Mit Verlassen des Setup-Modus werden die geänderten Werte übernehmen und gespeichert.

6.1.5.3 Displayausrichtung einstellen


Um die Ausrichtung des Displays einzustellen:

1 Menüseite wählen
u Navigationspfad: [Setup] > Zeile [Orientation]
w Menüseite zeigt folgende Informationen:

Bezeichnung Bedeutung
[0] Tasten unten
[90] Tasten links
[180] Tasten oben
[270] Tasten rechts

2 Ausrichtung des Displays ändern


u Die gewünschte Ausrichtung einstellen.
w Nach einer Abfrage startet das Gerät neu.

6.1.5.4 System-Passwort einstellen


u Navigationspfad [Setup] > Zeile [Password] bietet Zugriff auf folgende Funktionen:
• System-Passwort ändern (Ò / 35)
• System-Passwort aktivieren (Ò / 36)
• System-Passwort deaktivieren (Ò / 36)

Im Auslieferungszustand ist der Passwortschutz für den Setup-Modus deaktiviert.


Wird der Passwortschutz nach der Erstinbetriebnahme aktiviert, gilt zunächst das werkseitig
gesetzte Passwort: pdm3
u Um einen wirksamen Schutz zu gewährleisten, das werkseitig gesetzte Passwort ändern!

34
CR1140 CR1141

Die Programmiersoftware CODESYS kann auch bei eingeschaltetem Passwortschutz


uneingeschränkt auf das im Gerät gespeicherte IEC-Projekt zugreifen.
u Um den Zugriff über CODESYS einzuschränken, das Benutzer-Management auf dem Gerät
mit CODESYS aktivieren und einstellen.

Standard-Login-Daten

Werkseitig sind folgende Login-Daten eingestellt:


Benutzername/Login: root
Passwort: pdm3

Diese Einstellungen gelten z.B. für:


• Zugriff auf das Gerät per FTP, Telnet, SSH
• Zugriff auf den Setup-Modus, sofern der Passwortschutz aktiviert ist (Ò System-Passwort für
Setup-Modus aktivieren / 37).

System-Passwort ändern

Bei Verlust des Passworts muss ein Recovery Update durchgeführt werden.
u Geräte-Update durchführen Laufzeitsystem des Geräts aktualisieren (Ò / 18)
u ggf. gesicherte Daten wiederherstellen Laufzeitsystem aktualisieren

Hinweise zur Bedienung der Bildschirmtastatur: Bedienung: Text eingeben mit der
Bildschirmtastatur

Um das System-Passwort zu ändern:


u Navigationspfad: [Setup] > Zeile [Password - Enabled]
u Die Gerätetaste [RETURN] drücken.
w Die Seite zur Passwortkonfiguration erscheint.
u Zum Eingabefeld [Old Password] navigieren.
u Mithilfe der Bildschirmtastatur das bisherige Passwort eingeben. Standardpasswort: Standard-
Login-Daten (Ò / 35)

u Mit die Eingabe bestätigen.


u Zum Eingabefeld [New Password] navigieren.
u Mithilfe der Bildschirmtastatur das neue Passwort eingeben.

u Mit die Eingabe bestätigen.

u Mit das neue Passwort speichern.

Gibt der Anwender das falsche bisherige Passwort ein, erscheint eine Fehlermeldung.
u Eingabe des bisherigen Passworts wiederholen!

w Neues Passwort ist gültig.

35
CR1140 CR1141

System-Passwort aktivieren

Im Auslieferungszustand ist der Passwortschutz für den Setup-Modus deaktiviert.


Wird der Passwortschutz nach der Erstinbetriebnahme aktiviert, gilt zunächst das werkseitig
gesetzte Passwort: pdm3
u Um einen wirksamen Schutz zu gewährleisten, das werkseitig gesetzte Passwort ändern!

Die Programmiersoftware CODESYS kann auch bei eingeschaltetem Passwortschutz


uneingeschränkt auf das im Gerät gespeicherte IEC-Projekt zugreifen.
u Um den Zugriff über CODESYS einzuschränken, das Benutzer-Management auf dem Gerät
mit CODESYS aktivieren und einstellen.

Um den Passwortschutz des Geräts zu aktivieren:


u Navigationspfad: [Setup] > Zeile [Password]
w Der Status des System-Passworts wird angezeigt: [Disabled].
u Die Gerätetaste [RETURN] drücken.
w Die Seite zur Passwortkonfiguration erscheint.
u Die Gerätetaste [RETURN] drücken.
w Das System-Passwort wird aktiviert.
u Mithilfe der Bildschirmtastatur das neue Passwort eingeben.

u Mit die Eingabe bestätigen.

u Mit das neue Passwort speichern.


w Das System-Passwort wird aktiviert für den Zugriff auf das Gerät per FTP, Telnet, SSH.
w Das System-Passwort für den Setup Modus (Ò System-Passwort für Setup-Modus
aktivieren / 37) ist nur wirksam, wenn der Zugriffschutz für den Setup-Modus aktiviert wurde.

System-Passwort deaktivieren

WARNUNG
Deaktivieren des System-Passworts oder Verwenden eines unsicheren System-Passworts.
w Unzulässige Änderung der Einstellungen im Setup-Modus möglich.
w Unzulässiger Zugriff auf Daten (Lesen oder Schreiben) möglich.
u Das System-Passwort aktivieren.
u Ein sicheres System-Passwort wählen.

Um das System-Passwort des Geräts zu deaktivieren (nicht empfohlen):


u Navigationspfad: [Setup] > Zeile [Password]
w Der Status des System-Passworts wird angezeigt: [Enabled].
u Die Gerätetaste [RETURN] drücken.
w Die Seite zur Konfiguration des System-Passworts erscheint.
u Die Gerätetaste [RETURN] drücken.
w Der neue Status des System-Passworts wird angezeigt: [Disabled]
u Mithilfe der Bildschirmtastatur das System-Passwort eingeben.

u Mit die Eingabe bestätigen.

36
CR1140 CR1141

u Mit speichern.
w Das System-Passwort wird deaktiviert für den Zugriff auf das Gerät per FTP, Telnet, SSH.
w Das System-Passwort wird deaktiviert für den Setup-Modus.

6.1.5.5 System-Passwort für Setup-Modus aktivieren

Bei Verlust des Passworts muss ein Recovery Update durchgeführt werden.
u Geräte-Update durchführen Laufzeitsystem des Geräts aktualisieren (Ò / 18)
u ggf. gesicherte Daten wiederherstellen Laufzeitsystem aktualisieren

Hinweise zur Bedienung der Bildschirmtastatur: Bedienung: Text eingeben mit der
Bildschirmtastatur

ü Der Passwort-Schutz für den Setup-Modus ist deaktiviert.


u Navigationspfad: [Setup] > Zeile [Setup]
u Die Gerätetaste [RETURN] drücken.
w Das System-Passwort für den Setup-Modus wird aktiviert.
w Einstellungen können nur nach Eingabe des Passworts vorgenommen werden.
w Die Geräte-Informationen (Ò Device-Info: Geräte-Informationen anzeigen / 32) werden ohne
Eingabe des Passworts angezeigt.

Die Änderungen werden erst beim nächsten Aufruf des Setup-Modus wirksam.

u Mit das Gerät neu starten und anschließend den Setup-Modus erneut starten.

6.1.5.6 System-Passwort für Setup-Modus deaktivieren (nicht empfohlen)

Hinweise zur Bedienung der Bildschirmtastatur: Bedienung: Text eingeben mit der
Bildschirmtastatur

ü Der Passwort-Schutz für den Setup-Modus ist aktiviert.


u Navigationspfad: [Setup] > Zeile [Setup]
u Die Gerätetaste [RETURN] drücken.
w Das System-Passwort für den Setup-Modus wird deaktiviert.

Die Änderungen werden erst beim nächsten Aufruf des Setup-Modus wirksam.

u Mit das Gerät neu starten und anschließend den Setup-Modus erneut starten.

6.1.5.7 Splashscreen einstellen

Das Bild für den Splashscreen kann auch über die Bildersammlung im CODESYS-Projekt auf
das Gerät geladen werden und mit einem FB aktiviert werden. Bootscreen einstellen (Ò / 61)

Um das Bild für den Bootscreen einzustellen:


u Navigationspfad: [Setup] > Zeile [Splashscreen]
u [Browse] wählen.

37
CR1140 CR1141

w Dateibrowser auf dem Gerät erscheint.


u Die Bilddatei markieren.

u Die Bilddatei mit übernehmen.


w Die Bilddatei für den Splashscreen wurde geändert.

Informationen zur Bilddatei für den Splashscreen:

• Bildformat: BMP 24 Bit Version 3.


• RLE-Kompression und gzip-Kompression sind erlaubt.
• Empfohlene Vorgehensweise: Speichern der Bilddatei mit MS Paint als 24 Bit BMP.
• Empfohlene maximale Bildgröße: Auflösung des Displays Ò Datenblatt
• Groß- / Kleinschreibung beim Dateipfad beachten. Linux ist case sensitive.
• Der Dateiname darf nur Kleinbuchstaben enthalten.
• Neue Datei mit dem CODESYS-Filebrowser oder im Setup-Modus auf das Gerät übertragen.
• Maximale Dateigröße: Keine Begrenzung. Die Bilddatei beansprucht einen Teil des verfügbaren
Speichers für die Benutzerapplikation.

6.1.5.8 Displayhelligkeit einstellen


Um die Helligkeit des Displays beim Booten einzustellen:

1 Menüseite wählen
u Navigationspfad: [Setup] > Zeile [Boot Backlight]

Bezeichnung Bedeutung Mögliche Werte


[Boot Backlight] Relative Helligkeit des Bildschirms (Wert in %) 0 minimale Helligkeit
...
100 maximale Helligkeit

2 Helligkeit des Displays ändern


u Mit dem Slider den gewünschten Wert einstellen.

6.1.6 Ethernet: Ethernet-Schnittstelle konfigurieren


Auf dieser Menüseite können die Einstellungen der geräteinterne Ethernet-Schnittstelle (sofern
vorhanden, Ò Technische Daten) oder die Schnittstelle des angeschlossenen USB-Ethernet-Adapters
konfiguriert werden.
u Navigationspfad: [Ethernet]
u Ethernet-Schnittstelle einstellen.

Standardeinstellungen der IP-Adresse:


IP-Adresse = 192.168.82.245
Subnetzmaske = 255.255.255.0
Gateway-Adresse = 192.168.82.1

38
CR1140 CR1141

Bezeichnung Bedeutung Mögliche Werte


[DHCP / Static / Disab- Mode der Ethernet-Schnittstelle einstellen. • DHCP: DHCP-Mode
led] einschalten
• Static: Statische IP-
Adresse verwenden
• Disabled: Ethernet-
Schnittstelle deaktivieren
[Ignore DNS] Verbindungsaufnahme zu einem DNS deaktivieren. Ein / Aus
Das Deaktivieren des DNS führt zu einem schnelleren Gerätestart,
wenn DNS nicht benötigt wird.
[Ignore Routes] Routing zur Verbindung mit dem Internet deaktivieren. Ein / Aus
Das Deaktivieren des Routings führt zu einem schnelleren Gerä-
testart, wenn das Routing nicht benötigt wird.
[IP Address] IP-Adresse der Ethernet-Schnittstelle des Geräts z.B. 192.68.82.245
[Netmask] Subnetzmaske des Netzwerksegments z.B. 255.255.255.0
[Gateway] IP-Adresse des Netzwerk-Gateways z.B. 192.168.82.1

6.1.7 Services: Netzwerkdienste einstellen


Um die Netzwerkdienste zu konfigurieren:

Menüseite wählen
u Navigationspfad: [Services]
u Die gewünschten Dienste aktivieren:

Bezeichnung Bedeutung
[ifm ecomatPanel] Gerätebedienung durch ein ecomatPanel an der CAN-Schnittstelle einschalten / aus-
schalten
[ifm ecologConnect] ecologConnect-Verbindung zum Softwareupload / -download durch ifm-Software ein-
schalten / ausschalten (Funktionalität in Vorbereitung)
[FTP Server] FTP einschalten / ausschalten.
[Telnet Server] TELNET einschalten / ausschalten.
[NTP Server] NTP einschalten / ausschalten.
[SSH / SFTP Server] SSH / SCP einschalten / ausschalten.

u Die gewünschten Dienste aktivieren.

6.1.8 Backup: Datensicherung erstellen


Um Daten vom Gerät auf einem USB-Speicher zu sichern:
u Navigationspfad: [Backup]
u Backupmethode auswählen: [HTTP] oder [USB]
u Die zu sichernden Daten und Einstellungen wählen:

Bezeichnung Bedeutung
[Retain Memory] Daten, die auf dem FLASH-Speicher des Geräts gespeichert sind.
[Ethernet Settings] Einstellungen der Ethernet-Schnittstelle.
[Brightness Setting] Helligkeitseinstellungen.
[Screen Orientation Setting] Einstellungen der Displayausrichtung (Rotation).
[User Data] Alle Änderungen am Dateisystem, z.B.: IEC-Applikation, Visualisierung, benutzerdefinierte
Dateien, Schriftarten etc.

u Wenn auf einen USB-Speicher gespeichert werden soll: USB-Speicher an der USB-Schnittstelle
des Geräts anschließen.

39
CR1140 CR1141

u Mit das Backup mit den gewählten Einstellungen starten.


w Die Daten werden zur angegebenen http-Adresse oder auf den angeschlossenen USB-Speicher
übertragen.
w Die Daten werden in einer *.swu-Datei abgelegt.
w Der Backup-Fortschritt wird grafisch angezeigt.
w Nach Beendigung des Backups erscheint eine Meldung, ob das Backup erfolgreich war.

Mit Hilfe des Recovery-Modus kann das Backup (*.swu) wiederhergestellt werden.
Laufzeitsystem aktualisieren

6.1.9 Tests: Gerät testen


u Navigationspfad: [Tests]
u Eines der folgenden Untermenüs wählen, um Funktionen des Geräts zu testen:
• [Display]
• [Keyboard]
• [Touch]
• [Multi Touch]
u Einen laufenden Test verlassen mit:
• [RETURN]-Taste
oder
• Doppelklick (zweimal Tippen) auf das Touchdisplay

6.1.10 CAN Test: CAN-Schnittstelle testen


u Navigationspfad: [CAN Test]
w Menüseite zeigt folgende Informationen:

Bezeichnung Bedeutung Mögliche Werte


[Interface] CAN-Busschnittstelle eingeben. can0
[Baudrate] Baudrate des CAN-Bus einstellen. 20 kbit/s
33.3 kbit/s
50 kbit/s
83.3 kbit/s
100 kbit/s
125 kbit/s
250 kbit/s
500 kbit/s
800 kbit/s
1000 kbit/s
[Rx Counter] Anzahl der empfangenen Nachrichten
[ID (hex)] CAN-ID des Senders (als Hexadezimal-Zahl) 00000000
...
FFFFFFFF
[Extended] Extended Frame-Format aktiveren / deaktivieren Ein / Aus
[Data (hex)] zu sendende CAN-Nachricht (maximal 8 Bytes) pro Byte:
Der Inhalt jedes Bytes kann separat eingestellt werden (als Hexadezi- 00 = 0
mal-Zahl). ...
FF = 255

40
CR1140 CR1141

Bezeichnung Bedeutung Mögliche Werte


Tabellarische Ansicht der empfangenen CAN-Nachrichten.

Die Menüseite [CAN Test] bietet Zugriff auf folgende Funktionen:


• CAN Test: Daten senden
• CAN Test: Daten empfangen

6.1.10.1 CAN Test: Daten empfangen


Um den Empfang von Daten über eine CAN-Schnittstelle zu testen:

1 Menüseite wählen
u Navigationspfad: [CAN Test]

2 CAN-Bus wählen
u In der Liste [Interface] die CAN-Schnittstelle auswählen.
u In der Liste [Baudrate] die Baudrate einstellen.

3 CAN-Nachricht empfangen

u Mit den Empfang von CAN-Nachrichten auf dem gewählten CAN-Bus starten.
w In der Tabelle erscheinen nacheinander die empfangenen CAN-Nachrichten im Hexadezimal-
Format.
w In [Rx Counter] erscheint die Anzahl der CAN-Nachrichten, die seit dem Übertragungsstart
empfangen wurden.
w Wenn erfolgreich: [Rx Counter] zeigt einen Wert > 0.

u Mit den Empfang der CAN-Nachrichten beenden.


w Wenn nicht erfolgreich: [Rx Counter] zeigt den Wert 0.

u Mit den Empfang der CAN-Nachrichten beenden.


u Verbindung zum CAN-Bus überprüfen.
u Vorgang wiederholen.

6.2 Recovery-Modus
Der Recovery-Modus des Geräts bietet folgende Möglichkeiten:

Schaltfläche Bedeutung
[UPDATE FROM FILE] Firmware-Update via USB-Schnittstelle (lokal) (Ò / 18)
[NETWORK SETUP] Nur im lokalen Recovery-Modus verfügbar:
IP-Parameter der Ethernet-Schnittstelle einstellen (Ò / 21)
[START DEVICE SETUP] Nur im lokalen Recovery-Modus verfügbar:
Setup-Modus starten. (Ò Setup-Modus starten / 28)
[RESTART] Neustart des Geräts.

Für ein Firmware-Update oder einen Geräte-Neustart kann der Recovery-Modus lokal am Gerät oder
über eine Web-Oberfläche bedient werden.

41
CR1140 CR1141

Recovery App

INSTALL FROM FILE

NETWORK SETUP

START DEVICE SETUP

RESTART

eth0: 192.168.82.245 255.255.255.0

Abb. 5: Lokaler Recovery-Modus

Abb. 6: Recovery-Modus Web

42
CR1140 CR1141

Damit der Zugriff auf den Recovery-Modus über einen Web-Browser möglich ist, muss der
lokale Recovery-Modus des Geräts gestartet sein.

6.2.1 Lokalen Recovery-Modus starten


Es gibt verschiedene Möglichkeiten, den lokalen Recovery-Modus zu starten:

Alternativ bei Geräten mit integriertem Tastenfeld möglich:


u Gerät vom Stromkreis trennen.
u Folgende Aktionen gleichzeitig ausführen:
Am Gerät gleichzeitig 3 beliebige Tasten drücken und gedrückt halten.
Gerät durch Verbinden mit dem Stromkreis wieder einschalten.
w Gerät startet neu.
u Tasten so lange gedrückt halten, bis ifm-Logo erscheint / Status-LED orange blinkt.
w Gerät ist im Recovery-Modus.

Alternativ aus dem Setup-Hauptmenü:


Um das Gerät im Recovery-Modus zu starten:

u Mit in der Fußzeile den Recovery-Modus starten.


w Das Gerät startet im Recovery-Modus.

6.2.1.1 Bedienhinweise
Die Bedienung im lokalen Recovery-Modus erfolgt mit dem Touchscreen oder mit den Tasten der
Kreuzwippe:

Kreuzwippe Funktionstaste Funktion


[▲] nach oben bewegen
vorheriges Menü-Element wählen

[◀] nach links bewegen


vorheriges Element wählen

[▶] nach rechts bewegen


nächstes Element wählen

[▼] nach unten bewegen


nächstes Menü-Element wählen

[RETURN] Menüpunkt selektieren


Schaltfläche aktivieren
Wert erhöhen

6.2.2 Recovery-Modus beenden


u Recovery-Bildschirm aufrufen.
u Mit [▲] / [▼] den Menüpunkt [RESTART] wählen und mit [RETURN] bestätigen.

43
CR1140 CR1141

w Das Gerät startet neu.

Wenn auf dem Gerät ein gültiges Projekt geladen ist, wird nach dem Neustart dieses Projekt
automatisch gestartet.
Wenn kein gültiges Projekt gespeichert ist, dann erscheint nach dem Neustart das Setup-
Startmenü.

6.3 SPS-Anwendung starten


u Setup-Modus starten: Setup-Modus starten

u Mit den Setup-Modus beenden.


w Falls ein gültiges Anwendungsprogramm gespeichert ist: Die Anwendung startet.
w Falls kein gültiges Anwendungsprogramm gespeichert ist: Ein leerer Bildschirm erscheint. Der
Zugriff mit CODESYS auf das Gerät ist möglich.
u Mit CODESYS ein gültiges Anwendungsprogramm auf das Gerät übertragen.
u Gerät neu starten (Versorgungsspannung AUS > EIN).

6.4 Setup verlassen, Gerät neu starten


Gerät neu starten

44
CR1140 CR1141

7 Systemkonfiguration

7.1 SPS konfigurieren


Die Konfiguration der SPS des ecomatDisplay erfolgt über den "Generischen Geräte-Editor" des
CODESYS-Programmiersystems.
u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut.
Geräteeditor: Ò Online-Hilfe > CODESYS Development System > Referenz
Benutzeroberfläche > Objekte > Objekt 'Gerät' und Generischer Geräteeditor

Die Konfiguration der SPS erfolgt über den Knoten [Device (ecomatDisplay)] des Gerätebaums.
Um die SPS des ecomatDisplay zu konfigurieren:
u Im Gerätebaum: Doppelklick auf [Device (ecomatDisplay)]
w Editor-Fenster zeigt Geräte-Editor der SPS des ecomatDisplay.

7.2 Schriftart hinzufügen


Eine Schriftart (True Type Font) auf das Gerät laden:
u Mit dem Gerät per winSCP verbinden. (Ò Auf das Linux-System des Geräts zugreifen / 27)
u Datei mit der True Type Font ( *.ttf ) in folgenden Ordner auf dem Gerät kopieren:
/usr/share/fonts/

u Gerät neu starten.


w Alle Schriftarten im Ordner werden installiert und können verwendet werden.

Wenn die Schriftart unter Windows ebenfalls neu installiert wird:


u CODESYS, sofern geöffnet, anschließend neu starten, damit die neue Schriftart in
CODESYS zur Verfügung steht.

7.3 CAN-Schnittstellen konfigurieren


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
CAN-basierte Feldbusse: Ò Online-Hilfe > Feldbusunterstützung > CAN-basierte Feldbusse

45
CR1140 CR1141

Das Gerät verfügt über CAN-Schnittstellen.


Jede CAN-Schnittstelle unterstützt folgende Protokolle:
• RawCAN (CAN Layer 2)
• CANopen Manager
• CANopen Device
• J1939 Manager

u Hinweise zur Taskkonfiguration beachten! Task-Abarbeitung konfigurieren (Ò / 75)


u Für jede in der Anwendung genutzte CAN-Schnittstelle ein separates "CAN-Bus"-Gerät zum
Gerätebaum hinzufügen!

7.3.1 Gerätebeschreibungsdateien (EDS-Dateien)


Falls notwendig:
u Die EDS-Dateien mit den Gerätebeschreibungen für Geräte von ifm von der ifm-Webseite
herunterladen: www.ifm.com
u EDS-Dateien über das Geräte-Repository in CODESYS installieren.

7.3.2 CANbus hinzufügen und konfigurieren


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
CANbus-Einstellungen: Ò Online-Hilfe > Feldbusunterstützung > CAN-basierte Feldbusse >
Registerkarte "CANbus - Allgemein"
u Für jede CAN-Schnittstelle ein separates CANbus-Gerät zum Projektbaum hinzufügen.

CANbus hinzufügen:
u Im Gerätebaum: Rechtsklick auf [CAN].
w Kontextmenü erscheint.
u [Gerät anhängen ...] wählen.
w Fenster [Gerät anhängen] erscheint.
u Folgende Werte einstellen:
[Hersteller]: ifm electronic wählen.
In der Tabelle: [ifmCANbus] wählen.
[Name]: Eindeutige Bezeichnung für CAN-Schnittstelle eingeben.
u Auf [Gerät anhängen] klicken, um das gewählte Gerät zum Projekt hinzuzufügen.
u Auf [Schließen] klicken, um das Fenster zu schließen.
w CODESYS fügt CAN-Schnittstelle zum Gerätebaum hinzu.

CANbus konfigurieren:
u Im Gerätebaum: Doppelklick auf hinzugefügten CAN-Knoten.
w Editor-Fenster zeigt Einstellungsoptionen der CAN-Schnittstelle.

46
CR1140 CR1141

u Im Feld [Netzwerk] die CAN-ID des CAN-Netzwerks wählen.


u In Liste [Baudrate (bit/s)] die Datenrate des CAN-Netzwerks wählen.

u Weiter mit:
• RawCAN: CANLayer 2 konfigurieren (Ò / 47)
• CANopen: CANopen Manager konfigurieren (Master) (Ò / 47)
• CANopen: CANopen Device konfigurieren (Slave) (Ò / 48)
• J1939: J1939-Manager konfigurieren (Ò / 48)

7.3.3 RawCAN: CANLayer 2 konfigurieren


Um eine CAN-Schnittstelle als CANLayer 2 (RawCAN) zu verwenden, sind keine weiteren Aktionen
notwendig. Der Nutzer kann in der Anwendung direkt auf die CAN-Schnittstelle zugreifen.

u Weitere Informationen zur Programmierung des RawCAN-Schnittstelle: RawCAN nutzen


(CAN Layer 2) (Ò / 70)

7.3.4 CANopen: CANopen Manager konfigurieren (Master)


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
CANopen Manager: Ò Online-Hilfe > Feldbusunterstützung > CAN-basierte Feldbusse >
CANopen > CANopen Manager

Die Konfiguration des CANopen Manager basiert auf dem CANopen-Stack des Programmiersystems
CODESYS 3.5.

ü CAN-Schnittstelle hinzufügen und konfigurieren: CANbus hinzufügen und konfigurieren (Ò / 46)


u Im Gerätebaum: Rechtsklick auf hinzugefügten [CAN]-Knoten
w Kontextmenü erscheint.
u Im Kontextmenü [Gerät anhängen...] wählen.
w Dialogfenster [Gerät anhängen] erscheint.
u Folgende Werte einstellen:
[Hersteller]: [<Alle Hersteller>] In Tabelle: [CiA CANopen] > [CiA CANopen Manager] > [CANopen
Manager] wählen.
[Name]: Eindeutige Bezeichnung eingeben.
u Auf [Gerät anhängen] klicken, um das gewählte Gerät zum Projekt hinzuzufügen.
u Auf [Schließen] klicken, um das Fenster zu schließen.
w CODESYS fügt CANopen Manager zum Gerätebaum hinzu.

u Im Gerätebaum: Doppelklick auf hinzugefügten CANopen Manager


w Editor-Fenster zeigt Konfigurationsoptionen.
u CANopen Manager wie gewünscht konfigurieren.
u Projekt speichern, um die Änderungen zu übernehmen.

Weitere Informationen zur Programmierung der CANopen-Schnittstelle: CANopen nutzen


(Ò / 69)

47
CR1140 CR1141

7.3.5 CANopen: CANopen Device konfigurieren (Slave)


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
CANopen Local Device: Ò Online-Hilfe > Feldbusunterstützung > CAN-basierte Feldbusse >
CANopen > CANopen Device

Die Konfiguration des CANopen Device basiert auf dem CANopen-Stack des Programmiersystems
CODESYS 3.5.
ü CAN-Schnittstelle hinzufügen und konfigurieren: CANbus hinzufügen und konfigurieren (Ò / 46)
u Im Gerätebaum: Rechtsklick auf hinzugefügten [CAN]-Knoten
w Kontextmenü erscheint.
u Im Kontextmenü: [Gerät anhängen...] wählen.
w Dialogfenster [Gerät anhängen] erscheint.
u Folgende Werte einstellen:
[Hersteller]: [<Alle Hersteller>]
In Tabelle: [CiA CANopen] > [CiA Lokales Gerät] > [CANopen Device] wählen.
[Name]: Eindeutige Bezeichnung eingeben.
u Auf [Gerät anhängen] klicken, um das gewählte Gerät zum Projekt hinzuzufügen.
u Auf [Schließen] klicken, um das Fenster zu schließen.
w CODESYS fügt CANopen Device zum Gerätebaum hinzu.

u Im Gerätebaum: Doppelklick auf hinzugefügtes CANopen Device


w Editor-Fenster zeigt Konfigurationsoptionen.
u CANopen Device wie gewünscht konfigurieren.
u Projekt speichern, um die Änderungen zu übernehmen.

Weitere Informationen zur Programmierung der CANopen-Schnittstelle: CANopen nutzen


(Ò / 69)

7.3.6 J1939: J1939-Manager konfigurieren


u Machen Sie sich mit den folgenden CODESYS-Funktionen vertraut:
J1939-Manager: Ò Online-Hilfe > Feldbusunterstützung > CAN-basierte Feldbusse > J1939
> J1939-Manager

Die Konfiguration des J1939-Managers basiert auf dem J1939-Stack des Programmiersystems
CODESYS 3.5.
Um eine CAN-Schnittstelle als J1939-Manager zu konfigurieren:
ü CAN-Schnittstelle hinzufügen und konfigurieren. CANbus hinzufügen und konfigurieren (Ò / 46)
u Im Gerätebaum: Rechtsklick auf hinzugefügten [CAN]-Knoten.
w Kontextmenü erscheint.
u Im Kontextmenü [Gerät anhängen...] wählen.
u Dialogfenster [Gerät anhängen] erscheint.

48
CR1140 CR1141

u Folgende Werte einstellen:


[Hersteller]: <Alle Hersteller>
In Tabelle: [SAE J1939] > [SAE J1939 Manager] wählen.
[Name]: Eindeutige Bezeichnung eingeben.
u Auf [Gerät anhängen] klicken, um das gewählte Gerät zum Projekt hinzuzufügen.
u Auf [Schließen] klicken, um das Fenster zu schließen.
w CODESYS fügt J1939-Manager zum Gerätebaum hinzu.

u Im Gerätebaum: Doppelklick auf hinzugefügten J1939-Manager


w Editor-Fenster zeigt Konfigurationsoptionen.
u J1939-Manager wie gewünscht konfigurieren.
u Projekt speichern, um die Änderungen zu übernehmen.

49
CR1140 CR1141

8 Programmierung

8.1 Objekte der SPS-Anwendung mit ecomatDisplay4.3"-Template


Alle Objekte einer SPS-Anwendung sind als Unterelemente des Knotens [Application] im Gerätebaum
gelistet. In der Grundkonfiguration des Templates (Ò CODESYS-Projekt erstellen / 23) enthält eine
SPS-Anwendung folgende Objekte:

Legende:

Objekt Beschreibung
Application Container für Objekte einer SPS-Anwendung.
GlobalVariables Ordner mit Globalen Variablenlisten.
GVL_KeyList Globale Variablenliste zum Auswerten der Gerätetasten.
GVL_KeyList_FT Globale Variablenliste zum Auswerten der Gerätetasten als fallende Flanke.
GVL_KeyList_RT Globale Variablenliste zum Auswerten der Gerätetasten als steigende Flanke.
TextLists Ordner für Textlisten.
TL_eKeyMapCodes Textliste mit Mapping-Codes der Tasten.
ifmImagePool Bildersammlung für die Visualisierung.
Library Manager Bietet Zugriff auf Standard- und gerätespezifische Funktionsbibliotheken.
PLC_PRG(PRG) Bietet Zugriff auf die SPS-Anwendung in der Programmiersprache Funktionsplan (FUP).

50
CR1140 CR1141

Objekt Beschreibung
PLC_PRG_IN_ST(PRG) Bietet Zugriff auf die SPS-Anwendung in der Programmiersprache Strukturierter Text (ST).
Standardmäßig vom Build ausgeschlossen.
Taskkonfiguration Bietet Zugriff auf die Einstellungen der Task-Abarbeitung.
Task Haupttask mit zugewiesenem PLC_PRG.
VISU_TASK Visualisierungstask mit zugewiesener Visualisierung.
Visualizationmanager Bietet Zugriff auf die Eigenschaften der Visualisierungen.
TargetVisu Bietet Zugriff auf die Eigenschaften des Displays.
WebVisu Bietet Zugriff auf die Eigenschaften der Web-Visualisierung.
Visu_Default Bietet Zugriff auf die Visualisierungsseite.

8.2 SPS-Anwendung erstellen


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Ò Online-Hilfe > CODESYS Development System > Applikation programmieren

CODESYS legt bei der Erstellung des Projekts automatisch den Programmbaustein PLC_PRG (PRG)
an. Der Baustein wird zyklisch abgearbeitet. Andere Programme werden in diesem Baustein
aufgerufen.
Um eine SPS-Anwendung zu erstellen:
u Im Gerätebaum: Doppelklick auf [Application] > [PLC_PRG (PRG)]
w Editor-Fenster zeigt Eingabemaske der gewählten Programmiersprache.
u Programmcode eingeben.

8.2.1 Unterstützte Programmiersprachen


Folgende Programmiersprachen nach IEC 61131 werden durch die ifm-Funktionsbibliotheken
unterstützt:
• Funktionsbausteinsprache FUP/FBD
• Kontaktplan KOP/LD
• Strukturierter Text ST
• Ablaufsprache AS/SFC
• Anweisungsliste AWL
• Continuous Function Chart CFC

8.2.2 PLC_PRG in FUP und ST


Das Projekt-Template enthält die PRGs PLC_PRG (PRG) und PLC_PRG_IN_ST (PRG) . Objekte der
SPS-Anwendung mit ecomatDisplay-Template
Das PRG PLC_PRG (PRG) ist in Funktionsplan (FUP) programmiert und wird standardmäßig beim
Kompilieren berücksichtigt (Darstellung in schwarzer Schrift).
Das PRG PLC_PRG_IN_ST (PRG) ist in Strukturierter Text (ST) programmiert und wird
standardmäßig beim Kompilieren nicht berücksichtigt (Darstellung in grüner Schrift).
Beide PRGs besitzen die selbe Funktionalität.
Bei Bedarf kann für das Kompilieren das PRG PLC_PRG (PRG) deaktiviert und das PRG
PLC_PRG_IN_ST (PRG) aktiviert werden.

Das PRG PLC_PRG (PRG) deaktivieren:

51
CR1140 CR1141

u Rechtsklick auf [PLC_PRG (PRG)] > [Eigenschaften] > [Build] > [Vom Build ausschließen]
aktivieren.
w Das PRG [PLC_PRG (PRG)] wird im Gerätebaum grün dargestellt und ist für das Kompilieren
gesperrt.
u [PLC_PRG (PRG)] umbenennen in [PLC_PRG_IN_FUP (PRG)].
w Das in FUP programmierte PRG ist jetzt inaktiv.

Das PRG PLC_PRG_IN_ST (PRG) aktivieren:


u Rechtsklick auf [PLC_PRG_IN_ST (PRG)] > [Eigenschaften] > [Build] > [Vom Build ausschließen]
deaktivieren.
w Das PRG [PLC_PRG (PRG)] wird im Gerätebaum schwarz dargestellt und ist für das
Kompilieren aktiviert.
u [PLC_PRG_IN_ST (PRG)] umbenennen in [PLC_PRG (PRG)].
w Das in ST programmierte PRG ist jetzt aktiv.

8.2.3 Verfügbarer Speicher


Größe des Flash-Speichers und des RAM-Speichers: Ò Technische Daten

8.2.4 Unterstützte Variablentypen


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Lokale Variablen: Ò Online-Hilfe > CODESYS Development System > Referenz
Programmierung > Variablen > Lokale Variablen – VAR

Globale Variablenliste: Ò Online-Hilfe > CODESYS Development System > Referenz


Programmierung > Variablen > Globale Variablen - VAR_GLOBAL

Netzwerkvariablen: Ò Online-Hilfe > CODESYS Development System > Arbeiten mit


Steuerungsnetzwerken > Netzwerkvariablen

Das Gerät unterstützt folgende Variablentypen:

Variablentyp Deklaration Gültigkeitsbereich Speicherverhalten


lokal im Deklarationsteil des POU gilt nur im POU, in dem sie deklariert wur- flüchtig
den
global in Globaler Variablenliste (GVL) gilt in allen POUs des Projekts flüchtig
global Retain nicht flüchtig
Netzwerk in Netzwerkvariablenlisten Werte stehen allen Projekten im gesamten flüchtig
Netzwerk zur Verfügung, wenn Variable in
deren Netzwerkvariablenlisten enthalten ist.

CAN-Netzwerkvariablen werden nicht unterstützt!

8.2.5 Persistente Variablen


Werte von persistenten Variablen (Retain-Variablen oder remanente Variablen) bleiben nach
Ausschalten und Neustarten des Geräts im Speicher erhalten. Größe des remanenten Speichers Ò
Technische Daten

52
CR1140 CR1141

Persistente Variablen nur in der Persistente Variablen-Liste unterhalb der [Application]


definieren:
u Rechtsklick auf [Application] > [Objekt hinzufügen] > [Persistente Variablen...].
w Das Fenster [Persistente Variablen hinzufügen] erscheint.
u [Name] eingeben.
u [Hinzufügen] klicken.
w Die neue Persistente Variablen-Liste wird unterhalb der [Application] angelegt.

Anlegen von persistenten Variablen in der Persistente Variablen-Liste wie folgt:


u Die Persistente Variablen-Liste mit Doppelklick im Editor öffnen.
u Definition der persistenten Variablen eingeben und speichern.

Beispiel:
VAR_GLOBAL_PERSISTENT RETAIN
retain_var1: INT;
retain_var2: REAL;
retain_var3: STRING;
END_VAR

8.2.6 Symbolnamen der Bedienelemente


Den Bedienelementen des Geräts sind bestimmte Symbolnamen fest zugewiesen. Mit diesen
Symbolnamen kann der Programmierer bestimmte Aktionen und Funktionen definieren, die bei einer
Betätigung des jeweiligen Bedienelements ausgelöst wird. Funktionen für Bedienelemente definieren
(Ò / 63)

53
CR1140 CR1141

Die folgende Abbildung zeigt die Symbolnamen der einzelnen Bedienelemente:

6
4 8

1 2 3 9 10 11
5 7

Abb. 7: Symbolnamen der Funktionstasten


1: xF6
2: xF4
3: xF2
4: xLeft
5: xDown
6: xUp
7: xKey_Return
8: xRight
9: xF1
10: xF3
11: xF5

8.2.7 Arbeitsreihenfolge
Es gibt grundsätzlich zwei Reihenfolgen, ein Projekt für Display-Geräte zu erstellen:

Reihenfolge Vorteile Nachteile


Visualisierung zuerst, an- • Im Programm kann auf die Die in den Visualisierungen benötigten SPS-Parameter
schließend die SPS-Anwen- Parameter in den fertigen Bildern und Variablen sind noch nicht definiert.
dung querverwiesen werden.
• Beim Testen der SPS-Anwendung
existieren die Bilder bereits.
SPS-Anwendung zuerst, Alle Parameter und Variablen sind in • Die Parameter aus den Bildern (Bildnummer, Taste,
anschließend die Visualisie- der SPS-Anwendung definiert, bevor LED usw.) müssen anderweitig ermittelt werden.
rung in den Visualisierungen auf sie ver- • Die SPS-Anwendung kann erst nach dem Erstellen
wiesen wird. der Visualisierung getestet werden.

u Vor Beginn eine möglichst genaue Struktur der Visualisierung und ihrer Inhalte entwerfen!

8.3 ifm-Funktionsbibliotheken nutzen


ifm stellt für die Programmierung des Geräts unter CODESYS 3.5 folgende Funktionsbibliotheken
bereit:

54
CR1140 CR1141

Name Beschreibung
ifmCANopenManager Funktionen für die Nutzung der CAN-Schnittstellen als CANopen Manager
ifmDevice Gerätespezifische Funktionen, Datenstrukturen, Aufzählungstypen und globale Variablen
ifmFileUtil Datei- und Hilfsfunktionen
ifmRawCAN Funktionen für die Nutzung der CAN-Schnittstellen als CAN-Layer-2

u Detaillierte Informationen zu den ifm-Funktionsbibliotheken: ifm-Funktionsbibliotheken


(Ò / 82)

8.3.1 Gerät konfigurieren


Um das Gerät zu konfigurieren, stehen die folgenden Funktionselemente zur Verfügung:

Name Beschreibung Referenz


HideSplashScreen Startbild einblenden / ausblenden. Common (Ò / 96)
LoadSplashScreen Individuelles Startbild laden.
GetDeviceOrientation Eingestellte Geräteausrichtung ermitteln.
SetDeviceOrientation Geräteausrichtung einstellen.
GetSysInfo Systeminformationen auslesen. System Info (Ò / 170)
GetSysResources Systemressourcen auslesen.

8.3.2 Gerät steuern


Um das Gerät zu steuern, stehen die folgenden Funktionselemente zur Verfügung:

Name Beschreibung Referenz


ShutdownDevice Gerät herunterfahren / neu starten. Common (Ò / 96)
BootIntoRecovery Recovery Modus aufrufen.
GetBootupStatusLEDState Status-LED-Zustand während des Gerätestarts er- Status LED (Ò / 154)
mitteln.
SetBootupStatusLEDState Status-LED-Zustand während des Gerätestarts ein-
stellen.
SetStatusLEDstate Status-LED des Geräts steuern.
LinuxSysCallAsync Befehl an Linux-Betriebssystem des Geräts überge- System Commands (Ò / 162)
ben. Asynchrone Ausführung des Befehls.
LinuxSysCallAsync2 Befehl an Linux-Betriebssystem des Geräts überge-
ben. Asynchrone Ausführung des Befehls.
LinuxSysCallSync Befehl an Linux-Betriebssystem des Geräts überge-
ben. Synchrone Ausführung des Befehls.
LinuxSysCallSync2 Befehl an Linux-Betriebssystem des Geräts überge-
ben. Synchrone Ausführung des Befehls.

8.3.3 Ethernet-Schnittstelle konfigurieren


Um die Einstellungen der Ethernet-Schnittstelle des Geräts zu verwalten, stehen die folgenden
Funktionselemente zur Verfügung:

Name Beschreibung Referenz


GetEthernetInterfaces Eine Liste mit den verfügbaren Ethernet-Schnittstel- Ethernet (Ò / 119)
len ausgeben.
GetIPsettings2 IP-Einstellungen der Ethernet-Schnittstelle lesen

55
CR1140 CR1141

Name Beschreibung Referenz


SetIPsettings2 IP-Einstellungen der Ethernet-Schnittstelle ändern Ethernet (Ò / 119)

u Die aktuellen IP-Einstellungen der Ethernet-Schnittstelle können im Online-Modus über den


Gerätebaum ausgelesen werden. Systeminformationen anzeigen (Ò / 81)

8.3.4 Gerätetasten konfigurieren


Um die integrierten Gerätetasten zu konfigurieren, stehen die folgenden Funktionselemente zur
Verfügung:

Name Beschreibung Referenz


GetKeyMapping Mapping-Einstellungen des Tastenfeldes auslesen. Keypad (Ò / 129)
ResetAllKeyLED Alle Tasten-LEDs ausschalten.
ResetKeyMapping Mapping-Einstellungen des Tastenfeldes zurückset-
zen.
SetKeyAutoRepeat Auto-Repeat-Konfiguration des Tastenfeldes ein-
stellen.
SetKeyLED Farbe und Nachtmodus einer Tasten-LED einstel-
len.
SetKeyMapping Mapping-Einstellungen des Tastenfeldes einstellen.

8.3.5 Gerätedisplay konfgurieren


Um das Gerätedisplay zu konfigurieren, stehen die folgenden Funktionselemente zur Verfügung:

Name Beschreibung Referenz


GetBootupBacklight Helligkeitseinstellungen für den Bootvorgang ausle- LCD (Ò / 139)
sen.
GetLCD_Backlight Helligkeitseinstellungen für den Normalbetrieb aus-
lesen.
SetBootupBacklight Helligkeitseinstellungen für den Bootvorgang ein-
stellen.
SetLCD_Backlight Helligkeitseinstellungen für den Normalbetrieb ein-
stellen.

8.3.6 Auf Gerätesensoren und Eingänge/Ausgänge zugreifen


u Technische Details zu den Sensoren und Eingängen: Ò Betriebsanleitung, Datenblatt.

Um die Sensoren und die Eingänge des Geräts zu lesen und die Ausgänge zu schreiben, stehen die
folgenden Funktionselemente zur Verfügung:

Name Beschreibung Referenz


GetTemperatures2 Gerätetemperaturen auslesen. Local IO (Ò / 147)
GetTemperaturesCyclic Gerätetemperaturen zyklisch auslesen.
GetServiceInput Zustand des Service-Eingangs auslesen.

56
CR1140 CR1141

8.3.7 Systemzeit konfigurieren/lesen


Um die Systemzeit des Geräts zu konfigurieren und auszulesen, stehen die folgenden
Funktionselemente zur Verfügung:

Name Beschreibung Referenz


GetAvailableTimeZones Liste der verfügbaren Zeitzonen anzeigen. System Time (Ò / 174)
GetSysTime Datum, Zeit und Zeitzone des Geräts auslesen.
GetSysTimeCyclic Datum, Zeit und Zeitzone des Geräts zyklisch aus-
lesen.
SetSysTime Datum und Zeit des Geräts einstellen.
SetTimeZone Zeitzone des Geräts einstellen.
GetNTP_Settings NTP-Server-Einstellungen auslesen.
SetNTP_Settings NTP-Server-Einstellungen einstellen.

8.3.8 Dateien verwalten


Um Dateien und Verzeichnisse zu verwalten (kopieren, löschen), stehen die folgenden
Funktionselemente zur Verfügung:

Name Beschreibung Referenz


USBstorageHandler USB-Gerät verwalten. Storage (Ò / 160)
Copy_Device_To_USB Dateien vom Gerät auf einen USB-Speicher kopie- Bibliothek ifmFileUtil.library (Ò / 207)
ren
Copy_USB_To_Device Dateien vom USB-Speicher auf das Gerät kopieren
DeleteFile Datei auf Gerät löschen
FileCopy Dateien auf dem Gerät kopieren
SyncFileMemory Inhalte von FLASH-Speicher und Arbeitsspeicher
synchronisieren

8.3.9 Touchscreen konfigurieren


Um den Touchscreen zu konfigurieren, stehen die folgenden Funktionselemente zur Verfügung:

Name Beschreibung Referenz


DisableTouchScreen Touchscreen-Funktionalität aktivieren / deaktivieren. Touch (Ò / 188)
SetTouchOptimisationMode Optimierungsmodus für Touchscreen einstellen.

8.3.10 Screenshot erstellen


Name Beschreibung Referenz
Printscreen Screenshot des Displayinhalts erstellen. Window Control (Ò / 192)

8.3.11 CSV-Dateien verwalten


Um CSV-Dateien zu verwalten (erstellen, ändern, lesen), stehen die folgenden Funktionselemente zu
Verfügung:

57
CR1140 CR1141

Name Beschreibung Referenz


ReadCSV8Byte Inhalt einer CSV-Datei lesen Log File (Ò / 218)
WriteCSV8Byte Inhalt einer CSV-Datei schreiben
WriteCSV8ByteHeader Header-Bereich einer CSV-Datei schreiben
ReadCSVData Inhalt einer CSV-Datei lesen
WriteCSVData_Linear Inhalt einer CSV-Datei schreiben, Linear-Mode
WriteCSVData_Ring Inhalt einer CSV-Datei schreiben, Ring-Mode
WriteCSVHeader Header-Bereich einer CSV-Datei schreiben

8.3.12 Hilfsfunktionen nutzen


Der Anwender kann folgende Hilfsfunktionen nutzen:

Name Beschreibung Referenz


ByteArray_To_String Array aus Bytes in eine Zeichenkette konvertieren Support (Ò / 239)
Buffer_To_String Array aus Bytes in ein Array aus Zeichenketten Functions (Ò / 243)
konvertieren Parameter File (Ò / 235)

Pack2Byte_To_Word 2 byte in ein Word konvertieren


Pack4Byte_To_DW 4 Byte in ein Doppelwort konvertieren
Word_To_2Byte Word in 2 Byte konvertieren
_8Byte_To_CSV Array aus 8 Byte in CSV-Format konvertieren
DW_To_4Byte DWORD in 4 Bytes konvertieren
RTC_To_String Laufzeit des Geräts als STRING ausgeben
GetFileSizeAsync Größe einer Datei anzeigen
ReadParmSingleAsync Einzelnen Parametersatz aus Textdatei lesen
WriteParmSingleAsync Einzelnen Parametersatz in Textdatei schreiben
ANY_TYPE_TO_STRING Die Funktion konvertiert einen Datenwert in eine
Zeichenkette.
ifmCONCAT Die Funktion verbindet 2 Strings und gibt das Er-
gebnis in einem String aus. (Stringlänge definiert
in ifmGCL.uiGenericLogSizeMax)
ifmFind Die Funktion gibt die Position des Strings sStr2 im
String sStr1 zurück. (Stringlänge definiert in ifm-
GCL.uiGenericLogSizeMax)
ifmMID Die Funktion liest einen Teilstring eines anderen
Strings aus. (Stringlänge definiert in ifmGCL.uiGe-
nericLogSizeMax)

8.3.13 ecomatPanel einstellen und nutzen


Um ein ecomatPanel (Tastenmodul mit Drehknopf) einzustellen, das mit einem ecomatDisplay
verbunden ist, stehen die folgenden Funktionselemente zur Verfügung:

Name Beschreibung Referenz


ControllAllKeyLEDs_eco- Alle Tasten-LEDs des ecomaPanel gleichzeitig Ecomat Panel (Ò / 110)
matPanel steuern.
GetKeyMapping_ecomatPa- Die Anzahl der verfügbaren ecomatPanel-Tasten,
nel ihre Namen/IDs und ihr Mapping ermitteln.
GetStatus_ecomatPanel Status des ecomatPanel ermitteln.

58
CR1140 CR1141

Name Beschreibung Referenz


SetKeyLED_ecomatPanel Farbe und Helligkeit einer ecomatPanel-Taste än- Ecomat Panel (Ò / 110)
dern.
SetKeyMapping_ecomatPa- Das Mapping einer ecomatPanel-Taste ändern.
nel

8.4 Visualisierungen nutzen


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Ò Online-Hilfe > CODESYS Visualization

Das Gerät unterstützt folgende Visualisierungstypen:


• Target-Visualisierung
• Web-Visualisierung

8.4.1 Einstellungen im Projekt-Template


Bei der Verwendung des Projekt-Templates bei der Projekterstellung CODESYS-Projekt erstellen
(Ò / 23) sind folgende Elemente für die Visualisierung bereits im Gerätebaum unter [Applikation]
enthalten:

Objekt Beschreibung
VISU_TASK Visualisierungstask
VisualizationManager Objekt zur Verwaltung der grundlegenden Einstellungen.
TargetVisu Objekt zur Konfiguration der Zielvisualisierung, die auf dem Display ange-
zeigt wird.
WebVisu Objekt zur Konfiguration der webbasierten Visualisierung, die über Netzwerk-
zugriff in einem Webbrowser angezeigt wird.
Visu_Default Objekt, das ein Visualisierungsbild enthält.

Diese Objekte sind vorkonfiguriert und können angepasst werden.

8.4.2 Externe Dateien einbinden


Mögliche externe Dateien: z.B. Bilddateien.

Externe Dateien können in das CODESYS-Projekt integriert und auf das Gerät geladen werden:
u Rechtsklick auf [Application > Objekt hinzufügen > Externe Datei...]
w Fenster [Externe Datei hinzufügen] erscheint.
u [Dateipfad] wählen. Weitere Einstellungen wählen.
u Klick auf [Hinzufügen].
w Datei wird dem Projekt als externe Datei hinzugefügt.
w Beim Laden des Projektes auf das Gerät überträgt CODESYS externe Dateien in folgenden Pfad
auf dem Gerät: /home/cds-apps/PlcLogic/Application/

59
CR1140 CR1141

8.4.2.1 Konventionen für Dateinamen

u Groß- und Kleinschreibung im Dateipfad und in Dateinamen beachten.


u Keine Leerzeichen in Dateinamen und Pfaden verwenden.
u Keine Sonderzeichen (z.B. |, \, :, (, ), &, ;, ., ,) in Dateinamen und Pfaden verwenden.
u Die maximale Länge eines Dateinamens beträgt 255 Zeichen.
u Der Dateiname muss im Zielordner eindeutig sein.

8.4.3 Texte und Schriftarten


• Die kleinste auf dem Gerät gut lesbare Schriftgröße ist 8 Punkt.
• Es sind Standardschriftarten auf dem Gerät verfügbar.
• Standardmäßig sind folgende Zeichensätze/Schriftarten auf dem Gerät vorhanden: Lateinische
Schrift, Arabische Schrift, Kyrillische Schrift

u Bei Bedarf: Weitere True Type Font-Schriftarten installieren, z.B. für asiatische Sprachen.
u Alle für die Visualisierungen benötigten Font-Dateien auf dem CODESYS-PC und auf dem
Gerät installieren. Schriftart hinzufügen (Ò / 45)

• Bereits übersetzte Texte können per Drag& Drop aus dem Quelldokument in die Texteigenschaft
eines Objektes im Visualiserungseditor kopiert werden. Die Schriftzeichen installierter Sprachen
(z.B. kyrillisch, arabisch) bleiben dabei erhalten.

8.4.4 Sprachumschaltung
u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Text in einer Textliste verwalten:
Ò Online-Hilfe > CODESYS Development System > Applikation programmieren >
Text in einer Textliste verwalten

Eine Sprachumschaltung in der Visualisierung realisieren:


u Globale Textliste mit den Texten, die in der Visualisierung verwendet werden, in den erforderlichen
Sprachen erstellen.
u Die Eigenschaft [DynamischeTexte] der Visualisierungsobjekte mit der Textliste und der
entsprechenden Text-ID verbinden.
u Möglichkeit zur Sprachumschaltung erstellen, z.B. mit einer Schaltfläche.

8.4.4.1 Beispiel Sprachumschaltung bei Mausklick


Konfiguration der Sprachumschaltung mit einer Schaltfläche in der Visualisierung.
Vorgehensweise:
u Eine [Schaltfläche] aus dem Werkzeug-Fenster auf die Visualisierung ziehen.
u In den [Eigenschaften] der Schaltfläche unter [Eingabekonfiguration > OnMouseClick] auf
[Konfigurieren…] klicken.
u [Sprachumschaltung] markieren und mit Klick auf [>] übernehmen.
u [Sprachumschaltung] in rechten Bereich markieren.
u Mit Klick auf […] das Fenster zum Zuweisen der Zielsprache öffnen.

60
CR1140 CR1141

u Die Zielsprache, z.B. „en“, wählen und [OK] klicken.


u Die [Eingabekonfiguration] abschließen und [OK] klicken.
w Die Sprachumschaltung ist für die Schaltfläche konfiguriert.
w Die Schaltfläche löst die Sprachumschaltung in der Visualisierung aus, wenn die entsprechenden
Elemente mit einer übersetzten Textliste verknüpft sind ([Eigenschaften > Dynamische Texte]).

8.4.4.2 Beispiel Variable CurrentLanguage


Die aktuell eingestellte Sprache einer Visualisierung steht in der Variablen
VisuElems.CURRENTLANGUAGE , z.B. Deutsch „de“, Englisch „en“, Chinesisch „zh-CHS“.
Das Ändern des Variableninhaltes löst die Sprachumschaltung der Visualisierung aus, wenn die
entsprechenden Elemente mit einer übersetzten Textliste verknüpft sind ([Eigenschaften >
Dynamische Texte]).
ü VisuElems.CURRENTLANGUAGE = de
u Wert ändern, z.B. im PRG: VisuElems.CURRENTLANGUAGE := ‘en‘;
w Die Sprache der Visualisierung schaltet um.

8.4.5 Bildersammlung verwenden


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Bildersammlung: Ò Online-Hilfe > CODESYS Development System > Applikation
programmieren > Bildersammlungen verwenden

Um eigene Bilder in Visualisierungen nutzen zu können, muss der Nutzer die entsprechenden
Bilddateien vorher zu einer Bildersammlung in der Anwendung hinzufügen.
Um eine Bildersammlung zu einem Projekt hinzuzufügen:
u Im Gerätebaum: Knoten [Application] markieren.
u [Projekt] > [Objekt hinzufügen...] > [Bildersammlung...] wählen.
w Fenster [Bildersammlung hinzufügen] erscheint.
u Name der Bildersammlung eingeben und mit [Hinzufügen] bestätigen.
w Bildersammlung erscheint im Projektbaum als Unterelement der Anwendung.

8.4.5.1 Bildereigenschaften

Folgende Bilddateiformate werden unterstützt: BMP, JPG, PNG, SVG, TIF

8.4.5.2 Bootscreen einstellen


Das Bild für den Bootscreen kann über die Bildersammlung im CODESYS-Projekt auf das Gerät
geladen und mit dem FB LoadSplashScreen (Ò / 104) aktiviert werden:

Bild für Bootscreen in die Bildersammlung aufnehmen


u Doppelklick auf die Bildersammlung.
w Detailansicht erscheint.
u Rechtsklick auf leere Zeile in der Bildersammlung > [Bilddatei einfügen]
u Pfad zur Bilddatei einstellen.
w Bild ist in Bildersammlung aufgenommen.

61
CR1140 CR1141

Bild auf Gerät laden


Das Bild wird zusammen mit dem CODESYS-Projekt auf das Gerät geladen.
Das Bild wird in folgendem Pfad auf dem Gerät gespeichert: /home/cds-apps/PlcLogic/visu/

Bild mit FB einstellen


u FB LoadSplashScreen in PRG einfügen.
u FB parametrieren und in Programmlogik einbinden.
u An Bausteineingang sPathToSplash den Pfad und den Dateinamen der Bootscreen-Bilddatei
eingeben, z.B. '/home/cds-apps/PlcLogic/visu/testbild.bmp' (incl. Anführungszeichen,
Groß-/Kleinschreibung beachten)

Informationen zur Bilddatei für den Splashscreen:

• Bildformat: BMP 24 Bit Version 3.


• RLE-Kompression und gzip-Kompression sind erlaubt.
• Empfohlene Vorgehensweise: Speichern der Bilddatei mit MS Paint als 24 Bit BMP.
• Empfohlene maximale Bildgröße: Auflösung des Displays Ò Datenblatt
• Groß- / Kleinschreibung beim Dateipfad beachten. Linux ist case sensitive.
• Der Dateiname darf nur Kleinbuchstaben enthalten.
• Neue Datei mit dem CODESYS-Filebrowser oder im Setup-Modus auf das Gerät übertragen.
• Maximale Dateigröße: Keine Begrenzung. Die Bilddatei beansprucht einen Teil des verfügbaren
Speichers für die Benutzerapplikation.

8.4.6 Visualisierungsmanager nutzen


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Visualisierungsmanager: Ò Online-Hilfe > CODESYS Visualization > Referenz,
Benutzeroberfläche > Objekte > Objekt 'Visualisierungsmanager' - 'Einstellungen'

Der Visualisierungsmanager enthält die allgemeinen Einstellungen der Visualisierungen:


u Im Gerätebaum: Doppelklick auf [Application] > [Visualisierungsmanager]
w Editor-Fenster zeigt Visualisierungsmanager.
u Registerkarte [Einstellungen] wählen.
w Editor-Fenster zeigt allgemeine Einstellungen der Visualisierungen.
u Parameter wie gewünscht einstellen.

Wenn die Key Mapping-Funktion genutzt werden soll, dann muss die
Standardtastaturbedienung aktiviert sein.
u In Bereich [Zusätzliche Einstellungen] das Kontrollfeld [Standardtastaturbedienung
aktivieren] aktivieren.

u Projekt speichern, um die Änderungen zu übernehmen.

62
CR1140 CR1141

8.4.6.1 Funktionen für Bedienelemente definieren

u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:


Tastaturkonfiguration: Ò Online-Hilfe > CODESYS Visualization > Referenz,
Benutzeroberfläche > Objekte > Registerkarte 'Visualisierungsmanager' -
'Standardtastaturkürzel'

Über die CODESYS-Funktion „Standardtastaturkürzel“ kann der Anwender den Bedienelementen des
Geräts bestimmte Funktionen zuweisen (z.B. Seitenwechsel, Variable umschalten). Die so definierten
Tastaturfunktionen gelten für alle Visualisierungen des Projekts.
Um den Bedienelementen der Geräts bestimmte Funktionen zuzuordnen:
u Visualisierungsmanager starten.
w Editor-Fenster zeigt Visualisierungsmanager.
u Im Editor-Fenster: Registerkarte [Standardtastaturkürzel] wählen.
w Editor-Fenster zeigt aktuelle Konfiguration der Tastaturfunktionen.
u Folgende Werte einstellen:
1. Spalte [Taste]: Gewünschten Symbolnamen wählen. Symbolnamen der Bedienelemente
2. Spalte [Taste drücken]: EIN-Level definieren
3. Spalte [Aktionstyp]: Aktionstyp wählen
4. Spalte [Aktion]: Aktion wählen.
u Bei Bedarf weitere Tastaturfunktionen definieren.
u Projekt speichern, um die Änderungen zu übernehmen.
w Die Standardtastaturkürzel sind definiert.

8.4.6.2 Globales Umschalten der Visualisierung

u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:


CurrentVisu-Variable verwenden: Ò Online-Hilfe > CODESYS Visualization > Referenz,
Benutzeroberfläche > Objekte > Objekt 'Visualisierungsmanager' - 'Einstellungen'

Folgend wird die globale Umschaltung der Visualisierung mit Hilfe der globalen CurrentVisu-Variable
VisuElems.CurrentVisu beschrieben.
Eigenschaften der CurrentVisu-Variable:
• Datentyp String
• Enthält zur Laufzeit der Applikation den Namen der aktuell angezeigten Visualisierung.
• Der Wert kann gelesen und geschrieben werden.
• Durch Schreiben des Wertes in der Applikation erfolgt ein globales Umschalten der aktuellen
Visualisierung auf allen Visualisierungsgeräten gleichzeitig (TargetVisu und WebVisu).

Vorgehensweise:
u Die CurrentVisu-Variable in den Einstellungen des Visualisierungsmanagers unter [Einstellungen]
> [Allgemeine Einstellungen] aktivieren.
u Die CurrentVisu-Variable kann zur globalen Umschaltung der Visualisierung verwendet werden.
u In der Applikation der CurrentVisu-Variable einen neuen Wert zuweisen, Beispiel:
VisuElems.CurrentVisu := 'visu1';
w Die Visualisierung wird global auf allen Visualisierungsgeräten (TargetVisu und WebVisu)
gleichzeitig umgeschaltet.

63
CR1140 CR1141

8.4.6.3 Lokales Umschalten der Visualisierung

u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:


CurrentVisu-Variable verwenden: Ò Online-Hilfe > CODESYS Visualization > Referenz,
Benutzeroberfläche > Objekte > Objekt 'Visualisierungsmanager' - 'Einstellungen'

Folgend wird die lokale Umschaltung der Visualisierung mit Hilfe von Schaltflächen/Funktionstaste in
der Visualisierung beschrieben.
Lokal bedeutet, dass die Visualierungsumschaltung nur auf dem jeweiligen Gerät ausgeführt wird, auf
welchem die Schaltfläche betätigt wurde.
Schaltflächen anlegen und konfigurieren:
u Die globale CurrentVisu-Variable VisuElems.CurrentVisu in den Einstellungen des
Visualisierungsmanagers unter [Einstellungen] > [Allgemeine Einstellungen] deaktivieren.
w Die globale Umschaltung der Visualisierung ist deaktiviert.
u 2 Visualisierungen anlegen, z.B. visu1 und visu2 . Visualisierung erstellen (Ò / 65)
u Mit Doppelklick visu1 / visu2 im Editor öffnen.
u Per Drag&Drop eine Schaltfläche aus dem Fenster [Visualisierungswerkzeuge] auf die
Visualisierung ziehen.
u Die Schaltfläche markieren.
w Die Eigenschaften der Schaltfläche werden angezeigt.
u [Eigenschaften] > [Eingabekonfiguration] > [OnMouseClick] > [Konfigurieren...] klicken.
w Das Fenster [Eingabekonfiguration] erscheint.
u [Angezeigte Visualisierung wechseln] markieren und [>] klicken.
u Mit [Auswahl] > [Zuweisen] > [...] die visu2 / visu1 wählen.
u [OK] klicken.
w Der Visualisierungswechsel wird angelegt.
w Während der Laufzeit erfolgt mit den Schaltflächen jeweils eine Umschaltung von visu1 nach
visu2 und umgekehrt.

Funktionstaste für die Schaltfläche konfigurieren:


ü Die Visualisierungen mit der Visualisierungsumschaltung sind angelegt.
u Die Visualisierungen mit Doppelklick im Editor öffnen.
u Die Schaltfläche für den Visualisierungswechsel markieren.
w Die Eigenschaften der Schaltfläche werden angezeigt.
u Unter [Eigenschaften] > [Eingabekonfiguration] > [Tastaturkürzel] > [Taste] die gewünschte
Funktionstaste wählen. Die Funktionstaste muss im Visualisierungsmanager im Register
[Standardtastaturkürzel] konfiguriert sein.
u Unter [Eigenschaften] > [Eingabekonfiguration] > [Tastaturkürzel] > [Ereignis(se)] [MouseDown/
MouseUp] einstellen.
w Die Funktionstaste ist als Tastaturkürzel für die Schaltfläche konfiguriert.
w Während der Laufzeit kann zusätzlich mit den Funktionstasten des Geräts eine Umschaltung von
visu1 nach visu2 und umgekehrt ausgelöst werden.

8.4.6.4 Target-Visualisierung konfigurieren


Um die Eigenschaften der erstellten Visualisierung zu ändern:

64
CR1140 CR1141

u Im Gerätebaum: Doppelklick auf [Visualisierungsmanager] > [Target-Visualisierung]


w Editor-Fenster zeigt Eigenschaften der Target-Visualisierung
u Folgende Werte einstellen:
1. [Startvisualisierung]: Gewünschte Visualisierung wählen.
2. [Aktualisierungsrate ms]: 150
3. [Skalierungsoptionen]: Fest
4. [Zeichnen mit Antialiasing]: aktiv
5. [Standard-Texteingabe]: Gewünschte Eingabemöglichkeit wählen, z.B. Keyboard oder
Touchscreen.
u Projekt speichern, um die Änderungen zu übernehmen.

u Hinweise zur Konfiguration des Visualisierungs-Tasks beachten! Visualisierungs-Task


konfigurieren (Ò / 76)

8.4.6.5 Web-Visualisierung konfigurieren


Um die Eigenschaften der erstellten Visualisierung zu ändern:
u Im Gerätebaum: Doppelklick auf [Visualisierungsmanager] > [WebVisualization]
w Editor-Fenster zeigt Eigenschaften der Web-Visualisierung
u Gewünschte Werte einstellen.
u Projekt speichern, um die Änderungen zu übernehmen.

u Hinweise zur Konfiguration des Visualisierungs-Tasks beachten! Visualisierungs-Task


konfigurieren (Ò / 76)

8.4.7 Visualisierung erstellen


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Visualisierungs-Editor: Ò Online-Hilfe > CODESYS Visualization > Referenz,
Benutzeroberfläche > Objekte > Objekt 'Visualisierung' und Visualisierungseditor >
Visualisierungseditor

Visualisierungselemente: Ò Online-Hilfe > CODESYS Visualization > Visualisierung mit


Elementen gestalten

Um eine Visualisierung für eine SPS-Anwendung zu erstellen:


u Im Gerätebaum: Doppelklick auf [Visualization]

65
CR1140 CR1141

w Visualisierungs-Editor mit Fenster [Werkzeuge] erscheint.

u Gewünschte Visualisierung erstellen.


u Projekt speichern, um die Änderungen zu übernehmen.

8.5 Touchscreen-Funktionen nutzen

8.5.1 Hinweise
u Folgende Hinweise bei der Programmierung von Touchscreen-Funktionen beachten:

• Das Gerät besitzt Multitouch-Funktionalität.


• Für die Steuerung kritischer Funktionen ist der Einsatz von Touch-Bedienelementen nicht geeignet
(z.B. Motor Start/Stop).
u Für die Realisierung kritischer Funktionen die mechanischen Tasten verwenden!
• Der Touchscreen gibt kein mechanische Rückmeldung, wenn ein grafisches Bedienelement
aktiviert wurde (z.B. Schaltfläche). Der Bediener weiß deshalb u.U. nicht, ob seine Eingabe
erfolgreich war.
u Visuelles Feedback für grafische Bedienelemente nutzen.
• Ungünstiger Lichteinfall und Verschmutzung der Bildschirmoberfläche können die Erkennbarkeit
der grafischen Bedienelemente erschweren.
u Touch-Bedienelemente ausreichend groß dimensionieren!
u Für die Beschriftung der Touch-Bedienelemente gut lesbare Schriftart in ausreichender
Schriftgröße nutzen.
• Der Touchscreen des Geräts ist werkseitig kalibriert.
• FB DisableTouchScreen (Ò DisableTouchScreen / 188): Der FB aktiviert / deaktiviert die
Touchscreen-Funktionalität des Displays. Der Touchscreen ist nach einem Geräteneustart
standardmäßig aktiviert.

66
CR1140 CR1141

• FB SetTouchOptimisationMode (Ò SetTouchOptimisationMode / 190): Der FB aktiviert den


Optimierungsmodus für eine bestimmte Betriebsbedingung. Der Anwender kann zwischen
folgenden Betriebsbedingungen wählen:
– Standardbetrieb
– Betrieb mit Handschuhen
– Betrieb bei Regen / Spritzwasser

8.5.2 Eingabeobjekte der Visualisierung konfiguieren


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Eingabekonfiguration: Ò Online-Hilfe > CODESYS Visualization > Benutzereingabe
konfigurieren > Benutzereingabe auf einem Visualisierungselement konfigurieren

Um die Objekte einer Visualisierung für die Eingabe per Touchscreen zu konfigurieren:
u Eingabeobjekt erstellen (z.B. Schaltfläche)
u Erstelltes Eingabeobjekt markieren.
w Fenster [Eigenschaften] zeigt die Eigenschaften des Eingabeobjekts.
u Unter [Eingabekonfiguration] die Werte wie gewünscht ändern.
u Projekt speichern, um die Änderungen zu übernehmen.

8.5.3 Multitouch-Funktionalität nutzen


Das Gerät kann als Multitouch-Display eingesetzt werden. Dazu muss die entsprechende Option im
CODESYS Visualisierungsmanager aktiviert werden. Die Multitouch-Funktionalität muss über die
CODESYS-Applikation programmiert werden.
Ein Beispielprogramm hierzu findet man im CODESYS Store oder kann über den ifm-Support
angefordert werden.
Die Programmierung von Multitouch Applikationen wird nur erfahrenen Anwendern empfohlen, da
einige Standard-Touch-Eingaben von CODESYS im Multitouch-Mode nicht mehr zu Verfügung
stehen.

8.6 Bedienung ohne Touch-Funktionalität


Bei Geräten ohne Touch-Funktionalität (Ò Technische Daten):
u Die Bedienelemente (Schaltflächen, Eingabefelder etc.) in der Visualisierung mit den
Navigationstasten der Kreuzwippe anwählen. Kreuzwippe (Ò / 30)
w Ein Rahmen kennzeichnet das fokussierte Bedienelement.
u Das Bedienelement mit der [RETURN]-Taste der Kreuzwippe aktivieren.
w Die der Schaltfläche zugeordnete Aktion wird ausgeführt.

8.7 CSV-Datei-Logging
Das Gerät bietet die Möglichkeit CSV-Dateien zu schreiben und zu lesen, z.B. zum Logging von
Maschinendaten.

8.7.1 CSV-Datei schreiben


Um eine CSV-Datei zu schreiben, stehen folgende POUs zur Verfügung:

67
CR1140 CR1141

Name Beschreibung Referenz


WriteCSVHeader Kopfzeile in CSV-Datei schreiben WriteCSVHeader (Ò / 233)
WriteCSVData_Linear Daten im Linear-Modus in eine CSV-Datei WriteCSVData_Linear (Ò / 227)
schreiben.
WriteCSVData_Ring Daten im Ring-Modus in eine CSV-Datei schrei- WriteCSVData_Ring (Ò / 230)
ben.

Nützliche Hilfsfunktionen:

Name Beschreibung Referenz


ANY_TYPE_TO_STRING Konvertiert jeden Datentyp in einen String. ANY_TYPE_TO_STRING (Ò / 243)
ifmCONCAT Kombiniert zwei Strings mit jeweils bis zu 1000 ifmCONCAT (Ò / 246)
Zeichen zu einem String mit maximal 1000 Zei-
chen.
ifmFIND Durchsucht einen String mit bis zu 1000 Zeichen. ifmFIND (Ò / 247)
ifmMID Gibt einen Teilstring mit bis zu 1000 Zeichen ei- ifmMID (Ò / 248)
nes String mit bis zu 1000 Zeichen aus.

Die ifm-Hilfsfunktionen ifmCONCAT, ifmFIND und ifmMID verarbeiten Strings mit einer
maximalen Länge von 1000 Zeichen. Die Länge eines Standard-Strings in CODESYS beträgt
255 Zeichen. Stringformat uiGenericLogSizeMax (Ò / 68)
Logging jeglicher Datentypen und Schreiben in eine CSV-Datei, z.B. REAL, WORD, DWORD,
STRING ist möglich.
Maximal: Logging von bis zu 1000 Zeichen pro Operation und bis zu 10 Log-Operationen pro
Sekunde. Insgesamt: Bis zu 10000 Zeichen pro Sekunde
u Sinnvoll mit Systemressourcen umgehen: Nur so viele Daten speichern, wie für den
Anwendungsfall notwendig ist.
u Einen Externen Datenträger z.B. einen USB-Stick als Speicherort für die CSV-Datei
verwenden.

8.7.1.1 Vorgehensweise:
u Mit dem FB WriteCSVHeader die CSV-Datei erstellen und die Kopfzeile in die CSV-Datei
schreiben.
u Die Variablenwerte mit der Funktion ANY_TYPE_TO_STRING in Strings umwandeln.
u Mit der Funktion ifmCONCAT die Daten zu einen String für eine CSV-Dateizeile zusammensetzen.
u Mit dem FB WriteCSVData_Linear oder FB WriteCSVData_Ring die CSV-Dateizeile in die
CSV-Datei schreiben.

8.7.2 CSV-Datei lesen


Um eine CSV-Datei zu lesen steht folgendes POU zur Verfügung:

Name Beschreibung Referenz


ReadCSVData Lesen von Daten aus einer CSV-Datei, die mit ReadCSVData (Ò / 220)
dem FB WriteCSVData_Linear oder FB Wri-
teCSVData_Ring geschrieben wurde.

8.7.3 Stringformat uiGenericLogSizeMax


Die FBs und Funktionen zum Schreiben und Lesen von CSV-Dateien (Daten-Logging) verwenden den
String-Datentyp ifmGCL.uiGenericLogSizeMax . ifmGCL (GVL) (Ò / 255)

68
CR1140 CR1141

Der String-Datentyp ifmGCL.uiGenericLogSizeMax speichert Strings mit einer maximalen Länge


von 1000 Zeichen.
Der Standard-String-Datentyp von CODESYS speichert Strings mit einer maximalen Länge von 255
Zeichen.

8.8 CODESYS IIoT Libraries SL

WARNUNG
Bei Betrieb des Gerätes in einer ungeschützten Netzwerkumgebung.
w Unzulässiger Zugriff auf Daten (Lesen oder Schreiben) möglich.
w Unzulässige Beeinflussung der Gerätefunktion möglich.
u Zugriffsmöglichkeiten auf das Gerät prüfen und einschränken.
u Zugriff auf autorisierte Personen beschränken.
u Gerät nicht mit offenen Netzwerken oder dem Internet verbinden.
u Wenn ein Zugriff aus dem Internet dennoch erforderlich ist, dann zwingend ein sicheres
Verfahren wählen, um sich mit dem Gerät zu verbinden (z.B. VPN).
u Verschlüsselte Datenübertragung nutzen (z. B. https / TLS).

Mit dem Kauf des Geräts ab Firmware V2 erwirbt der Anwender gleichzeitig eine gültige Lizenz für die
Nutzung des Softwarepakets IIoT Libraries SL von CODESYS.
Die Lizenz befindet sich bei Auslieferung auf dem Gerät.
Das Softwarepaket IIoT Libraries SL kann von der CODESYS-Website heruntergeladen werden.
Die IIot Libraries SL bieten beispielsweise folgende Features:
• Einfache Implementierung von Web Services auf dem Gerät
• Einfache Verbindung zu Servern oder Web-Schnittstellen wie NodeRED
• http post / http get
• MQTT Client: Open Source IoT Protocol
• AWS IoT Core Client
• Azure IoT Hub Client
• JSON Utilities
• XML Utilities
• Mail Service: einfaches Senden und Empfangen von Emails

8.9 CANopen nutzen


Die Nutzung des Gerätes als CANopen Device ist nur mit Einschränkungen möglich. Spezielle
Funktionsbausteine für die Statusabfrage und Steuerung des CANopen Devices stehen derzeit
nicht zur Verfügung.
u Das Gerät als CANopen Manager verwenden.

u Hinweise zur Taskonfiguration beachten. Task-Abarbeitung konfigurieren (Ò / 75)

Um in einer Anwendung auf eine für den CANopen-Betrieb konfigurierten CAN-Schnittstelle


zuzugreifen, stehen folgende POUs zur Verfügung.
u Vorher: Das Gerät als CANopen Manager (Master) konfigurieren. CANopen: CANopen Manager
konfigurieren (Master) (Ò / 47)

69
CR1140 CR1141

8.9.1 CANopen: SDO senden und empfangen


Um Service Data Objects (SDO) zu senden oder zu empfangen, stehen folgende POUs zur
Verfügung:

Name Beschreibung Referenz


COP_SDOread Service Data Object (SDO) lesen COP_SDOread (Ò / 88)
COP_SDOwrite Service Data Object (SDO) schreiben COP_SDOwrite (Ò / 90)

8.9.2 CANopen: Network Management (NMT)


Für die Verwaltung des CANopen-Netzwerks stehen folgende POUs zur Verfügung:

Name Beschreibung Referenz


COP_GetNodeState Zustand eines oder mehrerer CANopen-Gerät abfragen COP_GetNodeState (Ò / 86)
COP_SendNMT NMT-Steuerungsbefehl an einen CANopen-Gerät senden COP_SendNMT (Ò / 92)

8.10 RawCAN nutzen (CAN Layer 2)


u Hinweise zur Taskonfiguration beachten! Task-Abarbeitung konfigurieren (Ò / 75)

Um in einer Anwendung auf eine für den CANopen-Betrieb konfigurierte CAN-Schnittstelle


zuzugreifen, stehen folgende POU zur Verfügung.
u Vorher: Die CAN-Schnittstelle für den Betrieb als RawCAN (CAN Layer 2) konfigurieren. RawCAN:
CANLayer 2 konfigurieren (Ò / 47)

8.10.1 RawCAN: CAN-Netzwerkknoten steuern


Um einen Knoten in einem CAN-Netzwerk zu steuern, stehen folgende POUs zur Verfügung:

Name Beschreibung Referenz


CAN_Enable CAN-Knoten aktivieren CAN_Enable (Ò / 256)
CAN_Recover CAN-Knoten neu starten CAN_Recover (Ò / 258)

8.10.2 RawCAN: CAN-Nachrichten versenden und empfangen


Um Nachrichten auf einem CAN-Netzwerk zu versenden oder zu empfangen, stehen folgende POUs
zur Verfügung:

Name Beschreibung Referenz


CAN_Rx CAN-Nachricht empfangen CAN_Rx (Ò / 264)
CAN_RxMask CAN-Nachrichten empfangen CAN_RxMask (Ò / 266)
CAN_RxRange CAN-Nachrichten empfangen für Standard und CAN_RxRange (Ò / 268)
Extended Frames
CAN_RxRange CAN-Nachrichten empfangen für Extended Fra- CAN_RxRangeExt (Ò / 270)
mes
CAN_Tx CAN-Nachricht senden CAN_Tx (Ò / 274)

70
CR1140 CR1141

8.10.3 RawCAN: Remote CAN-Nachrichten anfordern und versenden


Um Remote-Nachrichten in ein CAN-Netzwerk anzufordern oder Antworten auf eine Remote-
Anforderung zu versenden, stehen folgende POUs zur Verfügung:

Name Beschreibung Referenz


CAN_RemoteRequest Anforderung für eine Remote-Nach- CAN_RemoteRequest (Ò / 260)
richt senden
CAN_RemoteResponse Auf die Anforderung einer Remote- CAN_RemoteResponse (Ò / 262)
Nachricht antworten

8.11 J1939 nutzen


Zur Nutzung des Netzwerkprotokolls SAE J1939 stellt die CODESYS GmbH die Bibliothek IoDrvJ1939
mit zusätzlichen Funktionen zur Verfügung.
Die Konfiguration über den Gerätebaum wie folgt einstellen:

8.11.1 CAN-Bus anhängen


u Im CODESYS-Gerätebaum: [Communication] > [CAN] rechtsklicken.
u [Gerät anhängen...] wählen.
w Fenster [Gerät anhängen] erscheint.
u Im Bereich [Gerät]: Hersteller: [ifm electronic] wählen.
u In der Liste darunter: [ifmCANBus] wählen.
u Wahl mit [Gerät anhängen] bestätigen.
u Fenster [Gerät anhängen] mit Schaltfläche [Schließen] schließen.

8.11.2 CAN-Schnittstelle zuordnen


u Im CODESYS-Gerätebaum: [Communication] > [CAN] > [ifmCANBus] doppelklicken.
u Registerkarte [Allgemein] > [Allgemein] > [Netzwerk]:
Diese Einstellung einer CAN-Schnittstelle zuordnen.
zulässige Werte = 0...3
u Für [Baudrate (bit/s)] aus dem Listenfeld den gewünschten Wert wählen.

8.11.3 J1939-Manager anhängen


u Im CODESYS-Gerätebaum: [Communication] > [CAN] > [ifmCANBus] rechtsklicken.
u [Gerät anhängen...] wählen.
w Fenster [Gerät anhängen] erscheint.
u Im Bereich [Gerät]: Hersteller: <Alle Hersteller> wählen.
u In der Liste darunter: [Feldbusse] > [SAE J1939] > [J1939 Manager] > [J1939_Manager] wählen.
u Wahl mit [Gerät anhängen] bestätigen.
u Fenster [Gerät anhängen] mit Schaltfläche [Schließen] schließen.

8.11.4 J1939-Manager parametrieren


u Im CODESYS-Gerätebaum: [Communication] > [CAN] > [J1939_Manager] doppelklicken.

71
CR1140 CR1141

u Registerkarte [Allgemein] > [Datenbank] > [Datenbank]:


aus der Liste die erforderliche Datenbank wählen.
voreingestellt = J1939Default

• Der Anwender kann eigene Datenbanken verwenden.


• Diese müssen sich in folgendem Pfad befinden: C:\ProgramData\CODESYS\J1939 Databases
• Das Verzeichnis ProgramData ist standardmäßig versteckt.

u Mit Menü [Datei] > [Projekt speichern] werden die Werte gültig.

8.11.5 J1939-ECU anhängen


u Im CODESYS-Gerätebaum: [Communication] > [CAN] > [ifmCANBus] > [J1939_Manager]
rechtsklicken.
u [Gerät anhängen...] wählen.
w Fenster [Gerät anhängen] erscheint.
u Im Bereich [Gerät]: Hersteller: <Alle Hersteller> wählen.
u In der Liste darunter: [Feldbusse] > [J1939] > [J1939_ECU] > wählen.
u Wahl mit [Gerät anhängen] bestätigen.
u Fenster [Gerät anhängen] mit Schaltfläche [Schließen] schließen.

8.11.6 J1939-ECU parametrieren


u Im CODESYS-Gerätebaum: [Communication] > [CAN] > [J1939_Manager] > [J1939_ECU]
doppelklicken.
u In der Registerkarte [Allgemein] im Abschnitt [Allgemein] je nach Anwendungsfall folgende
Einstellungen vornehmen:

Anwendungsfall [Lokales Gerät] Bedeutung [Bevorzugte Adresse]


• Empfangen von -Broadcast-Daten der ECU deaktiviert Adresse der ECU, von der Daten empfan-
• Kein Senden gen werden sollen

• Senden von Daten (Broadcast und P2P) aktiviert Adresse des ifm-Controllers
• Empfangen von P2P-Daten

u In der Registerkarte [TX-Signale] Parametergruppen hinzufügen mit Klick auf [PG hinzufügen].
u Mit Menü [Datei] > [Projekt speichern] werden die Einstellungen gültig.

8.12 EtherNet/IP nutzen


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
EtherNet/IP Adapter: Ò Online-Hilfe > Feldbusunterstützung > EtherNet/IP Configurator >
EtherNet/IP Adapter

EtherNet/IP Scanner: Ò Online-Hilfe > Feldbusunterstützung > EtherNet/IP Configurator >


EtherNet/IP Scanner

72
CR1140 CR1141

u Zur Nutzung des Netzwerkprotokolls EtherNet/IP die Konfiguration über den Gerätebaum wie folgt
einstellen:

8.12.1 Ethernet-Adapter an ein Ethernet anhängen


u Im CODESYS-Gerätebaum: Rechtsklick auf [Communication] > [Ethernet].
u [Gerät anhängen...] wählen.
w Fenster [Gerät anhängen] erscheint.
u In der Liste [Hersteller] <Alle Hersteller> wählen.
u In der Liste darunter [Feldbusse] > [EtherNet/IP] > [Ethernet Adapter] > [Ethernet] wählen.
u Wahl mit [Gerät anhängen] bestätigen
u Fenster [Gerät anhängen] mit Schaltfläche [Schließen] schließen.
w Der Ethernet-Adapter ist angehängt.

8.12.2 EtherNet/IP-Adapter anhängen


u Im CODESYS-Gerätebaum: Rechtsklick auf [Communication] > [Ethernet] > [Ethernet_1].
u [Gerät anhängen...] wählen.
w Fenster [Gerät anhängen] erscheint.
u In der Liste [Hersteller] <Alle Hersteller> wählen.
u In der Liste darunter [Feldbusse] > [EtherNet/IP] > [EtherNet/IP Local Adapter] > [EtherNet/IP
Adapter] wählen.
u Wahl mit [Gerät anhängen] bestätigen
u Fenster [Gerät anhängen] mit Schaltfläche [Schließen] schließen.
w Der EtherNet/IP-Adapter ist angehängt.

8.12.3 EtherNet/IP-Modul anhängen


u Im CODESYS-Gerätebaum: Rechtsklick auf [Communication] > [Ethernet] > [Ethernet_1] >
[Ethernet_IP_Adapter].
u [Gerät anhängen...] wählen.
w Fenster [Gerät anhängen] erscheint.
u In der Liste [Hersteller] <Alle Hersteller> wählen.
u In der Liste darunter [Feldbusse] > [EtherNet/IP] > [EtherNet/IP Module] > [EtherNet/IP Module]
wählen.
u Wahl mit [Gerät anhängen] bestätigen
u Fenster [Gerät anhängen] mit Schaltfläche [Schließen] schließen.
w Der EtherNet/IP-Modul ist angehängt.

8.12.4 EtherNet/IP-Schnittstelle konfigurieren


u Im CODESYS-Gerätebaum [Communication] > [Ethernet] > [Ethernet_1] doppelklicken.
u Schnittstelle wie gewünscht konfigurieren, z.B.:
• IP-Adresse
• Ethernet Device E/A-Abbild
• Ethernet Device IEC-Objekte

73
CR1140 CR1141

8.13 Modbus nutzen


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Modbus Master: Ò Online-Hilfe > Feldbusunterstützung > Modbus Configurator > Modbus
Master

Modbus Slave Device: Ò Online-Hilfe > Feldbusunterstützung > Modbus Configurator >
Modbus Slave Device

Zur Nutzung des Netzwerkprotokolls Modbus die Konfiguration über den Gerätebaum wie folgt
einstellen:

8.13.1 Ethernet-Adapter an ein Ethernet anhängen


u Im CODESYS-Gerätebaum: Rechtsklick auf [Communication] > [Ethernet].
u [Gerät anhängen...] wählen.
w Fenster [Gerät anhängen] erscheint.
u In der Liste [Hersteller] <Alle Hersteller> wählen.
u In der Liste darunter [Feldbusse] > [Ethernet Adapter] > [Ethernet Adapter] > [Ethernet] wählen.
u Wahl mit [Gerät anhängen] bestätigen
u Fenster [Gerät anhängen] mit Schaltfläche [Schließen] schließen.
w Der Ethernet-Adapter ist angehängt.

8.13.2 Modbus TCP Master anhängen


u Im CODESYS-Gerätebaum: Rechtsklick auf [Communication] > [Ethernet] > [Ethernet_1].
u [Gerät anhängen...] wählen.
w Fenster [Gerät anhängen] erscheint.
u In der Liste [Hersteller] <Alle Hersteller> wählen.
u In der Liste darunter [Feldbusse] > [Modbus] > [Modbus TCP Master] > [Modbus TCP Master]
wählen.
u Wahl mit [Gerät anhängen] bestätigen
u Fenster [Gerät anhängen] mit Schaltfläche [Schließen] schließen.
w Der Modus TCP Master ist angehängt.

8.13.3 Modbus TCP Slave Device anhängen


u Im CODESYS-Gerätebaum: Rechtsklick auf [Communication] > [Ethernet] > [Ethernet_1] >
[Modbus_TCP_Master].
u [Gerät anhängen...] wählen.
w Fenster [Gerät anhängen] erscheint.
u In der Liste [Hersteller] <Alle Hersteller> wählen.
u In der Liste darunter [Feldbusse] > [Modbus] > [Modbus TCP Slave Device] > [Modbus TCP Slave
Device] wählen.
u Wahl mit [Gerät anhängen] bestätigen
u Fenster [Gerät anhängen] mit Schaltfläche [Schließen] schließen.
w Das Modus TCP Slave Device wird zum Modbus TCP Master hinzugefügt.

74
CR1140 CR1141

8.13.4 Modbus TCP Slave Device konfigurieren


u Im CODESYS-Gerätebaum: Doppelklick auf [Communication] > [Ethernet] > [Ethernet_1] >
[Modbus_TCP_Master] > [Modbus_TCP_Slave].
w Das Konfigurationsfenster für den Modbus_TCP_Slave erscheint.
u In folgenden Registerkarten die Parameter wie gewünscht einstellen:
• [General]: Die IP-Adresse des Modbus_TCP_Slaves eingeben. Optional: [Response Timeout] und
[Port] eingeben.
• [Modbus Slave Channel]: Die gewünschten Modbus-Channels (Read Holding Registers)
hinzufügen.
• [Modbus TCPSlave I/O Mapping]: Variablen definieren und diesen die Werte der Modbus-Register
zuweisen.

u Für weitere Informationen zu den Modbus-Einstellungen, zu der Modbus-Kommunikation


und zu der Registerkonfiguration des jeweiligen Modbus Slaves: Ò Betriebsanleitung des
Modbus Slaves.
u Nach Abschluss der Modbus-Konfiguration die Variablen im Anwendungsprogramm
auswerten.

8.14 Task-Abarbeitung konfigurieren


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Taskkonfiguration: Ò Online-Hilfe > CODESYS Development System > Applikation
programmieren > Taskkonfiguration

Die Abarbeitung der Tasks wird durch Parameter gesteuert. Der Anwender kann jeden Task separat
parametrieren.
CODESYS legt bei der Projekt- und Visualisierungserstellung mit Verwendung des ecomatDisplay-
Templates automatisch folgende Tasks an:

Name Beschreibung Verweis


Task Task für die Abarbeitung des Hauptprogramms Task konfigurieren (Ò / 76)
[PLC_PRG (PRG)]
VISU_TASK Task für die Abarbeitung der Visualisierungen Visualisierungs-Task konfigurieren
(Ò / 76)

Für Unterprogramme mit POUs, die mehrmals pro SPS-Zyklus ausgeführt werden sollen:
u Neuen Task anlegen.
u Task-Eigenschaften konfigurieren:
[Typ]: Zyklisch
[Intervall]: gewünschte Zykluszeit
u Unterprogramm mit POUs dem neu erstellten Task zuweisen.

75
CR1140 CR1141

Bei starker Auslastung der CAN-Busse:


u Für jede CAN-Schnittstelle einen separaten Task anlegen.
u Task-Eigenschaften konfigurieren:
[Priorität]: hoch (< 5)
[Typ]: Zyklisch
[Intervall]: gewünschte Zykluszeit (= Übertragungsintervall)
u Unterprogramme mit den POUs für die CAN-Kommunikation den CAN-Tasks zuordnen.

8.14.1 Task konfigurieren


Die Task bestimmt die Ausführung des Standardprogramms [PLC_PRG]. Der Programmierer kann der
Task zusätzliche Unterprogramme zuweisen.
Um die Eigenschaften der Task einzustellen:
u Im Gerätebaum: Doppelklick auf [Task]
w Im Editor-Fenster: Registerkarte [Konfiguration] zeigt aktuelle Konfiguration der Task.
u Folgende Werte einstellen:
[Priorität (0...31)]: 1
[Typ]: Zyklisch
[Intervall]: t#10ms
u Projekt speichern, um die Änderungen zu übernehmen.

8.14.2 Visualisierungs-Task konfigurieren


Jede Visualisierung wird getrennt vom Programm-Code in einem separaten Task ausgeführt.
Um die Eigenschaften des Visualisierungs-Tasks einzustellen:
u Im Gerätebaum: Doppelklick auf [VISU_TASK]
w Im Editor-Fenster: Registerkarte [VISU_TASK] > [Konfiguration] zeigt aktuelle Konfiguration des
Visualisierungs-Tasks.
u Folgende Werte einstellen:
[Priorität (0...31)]: <16
[Typ]: Zyklisch
[Intervall]: t#20ms

u Um die Abarbeitung anderer, für die Kernfunktionalität der Applikation wichtiger Tasks nicht
zu unterbrechen, dem Visualisierungs-Task ([VISU_TASK]) eine möglichst niedrige Priorität
zuweisen.
u Um die Ressourcen der geräteinternen SPS und des Feldbus-Netzwerks zu schonen, den
VISU_TASK in angemessenen zyklischen Intervallen ausführen.

u Projekt speichern, um die Änderungen zu übernehmen.

8.15 ecomatPanel nutzen


Ein ecomatPanel (Tastenmodul mit Drehknopf) kann die Bedienungsmöglichkeiten eines
ecomatDisplay 4.3“ erweitern.
Schritte, um ein ecomatPanel nutzen zu können:
1. ecomatPanel anschließen und aktivieren (Ò / 77)

76
CR1140 CR1141

2. ecomatPanel einstellen und nutzen (Ò / 58) (mit Funktionsbausteinen, optional)

8.15.1 ecomatPanel anschließen und aktivieren


u Hinweise zu Anschlussbelegungen beachten: Ò Technische Daten der Geräte.
u Hinweise zum elektrischen Anschluss beachten: Ò Betriebsanleitungen der Geräte.

Das ecomatPanel in Verbindung mit einem ecomatDisplay 4.3“ in Betrieb nehmen:


u CAN-Bus des ecomatPanels an den CAN-Bus-Anschluss des ecomatDisplay 4.3“ anschließen. (Ò
Betriebsanleitung des ecomatDisplay 4.3)
u Im Setup-Modus des ecomatDisplay 4.3“ im Menü [Services] das ecomatPanel aktivieren (Ò
Services: Netzwerkdienste einstellen / 39).
u Die Betriebsspannung des ecomatPanel und des ecomatDisplay 4.3“ anschließen.
w Die Bedienung des ecomatDisplay 4.3“ kann nun parallel mithilfe des ecomatPanel erfolgen.
w Der Drehknopf mit dem 4-Wege-Taster übernimmt die Funktion der Kreuzwippe.
w Die Push-Funktion entspricht der RETURN-Taste in der Mitte der Kreuzwippe.
w Die 6 hinterleuchteten Funktionstasten des ecomatPanel entsprechen den Gerätetasten / LEDs
oberhalb und unterhalb der Kreuzwippe des ecomatDisplay 4.3“.

77
CR1140 CR1141

9 Betrieb

9.1 CODESYS-Projekt auf das Gerät übertragen


u Machen Sie sich mit folgenden CODESYS-Funktionen vertraut:
Applikation auf das Gerät übertragen: Ò Online-Hilfe > CODESYS Development System >
Applikation auf die SPS übertragen

Monitoring: Ò Online-Hilfe > CODESYS Development System > Applikation zur Laufzeit >
Monitoring von Werten
u Hinweise zu den Zuständen der SPS-Anwendung beachten! Betriebszustände der SPS-
Anwendung (Ò / 79)

9.1.1 Anwendung auf das Gerät laden


Um die erstellte Anwendung auf das Gerät zu laden und spannungsausfallsicher zu speichern:
ü Verbindung zwischen PC/Laptop und dem Gerät ist hergestellt.
ü Kommunikationspfad ist gesetzt. Programmierschnittstelle konfigurieren
ü Projekt ist getestet.
u Im Projektbaum: Auf [Application] klicken.
u [Erstellen] > [Übersetzen] wählen.
w CODESYS erzeugt Programmcode der Anwendung.
u [Online] > [Einloggen] wählen.
w CODESYS wechselt in den Online-Betrieb.
w CODESYS lädt aktive Anwendung auf das Gerät (Download).
w Anwendung auf dem Gerät ist im STOP-Zustand.
u [Debug] > [Start] wählen.
w Anwendung auf dem Gerät wechselt in den RUN-Zustand.
u [Online] > [Bootapplikation erzeugen] wählen.
w CODESYS speichert die Anwendung spannungsausfallsicher auf dem Gerät.

9.1.2 Anwendung auf dem Gerät löschen


Um eine auf dem Gerät gespeicherte Anwendung zu löschen:
u Im Gerätebaum: Auf [Application] klicken.
u [Online] > [Einloggen] wählen.
w CODESYS wechselt in den Online-Betrieb.
u Im Gerätebaum: Doppelklick auf [Device (…)]
u Editor-Fenster zeigt Geräteeinstellungen.
u Registerkarte [Applikationen] wählen.
u Auf [Liste aktualisieren] klicken.
w Editor-Fenster zeigt die auf dem Gerät gespeicherten Anwendungen.
u Auf [Alle löschen] klicken, um alle Anwendungen zu löschen.
- oder -
Gewünschte Anwendung wählen und auf [Löschen] klicken, um eine einzelne Anwendung zu
löschen.

78
CR1140 CR1141

w CODESYS löscht die gewählten Anwendungen auf dem Gerät.

9.2 Betriebszustände der SPS-Anwendung


Die auf dem ecomatDisplay gespeicherten Anwendungen werden in separaten Tasks unabhängig
voneinander ausgeführt. Eine Anwendung kann folgende Betriebszustände einnehmen:
• Entladen
Auf dem Gerät ist keine Anwendung gespeichert.
• RUN
– Die Anwendung ist auf dem Gerät gespeichert.
– Die Anwendung wird zyklisch abgearbeitet.
• STOP
– Die Anwendung ist auf dem Gerät gespeichert.
– Die Anwendung wird nicht abgearbeitet.

9.2.1 Betriebszustand der SPS-Anwendung anzeigen


Um den aktuellen Betriebszustand der auf dem Gerät gespeicherten SPS-Anwendung anzuzeigen:
u Im Gerätebaum: Symbol [Application] zeigt den aktuellen Zustand
- oder -
Im Online-Betrieb: CODESYS-Statusleiste zeigt den aktuellen Zustand der Anwendung.

9.2.2 SPS-Anwendung starten


Um die Ausführung der SPS-Anwendung zu starten:
u Im Gerätebaum: Rechtsklick auf [Application] und [Aktive Applikation setzen] wählen.
u [Online] > [Einloggen] wählen.
w CODESYS wechselt in den Online-Betrieb.
u [Debug] > [Starten] wählen.
w Anwendung wechselt in den RUN-Zustand.
u Optional: Vorgang für weitere Anwendungen wiederholen.

9.2.3 SPS-Anwendung stoppen


Um die Ausführung der SPS-Anwendung zu stoppen:
u Im Gerätebaum: Rechtsklick auf [Application] und [Aktive Applikation setzen] wählen.
u [Online] > [Einloggen] wählen.
w CODESYS wechselt in den Online-Betrieb.
u [Debug] > [Stop] wählen.
w Anwendung wechselt in den STOP-Zustand.
u Optional: Vorgang für weitere Anwendungen wiederholen.

9.3 Reset

9.3.1 Unterstützte Reset-Varianten


Die folgende Tabelle zeigt die von der geräteinternen SPS unterstützten Reset-Varianten und das
resultierende System-Verhalten:

79
CR1140 CR1141

Reset-Variante System-Verhalten Auslösende Aktionen


Reset (Warm) • Die Anwendung geht in den STOP- Anwendung rücksetzen (warm) (Ò / 80)
Zustand.
• Standard Variablen (VAR) der
Anwendung werden neu initialisiert.
• Remanente Variablen (VAR RETAIN)
der Anwendung behalten ihre aktuellen
Werte.
Reset (Kalt) • Die Anwendung geht in den Zustand Anwendung rücksetzen (kalt) (Ò / 80)
STOP.
• Alle Variablen (VAR, VAR RETAIN) der
Anwendung werden neu initialisiert.
Reset (Ursprung) • Die Anwendung geht in den STOP- Anwendung rücksetzen (Ursprung) (Ò / 80)
Zustand.
• Die Anwendung auf der SPS wird
gelöscht.
• Alle Variablen (VAR, VAR RETAIN) der
Anwendung werden neu initialisiert.
• SPS wird in Urzustand rückgesetzt.

Eine Variable, die ohne einen Initialisierungswert deklariert wurde, wird mit dem
variablenspezifischen Standardwert initialisiert (z.B. INT = 0 ).

9.3.2 Anwendung rücksetzen (warm)


Um die Anwendung rückzusetzen:
u Im Gerätebaum: [Application] wählen und als aktive Applikation
u [Online] > [Einloggen] wählen.
w CODESYS wechselt in den Online-Betrieb.
u [Online] > [Reset warm] wählen, um die Anwendung rückzusetzen.
w Anwendung wechselt in den STOP-Zustand.
w Standard-Variablen werden neu initialisiert.
w Retain-Variablen behalten ihre Werte.

9.3.3 Anwendung rücksetzen (kalt)


Um die Anwendung rückzusetzen:
u Im Gerätebaum: [Application] wählen.
u [Online] > [Einloggen] wählen.
w CODESYS wechselt in den Online-Betrieb.
u [Online] > [Reset kalt] wählen, um die Anwendung rückzusetzen.
w Anwendung wechselt in den STOP-Zustand.
w Alle Variablen werden neu initialisiert.

9.3.4 Anwendung rücksetzen (Ursprung)


Um die Anwendung rückzusetzen:
u Im Gerätebaum: [Application] wählen.
u [Online] > [Einloggen] wählen.
w CODESYS wechselt in den Online-Betrieb.
u [Online] > [Reset Ursprung] wählen, um die Anwendung rückzusetzen.

80
CR1140 CR1141

w Anwendung wechselt in den STOP-Zustand und wird gelöscht.


w Alle Variablen werden neu initialisiert.
w SPS wird in Urzustand rückgesetzt.

9.4 Systeminformationen anzeigen


Im Online-Modus zeigt der Gerätebaum die aktuelle Werte der folgenden Systemparameter an:

Parameter Beschreibung Mögliche Werte


[IP-Settings] IP-Einstellungen --
• [IP Address] IP-Adresse des Geräts z.B. 192.168.0.100
• [IP Mask] Subnet-Maske des Netzwerks z.B. 255.255.255.0
• [Gateway Address] IP-Adresse des Netzwerk-Gateways z.B. 192.168.0.2
[Version Firmware] Version der installierten Firmware z.B. V1.4.0
[Serial Number Device] Seriennummer des Geräts z.B. 1511AB019

Um die Systeminformationen des Geräts anzuzeigen:


u Verbindung zwischen CODESYS und ecomatDisplay herstellen.
u [Online] > [Einloggen] wählen.
w CODESYS wechselt in den Online-Betrieb.
u Im Gerätebaum: Doppelklick auf [System_Info].
u Im Editor-Fenster: Registerkarte [Parameter] wählen.
w Im Editor-Fenster: Tabelle zeigt aktuelle Werte der Systemparameter.

81
CR1140 CR1141

10 ifm-Funktionsbibliotheken
Dieses Kapitel enthält die detaillierte Beschreibung der Funktionsbibliotheken, die die ifm electronic für
die Programmierung des Geräts unter CODESYS 3.5 bereitstellt.

10.1 Verhaltensmodell der ifm-Funktionsbausteine


Dieses Kapitel beschreibt die Verhaltensmodelle der ifm-Funktionsbausteine für das ecomatDisplay.

10.1.1 Allgemein
Die ifm-Funktionsbausteine besitzen standardmäßig folgende Ausgänge für die Rückgabe von Status-
und Fehlerinformationen:

Ausgang Beschreibung
xError TRUE Es ist ein Fehler aufgetreten.
FALSE Es ist kein Fehler aufgetreten.
eDiagInfo Diagnose-/Fehler-Information Meldungen / Diagnose-Codes der Funktionsbausteine (Ò / 82)

Alle Ein- und Ausgänge, die zum ifm-Verhaltensmodell gehören, sind im FB als oberste angeordnet.

10.1.1.1 Meldungen / Diagnose-Codes der Funktionsbausteine


Status-/Diagnose-/Fehler-Meldungen der Funktionsbausteine sind im globalen Enum DIAG_INFO
definiert.
Sie besitzen in Abhängigkeit der Meldeart eins der folgenden Präfixe :

Präfix Art der Meldung Beschreibung


STAT Zustandsmeldung Statusmeldungen beinhalten Informationen über den Zustand des Funktionsbausteins
während des normalen Ablaufes.
DIAG Diagnosemeldung Diagnosemeldungen beinhalten Informationen zu einem Fehlerereignis. Sie setzen sich
nach Verschwinden des Fehlerereignisses von selbst zurück und können optional durch
die Applikation ausgewertet werden.
ERR Fehlermeldung Fehlermeldungen beinhalten Informationen zu einem Fehlerereignis. Sie müssen nach
Verschwinden des Fehlereereignisses in der Applikation zurückgesetzt werden.

Beispiele für Meldungen / Diagnose-Codes:


• STAT_INACTIVE
• DIAG_OPEN_CIRCUIT
• ERR_OVERVOLTAGE

Auflistungen der Diagnose-Codes sind Teil der Bausteinbeschreibungen: ifm-


Funktionsbibliotheken (Ò / 82)

10.1.2 Verhaltensmodell ENABLE


Funktionsbausteine, die das Verhaltensmodell ENABLE verwenden, werden zyklisch abgearbeitet,
solange der Zustand am Eingang xEnable = TRUE ist.
Wenn xEnable = FALSE ist, wird der Funktionsbaustein nicht ausgeführt. Alle Bausteinausgänge
werden auf ihre voreingestellten Standardwerte rückgesetzt und nicht aktualisiert. In diesem Fall gilt:
xError = FALSE und eDiagInfo = STAT_INACTIVE.

82
CR1140 CR1141

Funktionsbausteine, die keinen xEnable-Eingang besitzen, werden zyklisch ab Start der Applikation
abgearbeitet. Erst mit Stopp der Applikation wird die Abarbeitung beendet. Das Verhalten entspricht
dem eines Funktionsbausteins mit einem dauerhaften TRUE am Eingang xEnable.

10.1.2.1 Reaktion auf Fehler


Im Fehlerfall wird xError auf TRUE gesetzt und eDiagInfo zeigt den Diagnose-Code an, solange
xEnable = TRUE ist.
Alle anderen Ausgänge des Funktionsbausteins werden abhängig vom Datentyp rückgesetzt auf
folgende Werte:

Datentyp Wert
numerisch 0 / 0.0
String Leerstring
BOOL/Bit FALSE

10.1.3 Verhaltensmodell EXECUTE


Funktionsbausteine, die das Verhaltensmodell EXECUTE besitzen, werden nach einer steigenden
Flanke am Eingang xExecute einmalig abgearbeitet.
Das Signal an xExecute muss solange auf TRUE gesetzt bleiben, bis xDone = TRUE oder
xError = TRUE wird. Wird das Signal an xExecute vorher FALSE, wird die Bausteinbearbeitung ohne
Ergebnis abgebrochen.
Hat der Funktionsbaustein seine Funktion erfolgreich ausgeführt, wird der Ausgang xDone für einen
Zyklus auf TRUE gesetzt.

10.1.3.1 Reaktion auf Fehler


Im Fehlerfall wird xError auf TRUE gesetzt und eDiagInfo zeigt den Fehlerstatus an, solange xExecute
= TRUE ist.
Der Ausgang xDone wird auf FALSE gesetzt, da die Ausführung nicht fehlerfrei beendet werden
konnte.
Alle anderen Ausgänge des Funktionsbausteins werden abhängig vom Datentyp rückgesetzt auf
folgende Werte:

Datentyp Wert
numerisch 0 / 0.0
String Leerstring
BOOL/Bit FALSE

83
CR1140 CR1141

10.2 Bibliothek ifm_ecomatDisplay43inch_Cnt


Die Bibliothek ist eine Container-Bibliothek. Sie enthält alle für die Programmierung des Geräts
benötigten Funktionsbibliotheken.
• ifmCANopenManager (Ò Bibliothek ifmCANopenManager.library / 85)
• ifmDevice_ecomatDisplay43inch (Ò Bibliothek ifmDevice_ecomatDisplay43inch / 95)
• ifmFileUtil
• ifmRawCAN

84
CR1140 CR1141

10.3 Bibliothek ifmCANopenManager.library


Die Bibliothek enthält Programmbausteine (POU) und Datenstrukturen für die Programierung der
Funktionalität eines CANopen Managers.

85
CR1140 CR1141

10.3.1 COP_GetNodeState
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: EXECUTE
Bibliothek: ifmCANopenManager.library
Symbol in
CODESYS:

Beschreibung
Der FB gibt den aktuellen Zustand eines CANopen-Knotens aus.

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE: FB nicht ausführen
• TRUE: FB ausführen.
Den FB solange ausführen
(xExecute = TRUE), bis die
Bausteinausführung erfolgreich beendet
ist (xDone = TRUE).
Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL
usiNode USINT ID des CANopen-Knotens • 0: lokales Gerät
• 1...127: ID des CANopen-Knotens

Ausgangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolg- FALSE FB wird ausgeführt
reich beendet ist
TRUE • FB erfolgreich ausgeführt
• FB kann erneut aufgerufen
werden
xError BOOL Anzeige, ob bei der FB-Ausführung FALSE kein Fehler aufgetreten oder
ein Fehler aufgetreten ist der FB wird noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformationen
beachten
eDiagInfo DIAG_INFO Diagnoseinformationen → Liste unten (Diagnose-Codes)
eNMT_State NMT_ Zustand des CANopen-Knotens NMT_STATES (ENUM) (Ò / 94)
STATES

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.

86
CR1140 CR1141

• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Aus-
gängen liegen gültige Ergebnisse an.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_DEVICE_NOT_AVAILABLE Fehler: Gewähltes Gerät unbekannt / nicht konfiguriert
• ERR_INVALID_CHANNEL Fehler: Gewählter Kommunikationskanal unbekannt / nicht konfiguriert

87
CR1140 CR1141

10.3.2 COP_SDOread
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: EXECUTE
Bibliothek: ifmCANopenManager.library
Symbol in CODESYS:

Beschreibung
Der FB liest den Inhalt eines Service Data Objects (SDO) und schreibt diesen in einen Pufferspeicher.
Das SDO wird ausgewählt über die CAN-Schnittstelle, die ID des CANopen-Knotens sowie Index und
Subindex des Objektverzeichnisses.
Der CANopen-Knoten muss innerhalb einer vom Nutzer definierten Zeit auf die Anfrage des FB
antworten.

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE: FB nicht ausführen
• TRUE: FB ausführen.
Den FB solange ausführen
(xExecute = TRUE), bis die
Bausteinausführung erfolgreich beendet
ist (xDone = TRUE).
Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL
usiNode USINT ID des CANopen-Knotens • 0: lokales Gerät
• 1...127: ID des CANopen-Knotens
uiIndex UINT Index im Objektverzeichnis
usiSubIndex USINT Subindex des Indexes im Objektver-
zeichnis
pData Pointer to USINT Pointer auf den Pufferspeicher
udiBuffLen UDINT Größe des Pufferspeichers (in Byte)
tTimeout TIME max. Antwortzeit z.B. T#25ms

Ausgangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich FALSE FB wird ausgeführt
beendet ist
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden

88
CR1140 CR1141

Parameter Datentyp Bedeutung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetreten
Fehler aufgetreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformation
en beachten
eDiagInfo DIAG_INFO Diagnoseinformationen → Liste unten (Diagnose-Codes)
udiLen UDINT Anzahl der empfangenen Bytes

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den
Ausgänge liegen gültige Ergebnisse an.
• ERR_INVALID_CHANNEL Fehler: Gewählter Kommunikationskanal unbekannt / nicht konfiguriert
• ERR_INVALID_VALUE Fehler: Mindestens ein Eingangsparameter ist ungültig oder außerhalb des
Wertebereichs.
• ERR_BUFFER_OVERFLOW Fehler: Übertragungspuffer voll; CAN-Nachricht kann Pufferspeicher nicht
beschreiben und wird nicht übertragen
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_DEVICE_NOT_AVAILABLE Fehler: Gewähltes Gerät unbekannt / nicht konfiguriert
• ERR_SDO_IDX_NOT_EXIST Fehler: Objekt, das gelesen/geschrieben werden soll, existiert nicht
• ERR_SDO_SUBIDX_NOT_EXIST Fehler: Unterobjekt, das gelesen/geschrieben werden soll, existiert nicht
• ERR_SDO_UNSUPPORTED Fehler: Lese-/Schreibzugriff auf das gewählte Objekt ist nicht erlaubt
_ACCESS
• ERR_SDO_DATA_TYPE Fehler: Datentyp der zu schreibenden Daten passt nicht zum Objekt oder
ist außerhalb des Wertebereichs

89
CR1140 CR1141

10.3.3 COP_SDOwrite
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: EXECUTE
Bibliothek: ifmCANopenManager.library
Symbol in CODESYS:

Beschreibung
Der FB schreibt den Inhalt eines Service Data Objects (SDO). Das SDO wird ausgewählt über die
CAN-Schnittstelle, die ID des CANopen-Knotens sowie Index und Subindex des
Objektverzeichnisses.

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE: FB nicht ausführen
• TRUE: FB ausführen.
Den FB solange ausführen
(xExecute = TRUE), bis die
Bausteinausführung erfolgreich beendet
ist (xDone = TRUE).
Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL
usiNode USINT ID des CANopen-Knotens • 0: lokales Gerät
• 1...127: ID des CANopen-Knotens
uiIndex UINT Index im Objektverzeichnis
usiSubIndex USINT Subindex des Indexes im Objektver-
zeichnis
pData Pointer to USINT Pointer auf den Pufferspeicher
udiLen UDINT Anzahl der empfangenen Bytes
tTimeout TIME max. Antwortzeit z.B. T#25ms

Ausgangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausfüh- FALSE FB wird ausgeführt
rung erfolgreich beendet ist
TRUE • FB erfolgreich ausgeführt
• FB kann erneut aufgerufen werden
xError BOOL Anzeige, ob bei der FB- FALSE kein Fehler aufgetreten oder der FB
Ausführung ein Fehler auf- wird noch ausgeführt
getreten ist

90
CR1140 CR1141

Parameter Datentyp Bedeutung Mögliche Werte


xError BOOL Anzeige, ob bei der FB- TRUE • Fehler aufgetreten
Ausführung ein Fehler auf- • Aktion konnte nicht ausgeführt
getreten ist werden
• Diagnoseinformationen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen → Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Aus-
gänge liegen gültige Ergebnisse an.
• ERR_INVALID_CHANNEL Fehler: Gewählter Kommunikationskanal unbekannt / nicht konfiguriert
• ERR_INVALID_VALUE Fehler: Mindestens ein Eingangsparameter ist ungültig oder außerhalb des Wer-
tebereichs.
• ERR_BUFFER_OVERFLOW Fehler: Übertragungspuffer voll; CAN-Nachricht kann Pufferspeicher nicht be-
schreiben und wird nicht übertragen
• ERR_TIMEOUT Fehler: Die zulässige maximale Ausführungszeit wurde überschritten. Die Aktion
wurde nicht abgeschlossen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_DEVICE_NOT_AVAILABLE Fehler: Gewähltes Gerät unbekannt / nicht konfiguriert
• ERR_SDO_IDX_NOT_EXIST Fehler: Objekt, das gelesen/geschrieben werden soll, existiert nicht
• ERR_SDO_SUBIDX_NOT_EXIST Fehler: Unterobjekt, das gelesen/geschrieben werden soll, existiert nicht
• ERR_SDO_UNSUPPORTED Fehler: Lese-/Schreibzugriff auf das gewählte Objekt ist nicht erlaubt
_ACCESS
• ERR_SDO_DATA_TYPE Fehler: Datentyp der zu schreibenden Daten passt nicht zum Objekt oder ist au-
ßerhalb des Wertebereichs

91
CR1140 CR1141

10.3.4 COP_SendNMT
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: EXECUTE
Bibliothek: ifmCANopenManager.library
Symbol in
CODESYS:

Beschreibung
Der FB sendet einen Befehl zur Steuerung eines CANopen-Knotens.

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE: FB nicht ausführen
• TRUE: FB ausführen.
Den FB solange ausführen
(xExecute = TRUE), bis die
Bausteinausführung erfolgreich beendet
ist (xDone = TRUE).
Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL
usiNode USINT ID des CANopen-Knotens • 0: lokales Gerät
• 1...127: ID des CANopen-Knotens
usiNMTservice NMT_ Befehl zur Steuerung des CANopen- NMT_SERVICE (ENUM) (Ò / 94)
SERVICE Knotens

Ausgangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich FALSE FB wird ausgeführt
beendet ist
TRUE • FB erfolgreich ausgeführt
• FB kann erneut aufgerufen
werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetreten oder der
Fehler aufgetreten ist FB wird noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformationen
beachten
eDiagInfo DIAG_INFO Diagnoseinformationen → Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.

92
CR1140 CR1141

• ERR_INVALID_CHANNEL Fehler: Gewählter Kommunikationskanal unbekannt / nicht konfiguriert


• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von Ein-
gangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!

93
CR1140 CR1141

10.3.5 NMT_SERVICE (ENUM)


Name Beschreibung Mögliche Werte Datentyp Wert
NMT_SER- Befehl zur Steuerung SET_PRE_OPERATI- Preoperational-Zustand setzen INT 1
VICE des CANopen-Knotens ONAL
SET_OPERATIONAL Operational-Zustand setzen INT 2
RESET_NODE CAN-Knoten zurücksetzen INT 3
RESET_COMM Kommunikation zurücksetzen INT 4
STOP_NODE CAN-Knoten stoppen INT 5

10.3.6 NMT_STATES (ENUM)


Name Beschreibung Mögliche Werte Datentyp Wert
NMT_STA- Zustand des CAN-Netzwerkes INIT Initialisierung INT 1
TES
PREOP Preopertional INT 2
OPERATIONAL Operational INT 3
STOP STOP INT 4
NOT_AVAILABLE Nicht verfügbar INT 5
UNKNOWN unbekannt INT 6

94
CR1140 CR1141

10.4 Bibliothek ifmDevice_ecomatDisplay43inch


Die Bibliothek enthält Folgendes:
• gerätespezifische Datenstrukturen
• gerätespezifische Aufzählungstypen
• gerätespezifische globale Variablen und Konstanten
• gerätespezifische Funktionen

95
CR1140 CR1141

10.4.1 Common

10.4.1.1 BootIntoRecovery

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB startet das Gerät im Recovery Modus. Dazu wird das Gerät auf Befehl unverzüglich neu
gestartet.

Datenverlust möglich: Ungespeicherte Daten (z.B. Alarme, Data Logging, Prozessdaten,


Rezepte) gehen beim Neustart verloren.
u Vor dem Neustart alle benötigten Daten auf dem FLASH-Speicher des Geräts speichern

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausgeführt
– Den FB solange ausführen (xExecute =
TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone = TRUE).
– Wenn xDone = TRUE, dann den Eingang
xExecute auf FALSE rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB wird
noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

96
CR1140 CR1141

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_SET_RECOVERY_MODE Fehler: Fehler während des Startens des Recovery-Modus
u ifm-Service-Center kontaktieren!
• ERR_SHUTDOWN_DEVICE Fehler: Fehler während des Herunterfahrens des Geräts
u ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

97
CR1140 CR1141

10.4.1.2 BootIntoSetup

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB startet das Gerät im Setup Modus aus dem RUN-Mode heraus. Dazu wird das Gerät auf
Befehl unverzüglich neu gestartet.

Datenverlust möglich: Ungespeicherte Daten (z.B. Alarme, Data Logging, Prozessdaten,


Rezepte) gehen beim Neustart verloren.
u Vor dem Neustart alle benötigten Daten auf dem FLASH-Speicher des Geräts speichern

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausgeführt
– Den FB solange ausführen (xExecute =
TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone = TRUE).
– Wenn xDone = TRUE, dann den Eingang
xExecute auf FALSE rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB wird
noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt

98
CR1140 CR1141

• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-


tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_BOOT_INTO_SETUP Fehler: Fehler während des Startens des Setup-Menüs
u ifm-Service-Center kontaktieren!
• ERR_SHUTDOWN_DEVICE Fehler: Fehler während des Herunterfahrens des Geräts
u ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

99
CR1140 CR1141

10.4.1.3 GetDeviceOrientation

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB gibt die im Gerät konfigurierte Ausrichtung (Rotation) des Bildschirminhalts aus.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich FALSE FB wird ausgeführt
beendet ist
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen
werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetre-
Fehler aufgetreten ist ten oder der FB wird
noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte
nicht ausgeführt
werden
• Diagnoseinformati
onen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
eRotation eOBJECT_ROTATI- Konfigurierte Geräteausrichtung (Rota- eOBJECT_ROTATION (ENUM)
ON tion). (Ò / 198)

Diagnose-Codes

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.

100
CR1140 CR1141

• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_GET_DEVICE_ROTATION Fehler: Fehler beim Lesen der konfigurierten Geräteausrichtung.
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

101
CR1140 CR1141

10.4.1.4 HideSplashScreen

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB steuert die Anzeige des Startbilds (Splashscreen) auf dem Display. Standardmäßig wird das
Startbild nach Booten des Geräts angezeigt. Das Startbild wird mit dem FB LoadSplashScreen
eingestellt.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung
xHide BOOL Startbild (Splashscreen) einblenden / FALSE Startbild (Splash-
ausblenden. screen) ausblenden
und Visualisierung
anzeigen.
TRUE Startbild (Splash-
screen) anzeigen
und Visualisierung
ausblenden.

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

102
CR1140 CR1141

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_HIDE_SPLASH_SCREEN Fehler: Fehler beim Anzeigen/Ausblenden des Startbildes.
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

103
CR1140 CR1141

10.4.1.5 LoadSplashScreen

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB lädt eine Bilddatei in den Flash-Speicher des Geräts. Die Bilddatei wird ab dem nächsten
Neustart des Geräts als Startbild (Splashscreen) verwendet.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Informationen zur Bilddatei für den Splashscreen:

• Bildformat: BMP 24 Bit Version 3.


• RLE-Kompression und gzip-Kompression sind erlaubt.
• Empfohlene Vorgehensweise: Speichern der Bilddatei mit MS Paint als 24 Bit BMP.
• Empfohlene maximale Bildgröße: Auflösung des Displays Ò Datenblatt
• Groß- / Kleinschreibung beim Dateipfad beachten. Linux ist case sensitive.
• Der Dateiname darf nur Kleinbuchstaben enthalten.
• Neue Datei mit dem CODESYS-Filebrowser oder im Setup-Modus auf das Gerät übertragen.
• Maximale Dateigröße: Keine Begrenzung. Die Bilddatei beansprucht einen Teil des verfügbaren
Speichers für die Benutzerapplikation.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung
sPathToSplash STRING absoluter Verzeichnispfad zur Bilddatei z.B. '/home/cds-apps/PlcLogic/visu/
splashscreen.bmp'

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden

104
CR1140 CR1141

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_INVALID_VALUE Fehler: Dateipfad für Startbild an sPathToSplash ist ungültig. Funktionsaufruf wurde
abgebrochen.
Ungültige Werte für sPathToSplash:
• Wert ist NULL (z.B. '')
• Wert auf "/" (z.B ein Verzeichnis)
• Wert enthält fortlaufende Schrägstriche (z.B. "////")
• ERR_SET_SPLASH_SCREEN Fehler: Fehler beim Laden des Startbildes.
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

105
CR1140 CR1141

10.4.1.6 SetDeviceOrientation

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB rotiert den Bildschirminhalt ja nach Geräteausrichtung. Nach der erfolgreichen Ausführung des
FBs und nachfolgendem Neustart des Geräts wird der Bildschirminhalt entsprechend der
Einstellungen gedreht.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parame-
Datentyp Beschreibung Mögliche Werte
ter
xExecute BOOL Ausführung des FB steuern FALSE => FB wird einmal ausge-
TRUE führt
sonst. keine Auswirkungen
auf FB-Abarbeitung
eRotation eOBJECT_ROTATION Konfigurierte Geräteausrichtung (Rotation). eOBJECT_ROTATION (ENUM)
(Ò / 198)

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.

106
CR1140 CR1141

• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_GET_DEVICE_ROTATION Fehler: Fehler beim Lesen der konfigurierten Geräteausrichtung.
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

107
CR1140 CR1141

10.4.1.7 ShutdownDevice

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB löst ein geordnetes Herunterfahren und einen Neustart aus.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausgeführt
– Den FB solange ausführen (xExecute =
TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone = TRUE).
– Wenn xDone = TRUE, dann den Eingang
xExecute auf FALSE rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB wird
noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_SHUTDOWN_DEVICE Fehler: Fehler während des Herunterfahrens des Geräts
u ifm-Service-Center kontaktieren!

108
CR1140 CR1141

• ERR_UNDEFINED Fehler: Unbekannter Fehler


u ifm-Service-Center kontaktieren!

109
CR1140 CR1141

10.4.2 Ecomat Panel

10.4.2.1 SetKeyLED_ecomatPanel

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB stellt die Farbe und den Nachtmodus der angegeben Tasten-LED des ecomatPanels ein.
Die eingestellte RGB-Farbe wird bei Wertänderung am Eingang udiColour aktiviert.

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xEnable BOOL Steuerung des FBs • FALSE: FB deaktivieren
• TRUE: FB aktivieren
eLED_ID eK- Angabe der Tasten-LED eKEY_LED_ID_ECOMAT_PANEL (ENUM)
EY_LED_ID_EC (Ò / 195)
OMAT_PANEL
udiColor UDINT Einzustellende LED-Farbe. RGB: 16#00RRGGBB mit
RR = 0...FF
GG = 0...FF
BB = 0...FF
Beispiele:
rot = 16#00FF0000
grün = 16#0000FF00
blau = 16#000000FF
schwarz = 16#00000000
weiß = 16#00FFFFFF
stNightMode stKEY_LED_NIG Nachtmodus für Beleuchtung der Tas- stKEY_LED_CONTROL (STRUCT)
HT_MODE ten-LED aktivieren/deaktivieren und
die Nachtmodus-Helligkeit einstellen.
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

110
CR1140 CR1141

Diagnose-Codes

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_PREPARING Zustand: FB/FUN wird abgearbeitet; endgültige Ergebnisse sind noch nicht verfüg-
bar.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgängen
liegen gültige Ergebnisse an.
• ERR_INVALID_VALUE Fehler: Ungültige Angabe der LED an Eingangsparameter eLED_ID.
• ERR_SET_ECOMAT_PANEL_KEY Fehler beim Einstellen der LED-Farbe.
_LED_COLOR ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt

111
CR1140 CR1141

10.4.2.2 ControlAllKeyLEDs_ecomatPanel

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB schaltet entsprechend der gewählten Einstellungen alle Tasten-LEDs eines an den ifm-Bus-
Anschluss des Geräts angeschlossenen ecomatPanels ein / aus und stellt die LED-Farbe ein.
u Den FB verwenden, um die Farbe einer Gruppe von LEDs / aller LEDs gleichzeitig zu ändern.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xEnable BOOL Steuerung des FBs • FALSE: FB deaktivieren
• TRUE: FB aktivieren
stLedControl stLED_CONT- LED einschalten oder ausschalten stLED_CONTROL_ECOMAT_PANEL
ROL_ECO- und Farbe einstellen. (STRUCT) (Ò / 201)
MAT_PANEL
stNightMode stKEY_LED_NIG Nachtmodus für Beleuchtung der Tas- stKEY_LED_NIGHT_MODE (STRUCT)
HT_ ten-LED aktivieren/deaktivieren und (Ò / 199)
MODE die Nachtmodus-Helligkeit einstellen.
xErrorReset BOOL Fehler rücksetzen, wenn xError am • FALSE ⇒ TRUE: Fehler rücksetzen
Ausgangsbaustein aktiv. • FALSE: (Standardwert)
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

112
CR1140 CR1141

Diagnose-Codes

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_PREPARING Zustand: FB/FUN wird abgearbeitet; endgültige Ergebnisse sind noch nicht verfüg-
bar. Einige Ausgangswerte werden in jedem SPS-Zyklus aktualisiert.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INVALID_VALUE Fehler: Zugriff auf vom Zielgerät nicht unterstützte Tasten-LED
• ERR_SET_ECOMAT_PANEL_KEY Fehler beim Setzen der LED-Farbe.
_LED_COLOR ifm-Service-Center kontaktieren!
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

113
CR1140 CR1141

10.4.2.3 SetKeyMapping_ecomatPanel

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB weist den Tasten des ecomatPanel Standard-Tastatur-Funktionen zu (Key-Mapping).

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE => TRUE: FB wird einmal
ausgeführt
• Sonst: keine Auswirkungen auf FB-
Abarbeitung
stKeyMapList stKEY_MAP_LIS Struktur mit Mapping-Informationen stKEY_MAP_LIST_ECOMAT_PANEL
T_ECOMAT_PA- der Tasten. (STRUCT) (Ò / 200)
NEL
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgängen
liegen gültige Ergebnisse an.

114
CR1140 CR1141

• ERR_SET_ECOMAT_PANEL_KEY Fehler beim Einstellen des ecomatPanel-Tasten-Mappings


_MAP
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!
• ERR_INVALID_VALUE Fehler: ungültiger Eingangsparameter an eIfmBus

115
CR1140 CR1141

10.4.2.4 GetKeyMapping_ecomatPanel

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB liest die aktuellen Mapping-Einstellungen der Tasten des ecomatPanels aus.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE => TRUE: FB wird einmal
ausgeführt
• Sonst: keine Auswirkungen auf FB-
Abarbeitung
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich FALSE FB wird ausgeführt
beendet ist
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen
werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetre-
Fehler aufgetreten ist ten oder der FB wird
noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte
nicht ausgeführt
werden
• Diagnoseinformati
onen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
stKeyMapList stKEY_MAP_LIST_EC Struktur mit Mapping-Informationen stKEY_MAP_LIST_ECOMAT_PANEL
OMAT_PANEL der Tasten. (STRUCT) (Ò / 200)

Diagnose-Codes

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgängen
liegen gültige Ergebnisse an.

116
CR1140 CR1141

• ERR_GET_KEY_CONFIG Fehler beim Lesen der Tastenkonfiguration


• ERR_GET_ECOMAT_PANEL_KEY Fehler beim Lesen des ecomatDisplay-Tasten-Mappings
_MAP
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!
• ERR_INVALID_VALUE Fehler: ungültiger Eingangsparameter an eIfmBus

117
CR1140 CR1141

10.4.2.5 GetStatus_ecomatPanel

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB stellt die Farbe und den Nachtmodus der angegeben Tasten-LED des ecomatPanels ein.

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xEnable BOOL Steuerung des FBs • FALSE: FB deaktivieren
• TRUE: FB aktivieren
tTimeout TIME max. Antwortzeit z.B. T#25ms
xReset BOOL CAN-Bus zurücksetzen • FALSE => TRUE: CAN-Bus
zurücksetzen
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
xConnected BOOL ecomatPanel-Verbindungsstatus FALSE nicht verbunden
TRUE verbunden
uiCountRx UINT Anzahl der empfangenen CAN-Nachrichten 0…4294967295

Diagnose-Codes

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INVALID_VALUE Fehler: Ungültige Angabe der LED an Eingangsparameter eLED_ID.

118
CR1140 CR1141

10.4.3 Ethernet

10.4.3.1 GetEthernetInterfaces

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB gibt eine Liste mit allen verfügbaren Ethernet-Schnittstellen des Geräts aus.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich FALSE FB wird ausgeführt
beendet ist
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen
werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetre-
Fehler aufgetreten ist ten oder der FB wird
noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte
nicht ausgeführt
werden
• Diagnoseinformati
onen beachten
eDiagInfo eDIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
usiEthItfsCnt USINT Anzahl der vefügbaren Ethernet- 0 keine Ethernet-
Schnittstellen Schnittstelle
... ...
15 15 Ethernet-Schnitt-
stellen
aEthItfsList aETH_ITF_LIST Liste aller verfügbaren Ethernet- aETH_ITF_LIST (ALIAS) (Ò / 205)
Schnittstellen

Diagnose-Codes:

119
CR1140 CR1141

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgängen
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_GET_ETH_ITF_LIST Fehler: Probleme beim Lesen der verfügbaren Ethernet-Schnittstellen
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

120
CR1140 CR1141

10.4.3.2 GetIPsettings

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Nicht mehr verwenden

Dieser FB ist veraltet.


u Anstelle des FB GetIPsettings den FB GetIPsettings2 (Ò / 123) verwenden.

Beschreibung
Der FB liest folgende IP-Einstellungen der angegebenen Ethernet-Schnittstelle des Geräts:
• IP-Adresse
• Netzmaske des TCP/IP-Netzwerks sowie
• IP-Adresse des Gateways
• DHCP-Status
Der FB gibt die ausgelesenen Werte in einer Strukturvariable des Typs "stIPv4Setting" aus.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
eInterface eETHER- Ethernet-Schnittstellen-ID eETHERNET_INTERFACES (ENUM)
NET_IN- (Ò / 194)
TERFACES

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden

121
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
stIPv4Setting stIPv4Set- IPv4-Einstellungen des Geräts stIPV4SETTING (STRUCT) (Ò / 199)
ting

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an

• ERR_INVALID_VALUE Fehler: Ungültige Ethernet-Schnittstelle gewählt


• ERR_GET_DHCP_STATUS Fehler: Fehler während des Lesens des Status des DHCP-Servers
• ERR_GET_IP_SETTINGS Fehler: Fehler während des Lesens der IP-Einstellungen
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!
• ERR_BRIDGE_MODE_ACTIVE Fehler: Bridge-Modus ist aktiv, daher können die IP-Einstellungen der einzelnen
Ethernet-Schnittstellen nicht gelesen oder geschrieben werden

122
CR1140 CR1141

10.4.3.3 GetIPsettings2

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB liest folgende IP-Einstellungen der angegebenen Ethernet-Schnittstelle des Geräts:
• IP-Adresse
• Netzmaske des TCP/IP-Netzwerks sowie
• IP-Adresse des Gateways
• DHCP-Status
Der FB gibt die ausgelesenen Werte in einer Strukturvariable des Typs stIP_SETTING (STRUCT)
(Ò / 199) aus.

u Den FB nicht ausführen, während IP-Adress-Einstellungen geändert werden.


u Den FB nicht ausführen, wenn der Ausgang eDiagInfo des FB SetIPsettings gleich
STAT_BUSY ist.
u Den FB nicht ausführen, wenn der Bridge Mode der Ethernet-Schnittstelle aktiv ist.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
xCIDRnetMask BOOL CIDR-Format der Subnetzmaske ein- • FALSE: CIDR-Format ausgeschaltet;
schalten / ausschalten Subnetzmaske im Format a.b.c.d
• TRUE: CIDR-Format eingeschaltet;
Subnetzmaske als Suffix, z.B.
192.168.82.247/24
eInterface eETHER- Ethernet-Schnittstellen-ID eETHERNET_INTERFACES (ENUM)
NET_IN- (Ò / 194)
TERFACES
eIPadressVersion eIP_AD- IP-Adressen-Version eIP_ADDRESS_VERSION (ENUM)
DRESS_VE (Ò / 195)
RSION

123
CR1140 CR1141

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
stIPsetting stIPsetting IP-Einstellungen des Geräts stIP_SETTING (STRUCT) (Ò / 199)

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an

• ERR_INVALID_VALUE Fehler: Ungültige Ethernet-Schnittstelle gewählt


• ERR_GET_DHCP_STATUS Fehler: Fehler während des Lesens des Status des DHCP-Servers
• ERR_GET_IP_SETTINGS Fehler: Fehler während des Lesens der IP-Einstellungen
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!
• ERR_BRIDGE_MODE_ACTIVE Fehler: Bridge-Modus ist aktiv, daher können die IP-Einstellungen der einzelnen
Ethernet-Schnittstellen nicht gelesen oder geschrieben werden

124
CR1140 CR1141

10.4.3.4 SetIPsettings

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Nicht mehr verwenden

Dieser FB ist veraltet.


u Anstelle des FB SetIPsettings den FB SetIPsettings2 (Ò / 127) verwenden.

Beschreibung
Der FB ändert folgende IP-Einstellungen der angegebenen Ethernet-Schnittstelle des Geräts:
• IP-Adresse
• Subnetzmaske des TCP/IP-Netzwerks
• IP-Adresse des Gateways
• DHCP-Status
Die IP-Einstellungen werden dem FB in einer Strukturvariable vom Typ "stIPv4Setting" übergeben.
Der Parameter DHCP besitzt höchste Priorität. Wenn DHCP = TRUE, dann werden die Werte der
Parameter IPAdresse, Subnetzmaske und Gateway-Adresse nicht ausgewertet.
Der FB überprüft nach dem Aufruf, ob DHCP aktiviert ist. Wenn ja, deaktiviert der FB den DHCP-
Client des Geräts und setzt die gewünschte IP-Adresse.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE => TRUE: FB wird einmal
ausgeführt
• Sonst: keine Auswirkungen auf FB-
Abarbeitung
eInterface eETHERNET_IN- Ethernet-Schnittstellen-ID eETHERNET_INTERFACES (ENUM)
TERFACES (Ò / 194)
stIPv4Setting stIPv4Setting IPv4-Einstellungen des Geräts stIPV4SETTING (STRUCT) (Ò / 199)

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden

125
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_GET_DHCP_STATUS Fehler: Fehler während des Lesens des Status des DHCP-Servers
• ERR_SET_DHCP_STATUS Fehler: Fehler während des Änderns des Status des DHCP-Servers
• ERR_SET_IP_SETTINGS Fehler: Fehler während des Schreibens der IP-Einstellungen
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

126
CR1140 CR1141

10.4.3.5 SetIPsettings2

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB ändert folgende IP-Einstellungen der angegebenen Ethernet-Schnittstelle des Geräts:
• IP-Adresse
• Subnetzmaske des TCP/IP-Netzwerks
• IP-Adresse des Gateways
• DHCP-Status
Die IP-Einstellungen werden dem FB in einer Strukturvariable vom Typ stIP_SETTING (STRUCT)
(Ò / 199) übergeben.
Der Parameter DHCP besitzt höchste Priorität. Wenn DHCP = TRUE , dann werden die Werte der
Parameter IPAdresse, Subnetzmaske und Gateway-Adresse nicht ausgewertet.
Der FB überprüft nach dem Aufruf, ob DHCP aktiviert ist. Wenn ja, deaktiviert der FB den DHCP-Client
des Geräts und setzt die gewünschte IP-Adresse.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Die Verbindung zu dem Gerät kann unterbrochen werden, wenn sich die IP-Einstellungen
ändern.

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE => TRUE: FB wird einmal
ausgeführt
• Sonst: keine Auswirkungen auf FB-
Abarbeitung
xCIDRnetMask BOOL CIDR-Format der Subnetzmaske ein- • FALSE: CIDR-Format ausgeschaltet;
schalten / ausschalten Subnetzmaske im Format a.b.c.d
• TRUE: CIDR-Format eingeschaltet;
Subnetzmaske als Suffix, z.B.
192.168.82.247/24
eInterface eETHERNET_IN- Ethernet-Schnittstellen-ID eETHERNET_INTERFACES (ENUM)
TERFACES (Ò / 194)
eIPadressVersion eIP_AD- IP-Adressen-Version eIP_ADDRESS_VERSION (ENUM)
DRESS_VERSI- (Ò / 195)
ON
stIPsetting stIPsetting IP-Einstellungen des Geräts stIP_SETTING (STRUCT) (Ò / 199)

127
CR1140 CR1141

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_GET_DHCP_STATUS Fehler: Fehler während des Lesens des Status des DHCP-Servers
• ERR_SET_DHCP_STATUS Fehler: Fehler während des Änderns des Status des DHCP-Servers
• ERR_SET_IP_SETTINGS Fehler: Fehler während des Schreibens der IP-Einstellungen
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

128
CR1140 CR1141

10.4.4 Keypad

10.4.4.1 GetKeyMapping

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB liest die aktuellen Mapping-Einstellungen der Gerätetasten aus.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich FALSE FB wird ausgeführt
beendet ist
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen
werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetre-
Fehler aufgetreten ist ten oder der FB wird
noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte
nicht ausgeführt
werden
• Diagnoseinformati
onen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
uiNoOfKeys UINT Anzahl der Tasten auf dem integrierten
Tastenfeld
stKeyMapList stKEY_MAP_LIST Struktur mit Mapping-Informationen stKEY_MAP_LIST (STRUCT) (Ò / 200)
der Tasten.

Diagnose-Codes:

129
CR1140 CR1141

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_GET_KEY_CONFIG Fehler beim Lesen der Tastenkonfiguration
• ERR_GET_KEY_MAP Fehler beim Lesen des Tasten-Mappings
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

130
CR1140 CR1141

10.4.4.2 ResetAllKeyLED

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB setzt alle Tasten-LEDs auf den Standardwert "AUS" zurück.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_RESET_KEY_LED Fehler: Fehler beim Zurücksetzen der Tasten-LEDs.
ifm-Service-Center kontaktieren!

131
CR1140 CR1141

• ERR_UNDEFINED Fehler: Unbekannter Fehler


ifm-Service-Center kontaktieren!

132
CR1140 CR1141

10.4.4.3 ResetKeyMapping

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB setzt das Mapping aller Tasten auf Standardwerte zurück.

u
u Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder
weiteren FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich FALSE FB wird ausgeführt
beendet ist
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen
werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetre-
Fehler aufgetreten ist ten oder der FB wird
noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte
nicht ausgeführt
werden
• Diagnoseinformati
onen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.

133
CR1140 CR1141

• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_RESET_KEY_MAP • Fehler beim Zurücksetzen des Tasten-Mappings
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

134
CR1140 CR1141

10.4.4.4 SetKeyLED

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB stellt die Farbe und den Nachtmodus der angegeben Tasten-LED ein.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal ausge-
führt
sonst. keine Auswirkungen
auf FB-Abarbeitung
eLED_ID eKEY_LED_ID Angabe der Tasten-LED auf eKEY_LED_ID (ENUM) (Ò / 195)
dem integrierten Tastenfeld.
udiColor UDINT Einzustellende LED-Farbe. RGB: 16#00RRGGBB mit
RR = 0...FF
GG = 0...FF
BB = 0...FF
Beispiele:
rot = 16#00FF0000
grün = 16#0000FF00
blau = 16#000000FF
schwarz = 16#00000000
weiß = 16#00FFFFFF
stNightMode stKEY_LED_NIGHT_MODE Nachtmodus für Beleuchtung stKEY_LED_NIGHT_MODE (STRUCT)
der Tasten-LED aktivieren/de- (Ò / 199)
aktivieren und die Nachtmodus-
Helligkeit einstellen.

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
xPrepared BOOL Zustand der FB-Ausgänge FALSE FB-Ausgänge ungültig;
FB wird noch abgear-
beitet
TRUE FB-Ausgänge gültig;
FB wurde abgearbeitet

135
CR1140 CR1141

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INVALID_VALUE Fehler: Ungültige Angabe der LED an Eingangsparameter eLED_ID.
• ERR_SET_KEY_LED_COLOR Fehler beim einstellen der LED-Farbe.
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

136
CR1140 CR1141

10.4.4.5 SetKeyMapping

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB weist den Tasten des Geräts (integriertes Tastenfeld) Standard-Tastatur-Funktionen zu (Key-
Mapping).

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => FB wird einmal ausge-
TRUE führt
sonst. keine Auswirkungen
auf FB-Abarbeitung
stKeyMapList stKEY_MAP_LIS Struktur mit Mapping-Informationen der Tasten. stKEY_MAP_LIST (STRUCT)
T (Ò / 200)

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt

137
CR1140 CR1141

• ERR_SET_KEY_MAP Fehler beim Einstellen des Tasten-Mappings


• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

138
CR1140 CR1141

10.4.5 LCD

10.4.5.1 GetBootupBacklight

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB liest die eingestellten LCD-Helligkeitseinstellungen für den Bootvorgang aus.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich FALSE FB wird ausgeführt
beendet ist
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen
werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetre-
Fehler aufgetreten ist ten oder der FB wird
noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte
nicht ausgeführt
werden
• Diagnoseinformati
onen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
usiBrightness USINT Eingestellter Helligkeitswert für den 0...100 %
Geräte-Bootvorgang

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.

139
CR1140 CR1141

• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_GET_BOOTUP_LCD_ Fehler beim Lesen des Helligkeitswertes
BRIGHTNESS ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

140
CR1140 CR1141

10.4.5.2 GetLCD_Backlight

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB liest die eingestellten LCD-Helligkeitseinstellungen für den Normalbetrieb des Displays aus.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich FALSE FB wird ausgeführt
beendet ist
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen
werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetre-
Fehler aufgetreten ist ten oder der FB wird
noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte
nicht ausgeführt
werden
• Diagnoseinformati
onen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
usiBrightness USINT Eingestellter Helligkeitswert für den 0...100 %
Normalbetrieb des Geräts

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt

141
CR1140 CR1141

• ERR_GET_LCD_BRIGHTNESS Fehler beim Lesen des Helligkeitswertes


ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

142
CR1140 CR1141

10.4.5.3 SetBootupBacklight

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB stellt den Wert für die LCD-Helligkeit für den Bootvorgang ein.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung
usiBrightness USINT Helligkeitswert für den Geräte-Bootvor- 0...100 %
gang Standardwert: 80 %

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_INVALID_VALUE Fehler: Wert an Eingangsparameter usiBrightness außerhalb des Wertebereichs.

143
CR1140 CR1141

• ERR_SET_BOOTUP_LCD_ Fehler beim Einstellen des Helligkeitswertes.


BRIGHTNESS ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

144
CR1140 CR1141

10.4.5.4 SetLCD_Backlight

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB stellt den Wert für die LCD-Helligkeit für den Normalbetrieb ein.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung
usiBrightness USINT Helligkeitswert für den Normalbetrieb 0...100 [%]
des Geräts Standardwert: 80 [%]
Hintergrundbeleuchtung aus = 0 [%]

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
xPrepared BOOL Zustand der FB-Ausgänge FALSE FB-Ausgänge ungültig;
FB wird noch abgear-
beitet
TRUE FB-Ausgänge gültig;
FB wurde abgearbeitet

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_PREPARING Zustand: FB/FUN wird abgearbeitet; endgültige Ergebnisse sind noch nicht verfüg-
bar. Einige Ausgangswerte werden in jedem SPS-Zyklus aktualisiert.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_INVALID_VALUE Fehler: Wert an Eingangsparameter usiBrightness außerhalb des Wertebereichs.

145
CR1140 CR1141

• ERR_SET_LCD_BRIGHTNESS Fehler beim Einstellen des Helligkeitswertes.


ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

146
CR1140 CR1141

10.4.6 Local IO

10.4.6.1 GetServiceInput

Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol in CODESYS:

Beschreibung
Der FB liest den Wert des Service-Eingangs des Geräts aus.
• Wenn xCyclicRead = TRUE : Der Service-Eingang wird zyklisch im Intervall tCycleTime
gelesen.
• Wenn xCyclicRead = FALSE : Der Service-Eingang wird einmal gelesen.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xEnable BOOL Steuerung des FBs • FALSE:
– FB deaktivieren
– Alle Ausgänge werden zurückgesetzt
• TRUE: FB aktivieren
xCyclicRead BOOL Zyklisches Lesen des Service-Ein- • FALSE: Zyklisches Lesen ausschalten;
gangs aktivieren / deaktivieren Einmaliges Lesen
• TRUE: Zyklisches Lesen einschalten
tCycleTime TIME Intervall für das Zyklische Lesen Standardwert: TIME#2s0ms = 2 s
des Service-Eingangs 1000ms…49d17h2m47s295ms

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
xValue BOOL Gelesener Wert des Service-Eingangs TRUE / FALSE

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv

147
CR1140 CR1141

• STAT_PREPARING Zustand: FB / Funktion wird abgearbeitet; endgültige Ergebnisse sind noch


nicht verfügbar
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_GET_SERVICE_INPUT Fehler: Fehler beim Lesen des Service-Eingangs
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

148
CR1140 CR1141

10.4.6.2 GetTemperatures

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB liest folgende Systemtemperaturen aus:
• Temperatur Platine
• Temperatur Prozessor

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
stTemperatures stSYSTEM_ Struktur mit den Systemtemperaturen stSYSTEM_TEMPERATURES (STRUCT)
TEMPERA- (Ò / 202)
TURES

149
CR1140 CR1141

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_READ_TEMPERATURE_CORE_0 Fehler: Fehler während des Lesens der CPU-Kerntemperatur 0
• ERR_READ_TEMPERATURE_BOARD Fehler: Fehler während des Lesens der Board-Temperatur
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

150
CR1140 CR1141

10.4.6.3 GetTemperatures2

Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol in CODESYS:

Beschreibung
Der FB liest folgende Systemtemperaturen aus:
• Temperatur auf der Platine
• Temperatur des Prozessors
Wenn der Eingang xCyclicRead = TRUE ist, liest der FB die Temperaturen zyklisch aus.
u Das Intervall am Eingang tCycleTime angeben. Den Wert größer als 1 Sekunde wählen.
Wenn der Eingang xCyclicRead = FALSE ist, liest der FB die Temperaturen einmalig aus.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
xCyclicRead BOOL Zyklisches Lesen der Temperaturen ak- • FALSE: Zyklisches Lesen ausschalten;
tivieren / deaktivieren Einmaliges Lesen
• TRUE: Zyklisches Lesen einschalten
tCycleTime TIME Intervall für das Zyklische Lesen der Standardwert: TIME#2s0ms = 2 s
Temperaturen 1000ms…49d17h2m47s295ms

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden

151
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
stTemperatures stSYSTEM_ Struktur mit den Systemtemperaturen stSYSTEM_TEMPERATURES (STRUCT)
TEMPERA- (Ò / 202)
TURES

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_PREPARING Zustand: FB / Funktion wird abgearbeitet; endgültige Ergebnisse sind noch
nicht verfügbar
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_READ_TEMPERATURE_CORE_0 Fehler: Fehler während des Lesens der CPU-Kerntemperatur 0
• ERR_READ_TEMPERATURE_BOARD Fehler: Fehler während des Lesens der Board-Temperatur
• ERR_GET_SENSOR_COUNT Fehler: Fehler beim Lesen der Sensoranzahl
• ERR_GET_SENSOR_INFO Fehler: Fehler beim Lesen der Sensor-Informationen
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!
• ERR_INVALID_VALUE Fehler: eine oder mehrere Eingangsparameter sind ungültig oder außerhalb
des gültigen Wertebereichs

152
CR1140 CR1141

10.4.6.4 GetTemperaturesCyclic

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB liest zyklisch in einem Intervall von 2000 ms folgende Systemtemperaturen aus:
• Temperatur Platine
• Temperatur Prozessor

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xEnable BOOL Steuerung des FBs • FALSE:
– FB deaktivieren
– Alle Ausgänge werden zurückgesetzt
• TRUE: FB aktivieren

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
stTemperatures stSYSTEM_ Struktur mit den Systemtemperaturen stSYSTEM_TEMPERATURES (STRUCT)
TEMPERA- (Ò / 202)
TURES

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_PREPARING Zustand: FB / Funktion wird abgearbeitet; endgültige Ergebnisse sind noch
nicht verfügbar
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_READ_TEMPERATURE_CORE_0 Fehler: Fehler während des Lesens der CPU-Kerntemperatur 0
• ERR_READ_TEMPERATURE_BOARD Fehler: Fehler während des Lesens der Board-Temperatur
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

153
CR1140 CR1141

10.4.7 Status LED

10.4.7.1 GetBootupStatusLEDState

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol in CODESYS:

Beschreibung
Dieser FB wird verwendet, um den Status-LED-Zustand abzurufen, der während der Startsequenz des
Geräts wirksam ist.
Es gibt eine vordefinierte Liste mit Standardfarben in der globalen Konstante GCL_RGB_COLOUR.

Die Ausgänge udiColour1 und eFreq sind beim ecomatDisplay 4.3“ ohne Funktion.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Anzeige, ob FB-Ausführung erfolg- • FALSE:
reich beendet ist – FB wird ausgeführt
• TRUE:
– FB erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung • FALSE:
ein Fehler aufgetreten ist – kein Fehler aufgetreten oder der FB wird noch
ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

154
CR1140 CR1141

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_GET_BOOTUP_STATUS_LED Fehler: Fehler beim Lesen der Bootup-Status-LED-Werte
• ERR_GET_LED_COUNT Fehler: Fehler beim Lesen der LED-Anzahl
• ERR_GET_LED_INFO Fehler: Fehler beim Lesen der LED-Info
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

155
CR1140 CR1141

10.4.7.2 SetBootupStatusLEDState

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol in CODESYS:

Beschreibung
Dieser FB wird verwendet, um den Status-LED-Zustand zu setzen, der während der Startsequenz des
Geräts wirksam ist.
Es gibt eine vordefinierte Liste mit Standardfarben in der globalen Konstante GCL_RGB_COLOUR.

Die Ausgänge udiColour1 und eFreq sind beim ecomatDisplay 4.3“ ohne Funktion.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE => TRUE: FB wird einmal
ausgeführt
• Sonst: keine Auswirkungen auf FB-
Abarbeitung

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Anzeige, ob FB-Ausführung erfolg- • FALSE:
reich beendet ist – FB wird ausgeführt
• TRUE:
– FB erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung • FALSE:
ein Fehler aufgetreten ist – kein Fehler aufgetreten oder der FB wird noch
ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an

156
CR1140 CR1141

• ERR_INVALID_VALUE Fehler: Ungültige Ethernet-Schnittstelle gewählt


• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!
• ERR_SET_BOOTUP_STATUS_LE Fehler: Fehler beim Setzen der Bootup-Status-LED-Werte
D
• ERR_GET_LED_COUNT Fehler: Fehler beim Lesen der LED-Anzahl
• ERR_GET_LED_INFO Fehler: Fehler beim Lesen der LED-Info
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt

157
CR1140 CR1141

10.4.7.3 SetStatusLEDstate

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB steuert die Status-LED des Geräts. Die Status-LED kann zweifarbig blinken. Die Blinkfrequenz
ist einstellbar.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal
ausgeführt
sonst. keine Auswirkun-
gen auf FB-Abar-
beitung
udiColor0 UDINT Erste LED-Farbe RGB: 16#00RRGGBB mit
RR = 0...FF
GG = 0...FF
BB = 0...FF
Beispiele:
rot = 16#00FF0000
grün = 16#0000FF00
blau = 16#000000FF
schwarz = 16#00000000
weiß = 16#00FFFFFF
udiColor1 UDINT Zweite LED-Farbe RGB: 16#00RRGGBB mit
RR = 0...FF
GG = 0...FF
BB = 0...FF
Beispiele:
rot = 16#00FF0000
grün = 16#0000FF00
blau = 16#000000FF
schwarz = 16#00000000
weiß = 16#00FFFFFF
eFreq eSTATUS_LED_FLASH_FREQ LED-Blinkfrequenz eSTATUS_LED_FLASH_FREQ (ENUM)
(Ò / 198)

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolg- FALSE FB wird ausgeführt
reich beendet ist

158
CR1140 CR1141

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolg- TRUE • FB erfolgreich
reich beendet ist ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung FALSE kein Fehler aufgetreten
ein Fehler aufgetreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatione
n beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_INVALID_VALUE Fehler: Ungültiger Wert an udiColor0, udiColor1 oder eFreq.
• ERR_SET_STATUS_LED Fehler beim Setzen der LED-Farbe.
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

159
CR1140 CR1141

10.4.8 Storage

10.4.8.1 USBstorageHandler

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE mit Busy Extension
Bibliothek: ifmUSBstorageUtil.library
Symbol in CODESYS:

Beschreibung
Der FB verwaltet den mit dem Gerät verbundenen USB-Gerät. Der FB führt folgende Funktionen aus:
• USB-Gerät automatisch in das Dateisystem des Geräts einbinden (mount)
• Pfad zum USB-Gerät im Dateisystem des Geräts ausgeben
• USB-Gerät auf Befehl des Nutzers aus dem Dateisystem des Geräts entfernen (unmount)
• Stecken und Herausziehen des USB-Geräts signalisieren

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xEnable BOOL Aktivität des FB steu- FALSE FB deaktivieren
ern
TRUE FB aktivieren
xRemoveDevice BOOL USB-Gerät aus Datei- FALSE => TRUE USB-Gerät wird ent-
system entfernen (un- fernt
mount)
sonst. keine Aktion

Ausgangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xError BOOL Anzeige, ob bei der FB- FALSE kein Fehler aufgetreten
Ausführung ein Fehler oder der FB wird noch
aufgetreten ist ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformation
en beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
xPrepared BOOL Zustand der FB-Aus- FALSE FB-Ausgänge ungültig;
gänge FB wird noch abgear-
beitet
TRUE FB-Ausgänge gültig;
FB wurde abgearbeitet

160
CR1140 CR1141

Parameter Datentyp Bedeutung Mögliche Werte


usiNumberUSBdevice USINT Anzahl der verbunde- 0 kein Gerät verbunden
nen USB-Speicherge-
räte 1 1 Gerät verbunden

sAccessPath STRING absoluter Verzeichnis- z.B. /mnt/usb


pfad des USB-Spei-
chergeräts
xDevicePlugged BOOL Signalisiert das Ste- FALSE kein USB-Gerät ge-
cken eines USB-Geräts steckt
innerhalb des aktuellen
SPS-Zyklus TRUE USB-Gerät gesteckt

xDeviceUnplugged BOOL Signalisiert das Entfer- FALSE USB-Gerät nicht ent-


nen eines USB-Geräts fernt
innerhalb des aktuellen
SPS-Zyklus TRUE USB-Gerät wurde ent-
fernt

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_PREPARING Zustand: FB/FUN wird abgearbeitet; endgültige Ergebnisse sind noch nicht verfüg-
bar. Einige Ausgangswerte werden in jedem SPS-Zyklus aktualisiert.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB wurde erzeugt; diese FB-Instanz wird nicht
ausgeführt
• ERR_INSTANCE_RESTRICTION Fehler: FB sollte nicht zusammen mit FB USBshandlerMulti genutzt werden
• ERR_INVALID_VALUE Fehler: Falsches USB-Speichergerät wurde aus Dateisystem entfernt
• ERR_GET_STORAGE_LIST Fehler: Probleme beim Lesen der Liste mit verbundenen USB-Speichergeräten
• ERR_UNPLUG_STORAGE Fehler: Probleme beim Entfernen eines USB-Speichergeräts aus dem Dateisystem
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!

161
CR1140 CR1141

10.4.9 System Commands

10.4.9.1 LinuxSysCallAsync

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB übergibt einen Linux-Befehl mit Parametern (max. 255 Zeichen) an das Betriebssystem des
Geräts und gibt den Rückgabewert des Befehls aus. Der übergebene Befehl wird asynchron im
Hintergrund ausgeführt.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sCommand STRING Linux-Befehl inkl. Parameter (max. 255
Zeichen)

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

162
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


wCmdResult WORD Rückgabewert des Linux-Befehls Abhängig vom Befehl, z.B.:
• 0: Befehl erfolgreich ausgeführt
• 1...65534: Fehler: Ausführung des
Befehls fehlgeschlagen. Ò
CmpErrors.library oder Ò Hilfe zu Linux-
Befehl.
• 65535: Befehl wird ausgeführt

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_LINUX_SYS_CALL Fehler: Fehler während der Ausführung eines Linux-Systembefehls
• ERR_ASYNC_TASK Fehler: Fehler während der Ausführung einer asynchronen Aufgabe

163
CR1140 CR1141

10.4.9.2 LinuxSysCallAsync2

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB übergibt einen Linux-Befehl mit Parametern (max. 255 Zeichen) an das Betriebssystem des
Geräts und gibt den Rückgabewert des Befehls aus. Der übergebene Befehl wird asynchron im
Hintergrund ausgeführt. Die Standardausgabe (stdout) des Linux-Befehls wird in einem String-Puffer
gespeichert.

Eigenschaften des Puffers für die Standardausgabe


• mögliche Puffergröße 1...10000 Bytes
• Wenn die Standardausgabe eines Linux-Befehls größer ist, als die definierte Puffergröße, werden
nicht alle Informationen im Puffer gespeichert und gehen teilweise verloren.
• Beispiel mit definierter Puffergröße = 1000 Bytes (→ folgendes Programmierbeispiel):
– Bei einer Länge der Standardausgabe von 1500 Bytes gehen die Bytes 0...499 der
Standardausgabe verloren. Die Bytes 500...1499 der Standardausgabe sind anschließend im
Puffer (psCmdStdOut) enthalten.

Programmierbeispiel:

VAR
sCmdStdOut : STRING(1000); /// buffer size
instLinuxSysCallAsync2.psCmdStdOut : LinuxSysCallAsync2; /// instance of FB
END_VAR;
instLinuxSysCallAsync2.psCmdStdOut := ADR(sCmdStdOut);

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sCommand STRING Linux-Befehl inkl. Parameter (max. 255
Zeichen)
psCmdStdOut POINTER Adresse des Puffers für die Standard-
TO STRING ausgabe (stdout) des Linux-Befehls.
Mögliche Größe 1...10000 Bytes.

164
CR1140 CR1141

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
wCmdResult WORD Rückgabewert des Linux-Befehls Abhängig vom Befehl, z.B.:
• 0: Befehl erfolgreich ausgeführt
• 1...65534: Fehler: Ausführung des
Befehls fehlgeschlagen. Ò
CmpErrors.library oder Ò Hilfe zu Linux-
Befehl.
• 65535: Befehl wird ausgeführt
diCmdStdOutByteCnt DINT Länge der zurückgegebenen Standard- • 0: 0 Bytes
ausgabe (Wert in Bytes) ...
• 10000: 10000 Bytes

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_LINUX_SYS_CALL Fehler: Fehler während der Ausführung eines Linux-Systembefehls
• ERR_ASYNC_TASK Fehler: Fehler während der Ausführung einer asynchronen Aufgabe

165
CR1140 CR1141

10.4.9.3 LinuxSysCallSync

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB übergibt einen Linux-Befehl mit Parametern (max. 255 Zeichen) an das Betriebssystem des
Geräts und gibt den Rückgabewert des Befehls aus.
Der übergebene Befehl wird synchron zum aufrufenden IEC-Task ausgeführt, das bedeutet:
• Während der Ausführung des Befehls wird die Abarbeitung des IEC-Task blockiert.
• Mögliche unerwünschte Effekte bei der Abarbeitung der IEC-Applikation durch einen lang
andauernden Linux-Befehl, z.B. beim Kopieren großer Datenmengen.
u Bei lang andauernden Befehlen die FBs für asynchrone Befehlsausführung verwenden:
• LinuxSysCallAsync (Ò / 162)
• LinuxSysCallAsync2 (Ò / 164)

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sCommand STRING Linux-Befehl inkl. Parameter (max. 255
Zeichen)

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten

166
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
wCmdResult WORD Rückgabewert des Linux-Befehls Abhängig vom Befehl, z.B.:
• 0: Befehl erfolgreich ausgeführt
• 1...65534: Fehler: Ausführung des
Befehls fehlgeschlagen. Ò
CmpErrors.library oder Ò Hilfe zu Linux-
Befehl.
• 65535: Befehl wird ausgeführt

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_LINUX_SYS_CALL Fehler: Fehler während der Ausführung eines Linux-Systembefehls

167
CR1140 CR1141

10.4.9.4 LinuxSysCallSync2

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB übergibt einen Linux-Befehl mit Parametern (max. 255 Zeichen) an das Betriebssystem des
Geräts und gibt den Rückgabewert des Befehls aus. Die Standardausgabe (stdout) des Linux-Befehls
wird in einem String-Puffer gespeichert.
Der übergebene Befehl wird synchron zum aufrufenden IEC-Task ausgeführt, das bedeutet:
• Während der Ausführung des Befehls wird die Abarbeitung des IEC-Task blockiert.
• Mögliche unerwünschte Effekte bei der Abarbeitung der IEC-Applikation durch einen lang
andauernden Linux-Befehl, z.B. beim Kopieren großer Datenmengen.
u Bei lang andauernden Befehlen die FBs für asynchrone Befehlsausführung verwenden:
• LinuxSysCallAsync (Ò / 162)
• LinuxSysCallAsync2 (Ò / 164)

Eigenschaften des Puffers für die Standardausgabe


• mögliche Puffergröße 1...10000 Bytes
• Wenn die Standardausgabe eines Linux-Befehls größer ist als die definierte Puffergröße, werden
nicht alle Informationen im Puffer gespeichert und gehen teilweise verloren.
• Beispiel mit definierter Puffergröße = 1000 Bytes (Ò folgendes Programmierbeispiel):
– Bei einer Länge der Standardausgabe von 1500 Bytes gehen die Bytes 0...499 der
Standardausgabe verloren. Die Bytes 500...1499 der Standardausgabe sind anschließend im
Puffer (psCmdStdOut) enthalten.

Programmierbeispiel:

VAR
sCmdStdOut : STRING(1000); /// buffer size
instLinuxSysCallSync2.psCmdStdOut : LinuxSysCallSync2; /// instance of FB
END_VAR;
instLinuxSysCallSync2.psCmdStdOut := ADR(sCmdStdOut);

168
CR1140 CR1141

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sCommand STRING Linux-Befehl inkl. Parameter (max. 255
Zeichen)
psCmdStdOut POINTER Adresse des Puffers für die Standard-
TO STRING ausgabe (stdout) des Linux-Befehls.
Mögliche Größe 1...10000 Bytes.

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
wCmdResult WORD Rückgabewert des Linux-Befehls Abhängig vom Befehl, z.B.:
• 0: Befehl erfolgreich ausgeführt
• 1...65534: Fehler: Ausführung des
Befehls fehlgeschlagen. Ò
CmpErrors.library oder Ò Hilfe zu Linux-
Befehl.
• 65535: Befehl wird ausgeführt
diCmdStdOutByteCnt DINT Länge der zurückgegebenen Standard- • 0: 0 Bytes
ausgabe (Wert in Bytes) ...
• 10000: 10000 Bytes

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_LINUX_SYS_CALL Fehler: Fehler während der Ausführung eines Linux-Systembefehls

169
CR1140 CR1141

10.4.10 System Info

10.4.10.1 GetSysInfo

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB liest Systeminformationen aus dem Gerät aus.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

170
CR1140 CR1141

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_GET_SYS_INFO Fehler beim Lesen der Systeminformationen
• ERR_GET_KEYPAD_INFO Fehler beim Lesen der Informationen über das Tastenfeld
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

171
CR1140 CR1141

10.4.10.2 GetSysResources

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB liest Ressourcen-Informationen aus dem Gerät aus:
• Systemauslastung
• Netzwerkauslastung

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xEnable BOOL Steuerung des FBs • FALSE: FB deaktivieren
• TRUE: FB aktivieren
tCycleTime TIME Intervall für das Zyklische Lesen der Standardwert:
Resourcen-Informationen TIME#1s0ms = 1 s
100 ms…49d17h2m47s295 ms

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
stSysUsageInfo STRUCT System-Ressourcen-Informationen stSYS_USAGE_INFO (STRUCT) (Ò / 204)
astNetUsageInfo ARRAY [0… Netzwerk-Ressourcen-Informationen stNETWORK_USAGE_INFO (STRUCT)
usiMaxNet- (Ò / 202)
Devices] of
stNET-
WORK_US
AGE_INFO

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_PREPARING Zustand: FB / Funktion wird abgearbeitet; endgültige Ergebnisse sind noch
nicht verfügbar
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen

172
CR1140 CR1141

• ERR_GET_CPU_USAGE_INFO Fehler beim Lesen der CPU-Auslastung.


• ERR_GET_CPU_CORES_USAGE_INFO Fehler beim Lesen der CPU-Core-Auslastung.
• ERR_GET_RAM_MEMORY_INFO Fehler beim Lesen RAM-Speicherauslastung.
• ERR_GET_RAM_SYSTEM_PARTITION_ Fehler beim Lesen der Speicherauslastung der Systempartition.
MEMORY_INFO
• ERR_GET_RAM_USER_PARTITION_M Fehler beim Lesen der Speicherauslastung der Userpartition.
EMORY_INFO
• ERR_GET_RAM_UPDATE_PARTITION_ Fehler beim Lesen der Speicherauslastung der Updatepartition.
MEMORY_INFO
• ERR_GET_ETH_ITF_LIST Fehler beim Lesen der Liste der verfügbaren Ethernet-Schnittstellen.
• ERR_GET_NETWORK_USAGE_INFO Fehler beim Lesen der Netzwerkauslastung.
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

173
CR1140 CR1141

10.4.11 System Time

10.4.11.1 GetAvailableTimesZones

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB gibt die Anzahl und eine Liste der verfügbaren Zeitzonenkonfigurationen des Geräts aus.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an

174
CR1140 CR1141

• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht


• ERR_GET_TIMEZONE Fehler: Fehler während des Lesens der Zeitzoneninformation (RTC)
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

175
CR1140 CR1141

10.4.11.2 GetNTP_Settings

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB liest die konfigurierten NTP-Servereinstellungen und den NTP-Serverstatus aus.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
stSettings stNTP_SET- NTP-Einstellungen stNTP_SETTINGS (Ò / 202)
TINGS

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt

176
CR1140 CR1141

• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-


tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_GET_NTP_SERVERS Fehler: Fehler während des Lesens der NTP-Server-Konfiguration
• ERR_GET_NTP_DAEMON_STATUS Fehler: Fehler während des Lesens des Status des NTP Daemons
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

177
CR1140 CR1141

10.4.11.3 GetSysTime

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB liest folgende Parameter der geräteinternen Systemuhr und gibt die Werte aus:
• Datum
• Uhrzeit
• Zeitzone
• NTP-Status

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

178
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


stDateTime stDA- Datum und -Zeit stDATE_TIME (STRUCT) (Ò / 199)
TE_TIME
sTimeZone STRING Zeitzonen-Information
xNTP_DateTime BOOL Aktualisierungsmodus von Datum und • FALSE: Aktualisierung über NTP nicht
Uhrzeit. aktiv
• TRUE: Aktualisierung über NTP aktiv

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_GET_DATE_TIME Fehler: Fehler während des Lesens von Datum und Zeit (RTC)
• ERR_GET_TIMEZONE Fehler: Fehler während des Lesens der Zeitzoneninformation (RTC)
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

179
CR1140 CR1141

10.4.11.4 GetSysTimeCyclic

Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB liest zyklisch im Intervall von 1000 ms folgende Parameter der geräteinternen Systemuhr und
gibt die Werte aus:
• Datum
• Uhrzeit
• Zeitzone
• NTP-Status

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xEnable BOOL Steuerung des FBs • FALSE:
– FB deaktivieren
– Alle Ausgänge werden zurückgesetzt
• TRUE: FB aktivieren

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
stDateTime stDA- Datum und -Zeit stDATE_TIME (STRUCT) (Ò / 199)
TE_TIME
sTimeZone STRING Zeitzonen-Information
xNTP_DateTime BOOL Aktualisierungsmodus von Datum und • FALSE: Aktualisierung über NTP nicht
Uhrzeit. aktiv
• TRUE: Aktualisierung über NTP aktiv

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv

180
CR1140 CR1141

• STAT_PREPARING Zustand: FB / Funktion wird abgearbeitet; endgültige Ergebnisse sind noch


nicht verfügbar
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_GET_DATE_TIME Fehler: Fehler während des Lesens von Datum und Zeit (RTC)
• ERR_GET_TIMEZONE Fehler: Fehler während des Lesens der Zeitzoneninformation (RTC)
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

181
CR1140 CR1141

10.4.11.5 SetNTP_Settings

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB aktiviert / deaktiviert NTP Services und konfiguriert die Adressen der NTP-Server im System.

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
stSettings stNTP_SET- NTP-Einstellungen stNTP_SETTINGS (Ò / 202)
TINGS

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.

182
CR1140 CR1141

• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_INVALID_VALUE Fehler:
• usiServerCnt > 11
oder
• aServerList[] = NULL wenn usiServerCnt > 0
• ERR_SET_NTP_SERVERS Fehler: Fehler beim setzen der NTP-Server im System
• ERR_GET_NTP_DAEMON_STATU Fehler: Fehler beim Lesen des NTP-Daemon-Status aus dem System
S
• ERR_START_NTP_DAEMON Fehler: Fehler beim Starten des NTP-Daemon
• ERR_STOP_NTP_DAEMON Fehler: Fehler beim Stoppen des NTP-Daemon
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

183
CR1140 CR1141

10.4.11.6 SetSysTime

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB schreibt folgende Parameter der Systemuhr des Geräts:
• Datum
• Zeit
Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren FB-
Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
stDateTime stDA- Datum und -Zeit stDATE_TIME (STRUCT) (Ò / 199)
TE_TIME

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv

184
CR1140 CR1141

• STAT_BUSY Zustand: FB / Funktion wird ausgeführt


• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_SET_DATE_TIME Fehler: Fehler während des Schreibens von Datum und Zeit (RTC)
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

185
CR1140 CR1141

10.4.11.7 SetTimeZone

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay43inch.library

Symbol:

Beschreibung
Der FB schreibt folgende Werte der Systemuhr des Geräts:
• Zeitzone
Der FB aktiviert / deaktiviert die Sommerzeit (Daylight Saving Time - DST) in Abhängigkeit von der
eingestellten Zeitzone. Wenn die automatische Aktivierung / Deaktivierung der Sommerzeit nicht
benötigt wird, dann eine Zeitzone ohne Sommerzeit wählen (z. B . GMT+2).

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sTimeZone STRING Zeitzonen-Information

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

186
CR1140 CR1141

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INSTANCE_LIMIT Fehler: Maximale Anzahl der Instanzen erreicht
• ERR_SET_TIMEZONE Fehler: Fehler während des Schreibens der Zeitzoneninformation (RTC)
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

187
CR1140 CR1141

10.4.12 Touch

10.4.12.1 DisableTouchScreen

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung

Der FB aktiviert / deaktiviert die Touchscreen-Funktionalität des Displays. Der Touchscreen ist nach
einem Geräteneustart standardmäßig aktiviert.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung
xDisableTouch BOOL Touchscreen-Funktionalität des Dis- FALSE Touchscreen-Funkti-
plays aktivieren/deaktivieren onalität aktiviert
TRUE Touchscreen-Funkti-
onalität deaktiviert

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.

188
CR1140 CR1141

• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

189
CR1140 CR1141

10.4.12.2 SetTouchOptimisationMode

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB aktiviert den Optimierungsmodus für eine bestimmte Betriebsbedingung. Der Anwender kann
zwischen folgenden Betriebsbedingungen wählen:
• Standardbetrieb
• Betrieb mit Handschuhen
• Betrieb bei Regen / Spritzwasser

Innerhalb einer Anwendung darf nur eine Instanz des FBs aktiv sein. Der Aufruf jeder weiteren
FB-Instanz wird abgebrochen und eine Fehlermeldung ausgegeben.
u Nur eine Instanz des FB innerhalb der Anwendung aufrufen!

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => FB wird einmal ausge-
TRUE führt
sonst. keine Auswirkungen
auf FB-Abarbeitung
eTouchOpti- eTOUCH_ OPtimierungsmodus für Touchscreen-Betrieb eTOUCH_OPTIMISATION_MODE
Mode OPTIMISATI- (ENUM) (Ò / 198)
ON_MODE

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

190
CR1140 CR1141

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INSTANCE_LIMIT Fehler: Mehr als eine Instanz des FB erzeugt; diese FB-Instanz wird nicht ausgeführt
• ERR_INVALID_VALUE Fehler: Ungültiger Optimierungsmodus gewählt
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

191
CR1140 CR1141

10.4.13 Window Control

10.4.13.1 PrintScreen

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmDevice_ecomatDisplay.library
Symbol in CODESYS:

Beschreibung
Der FB erstellt einen Screenshot des Displayinhalts und speichert diesen als Bilddatei ab.
Unterstützte Bildformate:
• bmp (raw format = große Datei)
• jpg (bevorzugtes Format für Inhalte mit Kamerabild = kleine Datei)
• png (bevorzugtes Format für HMI-Darstellung ohne Kamerabilder = kleine Datei)

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal aus-
geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung
sFileName STRING (255) Verzeichnispfad, Name und Format z.B. '/home/cds-apps/screenshot.bmp'
der Bilddatei.

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.

192
CR1140 CR1141

• ERR_INVALID_VALUE Fehler: Wert an Eingangsparameter sFileName ist ungültig. Funktionsaufruf wurde


abgebrochen.
Ungültige Werte:
• Wert an sFileName ist NULL (z.B. '')
• Wert an sFileName endet auf "/" (z.B ein Verzeichnis)
• Wert an sFileName enthält fortlaufende Schrägstriche (z.B. "////")
• Verzeichnis oder Unterverzeichnis existiert nicht
• ERR_WM_CAPTURE_SCREEN Fehler beim Erstellen des Screenshots.
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

193
CR1140 CR1141

10.4.14 Enums

10.4.14.1 CAN_BAUDRATE (ENUM)

Name Beschreibung Mögliche Werte Datentyp Wert


CAN_BAUDRATE Datenübertragungsrate KBAUD_20 20 Kilobaud INT 20
der CAN-Schnittstelle
KBAUD_33 33,3 Kilobaud INT 33
KBAUD_50 50 Kilobaud INT 50
KBAUD_83 83,3 Kilobaud INT 83
KBAUD_100 100 Kilobaud INT 100
KBAUD_125 125 Kilobaud INT 125
KBAUD_250 250 Kilobaud INT 250
KBAUD_500 500 Kilobaud INT 500
KBAUD_666 666,6 Kilobaud INT 666
KBAUD_800 800 Kilobaud INT 800
KBAUD_1000 1000 Kilobaud INT 1000
KBAUD_UNDE- unbekannt / nicht INT 16#FFFF
FINED definiert

10.4.14.2 CAN_CHANNEL (ENUM)

Name Beschreibung Mögliche Werte Datentyp Wert


CAN_CHANNEL Identifier der CAN- CHAN_0 CAN-Schnittstelle INT 0
Schnittstelle 0
CHAN_1 CAN-Schnittstelle INT 1
1
CHAN_2 CAN-Schnittstelle INT 2
2
CHAN_3 CAN-Schnittstelle INT 3
3

10.4.14.3 eDAY_OF_WEEK (ENUM)

Name Beschreibung Mögliche Werte Datentyp Wert


eDAY_OF_WEEK Liste mit Wochentagen SUNDAY Sonntag USINT 0
MONDAY Montag USINT 1
TUESDAY Dienstag USINT 2
WEDNESDAY Mittwoch USINT 3
THURSDAY Donnerstag USINT 4
FRIDAY Freitag USINT 5
SATURDAY Sonnabend USINT 6

10.4.14.4 eETHERNET_INTERFACES (ENUM)

Name Beschreibung Wertebereich Datentyp Wert


eETHERNET_INTERFACES Ethernet-Schnittstellen ETH_0 Ethernet-Schnittstelle 0 (eth0) INT 0
ETH_1 Ethernet-Schnittstelle 1 (eth1) INT 1

194
CR1140 CR1141

Name Beschreibung Wertebereich Datentyp Wert


eETHERNET_INTERFACES Ethernet-Schnittstellen ETH_2 Ethernet-Schnittstelle 2 (eth2) INT 2
… … … …
ETH_15 Ethernet-Schnittstelle 15 INT 15
(eth15)
NONE Keine oder ungültige Auswahl INT 255

10.4.14.5 eIP_ADDRESS_VERSION (ENUM)

Name Beschreibung Mögliche Werte Wert


eIP_ADDRESS_VERSION Liste der verfügbaren Ethernet IP4 IP4-Adresstyp 0
IP-Adress-Versionen
IP6 IP6-Adresstyp 1

10.4.14.6 eKEY_LED_ID (ENUM)

Für das ecomatDisplay 4.3“ ist nur die Einstellung KEY_ALL gültig.

Name Beschreibung Mögliche Werte Datentyp Wert


eK- Liste der Tasten-LED-IDs des NONE Keine Auswahl (Default) UDINT 16#FF
EY_LED_ID integrierten Tastenfeldes
KEY0_0 LED Taste 0, Gruppe 0 UDINT 16#0
KEY0_1 LED Taste 1, Gruppe 0 UDINT 16#2
KEY0_2 LED Taste 2, Gruppe 0 UDINT 16#4
KEY0_3 LED Taste 3, Gruppe 0 UDINT 16#6
KEY0_4 LED Taste 4, Gruppe 0 UDINT 16#8
KEY1_0 LED Taste 0, Gruppe 1 UDINT 16#1
KEY1_1 LED Taste 1, Gruppe 1 UDINT 16#3
KEY1_2 LED Taste 2, Gruppe 1 UDINT 16#5
KEY1_3 LED Taste 3, Gruppe 1 UDINT 16#7
KEY1_4 LED Taste 4, Gruppe 1 UDINT 16#9
KEY_ALL Alle Tasten-LEDs UDINT 16#10
KEY2_NAVIGATION LED Navigationstasten UDINT 16#B

10.4.14.7 eKEY_LED_ID_ECOMAT_PANEL (ENUM)

Name Beschreibung Mögliche Werte Datentyp Wert


eKEY_ Liste der Tasten-LED-IDs des NONE Keine Auswahl (Default) USINT 16#FF
LED_ angeschlossenen ecomatPa-
ID_ nels KEY1 LED Taste 1 USINT 16#0
ECOMAT_ KEY2 LED Taste 2 USINT 16#1
PANEL
KEY3 LED Taste 3 USINT 16#2
KEY4 LED Taste 4 USINT 16#3
KEY5 LED Taste 5 USINT 16#4
KEY6 LED Taste 6 USINT 16#5
SegmentRing1 LED Ring-Segment 1 USINT 16#6
SegmentRing2 LED Ring-Segment 2 USINT 16#7
SegmentRing3 LED Ring Segment 3 USINT 16#8
SegmentRing4 LED Ring Segment 4 USINT 16#9

195
CR1140 CR1141

10.4.14.8 eKEY_MAP_CODES (ENUM)

Linux input
Name Beschreibung Mögliche Werte Datentyp event code (de-
zimal)
eKEY_MAP_CODES Liste der möglichen Standard- NONE Keine Auswahl UDINT 0
Tastatur-Funktionen (MF2),
die einer Taste auf dem integ- ESCAPE Escape-Taste UDINT 1
rierten Tastenfeld zugewiesen MINUS - UDINT 74
werden können.
ASTERISK * UDINT 55
SPACE Leertaste UDINT 57
COMMA , UDINT 83
SLASH / UDINT 98
PLUS + UDINT 78
KEY_0 0 UDINT 11
KEY_1 1 UDINT 2
KEY_2 2 UDINT 3
KEY_3 3 UDINT 4
KEY_4 4 UDINT 5
KEY_5 5 UDINT 6
KEY_6 6 UDINT 7
KEY_7 7 UDINT 8
KEY_8 8 UDINT 9
KEY_9 9 UDINT 10
KEY_A A UDINT 30
KEY_B B UDINT 48
KEY_C C UDINT 46
KEY_D D UDINT 32
KEY_E E UDINT 18
KEY_F F UDINT 33
KEY_G G UDINT 34
KEY_H H UDINT 35
KEY_I I UDINT 23
KEY_J J UDINT 36
KEY_K K UDINT 37
KEY_L L UDINT 38
KEY_M M UDINT 50
KEY_N N UDINT 49
KEY_O O UDINT 24
KEY_P P UDINT 25
KEY_Q Q UDINT 16
KEY_R R UDINT 19
KEY_S S UDINT 31
KEY_T T UDINT 20
KEY_U U UDINT 22
KEY_V V UDINT 47
KEY_W W UDINT 17
KEY_X X UDINT 45

196
CR1140 CR1141

Linux input
Name Beschreibung Mögliche Werte Datentyp event code (de-
zimal)
eKEY_MAP_CODES Liste der möglichen Standard- KEY_Y Y UDINT 21
Tastatur-Funktionen (MF2),
die einer Taste auf dem integ- KEY_Z Z UDINT 44
rierten Tastenfeld zugewiesen KEY_RETURN Return-Taste UDINT 28
werden können.
BACKSPACE Rück-Taste UDINT 14
TAB Tab-Taste UDINT 15
PRINT Druck-Taste UDINT 99
HOME Home-Taste UDINT 102
UP Pfeil nach oben- UDINT 103
Taste
LEFT Pfeil nach links- UDINT 105
Taste
RIGHT Pfeil nach rechts- UDINT 106
Taste
END Ende-Taste UDINT 107
DOWN Pfeil nach unten- UDINT 108
Taste
INSERT Einfügen-Taste UDINT 110
DELETE Lösch-Taste UDINT 111
PAUSE Pause-Taste UDINT 119
F1 F1-Taste UDINT 59
F2 F2-Taste UDINT 60
F3 F3-Taste UDINT 61
F4 F4-Taste UDINT 62
F5 F5-Taste UDINT 63
F6 F6-Taste UDINT 64
F7 F7-Taste UDINT 65
F8 F8-Taste UDINT 66
F9 F9-Taste UDINT 67
F10 F10-Taste UDINT 68
F11 F11-Taste UDINT 87
F12 F12-Taste UDINT 88
NUM0 0 Nummernblock UDINT 82
NUM1 1 Nummernblock UDINT 79
NUM2 2 Nummernblock UDINT 80
NUM3 3 Nummernblock UDINT 81
NUM4 4 Nummernblock UDINT 75
NUM5 5 Nummernblock UDINT 76
NUM6 6 Nummernblock UDINT 77
NUM7 7 Nummernblock UDINT 71
NUM8 8 Nummernblock UDINT 72
NUM9 9 Nummernblock UDINT 73

197
CR1140 CR1141

10.4.14.9 eOBJECT_FLIP (ENUM)

Name Beschreibung Mögliche Werte Datentyp Wert


eOBJECT_FLIP Liste der verfügbaren Umkeh- NONE Keine Auswahl. INT 0
reinstellungen für analoge Vi-
deostreams. NORMAL Normaldarstel- INT 1
lung des Ka-
merabildes.
FLIP Gespiegelte INT 2
Darstellung des
Kamerabildes.

10.4.14.10 eOBJECT_ROTATION (ENUM)

Name Beschreibung Mögliche Werte Datentyp Wert


eOBJECT_ROTATION Liste der verfügbaren NONE Keine Auswahl. INT 0
Rotationswinkel.
DEG_0 Originalposition (0 Grad, "12 Uhr") INT 1
DEG_90 Drehung um 90 Grad im Uhrzeigersinn INT 2
DEG_18 Drehung um 180 Grad im Uhrzeigersinn INT 3
0
DEG_27 Drehung um 270 Grad im Uhrzeigersinn INT 4
0

10.4.14.11 eSTATUS_LED_FLASH_FREQ (ENUM)

Name Beschreibung Mögliche Werte Datentyp Wert


eSTATUS_LED_FLASH_FREQ Liste der Blinkfrequen- FREQ_0Hz Kein Blinken INT 0
zen der Status-LEDs
FREQ_05Hz 0,5 Hz INT 1
FREQ_1Hz 1 Hz INT 2
FREQ_2Hz 2 Hz INT 3
FREQ_5Hz 5 Hz INT 4

10.4.14.12 eTOUCH_OPTIMISATION_MODE (ENUM)

Name Beschreibung Mögliche Werte Datentyp Wert


eTOUCH_ Optimierungsmodi für NONE keine Optimierung INT 0
OPTIMISATION_MODE Touchscreen-Betrieb
GLOVE Optimierung für Be- INT 1
trieb mit Handschuh
(Default)
WATER Optimierung für Be- INT 2
trieb bei Regen /
Spritzwasser

10.4.15 Structs

10.4.15.1 stCPU_CORE (STRUCT)

Element Datentyp Beschreibung Mögliche Werte


sID STRING CPU-Kern-ID
usiUsage USINT(0..1 CPU-Auslastung in Prozent 0…100
00)

198
CR1140 CR1141

10.4.15.2 stDATE_TIME (STRUCT)

Bezeichnung Datentyp Beschreibung Mögliche Werte


uiYear UINT Jahr 2000 (Default)...2099
uiMonth UINT Monat 1 (Default)...12
uiDay UINT Tag 1 (Default) ...31
uiHour UINT Stunde 0 (Default)...23
uiMinute UINT Minute 0 (Default)...59
uiSeconds UINT Sekunde 0 (Default)...59
eDayOfWeek eDAY_OF_W Wochentag eDAY_OF_WEEK (ENUM)
EEK (ENUM) (Ò / 194)

10.4.15.3 stIPV4SETTING (STRUCT)

Element Datentyp Beschreibung Mögliche Werte


sIpAddress STRING(15) IP-Adresse des Geräts (IPv4) z.B. 192.168.1.10
sSubnetMask STRING(15) Subnetzmaske z.B. 255.255.255.0
sDefaultGateway STRING(15) IP-Adresse des Netzwerk-Gateways z.B. 192.168.1.1
xDHCPStat BOOL Status des DHCP-Clients des Geräts • FALSE: DHCP-Client deaktiviert
• TRUE: DHCP-Client aktiv

10.4.15.4 stIP_SETTING (STRUCT)

Element Datentyp Beschreibung Mögliche Werte


sIPaddress_NetMask STRING IP-Adresse und Subnetzmaske des z.B. 192.168.1.10
Geräts
sSubnetMask STRING Subnetzmaske z.B. 255.255.255.0
sDefaultGateway STRING IP-Adresse des Netzwerk-Gateways z.B. 192.168.1.1
xDHCPStat BOOL Status des DHCP-Clients des Geräts • FALSE: DHCP-Client deaktiviert
• TRUE: DHCP-Client aktiv
xIgnoreAutoDns BOOL Ignoriert das IPv4-DNS. • FALSE: deaktiviert
Nur gültig, wenn xDHCPStat aktiv ist. • TRUE: aktiv
xIgnoreAutoRoutes BOOL Ignoriert das IPv4-Gateway. • FALSE: deaktiviert
Nur gültig, wenn xDHCPStat aktiv ist. • TRUE: aktiv

10.4.15.5 stKEY_LED_NIGHT_MODE (STRUCT)

Parameter Datentyp Bedeutung Mögliche Werte


xON BOOL Nachtmodus für Beleuchtung der Tas- TRUE Nachtmodus-Hellig-
ten-LED aktivieren/deaktivieren. keit aktivieren
FALSE Nachtmodus-Hellig-
keit deaktivieren,
Normale Helligkeit
aktivieren (Standard-
wert)

199
CR1140 CR1141

Parameter Datentyp Bedeutung Mögliche Werte


usiBrightness USINT Helligkeit der Tasten-LED im Nacht- 1...100 %
modus. Standardwert = 20 %
Bei aktivem Nachtmodus werden die
RGB-Farbwerte auf den eingestellten
Prozentsatz reduziert.
Beispiel:
Tasten-LED RGB im Tagmodus=
WHITE = (00, 255, 255, 255)
Tasten-LED RGB im Nachtmodus
(Helligkeit = 20 %) =
WHITE = (00,51,51,51)

10.4.15.6 stKEY_MAP_LIST (STRUCT)

Parameter Datentyp Bedeutung Standardwert


eKey0_0 eKEY_MAP_CODES Gruppe 0, Taste 0 eKEY_MAP_CODES.F1
(ENUM) (Ò / 196)
eKey1_0 Gruppe 1, Taste 0 eKEY_MAP_CODES.F2
eKey0_1 Gruppe 0, Taste 1 eKEY_MAP_CODES.F3
eKey1_1 Gruppe 1, Taste 1 eKEY_MAP_CODES.F4
eKey0_2 Gruppe 0, Taste 2 eKEY_MAP_CODES.F5
eKey1_2 Gruppe 1, Taste 2 eKEY_MAP_CODES.F6
eKey0_3 Gruppe 0, Taste 3 eKEY_MAP_CODES.F7
eKey1_3 Gruppe 1, Taste 3 eKEY_MAP_CODES.F8
eKey0_4 Gruppe 0, Taste 4 eKEY_MAP_CODES.F9
eKey1_4 Gruppe 1, Taste 4 eKEY_MAP_CODES.F10
eKey2_Up Gruppe 2, Taste 0, Navigationstaste eKEY_MAP_CODES.UP
oben
eKey2_Down Gruppe 2, Taste 1, Navigationstaste eKEY_MAP_CODES.DOWN
unten
eKey2_Left Gruppe 2, Taste 2, Navigationstaste eKEY_MAP_CODES.LEFT
links
eKey2_Right Gruppe 2, Taste 3, Navigationstaste eKEY_MAP_CODES.RIGHT
rechts
eKey2_Enter Gruppe 2, Taste 4, Navigationstaste eKEY_MAP_CODES.RETURN
Enter/Return

10.4.15.7 stKEY_MAP_LIST_ECOMAT_PANEL (STRUCT)

Parameter Datentyp Bedeutung Standardwert


eKey1 eKEY_MAP_CODES Taste 1 auf dem ecomatPanel eKEY_MAP_CODES.F1
(ENUM) (Ò / 196)
eKey2 Taste 2 auf dem ecomatPanel eKEY_MAP_CODES.F2
eKey3 Taste 3 auf dem ecomatPanel eKEY_MAP_CODES.F3
eKey4 Taste 4 auf dem ecomatPanel eKEY_MAP_CODES.F4
eKey5 Taste 5 auf dem ecomatPanel eKEY_MAP_CODES.F5
eKey6 Taste 6 auf dem ecomatPanel eKEY_MAP_CODES.F6
eEncClock Drehknopf einen Schritt im Uhrzei- eKEY_MAP_CODES.TAB
gersinn gedreht
eEncCounterClock Drehknopf einen Schritt gegen den eKEY_MAP_CODES.SHIFT_TAB
Uhrzeigersinn gedreht

200
CR1140 CR1141

Parameter Datentyp Bedeutung Standardwert


eKey_Up eKEY_MAP_CODES Drehknopf nach oben gekippt eKEY_MAP_CODES.UP
(ENUM) (Ò / 196)
eKey_Down Drehknopf nach unten gekippt eKEY_MAP_CODES.DOWN
eKey_Left Drehknopf nach links gekippt eKEY_MAP_CODES.LEFT
eKey_Right Drehknopf nach rechts gekippt eKEY_MAP_CODES.RIGHT
eKey_Return Drehknopf gedrückt eKEY_MAP_CODES.RETURN

10.4.15.8 stLED_CONTROL_ECOMAT_PANEL (STRUCT)

Bezeichnung Datentyp Bedeutung Mögliche Werte


stKey1 stLED_SETTINGS_ECO- LED Taste 1
MAT_PANEL (STRUCT)
stKey2 (Ò / 201) LED Taste 2
stKey3 LED Taste 3
stKey4 LED Taste 4
stKey5 LED Taste 5
stKey6 LED Taste 6
SegmentRing1 LED Drehknopf Leuch-
tring-Segment 1
SegmentRing2 LED Drehknopf Leuch-
tring-Segment 2
SegmentRing3 LED Drehknopf Leuch-
tring-Segment 3
SegmentRing4 LED Drehknopf Leuch-
tring-Segment 4

10.4.15.9 stLED_SETTINGS (STRUCT)

Parameter Datentyp Bedeutung Mögliche Werte


xON BOOL LED einschalten/ausschalten TRUE LED einschalten
FALSE LED ausschalten
(Standardwert)
udiColour UDINT RGB-Farbwert für die LED RGB: 16#00RRGGBB mit
RR = 0...FF
GG = 0...FF
BB = 0...FF
Beispiele:
rot = 16#00FF0000
grün = 16#0000FF00
blau = 16#000000FF
schwarz = 16#00000000
weiß = 16#00FFFFFF

10.4.15.10 stLED_SETTINGS_ECOMAT_PANEL (STRUCT)

Parameter Datentyp Bedeutung Mögliche Werte


xON BOOL LED einschalten/ausschalten TRUE LED einschalten

201
CR1140 CR1141

Parameter Datentyp Bedeutung Mögliche Werte


xON BOOL LED einschalten/ausschalten FALSE LED ausschalten
(Standardwert)
udiColour UDINT RGB-Farbwert für die ecomatPanel- RGB: 16#RRGGBB00 mit
LED RR = 0...FF
GG = 0...FF
BB = 0...FF
Beispiele:
rot = 16#FF000000
grün = 16#00FF0000
blau = 16#0000FF00
schwarz = 16#00000000
weiß = 16#FFFFFF00

10.4.15.11 stNETWORK_USAGE_INFO (STRUCT)

Element Datentyp Beschreibung Mögliche Werte


sInterface STRING Schnittstelle
udiRXbytesPerSec UDINT Empfangene Bytes pro Sekunde
udiTXbytesPerSec UDINT Gesendete Bytes pro Sekunde

10.4.15.12 stNTP_SETTINGS

Element Datentyp Beschreibung Mögliche Werte


xEnable BOOL Status und Befehl zum Aktivieren / De- • FALSE: Standardwert
aktivieren des NTP-Services deaktivieren / inaktiv
• TRUE: aktivieren / aktiv
usiServerCnt USINT Gültige NTP-Server in aServerList 0...11; Standardwert = 0
aServerList ARRAY Liste mit NTP-Server-Adressen (maxi- IP-Adressen oder Servernamen der
[0..10] OF mal 11). NTP-Server.
STRING

10.4.15.13 stSYSTEM_TEMPERATURES (STRUCT)

Bezeichnung Datentyp Bedeutung Mögliche Werte


rCore0 REAL Prozessortemperatur in °C z.B. 40.1 °C
rBoard REAL Hauptplatinentemperatur in °C z.B. 43.9 °C

10.4.15.14 stSYS_INFO_BASIC (STRUCT)

Element Datentyp Beschreibung Mögliche Werte


sDevice_FWver STRING Geräte -Fmwareversion z.B. 1.0.0.0
sDeviceHWver STRING Hardware-Version z.B. 1.1.1.1
sDevice_SerialNum STRING Seriennummer des Geräts z.B. 000000017427
sDevice_ArticleNum STRING ifm Artikelnummer z.B. CR1203
sDevice_ArticleName STRING ifm Artikelname z.B. ecomatDisplay/7"/Basic
sDevice_ArticleRev STRING ifm Artikelrevision z.B. AB
xTouchScreen_Available BOOL Touchscreen-Funktionalität vorhanden FALSE Kein Touchscreen
ja / nein vorhanden

202
CR1140 CR1141

Element Datentyp Beschreibung Mögliche Werte


xTouchScreen_Available BOOL Touchscreen-Funktionalität vorhanden TRUE Touchscreen vor-
ja / nein handen

10.4.15.15 stSYS_INFO_EXTENDED (STRUCT)

Element Datentyp Beschreibung Mögliche Werte


uiNumOfETHitf UINT Anzahl der verfügbaren Ether- z.B 2
netschnittstellen
uiNumOfUSBitf UINT Anzahl der verfügbaren USB- z.B. 1
Schnittstellen
usiNumOfACam USINT Anzahl der verfügbaren Analogka- z.B 1
mera-Eingangsstreams
usiLocalIO_NumOfDI USINT Anzahl der verfügbaren Digitalein- z.B. 2
gänge
usiLocalIO_NumOfDO USINT Anzahl der verfügbaren Digitalaus- z.B. 2
gänge
usiLocalIO_NumOfStatLED USINT Anzahl der verfügbaren Status- z.B. 1
LEDs auf dem Frontpanel
usiLocalIO_NumOfLightSensors USINT Anzahl der verfügbaren Lichtsen- z.B. 1
soren auf dem Frontpanel
xAudio_HeadPhoneOutAvailable BOOL Verfügbarkeit des Kopfhöreraus- FALSE nicht vorhanden
gangskanals
TRUE vorhanden
xAudio_SpeakerOutAvailable BOOL Verfügbarkeit des Lautsprecher- FALSE nicht vorhanden
ausgangskanals
TRUE vorhanden
xAudio_LineInAvailable BOOL Verfügbarkeit des LineIn-Eingangs- FALSE nicht vorhanden
kanals
TRUE vorhanden
sDevice_MfgDate STRING Herstellungsdatum Im Format TT.MM.JJJJ,
hh:mm:ss, z.B. 01.12.2019,
09:13:55
sDevice_MAC_ETHitf_0 STRING MAC-Adresse von Ethernetschnitt- z.B. 00:01:02:06:63:DE
stelle ETH0
sDevice_MAC_ETHitf_1 STRING MAC-Adresse von Ethernetschnitt- z.B. 00:01:02:06:63:DF
stelle ETH1
usiNumOfKeypad USINT Anzahl der verfügbaren Keypads z.B. 1
usiKeypad_0_NumOfKeys USINT Anzahl der Tasten auf Keypad 0 z.B. 6
usiKeypad_0_NumOfNaviElem USINT Anzahl der Navigationstasten auf z.B. 5
Keypad 0
usiKeypad_1_NumOfKeys USINT Anzahl der Tasten auf Keypad 1 z.B. 6
usiKeypad_1_NumOfNaviElem USINT Anzahl der Navigationstasten auf z.B. 5
Keypad 1
uiLCD_Width_mm UINT Breite des LCD in mm z.B. 153
uiLCD_Height_mm UINT Höhe des LCD in mm z.B. 92
uiLCD_Width_Pixels UINT Breite des LCD in Pixeln z.B. 800
uiLCD_Height_Pixels UINT Höhe des LCD in Pixeln z.B. 480
usiLCD_ColourDepth_bpp USINT Farbtiefe des LCD in bpp z.B. 8 = 8 bpp
usiLCD_DiagonalSize_Inch USINT Bilddiagonale des LCD in Zoll z.B. 7 = 7 Zoll

203
CR1140 CR1141

10.4.15.16 stSYS_INFO_INTERNAL (STRUCT)

Element Datentyp Beschreibung Mögliche Werte


sDevice_ProductType STRING Produkttyp z.B. pdm3_12w_002
udiDevice_SWcompatibility UDINT Softwarekompatibilität z.B. 4
sDevice_ProductionOrderNum STRING Geräteproduktionsnummer z.B. 9999999
sKeypad_0_FWver STRING Firmwareversion Keypad 0
sKeypad_0_HWver STRING Hardwareversion Keypad 0
sKeypad_1_FWver STRING Firmwareversion Keypad 1
sKeypad_1_HWver STRING Hardwareversion Keypad 1
udiFrontPanel_SerialNum UDINT Frontpanel Seriennummer z.B. 4294967296
sFrontPanel_MfgWeek STRING Frontpanel Herstellungswoche z.B. 51
sFrontPanel_MfgYear STRING Frontpanel Herstellungsjahr z.B. 2019
uiFrontPanel_VendorId UINT Frontpanel Hersteller ID z.B. 65535
uiFrontPanel_Id UINT Frontpanel ID z.B. 65535
sLCD_MfgrName STRING LCD Herstellername
usiTouchScreen_Address USINT Touchscreen-Adresse z.B. 5A
uiTouchScreen_VendorId UINT Touchscreen-Controller Hersteller z.B. 65535-
ID
usiTouchScreen_DeviceId USINT Touchscreen-Controller Geräte ID z.B. 65535
sMainBoard_OrderNum STRING Produktionsnummer des Main- z.B. 9999999
boards
sMainBoard_MaterialNum STRING ERP Materialnummer des Main- z.B. 9999999
boards
sMainBoard_MaterialRev STRING ERP Materialrevision des Main- z.B. 00
boards

10.4.15.17 stSYS_MEMORY (STRUCT)

Element Datentyp Beschreibung Mögliche Werte


udiInUse UDINT Verwendeter Speicher in MiB
udiAvailable UDINT Insgesamt verfügbarer Speicher in MiB

10.4.15.18 stSYS_USAGE_INFO (STRUCT)

Element Datentyp Beschreibung Mögliche Werte


usiCPU USINT(0… CPU-Auslastung in Prozent 0…100
100)
astCPUcores ARRAY Liste der Auslastung der Prozessorker- stCPU_CORE (STRUCT) (Ò / 198)
[0..15] of ne in Prozent
stRAM STRUCT Verbrauchter und freier RAM-Speicher stSYS_MEMORY (STRUCT) (Ò / 204)
stSysPartition STRUCT Verbrauchter und freier Speicher auf stSYS_MEMORY (STRUCT) (Ò / 204)
der System-Partition
stUserPartition STRUCT Verbrauchter und freier auf der User- stSYS_MEMORY (STRUCT) (Ò / 204)
Partition
stUpdatePartition STRUCT Verbrauchter und freier auf der Up- stSYS_MEMORY (STRUCT) (Ò / 204)
date-Partition

204
CR1140 CR1141

10.4.16 Types

10.4.16.1 aETH_ITF_LIST (ALIAS)


Liste der Namen aller verfügbaren Ethernet-Schnittstellen.

10.4.16.2 aTIME_ZONE_LIST (ALIAS)

Name Beschreibung Datentyp Wert


Zeitzone 0 Bezeichnung RTC-Zeitzone 0 STRING(31) 0
Zeitzone 1 Bezeichnung RTC-Zeitzone 1 STRING(31) 1
... ... STRING(31) ...
Zeitzone 120 Bezeichnung RTC-Zeitzone 120 STRING(31) 120

10.4.17 Global Constants

10.4.17.1 CANconstants (GVL)

Name Beschreibung Datentyp Wert


usiNumberCANitf Anzahl der CAN-Schnittstellen des Geräts UINT 4

10.4.17.2 GCL_Data (GVL)

Name Beschreibung Datentyp Wert


usiMaxEthItf Anzahl der Ethernet-Schnittstellen des Geräts USINT 16
usiNumberOfSysInfo Anzahl der System-Information-Parameter des Geräts. USINT 7
usiMaxStrgDevi Anzahl der unterstützten USB-Speichermedien. USINT 16
usiMaxTimeZones Anzahl der RTC-Zeitzonen. USINT 121

10.4.17.3 GCL_RGB_COLOUR(_ECOMAT_PANEL) (GVL)


Liste mit häufig genutzten Standardfarben für die Tasten-LEDs.

Name Beschreibung Datentyp Wert


udiOFF LED aus (schwarz) UDINT 0
udiRed rot UDINT 16#00FF0000
udiGreen grün UDINT 16#0000FF00
udiBlue blau UDINT 16#000000FF
udiYellow gelb UDINT 16#00FFFF00
udiMagenta magenta UDINT 16#00FF00FF
udiCyan cyan UDINT 16#0000FFFF
udiWhite weiß UDINT 16#00FFFFFF

205
CR1140 CR1141

10.4.18 Global Variables

10.4.18.1 GVL_Data

Name Beschreibung Datentyp Wertebereich


usiNumOfEthIf Anzahl der Ethernet-Schnittstellen des Ge- USINT 4
räts
stIPv4Setting_ETHitf_0 IP-Einstellungen der Ethernet-Schnittstelle stIPV4SETTING stIPV4SETTING (STRUCT)
eth0 (Ò / 199)
stIPv4Setting_ETHitf_1 IP-Einstellungen der Ethernet-Schnittstelle stIPV4SETTING stIPV4SETTING (STRUCT)
eth1 (Ò / 199)
stIPv4Setting_ETHitf_2 IP-Einstellungen der Ethernet-Schnittstelle stIPV4SETTING stIPV4SETTING (STRUCT)
eth2 (Ò / 199)
stIPv4Setting_ETHitf_3 IP-Einstellungen der Ethernet-Schnittstelle stIPV4SETTING stIPV4SETTING (STRUCT)
eth3 (Ò / 199)
stLocalIO Diagnoseinformationen der Lokale E/As stLOCAL_IO stLOCAL_IO (STRUCT)
stSysInfoBasic Einfache Systeminformationen stSYS_INFO_BA- stSYS_INFO_BASIC2
SIC2 (STRUCT)
stSysInfoExtd Erweiterte Systeminformationen stSYS_INFO_EX- stSYS_INFO_EXTENDED2
TENDED2 (STRUCT)
stSysInfoInternal Interne Systeminformationen stSYS_INFO_INTER- stSYS_INFO_INTERNAL2
NAL2 (STRUCT)
aTimeZoneList Liste der Zeitzonen-Konfigurationen aTIME_ZONE_LIST aTIME_ZONE_LIST (ALIAS)
(Ò / 205)
stSysDateTime Systemzeit (Datum, Uhrzeit) stDATE_TIME stDATE_TIME (STRUCT)
(Ò / 199)
sSysTimeZone Zeitzonen-Information STRING

206
CR1140 CR1141

10.5 Bibliothek ifmFileUtil.library


Die Bibliothek enthält Programmbausteine (POU), Datenstrukturen und Aufzählungstypen für
Dateioperationen.

10.5.1 Enums

10.5.1.1 eCSV_MODE (ENUM)

Name Beschreibung Mögliche Werte Datentyp Wert


eCSV_MODE Schreibmodus für CSV-Datei LINEAR INT 0
RING INT 1

10.5.2 Structs

10.5.2.1 stCSV_HEADER (STRUCT)

Bezeichnung Datentyp Bedeutung Mögliche Werte


sHeaderText STRING(ifmGCL.uiHeaderSize) Die Überschrift für jede Spalte 'DateAndTi-
der CSV-Datei durch Kommas me,R1C2,R1C3,R1C4,R1C5
getrennt. ,R1C6,R1C7,R1C8,R1C9,'

10.5.2.2 stLOG_DATA (STRUCT)

Bezeichnung Datentyp Bedeutung Mögliche Werte


sTimeStamp STRING Zeitstempel
(TT.MM.JJJJ HH:MM:SS)
aData ARRAY[0..7] OF BYTE CSV-Datensatz
sRawData STRING sTimeStamp und aData als
STRING; Werte sind komma-
separiert

10.5.2.3 stLOG_FILE_CONFIG (STRUCT)


Logfile-Parameter.

Name Datentyp Beschreibung Wertebereich


xwPosition __XWORD Cursor-Position (Byte)
udiDataSetNb UDINT Datensatznummer
sCSVmode STRING CSV-Datei Log-Mode • LINEAR: Linie-Mode
• RING: Ring-Mode
udiRingCnt UDINT Ring-Zähler; Gibt an, wie oft die Datei im
Ring-Mode überschrieben wurde.
xwLastLogDataSize __XWORD Letzte geloggte Datensatzgröße in Bytes.
xHeaderSet BOOL Zeigt an, ob ein Header in die Datei ge- • TRUE: Header wurde
schrieben wurde (FB WriteCSVHeader) geschrieben.
• FALSE: Header wurde noch
nicht geschrieben.
udiDataSetNbMax UDINT Maximale Anzahl an Datensätzen, die im
RING-Mode in die Datei geschrieben wer-
den (FIFO).

207
CR1140 CR1141

10.5.2.4 stSEPARATOR_CONFIG (STRUCT)


Konfiguration des CSV-Trennzeichens.

Name Datentyp Bedeutung Mögliche Werte


sChar STRING(1] CSV-Trennzeichen • ",": Komma (Standardwert)
• ";": Semikolon
• "": Kein Trennzeichen
xAfterData BOOL Definiert, ob das Trennzeichen vor oder • TRUE: Nach dem Datenwert, z.B. "1234;"
nach dem Datenwert erscheinen soll. • FALSE: Vor dem Datenwert, z.B. ";1234"
(Standardwert)

10.5.3 Generic File

10.5.3.1 Copy_Device_To_USB

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil.library
Symbol in CODESYS:

Beschreibung
Der FB kopiert eine Datei oder mehrere Dateien von einem Quellverzeichnis auf dem Gerät in ein
Zielverzeichnis auf einem USB-Speicher.

u Der FB nutzt den Linux-Befehl "cp -rf < sDevicePath > < sUSBpath >".

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => FB wird einmal aus-
TRUE geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung
sDevicePath STRING Quellverzeichnis/-datei auf dem Gerät, des- z.B. ' /data/tmp/logfile.csv'
sen Inhalt kopiert werden soll
sUSBpath STRING Zielverzeichnis auf dem USB-Speicher, in z.B. ' /sda1/NewFolder'
das die Dateien kopiert werden sollen
• Das Verzeichnis als relativen Pfad zum
Mount-Punkt des USB-Gerät eingeben.
• Beispiel: '/sda1/NewFolder' kopiert die
gewählten Dateien in das Verzeichnis ' /
media/USB/sda1/NewFolder/'

u Vorgaben bei der Belegung der Eingänge sSource und sDestin beachten!

208
CR1140 CR1141

Ausgangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt.
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von Ein-
gangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

209
CR1140 CR1141

10.5.3.2 Copy_USB_To_Device

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil.library
Symbol in CODESYS:

Beschreibung
Der FB kopiert eine Datei oder mehrere Dateien von einem USB-Speicher in ein Zielverzeichnis auf
dem Gerät.

u Der FB nutzt den Linux-Befehl "cp -rf < sUSBpath > < sDevicePath >".

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => FB wird einmal aus-
TRUE geführt
sonst. keine Auswirkungen
auf FB-Abarbeitung
sUSBpath STRING Quellverzeichnis /-datei auf dem USB-Spei- z.B. ' /sda1/NewFolder'
cher
• Das Verzeichnis als relativen Pfad zum
Mount-Punkt des USB-Gerät eingeben.
• Beispiel: '/sda1/NewFolder' kopiert alle
Dateien des Verzeichnisses ' /media/USB/
sda1/NewFolder/'
sDevicePath STRING Zielverzeichnis auf dem Gerät z.B. ' /data/tmp/'

u Vorgaben bei der Belegung der Eingänge sSource und sDestin beachten!

Ausgangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt

210
CR1140 CR1141

Parameter Datentyp Bedeutung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- TRUE • Fehler aufgetreten
getreten ist • Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt.
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von Ein-
gangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

211
CR1140 CR1141

10.5.3.3 DeleteFile

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB löscht eine Datei vom FLASH-Speicher des Geräts oder vom USB-Speicher.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. '/home/project/data.txt'
5)

Folgende Eingaben für "sFileName" sind ungültig und erzeugen eine Fehlermeldung:

• Wert enthält Leerzeichen


• kein Wert wird eingegeben
• Wert ist ein Ordner (z. B. /home/cds-apps/)
• Wert enthält aufeinanderfolgende "/" (z. B. /home/cds-apps///LogFile.csv)

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

212
CR1140 CR1141

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt
• ERR_INVALID_VALUE Fehler: eine oder mehrere Eingangsparameter sind ungültig oder außerhalb
des gültigen Wertebereichs
• ERR_INTERNAL Fehler: Interner Systemfehler; ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

213
CR1140 CR1141

10.5.3.4 FileCopy

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB kopiert eine Datei oder mehrere Dateien von einem Quellverzeichnis auf dem Gerät in ein
Zielverzeichnis auf dem Gerät.

Der FB nutzt den Linux-Befehl "cp -rf <sSource> <sDestin>".

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sSource STRING Quellverzeichnis/-datei z.B.
/data/source
/data/sourcefile.txt
/data/*.txt
sDestin STRING Zielverzeichnis/-datei auf dem Gerät z.B. /data/destin

Folgende Möglichkeiten für die Dateiauswahl bestehen:


• einzelne Dateien (z. B. /home/values/sample.csv )
• mehrere Dateien mithilfe von Wildcards (z. B. /home/values/*.csv )
• alle Dateien eines Verzeichnisses (z. B. /home/values/ )
Folgende Kombinationen aus Quell- und Zielangaben sind gültig:
• Werte für Quelle und Ziel sind unterschiedlich und beides sind Ordner
• Werte für Quelle und Ziel sind unterschiedlich und beides sind Dateien
• Wert für Quelle ist Datei und Wert für Ziel ist Ordner
Folgende Kombinationen aus Quell- und Zielangaben sind ungültig und erzeugen eine
Fehlermeldung:
• keine Werte für Quelle und/oder Ziel
• Wert für Quelle ist Ordner und Wert für Ziel ist Datei
• Werte für Quelle und/oder Ziel enthalten aufeinanderfolgende "/" (z. B. /home/values///
file.csv )
• Werte für Quelle und/oder Ziel enthalten Leerzeichen
• Werte für Quelle und Ziel sind gleich (Datei und Ordner)

214
CR1140 CR1141

u Vorgaben bei der Belegung der Eingänge sSource und sDestin beachten!

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_INTERNAL Fehler: Interner Systemfehler; ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

215
CR1140 CR1141

10.5.3.5 SyncFileMemory

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB synchronisiert den NAND-Flash-Speicher mit dem Arbeitsspeicher (RAM) des Geräts.

u Den FB als letzte Operation vor dem Herunterfahren des Geräts ausführen!

u Der FB nutzt den Linux-Befehl "sync".

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

Diagnose-Infos

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an

216
CR1140 CR1141

• ERR_NOT_SUPPORTED Fehler: Ungültiger Funktionsaufruf; Funktion wird nicht unterstützt


• ERR_INTERNAL Fehler: Interner Systemfehler; ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

217
CR1140 CR1141

10.5.4 Log File

10.5.4.1 ReadCSV8Byte

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE with Trigger
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB liest Datensätze aus einer CSV-Datei und gibt sie aus. Der FB weist ungenutzten Zellen den
Wert 0 zu. Der FB speichert zu jedem Datensatz den Zeitstempel. Die CSV-Datei muss mit dem FB
WriteCSV8Byte (Ò / 222) erzeugt worden sein.

Jeder Datensatz muss 54 Byte groß sein.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
xTrigger BOOL Aktion auslösen • FALSE ➜ TRUE: FB liest gewählten
Datensatz
• sonst.: keine Aktion
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. '/home/project/data.txt'
5)
udiDataSetNb UDINT Nummer des Datensatzes, der aus der 0 ... 65535
Datei gelesen werden soll

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden

218
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
xEOF BOOL Anzeige des Dateiendes • FALSE: Dateiende noch nicht erreicht
• TRUE: Dateiende erreicht
stReadData stLOG_DA- Datenstruktur mit allen gelesenen Da- stLOG_DATA (STRUCT)
TA ten
xwReadSize XWORD Größe des zuletzt gelesenen Datensat- • 54: Lesevorgang erfolgreich
zes • sonst.: Lesevorgang fehlerhaft

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_READY Zustand: Datei bereit für getriggerte Schreib-/Lesezugriffe
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen
• ERR_NO_OBJECT Fehler: Datei nicht verfügbar

219
CR1140 CR1141

10.5.4.2 ReadCSVData

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE with Trigger
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB liest Datensätze aus einer CSV-Datei und gibt sie aus.
Der FB weist ungenutzten Zellen den Wert 0 zu. Der FB speichert zu jedem Datensatz den
Zeitstempel.
Die CSV-Datei muss mit dem FB WriteCSVData_Linear (Ò / 227) oder mit dem FB
WriteCSVData_Ring (Ò / 230) erzeugt worden sein.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
xTrigger BOOL Aktion auslösen • FALSE ➜ TRUE: FB liest gewählten
Datensatz
• sonst.: keine Aktion
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. ' /home/project/data.csv '
5)
udiDataSetNb UDINT Nummer des Datensatzes, der aus der 0 ... 4294967295
Datei gelesen werden soll

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten

220
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
xEOF BOOL Anzeige des Dateiendes • FALSE: Dateiende noch nicht erreicht
• TRUE: Dateiende erreicht
sCSVHeader STRING CSV-Header ausgelesen aus der Datei • CSV-Header: wenn in der Datei
vorhanden
• Erster Datensatz: wenn kein CSV-Header
in der Datei vorhanden ist.
sReadData STRING CSV-Datensatz mit allen aus der Datei
gelesenen Daten
udiReadSize UDINT Größe des zuletzt gelesenen Datensat-
zes in Bytes

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_READY Zustand: Datei bereit für getriggerte Schreib-/Lesezugriffe
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• STAT_READY Zustand: FB / Funktion führt eine RESET-Operation durch
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen
• ERR_NO_OBJECT Fehler: Datei nicht verfügbar
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

221
CR1140 CR1141

10.5.4.3 WriteCSV8Byte

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE with Trigger
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB liest die Daten aus einem Array mit 8 Bytes und schreibt diese als Datensatz in eine CSV-
Datei. Der FB speichert zu jedem Datensatz zusätzlich einen Zeitstempel (Datum, Uhrzeit). Nachdem
der Datensatz geschrieben wurde, inkrementiert der FB automatisch den Pointer zum nächsten Array
in der Datenstruktur.
Prinzip:

Nr. des Datensatzes Inhalt des Datensatzes


1 Zeitstempel*, Byte 0, Byte 1, ..., Byte 7
2 Zeitstempel, Byte 0, Byte 1, ..., Byte 7
... ...
udiDataSetNbMax Zeitstempel, Byte 0, Byte 1, ..., Byte 7
* ...Format des Zeitstempels: TT.MM.JJJJ SS:MM:SS

Beispiel für Datensatz:


04.08.2016 19:59:55,0,15,245,15,251,15,0,8
Der Anwender kann zwischen folgenden Schreibmodi wählen:
• Linear:
Die Datensätze werden linear geschrieben. Die Anzahl der Datensätze ist theoretisch unbegrenzt;
sie wird nur durch die maximale Dateigröße begrenzt, die vom Betriebssystem vorgegeben ist.
Existierende Datensätze werden nicht überschrieben.
• Ring:
Die Datensätze werden in einen Ringpuffer geschrieben. Die Anzahl der Datensätze ist begrenzt.
Nachdem die letzte Speicherzelle des Ringpuffers geschrieben wurde, beginnt der FB wieder bei
der ersten Speicherzelle des Ringpuffers. Existierende Datensätze werden überschrieben.

Im Modus "Linear" sind die Bytes 0 bis 53 reserviert für den CSV-Header. Der CSV-Header
kann nachträglich mit dem FB WriteCSV8ByteHeader (Ò / 225) hinzugefügt werden.
Im Ring-Modus muss der CSV-Header vor dem Schreiben der Datensätze in die Datei
geschrieben werden.

222
CR1140 CR1141

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
xTrigger BOOL Aktion auslösen • FALSE ➜ TRUE: FB liest gewählten
Datensatz
• sonst.: keine Aktion
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. '/home/project/data.txt'
5)
aLogData AR- Array mit den Daten, die in die CSV-Da-
RAY[0..7] tei geschrieben werden sollen
OF BYTE
udiDataSetNbMax UDINT Maximale Anzahl der Datensätze im 0…65535
RING-Modus
xRst BOOL CSV-Datei und Pointer zum Datensatz • FALSE ➜ TRUE: Pointer und CSV-Datei
löschen löschen
• sonst.: keine Aktion

Folgende Eingaben für "sFileName" sind ungültig und erzeugen eine Fehlermeldung:
• kein Wert
• Wert enthält Leerzeichen
• Wert ist ein Ordner (z. B. /home/cds-apps/ )
• Wert enthält aufeinanderfolgende "/" (z. B. /home/cds-apps///LogFile.csv )

u Vorgaben bei der Wahl des Eingangs sFileName beachten!

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
xwFileSize XWORD aktuelle Dateigröße der Datei (in Bytes) 0…4294967295
sLastLogMsg STRING Zuletzt geschriebener Datensatz als z.B.
STRING 06.12.2016
20:35:45,10,101,255,103,104,105,106,$n

223
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


udiDataSetNb UDINT Nummer des Datensatzes, der zuletzt 0...65535
in die Datei geschrieben wurde
udiRingCnt UDINT Zähler für abgeschlossenen Durchläufe 0...65535
des Ring-Pufferspeichers

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• STAT_READY Zustand: FB / Funktion führt eine RESET-Operation durch
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen
• ERR_INTERNAL Fehler: Interner Systemfehler; ifm-Service-Center kontaktieren!
• ERR_NO_OBJECT Fehler: Datei nicht verfügbar
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

224
CR1140 CR1141

10.5.4.4 WriteCSV8ByteHeader

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB schreibt die Kopfzeile in eine CSV-Datei. Die Kopfzeile wird immer in den Bytes 0 bis 53 der
Datei geschrieben.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. '/home/project/data.txt'
5)

Folgende Eingaben für "sFileName" sind ungültig und erzeugen eine Fehlermeldung:
• kein Wert
• Wert enthält Leerzeichen
• Wert ist ein Ordner (z. B. /home/cds-apps/ )
• Wert enthält aufeinanderfolgende "/" (z. B. /home/cds-apps///LogFile.csv )

u Vorgaben bei der Wahl des Eingangs sFileName beachten!

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten

225
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
sLastLogMsg STRING Zuletzt geschriebener Header als
STRING
udiDataSetPosi UDINT Nummer des zuletzt geschriebenen Da- 0...4294967295
tensatzes

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen
• ERR_INTERNAL Fehler: Interner Systemfehler; ifm-Service-Center kontaktieren!
• ERR_NO_OBJECT Fehler: Datei nicht verfügbar
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

226
CR1140 CR1141

10.5.4.5 WriteCSVData_Linear

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE with Trigger
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB schreibt einen Datensatz linear in eine CSV-Datei.
• Bei einer steigenden Flanke an xExecute wird die an sFileName angegebene Datei geöffnet.
• Wenn xExecute = TRUE ist, scheibt der FB bei jeder steigenden Flanke an xTrigger den
Datensatz sCSVData in die geöffnete Datei sFileName .
• Bei einer fallenden Flanke an xExecute wird die an sFileName angegebene Datei geschlossen.
• Der FB speichert am Anfang eines jeden Datensatzes zusätzlich einen Zeitstempel im Format
DD.MM.YYYY hh:mm:ss .
• Ein Datensatz entspricht einer Zeile in der CSV-Datei.
• Die Anzahl der Datensätze ist theoretisch unbegrenzt; sie wird nur durch die maximale Dateigröße
begrenzt, die vom Betriebssystem oder vom verfügbaren Speicher vorgegeben ist.
• Existierende Datensätze werden nicht überschrieben. Neue Datensätze werden an die bestehende
Datei angehängt.
• Ein Dateiheader kann mit dem FB WriteCSVHeader vor Schreiben des ersten Datensatzes in die
CSV-Datei geschrieben werden.

Die Größe der CSV-Datei nimmt mit jedem geschriebenen Datensatz zu.
Die Datei kann sehr groß werden.
u Die Speichergröße des Geräts beachten.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
xTrigger BOOL Aktion auslösen • FALSE ➜ TRUE: FB liest gewählten
Datensatz
• sonst.: keine Aktion
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. ' /home/project/data.csv '
5)

227
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


sCSVData STRING(10 CSV-Daten, die in der Datei gespei-
03) chert werden sollen.
Reservierter Speicher für Zeitstempel
und New Line-Zeichen am Ende der
Zeile (21 Bytes)
xTimeStamp BOOL Zeitstempel hinzufügen • FALSE: keinen Zeitstempel hinzufügen
• TRUE: Zeitstempel hinzufügen
xRst BOOL CSV-Datei und Pointer zum Datensatz • FALSE ➜ TRUE: Pointer und CSV-Datei
löschen löschen
• sonst.: keine Aktion

Folgende Eingaben für "sFileName" sind ungültig und erzeugen eine Fehlermeldung:
• kein Wert
• Wert enthält Leerzeichen
• Wert ist ein Ordner (z. B. /home/cds-apps/ )
• Wert enthält aufeinanderfolgende "/" (z. B. /home/cds-apps///LogFile.csv )

u Vorgaben bei der Wahl des Eingangs sFileName beachten!

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
xwFileSize XWORD aktuelle Dateigröße der Datei (in Bytes) 0…4294967295
sLastLogMsg STRING Zuletzt geschriebener Datensatz als z.B.
STRING 06.12.2016
20:35:45,10,101,255,103,104,105,106,$n
udiDataSetNb UDINT Nummer des Datensatzes, der zuletzt 0...65535
in die Datei geschrieben wurde
udiLastLogDataSize UDINT Größe des zuletzt geschriebenen Da- 0...53
tensatzes in Byte

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_READY Zustand: Datei bereit für getriggerte Schreib-/Lesezugriffe
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• STAT_READY Zustand: FB / Funktion führt eine RESET-Operation durch
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen

228
CR1140 CR1141

• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen


• ERR_LINUX_SYS_CALL Fehler: Fehler während der Ausführung eines Linux-Systembefehls
• ERR_ASYNC_TASK Fehler: Fehler während der Ausführung einer asynchronen Aufgabe
• ERR_NO_OBJECT Fehler: Datei nicht verfügbar
• ERR_GET_DATE_TIME Fehler: Fehler während des Lesens von Datum und Zeit (RTC)
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

229
CR1140 CR1141

10.5.4.6 WriteCSVData_Ring

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE with Trigger
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB schreibt einen Datensatz im Ring-Mode in eine CSV-Datei.
• Bei einer steigenden Flanke an xExecute wird die an sFileName angegebene Datei geöffnet.
• Wenn xExecute = TRUE ist, scheibt der FB bei jeder steigenden Flanke an xTrigger den
Datensatz sCSVData in die geöffnete Datei sFileName .
• Bei einer fallenden Flanke an xExecute wird die an sFileName angegebene Datei geschlossen.
• Der FB speichert am Anfang eines jeden Datensatzes zusätzlich einen Zeitstempel im Format
DD.MM.YYYY hh:mm:ss .
• Ein Datensatz entspricht einer Zeile in der CSV-Datei.
• Die Anzahl der Datensätze ist begrenzt durch den Wert an udiDataSetNbMax .
• Der älteste existierende Datensatz wird nach Erreichen der maximalen Anzahl gelöscht. Der neue
Datensatz wird an die bestehende Datei angehängt.
• Ein Dateiheader kann mit dem FB WriteCSVHeader vor Schreiben des ersten Datensatzes in die
CSV-Datei geschrieben werden.
• Die Dateigröße bleibt gleich, da ältere Einträge überschrieben werden. Die Dateigröße wird von der
Anzahl der Datensätze begrenzt.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
xTrigger BOOL Aktion auslösen • FALSE ➜ TRUE: FB liest gewählten
Datensatz
• sonst.: keine Aktion
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. ' /home/project/data.csv '
5)
sCSVData STRING(10 CSV-Daten, die in der Datei gespei-
03) chert werden sollen.
Reservierter Speicher für Zeitstempel
und New Line-Zeichen am Ende der
Zeile (21 Bytes)

230
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


udiDataSetNbMax UDINT Maximale Anzahl der Datensätze im 0…65535
RING-Modus
xRst BOOL CSV-Datei und Pointer zum Datensatz • FALSE ➜ TRUE: Pointer und CSV-Datei
löschen löschen
• sonst.: keine Aktion

Folgende Eingaben für "sFileName" sind ungültig und erzeugen eine Fehlermeldung:
• kein Wert
• Wert enthält Leerzeichen
• Wert ist ein Ordner (z. B. /home/cds-apps/ )
• Wert enthält aufeinanderfolgende "/" (z. B. /home/cds-apps///LogFile.csv )

u Vorgaben bei der Wahl des Eingangs sFileName beachten!

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
xwFileSize XWORD aktuelle Dateigröße der Datei (in Bytes) 0…4294967295
sLastLogMsg STRING Zuletzt geschriebener Datensatz als z.B.
STRING 06.12.2016
20:35:45,10,101,255,103,104,105,106,$n
udiDataSetNb UDINT Nummer des Datensatzes, der zuletzt 0...65535
in die Datei geschrieben wurde
udiRingCnt UDINT Zähler für abgeschlossenen Durchläufe 0...65535
des Ring-Pufferspeichers
udiLastLogDataSize UDINT Größe des zuletzt geschriebenen Da- 0...53
tensatzes in Byte

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_READY Zustand: Datei bereit für getriggerte Schreib-/Lesezugriffe
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• STAT_READY Zustand: FB / Funktion führt eine RESET-Operation durch
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen
• ERR_LINUX_SYS_CALL Fehler: Fehler während der Ausführung eines Linux-Systembefehls

231
CR1140 CR1141

• ERR_ASYNC_TASK Fehler: Fehler während der Ausführung einer asynchronen Aufgabe


• ERR_NO_OBJECT Fehler: Datei nicht verfügbar
• ERR_GET_DATE_TIME Fehler: Fehler während des Lesens von Datum und Zeit (RTC)
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

232
CR1140 CR1141

10.5.4.7 WriteCSVHeader

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE with Trigger
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB schreibt die Kopfzeile in eine CSV-Datei, die anschließend mit dem FB WriteCSVData_Linear
oder dem FB WriteCSVData_Ring geschrieben wird.
Wenn die an sFileName angegebene Datei bereits existiert, wird der Dateianfang mit der Länge des
an sHeader angegebenen Strings überschrieben.
Die Datei wird neu erzeugt, wenn sie noch nicht existiert.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. ' /home/project/data.csv '
5)
sHeader STRING String mit Header-Daten für die CSV-
Datei

Folgende Eingaben für "sFileName" sind ungültig und erzeugen eine Fehlermeldung:
• kein Wert
• Wert enthält Leerzeichen
• Wert ist ein Ordner (z. B. /home/cds-apps/ )
• Wert enthält aufeinanderfolgende "/" (z. B. /home/cds-apps///LogFile.csv )

u Vorgaben bei der Wahl des Eingangs sFileName beachten!

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden

233
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
sLastLogMsg STRING Zuletzt geschriebener Header als
STRING
udiDataSetPosi UDINT Nummer des zuletzt geschriebenen Da- 0...4294967295
tensatzes

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen
• ERR_NO_OBJECT Fehler: Datei nicht verfügbar
• ERR_LINUX_SYS_CALL Fehler: Fehler während der Ausführung eines Linux-Systembefehls
• ERR_ASYNC_TASK Fehler: Fehler während der Ausführung einer asynchronen Aufgabe
• ERR_UNDEFINED Fehler: Unbekannter Fehler
u ifm-Service-Center kontaktieren!

234
CR1140 CR1141

10.5.5 Parameter File

10.5.5.1 ReadParmSingleAsync

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB liest aus einer Textdatei einen einzelnen Datensatz vom Datentyp STRING(10), konvertiert
den Wert in den Datentyp UDINT und gibt diesen aus.
Die Datei darf nur diesen einen Datensatz enthalten. Der Wert in der Datei muss 10-stellig und
rechtsbündig gespeichert sein.
Beispiel:

Wert in Datei gespeichert als


1 000000001
123 000000123
12345567 0001234567
4294967295 4294967295

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. '/home/project/data.txt'
5)

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden

235
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
hFileHand RTS_IEC_ Dateibeschreibung des Laufzeitsystems • < 1: Fehler
HANDLE • sonst.: kein Fehler
udiReadParm UDINT gelesener Parameter aus der Textdatei 0...4294967295

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen
• ERR_NO_OBJECT Fehler: Datei nicht verfügbar
• ERR_INTERNAL Fehler: Interner Systemfehler; ifm-Service-Center kontaktieren!

236
CR1140 CR1141

10.5.5.2 WriteParmSingleAsync

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB schreibt einen einzelnen Parameter vom Typ UDINT in eine Textdatei.
Der Parameter wird in der Datei als 10-stelliger Wert und rechtsbündig gespeichert.
Beispiel:

Wert in Datei gespeichert als


1 0000000001
123 0000000123
1234567 0001234567
4294967295 4294967295

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. ' /home/project/data.csv '
5)
udiInData UDINT Parameter, der geschrieben werden soll 0...4294967295

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten

237
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
hFileHand RTS_IEC_ Dateibeschreibung des Laufzeitsystems • < 1: Fehler
HANDLE • sonst.: kein Fehler

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_NO_OBJECT Fehler: Datei nicht verfügbar
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen
• ERR_INTERNAL Fehler: Interner Systemfehler; ifm-Service-Center kontaktieren!

238
CR1140 CR1141

10.5.6 Support

10.5.6.1 Buffer_To_String

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB liest ein BYTE-Array, verkettet die Werte und gibt das Ergebnis in einem STRING-Array aus.
• Größe des BYTE-Arrays: 500 Bytes
• Größe des STRING-Arrays: 25 Strings
Wenn der FB in den Quelldaten das Steuerzeichen für Zeilenende/Zeilenumbruch findet, dann
schreibt er die nachfolgenden Daten in eine neue Array-Zeile.
Wenn der FB in den Quelldaten einen 0-Wert oder das Steuerzeichen für Dateiende findet, dann
beendet er die Konvertierung.

u BUFFER_TO_STRING ist eine Hilfsfunktion für andere Bausteine.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
abyInData ARRAY Pufferspeicher, der die zu lesenden Da- pro Byte:
[0...499] OF ten enthält 0x00 ... 0xFF
BYTE

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden

239
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
aTextLine ARRAY Array mit konvertierten Textzeilen
[0..24] OF
STRING
byNoOfTextLine BYTE Anzahl der gefundenen Zeilen im Array

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an

240
CR1140 CR1141

10.5.6.2 GetFileSizeAsync

Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Der FB ermittelt die Größe einer Datei.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


xExecute BOOL Ausführung des FB steuern • FALSE ➜ TRUE: FB einmalig ausführen
– Den FB so lange ausführen (xExecute
= TRUE), bis die Bausteinausführung
erfolgreich beendet ist (xDone =
TRUE).
– Wenn xDone = TRUE, dann den
Eingang xExecute auf FALSE
rücksetzen.
• FALSE:
– FB deaktivieren
– Alle Ausgänge zurücksetzen
sFileName STRING(25 Verzeichnispfad und Name der Datei z. B. '/home/project/data.txt'
5)

Folgende Eingaben für "sFileName" sind ungültig und erzeugen eine Fehlermeldung:
• kein Wert
• Wert enthält Leerzeichen
• Wert ist ein Ordner (z. B. /home/cds-apps/ )
• Wert enthält aufeinanderfolgende "/" (z. B. /home/cds-apps///LogFile.csv )

u Vorgaben bei der Wahl des Eingangs sFileName beachten!

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


xDone BOOL Status der Abarbeitung • FALSE: FB ist inaktiv oder wird
ausgeführt
• TRUE:
– FB wurde erfolgreich ausgeführt
– FB kann erneut aufgerufen werden
xError BOOL Fehleranzeige • FALSE: kein Fehler aufgetreten oder FB
wird noch ausgeführt
• TRUE:
– Fehler aufgetreten
– Aktion konnte nicht ausgeführt werden
– Diagnoseinformationen beachten

241
CR1140 CR1141

Parameter Datentyp Beschreibung Wertebereich


eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO
hFileHand RTS_IEC_ Dateibeschreibung des Laufzeitsystems • < 1: Fehler
HANDLE • sonst.: kein Fehler
xwFileSize XWORD aktuelle Dateigröße der Datei (in Bytes) 0…4294967295

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• STAT_BUSY Zustand: FB / Funktion wird ausgeführt
• STAT_DONE Zustand: FB / Funktion erfolgreich abgearbeitet; an den Ausgängen liegen gül-
tige Ergebnisse an
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen
• ERR_FILE_SYSTEM Fehler: Dateioperation fehlgeschlagen
• ERR_NO_OBJECT Fehler: Datei nicht verfügbar

242
CR1140 CR1141

10.5.7 Functions

10.5.7.1 ANY_TYPE_TO_STRING

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion konvertiert einen Datenwert in eine Zeichenkette.
Folgende Datentypen werden konvertiert: BYTE, WORD, DWORD, LWORD, USINT, UINT, UDINT,
ULINT, SINT, INT, DINT, LINT, REAL, LREAL, STRING.
Es kann definiert werden, ob ein Trennzeichen ergänzt werden soll und ob es vor oder nach dem
Datenwert erscheint.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


anyVar ANY CSV-Daten, die in eine Zeichenkette
konvertiert werden sollen.
stSepCfg stSEPARA- CSV-Trennzeichen-Konfiguration stSEPARATOR_CONFIG (STRUCT)
TOR_CON- (Ò / 208)
FIG

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


ANY_TY- STRING Zeichenkette mit den konvertierten
PE_TO_STRING CSV-Daten incl. Trennzeichen.
eDiagInfo eDIAG_IN- Diagnoseinformationen Liste unten (Ò Diagnose-Codes)
FO

Diagnose-Codes

• STAT_INACTIVE Zustand: FB / Funktion ist inaktiv


• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Abarbeitung wurde abgebrochen

243
CR1140 CR1141

10.5.7.2 ByteArray_To_String

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion liest ein Byte Array ein, verkettet die Werte und gibt sie als Zeichenkette aus.

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


abyInData ARRAY Pufferspeicher, der die zu lesenden Da- pro Byte:
[0...63] OF ten enthält 0x00 ... 0xFF
BYTE

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


ByteArray_To_String STRING Zurückgegebene Zeichenkette

244
CR1140 CR1141

10.5.7.3 DW_To_4Byte

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion konvertiert ein DWORD in ein Array mit 4 Bytes.
Beispiel:
DWORD: 0xFFEEDDCC
ARRAY[0..3] OF BYTE: 0xFF | 0xEE | 0xDD | 0xCC

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


dwInData DWORD Daten z. B. 0xFFDDEECC

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


DW_To_4Byte ARRAY Rückgabewert der Funktion z.B.
[0..3] OF Byte 0: CC
BYTE Byte 1: DD
Byte 2: EE
Byte 3: FF

245
CR1140 CR1141

10.5.7.4 ifmCONCAT

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion verbindet 2 Strings und gibt das Ergebnis in einem String aus.

Die String-Länge der verwendeten Strings beträgt mehr als die standardmäßigen 255 Zeichen
und ist definiert in der globalen Konstante ifmGCL.uiGenericLogSizeMax . ifmGCL (GVL)
(Ò / 255)

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


sStr1 STRING Zeichenkette 1 --
sStr2 STRING Zeichenkette 2 --

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


ifmCONCAT STRING Zeichenkette sStr1 + sStr2 --

246
CR1140 CR1141

10.5.7.5 ifmFIND

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion gibt die Position des Strings sStr2 im String sStr1 zurück. Die Suche startet an
uiPosition.

Die String-Länge der verwendeten Strings beträgt mehr als die standardmäßigen 255 Zeichen
und ist definiert in der globalen Konstante ifmGCL.uiGenericLogSizeMax . ifmGCL (GVL)
(Ò / 255)

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


sStr1 STRING Zeichenkette 1 --
sStr2 STRING Zeichenkette 2 --
uiPosition UINT Startposition für das Suchen in der Zei- 0: 1. Zeichen
chenkette 1

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


ifmFIND UINT Position von sStr2 in sStr1 --

247
CR1140 CR1141

10.5.7.6 ifmMID

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion liest einen Teilstring eines anderen Strings aus.

Die String-Länge der verwendeten Strings beträgt mehr als die standardmäßigen 255 Zeichen
und ist definiert in der globalen Konstante ifmGCL.uiGenericLogSizeMax . ifmGCL (GVL)
(Ò / 255)

Beispiel:

uiPosition 0 1 2 3 4 5
sStr a b c d e f

Eingänge:
• sStr = "abcdef"
• uiPosition = 1
• uiLength = 3
Ausgang:
• ifmMTD = "bcd"

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


sStr1 STRING Zeichenkette --
uiPosition UINT Startposition für das Suchen in der Zei- 0: 1. Zeichen
chenkette 1
uiLength UINT Anzahl der Zeichen --

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


ifmMID STRING Teilstring mit der Länge uiLength ab --
Startposition uiPosition.

248
CR1140 CR1141

10.5.7.7 Pack2Byte_To_Word

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion konvertiert ein Array aus 2 Bytes zu einem Wort.
Beispiel:
Eingang:
• abyInData[0] = 0x00
• abyInData[1] = 0xAA
Ausgang:
• Pack2Byte_To_Word = 0xAA00

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


abyInData ARRAY Array mit Eingangsdaten pro Byte:
[0...1] OF 0x00 ... 0xFF
BYTE

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


Pack2Byte_To_Word WORD Rückgabewert der Funktion 0x0000 ... 0xFFFF

249
CR1140 CR1141

10.5.7.8 Pack4Byte_To_DW

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion konvertiert ein Array aus 4 Bytes in ein Doppelwort.
Beispiel:
Eingang:
• abyInData[0] = 0x00
• abyInData[1] = 0x11
• abyInData[2] = 0xAA
• abyInData[3] = 0xFF
Ausgang:
• Pack4Byte = 0xFFAA1100

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


abyInData ARRAY Array mit Eingangsdaten pro Byte:
[0...3] OF 0x00 ... 0xFF
BYTE

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


Pack4Byte_To_DW DWORD Rückgabewert der Funktion 0x00000000 ... 0xFFFFFFFF

250
CR1140 CR1141

10.5.7.9 RTC_TO_STRING

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion liest die geräteinterne Echtzeituhr (RTC) und gibt die Laufzeit in Sekunden seit dem
letzten Systemstart als String aus.

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


RTC_To_String STRING Aktuelle Zeit im Format z.B. 02.08.2016 08:59:03
DD.MM.YYYY HH:MM:SS

251
CR1140 CR1141

10.5.7.10 VALIDATE_FILE_NAME

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Diese Funktion validiert die Zeichen (ASCII-Codes) im angegebenen Dateipfad/Dateinamen.
Die Funktion gibt FALSE zurück, wenn alle Zeichen im angegebenen Dateipfad/Dateinamen gültig
sind.
Die Funktion gibt TRUE zurück, wenn ungültige Zeichen im angegebenen Dateipfad/Dateinamen
enthalten sind.

Gültige Zeichen:
• A bis Z
• a bis z
• 0 bis 9
• Schrägstrich (/)
• Minus (-)
• Punkt (.)
• Unterstrich (_)

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


sFileName STRING(255) Verzeichnispfad und Name der Datei z. B. '/home/project/data.txt'

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


VALIDATE_FILE_NA- BOOL Gültigkeit des Dateipfades/Datein- • FALSE: Gültiger Dateiname
ME amens • TRUE: Ungültiger Dateiname

252
CR1140 CR1141

10.5.7.11 Word_To_2Byte

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion konvertiert ein WORD in ein Array mit 2 Bytes.
Beispiel:
Eingang:
• wInData = 0xFFEE
Ausgang:
• Word_To_2Byte[0] = 0xEE
• Word_To_2Byte[1] = 0xFF

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


wInData WORD Daten 0x0000...0xFFFF

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


Word_To_2Byte ARRAY Rückgabewert der Funktion Pro Byte:
[0..1] OF 0x00 ... 0xFF
BYTE

10.5.7.12 _8Byte_To_CSV

Typ: Funktion (FC)


Verhaltensmodell: --
Bibliothek: ifmFileUtil_ecomatDisplay.library

Symbol:

Beschreibung
Die Funktion konvertiert die Daten eines Arrays aus 8 Byte in einen CSV-String und gibt diesen aus.
Ein- und zweistellige Zahlen werden dabei mit führenden Nullen ergänzt. Die einzelnen Werte sind
durch ein Komma getrennt. Das Zeilenende ist durch ein Komma ( , ) gekennzeichnet.
Beispiel:
Eingang:
• abyInData[0] = 0x00
• abyInData[1] = 0x01

253
CR1140 CR1141

• abyInData[2] = 0x63
• abyInData[3] = 0x64
• abyInData[4] = 0xA0
• abyInData[5] = 0xEE
• abyInData[6] = 0xFF
• abyInData[7] = 0x11
Ausgang:
• 8byte_To_CSV = 000,001,099,100,160,238,255,017,

Eingangsparameter

Parameter Datentyp Beschreibung Wertebereich


abyInData ARRAY Array mit Eingangsdaten pro Byte:
[0...7] OF 0x00 ... 0xFF
BYTE

Ausgangsparameter

Parameter Datentyp Beschreibung Wertebereich


_8Byte_To_CSV STRING CSV-String; einzelne Bytes sind durch z.B. 002,004,008,016,032,064,128,255
Komma getrennt

254
CR1140 CR1141

10.5.8 GlobalConstants

10.5.8.1 ifmGCL (GVL)

Name Beschreibung Datentyp Wert


uiHeaderSize Länge des CSV-Datei-Headers (1 Byte ist für den UINT 53
Zeilenumbruch reserviert)
uiLogTextSize Länge des CSV-Datei-Texts (1 Byte ist für den Zei- UINT 53
lenumbruch reserviert)
sAsyncTaskName Async task name für die ifmFileUtil Bibliothek STRING 'Task_ifmFileUtil'
udiTaskSleepTime Async task sleep time in ms UDINT 20
udiTaskTimeout Async task time out in ms UDINT 1000
uiGenericLogSizeMax Länge der CSV-Daten (1 Zeile) inclusive Zeitstem- UINT 1024
pel und New Line-Zeichen in Bytes.
Insgesamt sind 21 Bytes reserviert:
20 Bytes für den Zeitstempel am Zeilenanfang;
1 Byte für den Zeilenumbruch am Zeilenende;

255
CR1140 CR1141

10.6 Bibliothek ifmRawCAN.library


Die Bibliothek enthält POUs und Datenstrukturen für die Programmierung der CAN-Layer-2-Ebene der
CAN-Schnittstellen des Geräts unter CODESYS.

10.6.1 CAN_Enable

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: ENABLE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB aktiviert die CAN-Layer2-Funktionen einer CAN-Schnittstelle mit einer bestimmten
Übertragungsrate. Gleichzeitig schreibt der FB Informationen über den aktuellen Zustand der CAN-
Schnittstelle in die globale Variable CAN-State.
Änderungen der Übertragungsrate oder der CAN-Schnittstelle werden sofort übernommen. Dabei
werden alle existierenden Empfangs- und Sende-Pufferspeicher gelöscht.

Der FB hat keinen Einfluss auf einen CANopen Manager/ein CANopen Device an der
gewählten CAN-Schnittstelle. Der FB kann in diese Fall die Übertragungsrate der CAN-
Schnittstelle nicht ändern.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xEnable BOOL Aktivität des FB steuern FALSE FB deaktivieren
TRUE FB aktivieren
eChannel CAN_CHANNEL Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
eBaudrate CAN_BAUDRATE Baudrate des CAN-Kanals CAN_BAUDRATE (ENUM)
(Ò / 194)

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

256
CR1140 CR1141

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Aus-
gänge liegen gültige Ergebnisse an.
• ERR_BUS_OFF Fehler: CAN-Schnittstelle ist im Zustand "BUS OFF"
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_BAUDRATE_INVALID Fehler: Gewünschte Baudrate kann nicht eingestellt werden, da sie ungültig ist
_OR_ALREADY_SET oder schon eine andere Baudrate definiert wurde.
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

257
CR1140 CR1141

10.6.2 CAN_Recover

Baustein-Typ: Funktionsbaustein (FB)


Verhaltensmodell: EXECUTE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB steuert die Verarbeitung eines Ausfalls des CAN-Kanals.
Ein Aufruf des FBs löst folgende Aktionen aus:
• Bei einem Ausfall des CAN-Kanals wird die CAN-Schnittstelle zurückgesetzt und neu gestartet.
• Alle Pufferspeicher werden geleert.

Wenn der CAN-Kanal immer noch ausfällt, nachdem die maximale Anzahl an
Wiederherstellungsversuchen überschritten ist, bleibt der CAN-Bus im Fehlerzustand.
u FB erneut aufrufen, um die Wiederherstellungsfunktion noch einmal auszuführen.

Eingangsparameter

Parameter Datentyp Bedeutung Mögliche Werte


xExecute BOOL Ausführung des FB steuern • FALSE => TRUE: FB wird einmal
ausgeführt
• Sonst: keine Auswirkungen auf FB-
Abarbeitung
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL

usiNumberRetry USINT max. Anzahl an Wiederholungsversu- z.B. 4


chen
tInhibitTime TIME Verzögerung, bis nach der Erkennung z.B #2ms
eines CAN-Bus-Ausfalls die CAN-
Schnittstelle wieder gestartet wird

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist • FALSE: FB wird ausgeführt
• TRUE:
FB erfolgreich ausgeführt
FB kann erneut aufgerufen
werden

258
CR1140 CR1141

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- • FALSE: kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
• TRUE: Fehler aufgetreten
Aktion konnte nicht ausgeführt
werden
Diagnoseinformationen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
usiRetryCount USINT Zähler für bereits absolvierte Wiederholungsversu- Ò
che seit der letzten Aktivierung des FB

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Aus-
gänge liegen gültige Ergebnisse an.
• ERR_INACTIVE_INTERFACE Fehler: Gewählter CAN-Kanal ist deaktiviert.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

259
CR1140 CR1141

10.6.3 CAN_RemoteRequest
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: EXECUTE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB sendet die Anforderung für eine CAN-Remote-Nachricht in ein CAN-Netzwerk. Die Daten der
Antwortnachricht gibt der FB in ein Array aus. Der FB unterstützt Standard- und Extended-Frames.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xExecute BOOL Ausführung des FB steuern FALSE => TRUE FB wird einmal
ausgeführt
sonst. keine Auswir-
kungen auf FB-
Abarbeitung
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM)
CHANNEL (Ò / 194)
udiID UDINT Identifier der CAN-Nachricht • für Standard Frame (11 Bit
Identifier):
0 ... 2047
• für Extended Frame (29 Bit
Identifier):
0 ... 536.870.911
xExtended BOOL gewünschter Frame-Typ: FALSE Standard Fra-
- Standard Frame (11 Bit-Identifier) me*
- Extended-Frame (29 Bit-Identifier)
TRUE Extended Fra-
me
usiSetDLC UINT Anzahl der Daten-Bytes in der CAN- 0 0 Bytes*
Nachricht (DLC = Data Length Count) ... ...
8 8 Bytes
* ... voreingestellter Wert

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xDone BOOL Anzeige, ob FB-Ausführung erfolgreich beendet ist FALSE FB wird ausgeführt
TRUE • FB erfolgreich
ausgeführt
• FB kann erneut
aufgerufen werden

260
CR1140 CR1141

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
aData ARRAY Array für die Speicherung der empfangenen Daten
[0...7] OF USINT
usiDLC UINT Anzahl der Daten-Bytes in der CAN-Nachricht (DLC 0 0 Bytes*
= Data Length Count) ... ...
8 8 Bytes

Diagnose-Daten:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• STAT_BUSY Zustand: FB/Funktion wird gerade ausgeführt.
• ERR_BUFFER_OVERFLOW Fehler: Übertragungspuffer voll; CAN-Nachricht kann Pufferspeicher nicht beschreiben
und wird nicht übertragen
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von Ein-
gangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!
• ERR_INACTIVE_INTERFACE Fehler: Gewählter CAN-Kanal ist deaktiviert.

261
CR1140 CR1141

10.6.4 CAN_RemoteResponse
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: ENABLE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB antwortet als Reaktion auf eine Anforderung einer CAN-Remote-Nachricht und sendet die
angeforderten Daten in ein CAN-Netzwerk.
So lange der FB aktiviert ist, antwortet er auf jede an ihn gerichtete RemoteRequest-Nachricht
(Automatisches Antworten).
Mehrere FB-Aufrufe während eines SPS-Zyklus sind möglich.

10.6.4.1 Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xEnable BOOL Aktivität des FB steuern FALSE FB deaktivieren
TRUE FB aktivieren
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL
udiID UDINT Identifier der CAN-Nachricht • für Standard Frame (11 Bit Identifier):
0 ... 2047
• für Extended Frame (29 Bit Identifier):
0 ... 536.870.911
xExtended BOOL gewünschter Frame-Typ: FALSE Standard Frame*
- Standard Frame (11 Bit-Identifier)
- Extended-Frame (29 Bit-Identifier) TRUE Extended Frame

usiDLC UINT Anzahl der Daten-Bytes in der CAN- 0 0 Bytes*


Nachricht (DLC = Data Length Count) ... ...
8 8 Bytes
* ... voreingestellter Wert

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatione
n beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

262
CR1140 CR1141

Parameter Datentyp Beschreibung Mögliche Werte


uiRTR_Cnt UINT Anzahl der empfangenen Remote-Anforderungen
nach dem letzten Aufruf des FB

Diagnose-Code:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgän-
ge liegen gültige Ergebnisse an.
• ERR_INACTIVE_INTERFACE Fehler: Gewählter CAN-Kanal ist deaktiviert.
• ERR_BUFFER_OVERFLOW Fehler: Übertragungspuffer voll; CAN-Nachricht kann Pufferspeicher nicht be-
schreiben und wird nicht übertragen
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von
Eingangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

263
CR1140 CR1141

10.6.5 CAN_Rx
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: ENABLE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB dient dem Empfang von CAN-Nachrichten mit einem definierten Identifier.
Der FB empfängt zwischen 2 FB-Aufrufen alle CAN-Nachrichten mit dem angegebenen Identifier und
speichert sie in einem FIFO-Pufferspeicher. Die Anzahl der empfangenen CAN-Nachrichten wird
angezeigt. Am Ausgang wird immer die zuerst empfangene CAN-Nachricht ausgegeben.
Falls mehrere CAN-Nachrichten im FIFO-Pufferspeicher sind, kann der FB solange aufgerufen
werden, bis der Ausgang uiAvailable =0 ist und alle CAN-Nachrichten aus dem FIFO-
Pufferspeicher ausgelesen sind.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xEnable BOOL Aktivität des FB steuern FALSE FB deaktivieren
TRUE FB aktivieren
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM)
CHANNEL (Ò / 194)
xExtended BOOL gewünschter Frame-Typ: FALSE Standard Fra-
- Standard Frame (11 Bit-Identifier) me*
- Extended-Frame (29 Bit-Identifier)
TRUE Extended Fra-
me
udiID UDINT Identifier der CAN-Nachricht • für Standard Frame (11 Bit
Identifier):
0 ... 2047
• für Extended Frame (29 Bit
Identifier):
0 ... 536.870.911

Ausgangsparameter

Parame-
Datentyp Beschreibung Mögliche Werte
ter
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler aufge- FALSE kein Fehler aufgetreten
treten ist oder der FB wird noch
ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatione
n beachten

264
CR1140 CR1141

Parame-
Datentyp Beschreibung Mögliche Werte
ter
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
aData ARRAY Array für die Speicherung der empfangenen Daten
[0...7] OF
USINT
usiDLC UINT Anzahl der Daten-Bytes in der CAN-Nachricht (DLC = 0 0 Bytes*
Data Length Count) ... ...
8 8 Bytes
uiAvailab- UINT • Anzahl der empfangenen CAN-Nachrichten seit 0 keine CAN-Nachricht
le dem letzten FB-Aufruf empfangen zwischen 2
• aktuelle CAN-Nachricht wird mitgezählt FB-Aufrufen
n n CAN-Nachrichten emp-
fangen

Fehler-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge lie-
gen gültige Ergebnisse an.
• ERR_INACTIVE_INTERFACE Fehler: Gewählter CAN-Kanal ist deaktiviert.
• ERR_BUFFER_OVERFLOW Fehler: Übertragungspuffer voll; CAN-Nachricht kann Pufferspeicher nicht beschreiben
und wird nicht übertragen
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von Eingangs-
parametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

265
CR1140 CR1141

10.6.6 CAN_RxMask
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: ENABLE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB empfängt CAN-Nachrichten eines nicht zusammenhängenden Bereichs. Der Bereich wird
definiert über ein Bitmuster und eine Bitmaske.
Für die Bitmaske gelten folgende Regeln:
0: Das äquivalente Bit des CAN-Identifiers kann 0 oder 1 sein
1: Das äquivalente Bit des CAN-Identifiers muss den gleichen Wert haben wie das Bit im Bitmuster

Beispiel:
Muster: 000 0010 0000
Maske: 000 1111 1111
Ergebnis: xxx 0010 0000
Alle CAN-Nachrichten mit einem Identifier, dessen niederwertigste 8 Bit den Wert "0010 0000"
besitzen, werden empfangen.
z.B. 110 0010 0000 000 0010 0000, 001 0010 0000

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xEnable BOOL Aktivität des FB steuern FALSE FB deaktivieren
TRUE FB aktivieren
eChannel CAN_CHANNEL Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
xExtended BOOL gewünschter Frame-Typ: FALSE Standard Frame*
- Standard Frame (11 Bit-Identifier)
- Extended-Frame (29 Bit-Identifier) TRUE Extended Frame

udiIDSet UDINT Voreingestellter Bitmuster für die z.B. 000 0010 0000
Maskierung des Identifiers der CAN-
Nachricht
udiIDMask UDINT Bitmuster des gewünschten Bereichs z.B. 000 1111 1111
1 ... Bit ist relevant für Auswahl
0 ... Bit nicht relevant für Auswahl

* ... voreingestellter Wert

266
CR1140 CR1141

Ausgangsparameter

Parame-
Datentyp Beschreibung Mögliche Werte
ter
xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler aufgetreten FALSE kein Fehler auf-
ist getreten oder
der FB wird
noch ausgeführt
TRUE • Fehler
aufgetreten
• Aktion konnte
nicht
ausgeführt
werden
• Diagnoseinfo
rmationen
beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
aData ARRAY Array für die Speicherung der empfangenen Daten
[0...7] OF
USINT
usiDLC UINT Anzahl der Daten-Bytes in der CAN-Nachricht (DLC = Da- 0 0 Bytes*
ta Length Count) ... ...
8 8 Bytes
uiAvailab- UINT • Anzahl der empfangenen CAN-Nachrichten seit dem 0 keine CAN-
le letzten FB-Aufruf Nachricht emp-
• aktuelle CAN-Nachricht wird mitgezählt fangen zwi-
schen 2 FB-Auf-
rufen
n n CAN-Nach-
richten empfan-
gen
udiID UDINT Identifier der CAN-Nachricht • für Standard Frame (11 Bit
Identifier):
0 ... 2047
• für Extended Frame (29 Bit
Identifier):
0 ... 536.870.911

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge liegen
gültige Ergebnisse an.
• ERR_INACTIVE_INTERFAC Fehler: Gewählter CAN-Kanal ist deaktiviert.
E
• ERR_BUFFER_OVERFLOW Fehler: Übertragungspuffer voll; CAN-Nachricht kann Pufferspeicher nicht beschreiben und
wird nicht übertragen
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von Eingangspa-
rametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

267
CR1140 CR1141

10.6.7 CAN_RxRange
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: ENABLE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB empfängt CAN-Nachrichten eines zusammenhängenden Bereichs. Der Bereich wird definiert
durch eine Ober- und eine Untergrenze.
Für die Definition dieses Bereichs gelten folgende Regeln:
Unter- und Obergrenze:
Standard Frames: 0 ... 2047 (11-Bit Identifier)
Extended Frames: 0 ... 536 870 911 (29-Bit Identifier)
Der Wert für die Untergrenze muss <= dem Wert der Obergrenze sein.
Beispiel:
Untergrenze: 000 0000 0010
Obergrenze: 000 0000 1000
Ergebnis: Alle CAN-Nachrichten mit eine Identifier, dessen niederwertigste 4 Bit einen Wert zwischen
"0010" und "1000" besitzen, werden empfangen.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xEnable BOOL Aktivität des FB steuern FALSE FB deaktivie-
ren
TRUE FB aktivieren
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM)
CHANNEL (Ò / 194)
xExtended BOOL gewünschter Frame-Typ: FALSE Standard Fra-
- Standard Frame (11 Bit-Identifier) me*
- Extended-Frame (29 Bit-Identifier)
TRUE Extended Fra-
me
udiIDStart UDINT Anfang des gewünschten Bereichs z.B. 000 0000 0010
udiIDStop UDINT Ende des gewünschten Bereichs z.B. 000 0000 1000
* ... voreingestellter Wert

Ausgangsparameter

Parame-
Datentyp Beschreibung Mögliche Werte
ter
xError BOOL Anzeige, ob bei der FB-Ausführung ein Feh- FALSE kein Fehler aufgetreten oder der
ler aufgetreten ist FB wird noch ausgeführt

268
CR1140 CR1141

Parame-
Datentyp Beschreibung Mögliche Werte
ter
xError BOOL Anzeige, ob bei der FB-Ausführung ein Feh- TRUE • Fehler aufgetreten
ler aufgetreten ist • Aktion konnte nicht ausgeführt
werden
• Diagnoseinformationen
beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
aData ARRAY Array für die Speicherung der empfangenen
[0...7] OF Daten
USINT
usiDLC UINT Anzahl der Daten-Bytes in der CAN-Nach- 0 0 Bytes*
richt (DLC = Data Length Count) ... ...
8 8 Bytes
uiAvailab- UINT • Anzahl der empfangenen CAN- 0 keine CAN-Nachricht empfangen
le Nachrichten seit dem letzten FB-Aufruf zwischen 2 FB-Aufrufen
• aktuelle CAN-Nachricht wird mitgezählt n n CAN-Nachrichten empfangen
udiID UDINT Identifier der CAN-Nachricht • für Standard Frame (11 Bit Identifier):
0 ... 2047
• für Extended Frame (29 Bit Identifier):
0 ... 536.870.911

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INACTIVE_INTERFACE Fehler: Gewählter CAN-Kanal ist deaktiviert.
• ERR_BUFFER_OVERFLOW Fehler: Übertragungspuffer voll; CAN-Nachricht kann Pufferspeicher nicht beschrei-
ben und wird nicht übertragen
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von Ein-
gangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

269
CR1140 CR1141

10.6.8 CAN_RxRangeExt
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: ENABLE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB empfängt CAN-Nachrichten eines zusammenhängenden Bereichs mit Extended Identifier (29
Bit). Der Bereich wird definiert durch eine Ober- und eine Untergrenze.
Für die Definition dieses Bereichs gelten folgende Regeln:
Unter- und Obergrenze: 0 ... 536 870 911
Der Wert für die Untergrenze muss <= dem Wert der Obergrenze sein.
Beispiel:
Untergrenze: 0 0000 0000 0000 0000 0000 0000 0010
Obergrenze: 0 0000 0000 0000 0000 0000 0000 1000
Ergebnis: Alle CAN-Nachrichten mit eine Identifier, dessen niederwertigste 4 Bit einen Wert zwischen
"0010" und "1000" besitzen, werden empfangen.

Generelles Verhalten des FB: CAN_Rx (Ò / 264)


FB für Standard Identifier (11 Bit): CAN_RxRange (Ò / 268)

Der FB besitzt folgendes Verhalten nach Umstellung der Empfangs-ID während der Laufzeit der
Applikation:
Der FB-Speicher wird nicht vollständig zurückgesetzt. Die Ausgänge aData und usiDLC
behalten die letzten Werte. Der Zähler uiAvailable wird auf 0 gesetzt.
u Den FB nur mit statischen (im Betrieb unveränderten) ID-Konfigurationen an den Eingängen
verwenden.
u Den Wert von uiAvailable <> 0 prüfen, bevor die Daten verwendet werden.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xEnable BOOL Aktivität des FB steuern • FALSE: FB deaktivieren
• TRUE: FB aktivieren
eChannel CAN_CHANNEL Identifier der CAN-Schnittstelle Ò CAN_CHANNEL (ENUM)
udiIDStart UDINT Anfang des gewünschten Bereichs z.B. 0 0000 0000 0000 0000
0000 0000 0010
udiIDStop UDINT Ende des gewünschten Bereichs z.B. 0 0000 0000 0000 0000
0000 0000 1000

270
CR1140 CR1141

Ausgangsparameter

Parame-
Datentyp Beschreibung Mögliche Werte
ter
xError BOOL Anzeige, ob bei der FB-Ausführung ein Feh- FALSE kein Fehler aufgetreten oder der
ler aufgetreten ist FB wird noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte nicht ausgeführt
werden
• Diagnoseinformationen
beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
aData ARRAY Array für die Speicherung der empfangenen
[0...7] OF Daten
USINT
usiDLC UINT Anzahl der Daten-Bytes in der CAN-Nach- 0 0 Bytes*
richt (DLC = Data Length Count) ... ...
8 8 Bytes
uiAvailab- UINT • Anzahl der empfangenen CAN- 0 keine CAN-Nachricht empfangen
le Nachrichten seit dem letzten FB-Aufruf zwischen 2 FB-Aufrufen
• aktuelle CAN-Nachricht wird mitgezählt n n CAN-Nachrichten empfangen
udiID UDINT Identifier der CAN-Nachricht • für Extended Frame (29 Bit Identifier):
0 ... 536.870.911

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INACTIVE_INTERFACE Fehler: Gewählter CAN-Kanal ist deaktiviert.
• ERR_BUFFER_OVERFLOW Fehler: Übertragungspuffer voll; CAN-Nachricht kann Pufferspeicher nicht beschrei-
ben und wird nicht übertragen
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von Ein-
gangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

271
CR1140 CR1141

10.6.9 CAN_Status
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: ENABLE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB liest den aktuellen Status des CAN-Netzwerks und gibt folgende Status- und
DiagnoseInformationen aus:
• Baudrate
• Zustand des CAN-Busses (Zustandsdiagramm)
• Zähler Rx-Fehler
• Zähler Tx-Fehler
• Warnung Rx-Fehler
• Warnung Tx-Fehler
• Zähler empfangene CAN-Nachrichten
• Buslast

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xEnable BOOL Aktivität des FB steuern FALSE FB deaktivieren
TRUE FB aktivieren
eChannel CAN_CHANNEL Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein FALSE kein Fehler aufgetre-
Fehler aufgetreten ist ten oder der FB wird
noch ausgeführt
TRUE • Fehler aufgetreten
• Aktion konnte
nicht ausgeführt
werden
• Diagnoseinformati
onen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)
eBaudrate CAN_BAUDRATE Baudrate des CAN-Kanals CAN_BAUDRATE (ENUM) (Ò / 194)

272
CR1140 CR1141

Parameter Datentyp Beschreibung Mögliche Werte


eBusState BUS_ aktueller Zustand der CAN-Schnittstel- BUS_STATE (ENUM) (Ò / 276)
STATE le
uiErrorCntRx UINT Fehlerzähler Rx-Nachrichten 0...65535
uiErrorCntTx UINT Fehlerzähler Tx-Nachrichten 0...65535
xWarningRx BOOL Rx-Fehler: Schwelle für Warnmeldung FALSE keine Warnung
überschritten (uiErrorCntRx > 96)
TRUE Warnung
xWarningTx BOOL Tx-Fehler: Schwelle für Warnmeldung FALSE keine Warnung
überschritten (uiErrorCntTx > 96)
TRUE Warnung
udiCountRx UDINT Anzahl der erkannten CAN-Nachrich- 0...4294967295
ten (unabhängig von konfigurierten Rx-
Nachrichten)
usiBusLoad USINT Buslast (in Prozent) 0...100

Diagnose-Codes:

• ERR_INTERNAL Fehler: Interner Systemfehler


ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

273
CR1140 CR1141

10.6.10 CAN_Tx
Baustein-Typ: Funktionsbaustein (FB)
Verhaltensmodell: ENABLE
Bibliothek: ifmRawCAN.library
Symbol in CODESYS:

Beschreibung
Der FB dient dem asynchronen Senden von CAN-Nachrichten. Der FB schreibt die konfigurierte CAN-
Nachricht in den Pufferspeicher des gewählten CAN-Kanals. Zu welchem Zeitpunkt die CAN-Nachricht
übertragen wird, hängt vom Zustand des CAN-Kanals und des Pufferspeichers ab. Der FB und der
SPS-Zyklus haben darauf keinen Einfluss.

Der FB kann mehrmals während eines SPS-Zyklus aufgerufen werden.


Der wiederholte Aufruf des FB während eines SPS-Zyklus löst eine wiederholte Übertragung
der CAN-Nachricht innerhalb eines SPS-Zyklus aus.

Eingangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xEnable BOOL Aktivität des FB steuern FALSE FB deaktivieren
TRUE FB aktivieren
eChannel CAN_ Identifier der CAN-Schnittstelle CAN_CHANNEL (ENUM) (Ò / 194)
CHANNEL
udiID UDINT Identifier der CAN-Nachricht • für Standard Frame (11 Bit Identifier):
0 ... 2047
• für Extended Frame (29 Bit Identifier):
0 ... 536.870.911
xExtended BOOL gewünschter Frame-Typ: FALSE Standard Frame*
- Standard Frame (11 Bit-Identifier)
- Extended-Frame (29 Bit-Identifier) TRUE Extended Frame

usiDLC UINT Anzahl der Daten-Bytes in der CAN- 0 0 Bytes*


Nachricht (DLC = Data Length Count) ... ...
8 8 Bytes
aData ARRAY Array mit den zu sendenden Daten
[0...7] OF USINT

* ... voreingestellter Wert

Ausgangsparameter

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- FALSE kein Fehler aufgetreten
getreten ist oder der FB wird noch
ausgeführt

274
CR1140 CR1141

Parameter Datentyp Beschreibung Mögliche Werte


xError BOOL Anzeige, ob bei der FB-Ausführung ein Fehler auf- TRUE • Fehler aufgetreten
getreten ist • Aktion konnte nicht
ausgeführt werden
• Diagnoseinformatio
nen beachten
eDiagInfo DIAG_INFO Diagnoseinformationen Ò Liste unten (Diagnose-Codes)

Diagnose-Codes:

• STAT_INACTIVE Zustand: FB/Funktion ist inaktiv.


• STAT_DONE Zustand: FB/Funktion wurde erfolgreich ausgeführt und beendet. An den Ausgänge
liegen gültige Ergebnisse an.
• ERR_INACTIVE_INTERFACE Fehler: Gewählter CAN-Kanal ist deaktiviert.
• ERR_BUFFER_OVERFLOW Fehler: Übertragungspuffer voll; CAN-Nachricht kann Pufferspeicher nicht beschrei-
ben und wird nicht übertragen
• ERR_INVALID_VALUE Fehler: mind. 1 ungültiger Eingangsparameter oder ungültige Kombination von Ein-
gangsparametern; Funktionsaufruf wurde abgebrochen.
• ERR_INTERNAL Fehler: Interner Systemfehler
ifm-Service-Center kontaktieren!
• ERR_UNDEFINED Fehler: Unbekannter Fehler
ifm-Service-Center kontaktieren!

275
CR1140 CR1141

10.6.11 BUS_STATE (ENUM)


Name Beschreibung Mögliche Werte Datentyp Wert
BUS_STATE Zustand der CAN- UNDEFINED Zustand nicht verfügbar oder nicht INT 0
Schnittstelle konfiguriert
ERROR_ACTIVE Fehlerzähler Tx und Rx <= 96 INT 1
ERROR_PASSIVE Fehlerzähler Tx oder Rx > 127 und INT 2
Fehlerzähler Tx oder Rx < 255
ERROR_WARNING Fehlerzähler Rx oder Tx > 96 und Feh- INT 3
lerzähler Rx oder Tx <= 127
BUS_OFF Fehlerzähler Tx = 255 INT 65535

10.6.12 CAN_Info (GVL)


Name Beschreibung Datentyp Mögliche Werte
CAN_State Zustand der CAN-Kanäle ARRAY[0...3] OF pro Array-Feld: CAN_BUS_STATE
CAN_BUS_STATE (STRUCT) (Ò / 276)
Logger_Enabled zeigt, ob Log des CAN-Ka- ARRAY[0...3] OF BOOL pro Array-Feld:
nals aktiviert ist
FALSE deaktiviert
TRUE aktiviert

10.6.13 CAN_BUS_STATE (STRUCT)


Name Datentyp Beschreibung Mögliche Werte
uiBaudrate UINT Baudrate der CAN-Schnittstelle CAN_BAUDRATE (ENUM)
eBusState BUS_STATE aktueller Zustand der CAN-Schnittstelle BUS_STATE (ENUM) (Ò / 276)
uiErrorCntRx UINT Fehlerzähler Rx-Nachrichten 0...65535
uiErrorCntTx UINT Fehlerzähler Tx-Nachrichten 0...65535
xWarningRx BOOL Rx-Fehler: Schwelle für Warnmeldung über- FALSE keine Warnung
schritten (uiErrorCntRx > 96)
TRUE Warnung
xWarningTx BOOL Tx-Fehler: Schwelle für Warnmeldung überschrit- FALSE keine Warnung
ten (uiErrorCntTx > 96)
TRUE Warnung
udErrorCntTx UDINT Anzahl der erkannten CAN-Nachrichten (unab- 0...4294967295
hängig von konfigurierten Rx-Nachrichten)

276
CR1140 CR1141

11 Anhang

11.1 Adressvergabe in Ethernet-Netzwerken

Im Ethernet-Netzwerk MUSS jede IP-Adresse einmalig sein.


Folgende IP-Adressen sind für netzinterne Zwecke reserviert und deshalb als Teilnehmer-
Adresse nicht zulässig: nnn.nnn.nnn.0 | nnn.nnn.nnn.255.
Nur Netzwerkteilnehmer, deren Subnetzmaske identisch ist und deren IP-Adressen im Rahmen
der Subnetzmaske identisch sind, können miteinander kommunizieren.
Regel:
Bei Teil-Subnetzmaske = 255 müssen die Teil-IP-Adressen identisch sein.
Bei Teil-Subnetzmaske = 0 müssen sich die Teil-IP-Adressen unterscheiden
Wenn Subnetzmaske = 255.255.255.0, dann sind 254 miteinander kommunizierende
Teilnehmer im Netz möglich.
Wenn Subnetzmaske = 255.255.0.0, dann sind 256x254 = 65 024 miteinander
kommunizierende Teilnehmer im Netz möglich.
Im selben physikalischen Netzwerk sind unterschiedliche Subnetzmasken der Teilnehmer
zulässig. Sie bilden unterschiedliche Teilnehmergruppen, die nicht mit Teilnehmergruppen mit
anderen Subnetzmasken kommunizieren können.

u Im Zweifelsfall oder bei Problemen fragen Sie bitte Ihren System-Administrator.

Beispiele:

Teilnehmer A Teilnehmer A Teilnehmer B Teilnehmer B Kommunikation der Teilnehmer


IP-Adresse Subnetzmaske IP-Adresse Subnetzmaske möglich?
192.168.82.247 255.255.255.0 192.168.82.10 255.255.255.0 ja, 254 Teilnehmer möglich
192.168.82.247 255.255.255.0 192.168.82.247 255.255.255.0 nein (gleiche IP-Adresse)
192.168.82.247 255.255.255.0 192.168.82.10 255.255.0.0 nein (unterschiedliche Subnetzmaske)
192.168.82.247 255.255.255.0 192.168.116.10 255.255.255.0 nein (unterschiedlicher IP-Adressbe-
reich:
82 vs. 116)
192.168.222.213 255.255.0.0 192.168.222.123 255.255.0.0 ja, 65 024 Teilnehmer möglich
192.168.111.213 255.255.0.0 192.168.222.123 255.255.0.0 ja, 65 024 Teilnehmer möglich
192.168.82.247 255.255.255.0 192.168.82.0 255.255.255.0 nein; gesamtes Netz gestört, weil IP-
Adresse xxx.xxx.xxx.0 nicht zulässig

277

Das könnte Ihnen auch gefallen