SPS- Programmierung mit ST

nach IEC 61131 mit CODESYS, e!COCKPIT und mit Hinweisen zu STEP 7 im TIA Portal
  

Kurzbeschreibung der Projekte, Lösungsvorlagen
  


Hinweise:
  
Auf dieser Seite finden Sie die Lösungen der im Buch beschriebenen Aufgaben und Übungen sowie die Kommentare zu den einzelnen Projekten.

Sie können wählen zwischen CoDeSys 2.3 und CODESYS V3.
Die Kopien des Programmcodes aus den Textdateien können Sie in allen Entwicklungsumgebungen benutzen.
  
Über die Links können Sie ein Download (rechte Maustaste- Ziel speichern unter...) der Exportdateien oder Textdateien durchführen, um diese in Ihr Projekt zu importieren oder nach dem Kopieren aus der Textdatei - den kopierten Programmcode im Projekt-Baustein einzufügen.

 Hinweise zum Umgang mit den Exportdateien und Textdateien für CoDeSys V2.3
  
 Hinweise zum Umgang mit den Exportdateien und Textdateien für CoDeSys V3
  
Beachten Sie:  

Eine Steuerungskonfiguration mit WAGO-Baugruppen, wie sie im Buch-Kapitel 2 beschrieben ist, ist jedoch mit CODESYS V3 Demo nicht möglich. Wenn Sie mit CODESYS V3 arbeiten, so ordnen Sie den Variablen keine IEC-Adresse zu; tun Sie es doch, so wird beim Übersetzen des Programmcodes eine Warnung ausgegeben. Sie können Ihr Programm aber testen.
    

Kapitel 1 Anweisungen, Berechnungen

Kopiervorlage Lösungen Kap1.txt

CoDeSys 2.3  1_A2.exp,    CODESYS V3  1_A2.export    

Kapitel 1 Aufgabe 2
(******************************************************************
Anweisungen, Berechnungen.

Geben Sie die Werte von r_U, r_I und r_P nach dem Einloggen und Start
ein, r_S, rQ und r_Lamta wird berechnet.
*******************************************************************)


CoDeSys 2.3  1_Ue1.exp,    CODESYS V3 1_Ue1.export

Kapitel 1 Übung 1
(******************************************************************
Anweisungen, Berechnungen.

Geben Sie die Werte von rFuellhoehe nach dem Einloggen und Start ein,
rV wird berechnet.
*******************************************************************)

Kapitel 2 Boolesche Operationen

Kopiervorlage Lösungen Kap2.txt

CODESYS V3 2_A1.export

Kapitel 2 Aufgabe 1
(******************************************************************
Boolesche Verarbeitung, NOT, AND, OR.

Verändern Sie nach dem Einloggen und Start die Werte von xB1 und xB2,
beobachten Sie xP1.
*******************************************************************)


CoDeSys 2.3  2_Ue3.exp,    CODESYS V3 2_Ue3.export

Kapitel 2 Übung 3
(******************************************************************
Funktion 2 aus 3, Boolesche Verarbeitung

Verändern Sie nach dem Einloggen und Start die Werte von xB1 ... xB3,
beobachten Sie xP1.
*******************************************************************)
  

Kapitel 3 Datentypen, Codierung

Kopiervorlage Lösungen Kap3.txt oder Kap3V3.txt

CoDeSys 2.3  3_A3.exp,    CODESYS V3 3_A3.export
(******************************************************************
Funktion 2 aus 3, Datentypenumwandlung, Vergleichsoperator

Verändern Sie die Werte von xB1 ... xB3 nach dem Einloggen und Start,
xP1 wird TRUE bzw. FALSE.
*******************************************************************)

CODESYS V3 3_A4.export
(******************************************************************
Bitmuster und Wert, Datentyp, Datentypumwandlung, Maske

Verändern Sie den Wert von iIn -32768...32767 nach dem
Einloggen und Start, beobachten Sie wIn und xP1_neg.
Wählen Sie über Menü Debug-Darstellung auch Binär.
*******************************************************************)

CoDeSys 2.3  3_Ue2.exp,    CODESYS V3 3_Ue2.export
(******************************************************************
Skalieren von 0...32760 nach 0...100.0, Datentypenumwandlung

Verändern Sie die Werte von iTemp_in nach dem Einloggen und Start,
beobachten Sie rTemp_out.
*******************************************************************)

CODESYS V3 3_A6a.export
(******************************************************************
Eindimensionale Feldvariable, ARRAY

Zeigt wie eine eindimensionale Feldvariable deklariert und auf Sie
zugegriffen wird.
*******************************************************************)

CODESYS V3 3_A6b.export
(******************************************************************
Zweidimensionale Feldvariable, ARRAY

Zeigt wie eine zweidimensionalen Feldvariable deklariert und auf Sie
zugegriffen wird.
*******************************************************************)

CODESYS V3 3_A7.export
(******************************************************************
Ausgangsbyte abhängig vom Eingangsbyte steuern, ARRAY, Datentypen-
umwandlung, Maske

Verändern Sie die zwei niederwertigsten Bits von byIn nach dem
Einloggen und Start, beobachten Sie byOut.
*******************************************************************)

CoDeSys 2.3  3_Ue3.exp,    CODESYS V3 3_Ue3.export
(******************************************************************
Bahnkorrektur mit ARRAY, Datentypenumwandlung, Maske.
Einem bestimmten Eingangsbitmuster wird eine Ausgangsbitmuster
nach einer Funktionstabelle zugeordnet.

Verändern Sie die Bits 0...2 der Variable "Sensoren" nach dem
Einloggen und Start, beobachten Sie die Bits der Variable "Ausgaenge"
(Menü Debug-Darstellung-Binär).
*******************************************************************)

  

Kapitel 4 Kontrollstrukturen - Alternativen

Kopiervorlage Lösungen Kap4.txt

CODESYS V3 4_A1.export
(******************************************************************
SR-Kippglied, IF ... THEN

Verändern Sie die Werte von xStart (kurz auf TRUE) und xStopp
(kurz auf TRUE) nach dem Einloggen und Start, beobachten Sie xOut.
Setzen Sie Haltepunkte ein.
*******************************************************************)

CoDeSys 2.3  4_Ue1.exp,    CODESYS V3 4_Ue1.export
(******************************************************************
Behältersteuerung, IF ... THEN

Verändern Sie die Werte von S1_ein, B1 und B2 nach dem Einloggen
und Start, beobachten Sie P1_ein, M1_Ventil und M2_Ventil.
Setzen Sie Haltepunkte ein.
*******************************************************************)

CoDeSys 2.3  4_Ue1_ELSIF.exp,    CODESYS V3 4_Ue1 mit ELSIF.export
(******************************************************************
Behältersteuerung, IF ... ELSIF

Verändern Sie die Werte von S1_ein, B1 und B2 nach dem Einloggen
und Start, beobachten Sie P1_ein, M1_Ventil und M2_Ventil.
*******************************************************************)

CoDeSys 2.3  4_Ue2.exp,    CODESYS V3 4_Ue2.export
(******************************************************************
Zweipunktregler, IF ... THEN

Verändern Sie die Werte von usiHelligkeit und dann usiSchwellwert
nach dem Einloggen und Start, beobachten Sie usiEinschaltpunkt,
usiAusschaltpunkt und xOut.
*******************************************************************)

CoDeSys 2.3  4_Ue3.exp,    CODESYS V3 4_Ue3.export
(******************************************************************
Kompensationsanlage, IF...ELSIF

Verändern Sie den Werte von rQ nach dem Einloggen und Start,
beobachten Sie die Werte von xQ1...xQ3.
*******************************************************************)

CoDeSys 2.3  4_Ue4.exp,    CODESYS V3 4_Ue4.export
(******************************************************************
Vorwärtszähler, Flanke, IF...

Verändern Sie die Werte von CU und PV nach dem Einloggen und Start,
beobachten Sie die Werte CV und Q.
*******************************************************************)
  
CoDeSys 2.3  4_Ue5.exp,    CODESYS V3 4_Ue5.export
(******************************************************************
Autowaschanlage, ablauforientiert programmiert, CASE, IF...

Verändern Sie die Werte von S1_start ... B4_pos_ende nach dem
Einloggen und Start, beobachten Sie die Werte der Aktoren.
*******************************************************************)

CoDeSys 2.3  4_A3.exp,    CODESYS V3 4_A3.export
(******************************************************************
Meldung, CASE...Bereich, STRING

Verändern Sie den Werte von usiMWert nach dem Einloggen und Start,
beobachten Sie die Zeichenkette von sMeldung.
*******************************************************************)

CoDeSys 2.3  4_Ue6.exp,    CODESYS V3 4_Ue6.export
(******************************************************************
Füllstand- Frequenzumrichter, CASE, IF...

Verändern Sie den Wert von wHoehe= 0...32760 nach dem Einloggen
und Start, beobachten Sie die Werte von wSollwert und led...
*******************************************************************)

CoDeSys 2.3  4_A4.exp,    CODESYS V3 4_A4.export
(******************************************************************
Funktion 2aus3, CASE... Datentypenumwandlung, Maske.

Verändern Sie die Bits 0...2 von usiSensoren (Menü Debug-
Darstellung-binär) nach dem Einloggen und Start, beobachten Sie xP1.
*******************************************************************)
  

Kapitel 5 Kontrollstrukturen - Schleifen

Kopiervorlage Lösungen Kap5.txt oder Kap5V3.txt

CoDeSys 2.3  5_A1a.exp,    CODESYS V3 5_A1a.export
(******************************************************************
Impedanzberechnung in einer Tabelle , FOR-Schleife, ARRAY

Verändern Sie den Wert von U nach dem Einloggen und Start,
beobachten Sie die Werte von I[1]...Z[5]. Setzen Sie Haltepunkte ein.
*******************************************************************)

CoDeSys 2.3  5_A1b.exp,    CODESYS V3 5_A1b.export
(******************************************************************
Impedanzberechnung in einer Tabelle , FOR-Schleife, BY, ARRAY

Verändern Sie den Wert von U nach dem Einloggen und Start,
beobachten Sie die Werte von I[1]...Z[5]
*******************************************************************)

CoDeSys 2.3  5_Ue1.exp,    CODESYS V3 5_Ue1.export
(******************************************************************
Messstellen (%IW0...%IW5), Mittelwertberechnung FOR... BY, ARRAY

Verändern Sie die Werte von iMw[0]...iMw[5] nach dem Einloggen und
Start, beobachten Sie die Werte von rMesswert[0]...rMesswert[5] und
rMittelwert
*******************************************************************)

CoDeSys 2.3  5_A2.exp,    CODESYS V3 5_A2.export
(******************************************************************
Impedanzberechnung in einer Tabelle , WHILE-Schleife, ARRAY

Verändern Sie den Wert von U nach dem Einloggen und Start,
beobachten Sie die Werte von I[1]...Z[5]. Setzen Sie Haltepunkte ein.
*******************************************************************)


CODESYS V3 5_A4.export
(******************************************************************
Impedanzberechnung in einer Tabelle , REPEAT-Schleife, ARRAY

Verändern Sie den Wert von U nach dem Einloggen und Start,
beobachten Sie die Werte von I[1]...Z[5]. Setzen Sie Haltepunkte ein.
*******************************************************************)

CoDeSys 2.3  5_Ue2.exp,    CODESYS V3 5_Ue2.export  Hilfe
(******************************************************************
Sortieren nach dem "Bubble Sort" Verfahren , REPEAT- und FOR-Schleife,
ARRAY, Konstante.

Verändern Sie den Wert von xSortieren nach dem Einloggen und Start,
beobachten Sie die Werte von iPlatz[0]...[iMax].
Setzen Sie Haltepunkte ein.
*******************************************************************)

CoDeSys 2.3  5_Ue3.exp,    CODESYS V3 5_Ue3.export
(******************************************************************
Dezimalzahl -> Dualzahl , FOR- und REPEAT-Schleife, ARRAY, Modulo

Verändern Sie den Wert von usiEingabe_zahl nach dem Einloggen und Start,
beobachten Sie die Werte von usiOut[0]...[7]. Setzen Sie Haltepunkte ein.
*******************************************************************)

CoDeSys 2.3  5_A5b.exp,    CODESYS V3 5_A5b.export
(******************************************************************
Bitmuster in ein Datenfeld schreiben , Schleife in Schleife mit EXIT

Beobachten Sie die Werte von M[...] nach dem Einloggen und Start.
Setzen Sie Haltepunkte ein.
*******************************************************************)

CoDeSys 2.3  5_Ue4.exp,    CODESYS V3 5_Ue4.export
(******************************************************************
Kennwort: Eingabe mit Liste vergleichen, REPEAT-Schleife, ARRAY, EXIT

Verändern Sie die Zeichenkette von sEingabe, z.B. 'aa', nach dem
Einloggen und Start, beobachten Sie die Werte von kw_nicht_gefunden.
Setzen Sie Haltepunkte ein.
*******************************************************************)

  

Kapitel 6 Unterprogramme, Tasks

Kopiervorlage Lösungen Kap6.txt

CoDeSys 2.3  6_A2.exp,    CODESYS V3 6_A2.export
(******************************************************************
Kompensationsanlage, Unterprogramme, GVL (globale Variablenliste)

Verändern Sie nach dem Einloggen und Start im Programm BERECHNEN den
Wert von r_I, z.B. 20, beobachten Sie die Werte in der GVL.
*******************************************************************)

CoDeSys 2.3  6_A3.exp,    CODESYS V3 6_A3.export
(******************************************************************
Kompensationsanlage, Task, GVL (globale Variablenliste)

Verändern Sie nach dem Einloggen und Start den Wert von r_I, z.B. 20,
beobachten Sie die Werte in der GVL.
*******************************************************************)

CoDeSys 2.3  6_Ue1.exp,    CODESYS V3 6_Ue1.export
(******************************************************************
Autowaschanlage, Unterprogramme, GVL (globale Variablenliste)

Verändern Sie in der GVL die Wert der Sensoren (IX...) nach dem
Einloggen und Start, beobachten Sie die Werte der Aktoren (QX...).
*******************************************************************)
  
CoDeSys 2.3  6_Positionieren.exp,    CODESYS V3 6_Ue2 Positionieren.export
(*********************************************************************
Mit dem Taster S0 wird über ein Schütz Q0 ein Antrieb eingeschaltet,
bis die Position 0 erreicht ist. Mit dem Taster S1 wird die Position 1
angefahren usw. Die Position könnte über einen Entfernungssensor erfasst
werden, sein Wert könnte im zugehörigen Speicher, z.B. %IW0 0...32760
gelesen werden.
In dieser Übung wird der Wert der Istposition im Unterprogramm MODELL
abhängig von den den Variablen xQ0 und xQ1 (Schütze) erzeugt, dieses
Programm simuliert den Sensor.

Löschen Sie nach dem Importieren das Objekt "Target-Visualisierung"
im Gerätefenster.
***********************************************************************)
  
CoDeSys 2.3  6_Positionieren_L.exp,    CODESYS V3 6_Ue2 Lösung Positionieren.export
  

Kapitel 7 Anwenderdefinierte Datentypen, Aufzählungstypen, IEC-Operatoren

Kopiervorlage Lösungen Kap7.txt

CoDeSys 2.3  7_A1_L2.exp,    
(****************************************************************
Aufgabe 7.1, Lösung 2
Tankanlage, anwenderdefinierter Datentyp, Task, IEC-Operatoren,
Skalieren, Linearisieren.
Der Datentyp TANK wurde erweitert.
Passen Sie die Adressen der Steuerungskonfiguration an.
  
Geben Sie die Werte zum Testen in der Steuerungskonfiguration ein
*****************************************************************)

CoDeSys 2.3  7_Ue1.exp,    CODESYS V3 7_Ue1.export
(******************************************************************
Tankanlage, anwenderdefinierter Datentyp, Task, IEC-Operatoren,
Skalieren, Linearisieren.

Konfigurieren Sie nach dem Importieren die Task.

Verändern Sie die Wert von %IW... in der GVL nach dem Einloggen und
Start, beobachten Sie die Werte von %Q...in der GVL und die Werte
von Tank1... und Tank2... in diesem Programm
*******************************************************************)
  
CODESYS V3 7_Ue1 mit Modell.export
(******************************************************************
Tankanlage, anwenderdefinierter Datentyp, Task, IEC-Operatoren,
Skalieren, Linearisieren.

Löschen Sie im neuen Projekt das Programm PLC_PRG.
Konfigurieren Sie nach dem Importieren die Task 500ms, rufen Sie die
Programme MODELL und TANKANLAGE auf.
Löschen Sie das Objekt "Target-Visualisierung" im Gerätefenster.

Die Visualisierung zusammen mit dem Programm MODELL simulieren die
Anlage.
Betätigen Sie nach dem Einloggen im Visualisierungsfenster den
S1 bzw. S2. Die Messwerte werden mit Hilfe des Programms MODELL
in den Speicher %IW... geschrieben.
*******************************************************************)

CoDeSys 2.3  7_A2a.exp,    CODESYS V3 7_A2a.export
(******************************************************************
Beleuchtung für Bühnenbilder, anwenderdefinierter Datentyp, CASE...

Verändern Sie den Wert von usiSzenenNr = 0...2 nach dem Einloggen
und Start, beobachten Sie die Werte von Leuchte1...Leuchte3.
*******************************************************************)

CoDeSys 2.3  7_A2b.exp,    CODESYS V3 7_A2b.export
(******************************************************************
Beleuchtung für Bühnenbilder, anwenderdefinierter Datentyp,
Aufzählungstypen, CASE...

Verändern Sie den Wert von usiSzenenNr = 0...2 nach dem Einloggen
und Start, beobachten Sie die Werte von Leuchte1...Leuchte3.
*******************************************************************)
  

Kapitel 8 Funktionen (FCs), Bibliotheken

Kopiervorlage Lösungen Kap8.txt

CoDeSys 2.3  8_A1.exp,    CODESYS V3 8_A1.export
(******************************************************************
Funktion MUX_INT schreiben und testen.

Zur Simulation werden nach dem Einloggen und Start die
eingegebenen Werte 100...400 und 2 von der FC gelesen.
iErg wird abhängig vom iSel-Wert zurückgegeben.
*******************************************************************)

CoDeSys 2.3  8_A2.exp,    CODESYS V3 8_A2.export
(******************************************************************
Zeigt einen Temperaturmesswert und einen Druckmesswert
abhängig von einer Auswahlvariable an.

Bibliothek "ANALOG" über den Bibliotheksverwalter hinzugefügt.
Zur Simulation, nach dem Einloggen und Start,
Werte in der GVL und
Werte für iAuswahl_Temp und iAuswahl_Druck eingeben,
Werte schreiben und Variable iMittelwert beobachten.
Autor: Schmitt, Version 1.0, Bibliothek: ANALOG.lib.
Benutzen Sie auch die Visualisierung um die Werte von
iAuswahl_Temp und iAuswahl_Druck zu ändern.
******************************************************************)

CoDeSys 2.3  8_A3.exp,    CODESYS V3 8_A3.export
(******************************************************************
Funktion SCALE aus der Bibliothek testen.

Bibliothek "ANALOG", die erweitert wurde mit der FC "SCALE",
über den Bibliotheksverwalter hinzugefügt.
Zur Simulation, nach dem Einloggen und Start,
iDruck_Per 0...32760 eingeben und Wert schreiben (Strg+F7),
rDruck beobachten.
*******************************************************************)

CoDeSys 2.3  8_A4.exp,    CODESYS V3 8_A4.export
(******************************************************************
Mittelwert von 4 Messwerten berechnen.

Zur Simulation, nach dem Einloggen und Start, 4 Werte 0...32760 in
der GVL eingeben, Werte schreiben und Variable iMittelwert beobachten.
*******************************************************************)
  
CoDeSys 2.3  8_Ue2c_L2.exp,    CODESYS V3 8_Ue2c_L2.export
(************************************************************************
Bahnkorrektur aus Übung 3.3 als Funktion mit anwenderdefinierter Datentyp
  
Verändern Sie den Wert von B1...B3 nach dem
Einloggen und Start, beobachten Sie P1...K2.
*************************************************************************)

  
CoDeSys 2.3  8_Ue3.exp,    CODESYS V3 8_Ue3.export
(******************************************************************* Volumenberechnung mit anwenderdefiniertem Datentyp als Parametertyp des Füllvolumens von drei kugelförmigen Tanks.

Geben Sie zum Test die Füllhohe und den Durchmesser ein, Überprüfen Sie das Füllvolumen. ********************************************************************)

Kapitel 9 Funktionsblöcke (FBs)

Kopiervorlage Lösungen Kap9.txt oder Kap9V3.txt

CODESYS V3 9_A1b.export
(******************************************************************
Selbsthaltung SR, setzen vorrangig

Zur Simulation werden nach dem Einloggen und Start die
Werte von xS1_Start und xS0_Stopp wechselnd vorbereitet
und geschrieben (Strg+F7). xOut wird beobachtet.
*******************************************************************)

CoDeSys 2.3  9_A2.exp,    CODESYS V3 9_A2.export
(******************************************************************
Bandsteuerung mit Unterprogramm "BANDANL", RS, TOF und TON.

Zur Simulation werden nach dem Einloggen und Start die
Werte in der GVL von S0_Band_AUS und S1_Band_Ein wechselnd vorbereitet
und geschrieben (Strg+F7).
Beobachten Sie das verzögerte Schalten von Q1_Band1 und Q2_Band2.
*******************************************************************)

CoDeSys 2.3  9_A3a.exp,    CODESYS V3 9_A3a.export
(*******************************************************************
Behälter füllen, TP.

Zur Simulation werden nach dem Einloggen und Start die
Werte von xStart und rK vorbereitet und geschrieben (Strg+F7).
Sie können auch eine Target-Visualisierung "Behaelter" benutzen.
Ignorieren Sie die nach dem Übersetzen die Warnungen zu den Adressen %QX...
Beobachten Sie in der GLV das verzögerte Schalten von M10_Ventil_A und
M11_Ventil_B abhängig vom rK-Wert.
*******************************************************************)


CoDeSys 2.3  9_A3b.exp,    CODESYS V3 9_A3b.export
(*******************************************************************
Behälter füllen mit anwenderdefinierten Datentyp und ARRAY.

Zur Simulation werden nach dem Einloggen und Start die
Werte von xStart und rK vorbereitet und geschrieben (Strg+F7).
Sie können auch eine Target-Visualisierung benutzen.
Ignorieren Sie die nach dem Übersetzen die Warnungen zu den
Adressen %QX... Beobachten Sie in der GLV das verzögerte Schalten
von M10_Ventil_A ... abhängig vom rK-Wert.
*******************************************************************)

CoDeSys 2.3  9_A4c.exp,    CODESYS V3 9_A4c.export
(*******************************************************************
Behälter füllen, anwenderdefinierten FB, ARRAY.

Zur Simulation werden nach dem Einloggen und Start die
Werte von xStart und rK vorbereitet und geschrieben (Strg+F7).
Ignorieren Sie die nach dem Übersetzen die Warnungen zu den
Adressen %QX... Beobachten Sie in der GLV das verzögerte Schalten
von M10_Ventil_A ... abhängig vom rK-Wert und tFuellzeit-Wert.
*******************************************************************)

CoDeSys 2.3  9_A5b.exp,    CODESYS V3 9_A5b.export
(******************************************************************
FB "Z_REG" erstellen und mehrere Instanzen über eine Schleife aufrufen.

Zur Simulation werden nach dem Einloggen und Start die
Werte von xX und rH vorbereitet und geschrieben (Strg+F7).
Beobachten Sie die xOut-Werte.
*******************************************************************)

CoDeSys 2.3  9_A6a.exp,    CODESYS V3 9_A6.export
(******************************************************************
FB "TANK_ANL" mit IN-OUT-Parameter und anwenderdefinirten Datentyp
erstellen und mehrere Instanzen aufrufen.

Zur Simulation werden nach dem Einloggen und Start die
Werte von xEin, rDurchfluss und rTemperatur der zwei Anlagen
vorbereitet und geschrieben (Strg+F7).
Beobachten Sie die xHeizung-Werte.
*******************************************************************)
  
CoDeSys 2.3  9_A6b.exp,    CODESYS V3 9_A6b mit Modell.export
(******************************************************************
FB "TANK_ANL" mit IN-OUT-Parameter und anwenderdefinirten Datentyp
erstellen und mehrere Instanzen über eine FOR-Schleife aufrufen.

Die Visualisierung zusammen mit dem Programm MODELL ergeben
die virtuelle Tankanlage. Die Feldvariable "TANK_Anlage" wurde
global deklariert um auf ihr im Programm MODELL zugreifen zu können.

Funktionsbeschreibung: Ist der Durchfluss größer als 25 l/min,
so kann über S1 bzw. S2 die Heizung eingeschaltet werden.
Ist die Heizung eingeschaltet, so steigt die Temperatur.
Sie wird auf etwa 100°C konstant gehalten.

Löschen Sie nach dem Importieren das Objekt "Target-Visualisierung"
im Gerätefenster.
*******************************************************************)
  
CoDeSys 2.3  9_Ü1.exp,    CODESYS V3 9_Ü1 Autowaschstraße mit Modell.export
(**********************************************************************
Autowaschstraße mit FB, Modell und Visualisierung.

Funktionsbeschreibung: Ist das Auto in die Waschstraße gefahren und
wird S00 betätigt, so schaltet der Bandantrieb ein, das Vorwaschventil
öffnet. Wird B11 erreicht, so schließt das Vorwaschventil, der Bürsten-
antrieb schaltet ein, das Hauptwaschventil öffnet. Solange B11=1 fährt
die Bürste über M12 auf, wird B11=0, solange fährt die Bürste über M11 ab.
Dies gilt auch für B12. Wird B02 erreicht, so wird alles ausgeschaltet.

Aufgabe: Entwickeln Sie einen FB mit Hilfe der CASE-Anweisung, rufen Sie diesen
nach dem MODELL-Aufruf im Hauptprogramm auf und testen Sie mit Hilfe
der Visualisierung die Funktion.
Beachten Sie die globalen Variablen.

Löschen Sie nach dem Importieren das Objekt "Target-Visualisierung"
im Gerätefenster.
***********************************************************************)
  
CoDeSys 2.3  9_Ü1_L.exp,    CODESYS V3 9_Lösung Ü1 Autowaschstraße mit Modell.export
  

Kapitel 10 FB-Bibliothek

Kopiervorlage Lösungen Kap10.txt

CoDeSys 2.3  10_A1c.exp,    CODESYS V3 10_A1c.export
(******************************************************************
FB "BEHAELTER_I" erstellen,
Task konfigurieren
und Instanzen aufrufen.

Zur Simulation werden nach dem Einloggen und Start die
Werte von rZulauf und rAblauf vorbereitet und geschrieben (Strg+F7).
Beobachten Sie den rFuellstand-Wert.
*******************************************************************)

CoDeSys 2.3  10_A2.exp,    CODESYS V3 10_A2.export
(******************************************************************
Digitalfilter
FB "FILTER_M" erstellen, Task konfigurieren
und zum testen Instanzen aufrufen.

Zur Simulation werden nach dem Einloggen und Start die
Werte von "temp" vorbereitet und geschrieben (Strg+F7).
Setzen Sie einen Haltepunkt in Zeile 1,
schreiben Sie nach jedem Zyklus einen neuen Wert in "temp",
z.B. 4 dann 6 dann 4 dann 6 => temp_out=5.
Beobachten Sie den temp_out-Wert.
*******************************************************************)

CoDeSys 2.3  10_A3b.exp,    CODESYS V3 10_A3.export
(******************************************************************
Taktgeber
FB "CLOCK_R" erstellen, Task konfigurieren
und zum testen Instanzen aufrufen.

Zur Simulation werden nach dem Einloggen und Start die
Parameterwerte übergeben. Beobachten Sie den rWert.
Benutzen Sie das Trace-Objekt.
*******************************************************************)

CoDeSys 2.3  10_A4.exp,    CODESYS V3 10_A4.export
(******************************************************************
Tiefpass
FB "LOW_PASS" erstellen, Task konfigurieren,
Bibliothek mit CLOCK_R (Taktgeber) einbinden
oder aus 10A3 exportieren und hier Importieren.
Zum testen Instanzen aufrufen.

Zur Simulation werden nach dem Einloggen und Start die
Parameterwerte übergeben. Beobachten Sie den rDruck-Wert,
er schwankt nicht so stark, wie das Eingangssignal.
Benutzen Sie das Trace-Objekt.
*******************************************************************)


CoDeSys 2.3  10_A5.exp,    CODESYS V3 10_A5.export
(******************************************************************
Streckensimulation PT2
FB "PT2" erstellen, Task konfigurieren,
Bibliothek mit LOW_PASS (Tiefpass) einbinden
oder aus 10_A4 exportieren und hier Importieren.
Zum testen Instanzen aufrufen.

Zur Simulation wird nach dem Einloggen und Start der Wert von
rStellwert, z.B auf 1.0, vorbereiten und geschrieben.
Beobachten Sie den rIstwert. Benutzen Sie das Trace-Objekt.
*******************************************************************)
  
CoDeSys 2.3  10_Ue1b.exp,    CODESYS V3 10_Ue1.export
(******************************************************************
Lichtszenen
FB "LICHT_SZENEN" erstellen, Zähler, CASE, Instanz aufrufen.

Zur Simulation, nach dem Einloggen und Start, können Sie
in der Visualisierung "Wohnzimmer" den Wert der Var. S8_Wohnzimmer
tastend ändern, beobachten Sie E7...
*******************************************************************)
  

Kapitel 11 Bibliotheken verwenden  
  
Kopiervorlage Lösungen Kap11.txt oder Kap11V3.txt
  
Kapitel 12 Fuzzy-Logik - Füllstandsregelung

Kopiervorlage Lösungen Kap12.txt

CoDeSys 2.3  12_A1.exp,    CODESYS V3 12_A1.export
(******************************************************************
Fuzzy
Test der Zugehörigkeitsfunktionen

Zur Simulation können Sie nach dem Einloggen und Start den
"temp"-Wert vorbereiten und schreiben.
Beobachten Sie die Zugehörigkeitsgrade.
*******************************************************************)

CoDeSys 2.3  12_A2.exp,    CODESYS V3 12_A2.export
(******************************************************************
Fuzzy
Test der Zugehörigkeitsfunktionen und
der Inferenz- und Defuzzifizierungsfunktion

Zur Simulation können Sie nach dem Einloggen und Start den
"temp"-Wert vorbereiten und schreiben.Beobachten Sie die
Zugehörigkeitsgrade und den scharfen Ausgangswert "y".
*******************************************************************)

CoDeSys 2.3  12_A3.exp,    CODESYS V3 12_A3.export
(******************************************************************
Fuzzy, Füllstandsregelung, Task: Zyklisch 100ms

Bibliothek "FUZZY.library" aus 12_A2 über den Bibliotheksverwalter
hinzugefügt.
Zur Simulation können Sie nach dem Einloggen und Start den
Sollwert "w" vorbereiten und schreiben.
Beobachten Sie den Istwert "x".
*******************************************************************)
  

Kapitel 14 Kopiervorlage Lösungen Kap14V3.txt
Kapitel 16 Kopiervorlage Lösungen Kap16V3.txt
Kapitel 18 Einführung in die OOP

Kopiervorlage Lösungen Kap18.txt

CODESYS V3 18_A1.export
(******************************************************************
OOP Heizung ein/aus, Methoden

Zur Simulation, nach dem Einloggen und Start, können Sie
den Wert von xS1 ändern, beobachten Sie xQ1.
*******************************************************************)

  
CODESYS V3 18_A2.export
(******************************************************************
OOP Heizung ein/aus, Methoden, Vererbung

Zur Simulation, nach dem Einloggen und Start, können Sie
die Werte von xS1 und rSollwert ändern,
beobachten Sie xQ1, xQ2 und rLeistung.
*******************************************************************)

  
CODESYS V3 18_A3.export
(******************************************************************
OOP Heizung ein/aus, Methoden, Vererbung, Eigenschaften (Property)

Zur Simulation, nach dem Einloggen und Start, können Sie
die Werte von xS1 und rSollwert ändern,
beobachten Sie xQ1, xQ2 und rLeistung.
*******************************************************************)

  
CODESYS V3 18_A4.export
(******************************************************************
OOP Heizung ein/aus, Methoden, Vererbung, Interfaces

Zur Simulation, nach dem Einloggen und Start, können Sie
den Wert von xK1 ändern, beobachten Sie Tank1 ... Tank4.
*******************************************************************)
  

 

© Vogel Buchverlag