Programmierumgebung akYtec ALP

 Anfang Nächste

Programmierumgebung akYtec ALP

Bedienungsanleitung

Version 01

Hannover 2013


Einführung

Diese Bedienungsanleitung soll den Nutzer mit der Programmierumgebung (akYtec ALP) für die akYtec Kleinsteuerungen vertraut machen. Hierzu zählen u. a. die programmierbaren Relais, wie z. B. der PRXXX Serie.

Für die Programmierung wird die visuelle, auf grafischen Blöcken und Symbolen basierende, Programmiersprache FBD (Functional Block Diagramm) eingesetzt.

Die Software akYtec ALP wird auf einer CD mitgeliefert, die im Lieferumfang des Programmieradapters PR-KP20 enthalten ist. Zusätzlich steht die Software auch in der aktuellsten Version auf der Webseite www.akytec.de als kostenloser Download zur Verfügung.


Abkürzungen und Begriffe

Anfang Vorherige Nächste

Abkürzungen und Begriffe, die in dieser Bedienungsanleitung verwendet werden:

Die Abkürzungen und die Begriffe | Erklärung
akYtec ALP | Programmierumgebung, entwickelt von der Firma akYtec
FBD (Functional Block Diagramm) | Visuelle, auf grafischen Blöcken und Symbolen basierende, Programmiersprache
Anwenderprogramm / Projekt | vom Anwender in der Programmierumgebung akYtec ALP erstelltes Projekt, das z. B. für die Übertragung in ein PR vorgesehen ist
logisches Signal | digitale physische Größe (Spannung oder Strom), die nur zwei Werte annimmt : eingeschaltet – entspricht logisch "1", ausgeschaltet – entspricht logisch "0"
Makro | vom Anwender entwickelter Funktionsblock
PC | Personal Computer.
SOFTWARE | Software
PR | programmierbares Relais
Gerät | Hardware, z. B. PR114, für die Realisierung von einfachen bis komplexen Steuerungsaufgaben
Programmieradapter | Adapter für die Verbindung vom Gerät zum PC.
Sollwert | vom Anwender vorgegebene Parameter-Werte eines Funktionsblocks
Funktionsblock | einzelne strukturelle Einheiten der Programmierumgebung, die bestimmte Funktionen ausführen
Funktion | Vordefinierte Verarbeitung von verschiedenen Eingangssignalen. Das Ergebnis steht anschließend am Ausgang zur weiteren Verarbeitung bereit.
Programmieroberfläche | Fenster zur Erstellung des Projektes
Zyklus | Gesamtdurchlaufzeit zur Ausführung aller Funktionen des Projektes


1. Allgemeine Programminformationen

1.1. Allgemein

1.2. Hauptmerkmale

1.3. Ausführungsprinzip des Projektes/ Anwenderprogramms

1.4. Systemanforderungen


1.1. Allgemein

Die Software akYtec ALP ist eine Programmierumgebung zur Erstellung von Algorithmen für die Geräte aus der Produktreihe “programmierbares Relais“.

Diese Geräte sind für die kostengünstige Realisierung von einfachen bis komplexen Steuerungsaufgaben einsetzbar.


1.2. Hauptmerkmale

Mit der Software akYtec ALP kann der Nutzer den Algorithmus der gewünschten Steuerungsaufgabe erstellen und anschließend in den nichtflüchtigen Speicher des Gerätes übertragen.

In der Programmierumgebung kann nur mit einem Projekt gleichzeitig gearbeitet werden.

Für die Erstellung des Projektes ist das Anschließen des Gerätes nicht erforderlich.

Bei der Erstellung eines Projektes ist folgende Reihenfolge zu beachten:

1) Installation der Programmierumgebung akYtec ALP auf dem PC ;

2) Start der Programmierumgebung;

3) Erstellung eines neuen Projektes (Auswahl des richtigen Gerätetypen PRXXX) oder Öffnen eines existierenden Projektes zum Bearbeiten;

4) Speichern des Projektes auf der Festplatte des PC;

5) Testen des Projektes im Simulationsmodus;

6) Übertragung des Projektes in das Gerät


1.3. Ausführungsprinzip des Projektes/Anwenderprogramms

Das Projekt wird unter Berücksichtigung aller verfügbaren Variablen wie z. B. der Anzahl der Ein- und Ausgänge und einer eventuell vorhandenen Echtzeituhr erstellt. Der allgemeine Aufbau
eines PR ist in der Zeichnung 1.1 ersichtlich.

Zeichnung 1.1. allgemeiner Aufbau eines PR

Die Arbeitsweise des PR ist in den folgenden Schritten dargestellt:

Schritt 1 – Der logische Zustand der Eingänge wird in den Eingangsspeicher geschrieben.

Schritt 2 – Das Anwenderprogramm liest die Werte des Eingangsspeichers, führt die logischen Operationen durch und schreibt die Ergebnisse in den Ausgangsspeicher.

Schritt 3 – Danach wird der Inhalt des Ausgangsspeichers auf die physischen Ausgänge des PR durchgeschaltet.

Schritt N – Anschließend beginnt das Anwenderprogramm wieder bei Schritt 1.

Die Gesamtzeit zur Ausführung aller Schritte wird auch „Arbeitszyklus“ genannt und hängt von der Komplexität des Algorithmus des Anwenderprogramms ab


1.4. Systemanforderungen

Für die Installation der Software akYtec ALP sind folgende Systemvoraussetzungen erforderlich:

- Betriebssystem MS Windows XP/Vista/7

- NET Framework 2.0

- Prozessor min. Pentium 2

- Arbeitsspeicher min. 64 MB

- freier Speicher min. 30 MB


2. Installation und Start des Programms

2.1. Installation

2.2. Start

2.3. Verbindung PC- PR herstellen


2.1. Installation

Für die Installation der Software akYtec ALP muss die Datei Setup akYtec ALP.exe auf der mit PR-KP20 mitgelieferten CD ausgeführt werden..

Nach erfolgreicher Installation wird auf dem Desktop das Programmicon von akYtec ALP angezeigt (siehe Zeichnung 2.1).

Zeichnung 2.1. Programmicon von akYtec ALP


2.2. Start

Um das Programm akYtec ALP zu starten, wählen Sie den Punkt "Start> Programme> akYtec> akYtec ALP" oder führen Sie einen Doppelklick mit der linken Maustaste auf das Programmicon auf dem Desktop aus.


2.3. Verbindung zwischen PC und PR herstellen
Der Datenaustausch zwischen dem PC und dem Gerät erfolgt über eine serielle Schnittstelle. Benutzen Sie hierzu das Kabel, welches zum Lieferumfang des Programmieradapters PR-KP20 gehört.

Achtung! Schalten Sie das PR -Gerät bitte aus, bevor Sie es mit einem PC verbinden.

Nach dem Anschluss des PR werden die notwendigen Verbindungseinstellungen in der Programmierungumgebung akYtec ALP vorgenommen.

Die Konfiguration der Verbindung wird im Fenster «Port konfigurieren» durchgeführt. Das Fenster wird im Hauptmenü mit dem Befehl «Gerät> Port konfigurieren» aufgerufen und ist auf der Zeichnung 2.2 dargestellt.

Im Feld Port muss der richtige Port ausgewählt und über „OK“ bestätigt werden. Alle weiteren Daten werden nur zu Informationszwecken angezeigt.

Zeichnung 2.2. Fenster "Port konfigurieren"


3. Programmbedienung

3.1. Benutzeroberfläche

3.2. Erstellung eines neuen Projektes

3.3. Öffnen eines vorhandenen Projektes

3.4. Simulation des Projektes

3.5. Kommunikation über das Netzwerk

3.5.1. Arbeiten mit Netzwerkvariabelen

3.5.Parameter der Schnittstelle RS-485 konfigurieren

3.6. Projekt in das PR übertragen

3.7. Bedienung

3.8. Projektablauf


3.1. Benutzeroberfläche

Nach dem Start der Software akYtec ALP erscheint auf dem Monitor das Hauptfenster des Programms (siehe Zeichnung 3.1).

Zeichnung 3.1. Hauptfenster des Programms (Darstellung bis zur Eröffnung eines Projektes)

Das Hauptfenster des Programms enthält:
  • Titelleiste (obere Zeile) – Nach dem Erstellen eines Projekts wird der Projektname und Speicherort angezeigt;
  • Hauptmenü des Programms: Datei, Ansicht, Gerät, Service, Hilfe;
  • Symbolleiste für schnellen Zugriff auf häufig verwendete Funktionen (Tabelle 3.1).
  • Bedienfelder "Komponenten-Bibliothek" und "Eigenschaften "
  • Programmieroberfläche für die Erstellung des Projekts. Der Bereich bleibt bis zur Erstellung oder Öffnen eines Projekts leer.
  • Statuszeile für die Darstellung der verschiedenen Parameter des Programms und Verbindungsstatus mit einem Gerät. (siehe Zeichnung 3.2).

Zeichnung 3.2. Die Statuszeile des Fensters des Programms akYtec ALP beim angeschlossenen Gerät

In der Statuszeile werden folgende Informationen dargestellt:

1) Die verfügbare Anzahl an Funktionsblöcken;

2) Die verfügbare Anzahl an Variablen;

3) Die verfügbare Zahl des Niveaus des Stapels;

4) und 5) – der verfügbare Speicher des Geräts in Prozent vom Gesamtspeicher: „ROM: 0 … 100%“ und „RAM: 0 … 100 %“ (je mehr Funktionsblöcke und Funktionen im Projekt verwendet werden, desto mehr Speicher ist im Gerät erforderlich). akYtec ALP errechnet den verfügbaren Speicher im Gerät automatisch und im Falle eines kritischen Wertes wird eine entsprechende Warnmeldung angezeigt;

6) Information über den Zustand der Verbindung zwischen dem PC und dem ausgewählten Gerät

7) Nummer des ausgewählten COM-Ports

Nach der Erstellung des Projektes werden die Registerkarten "Funktion“, "Funktionsblock" und "Projektmakros" verfügbar. Mit Hilfe der Registerkarte "Projektmakros" wird es dem Nutzer ermöglicht, eigene Funktionsblöcke zu erstellen und bei zukünftigen Projekten wieder zu verwenden.

Tabelle 3.1. Elemente der Symbolleiste

Schaltfläche in der Symbolleiste | Hauptmenü - | Beschreibung der Aktion
 | –Neues Projekt | Öffnet ein neues Projekt. Das aktuelle Projekt wird dabei geschlossen.
 | – Projekt öffnen | Öffnet ein vorhandenes Projekt.
 | – Projekt Speichern | Speichert das aktuelle Projekt. Beim ersten Speichern erscheint ein Fenster, in dem Sie dem Projekt einen Namen zuweisen können.
– | – Projekt speichern unter... | Speichert das aktuelle Projekt unter einem neuen Namen oder einem anderen Pfad.
 | – Programm in das Gerät übertragen | Übertragung des aktuellen Projekts / Anwenderprogramm in das angeschlossene Gerät
 | – Information | Zeigt die im angeschlossenen Gerät vorhandene Firmware an und das PR-Modell, wofür das Projekt ursprünglich programmiert wurde.
 | – Raster einblenden/ausblenden | Ein Raster wird in der Programmieroberfläche ein- bzw. ausgeblendet.
 | – Simulationsmodus | Simulation des aktuellen Projektes
 | – Verkleinern | Verkleinert die Darstellung der Programmieroberfläche
 | – Vergrößern | Vergrößert die Darstellung der Programmieroberfläche
 | – Maßstab | Ändert die Darstellungsgröße der Programmieroberfläche
 | – Komponenten umnummerieren | Umnummerierung der ausgewählten Funktionsblöcke.
 | – Kommentarfeld | Fügt ein Kommentarfeld in die Programmieroberfläche ein.
 | – Erstellung Ausgangsvariable | Definition einer Ausgangsvariablen, um den Wert an eine Eingangsvariable zu übergeben (nicht sichtbare Verbindung)
 | – Erstellung Eingangsvariable | Definition einer Eingangsvariablen, um den Wert von einer Ausgangsvariablen zu übernehmen (nicht sichtbare Verbindung)
 | – Konstante anlegen | Vorgabe eines konstanten Wertes (z. B. Grenz- oder Sollwert) an einem Eingang eines Funktionsblocks
 | – Erstellung Netzwerk Eingangsvariable | Definition einer Eingangsvariablen, deren Wert über das Netzwerk vorgegeben wird
 | – Erstellung Netzwerk Ausgangsvariable | Definition einer Ausgangsvariablen, deren Wert über das Netzwerk gelesen wird
 | – Erstellung eines Eintrages in FB | Übergabe der Werte einzelner Parameter an bestimmte Funktionsblöcke von beliebigen Variablen oder Konstanten (nicht sichtbare Verbindung)
 | – Konverter zu Booleschen | Wandelt den ganzzahligen Wert eines Signals in einen booleschen Wert um.
 | – Konverter in Ganzzahl | Wandelt den booleschen Wert eines Signals in einen ganzzahligen Wert um.


3.2. Erstellung eines neuen Projektes
Über den Button „Neues Projekt“ in der Symbolleiste kann das zu programmierende Gerät aus einer Liste ausgewählt werden (siehe Zeichnung 3.3).

Zeichnung 3.3. PR - "Modellauswahl"

Nachdem das richtige Gerät ausgewählt wurde, erscheint auf der Programmieroberfläche die grafische Darstellung der möglichen Ein- und Ausgänge (siehe Zeichnung 3.4).

Die erforderlichen Funktionsblöcke können nun von der Komponenten-Bibliothek auf die Programmieroberfläche gezogen und platziert werden. Das virtuelle Verdrahten dieser Funktionsblöcke erfolgt über das Verbinden der benötigten Ein- und Ausgänge.

Anmerkung. Eine Verbindung kann nur zwischen einem Eingang und einem Ausgang der einzelnen Funktionen angelegt werden.

Zeichnung 3.4. Darstellung des Programmfensters nach Auswahl des Gerätetyps

Um dem Projekt einen Namen zu geben, klicken Sie bitte auf die Schaltfläche «Projekt speichern» inder Symbolleiste oder wählen Sie Datei „Projekt speichern unter“ aus (siehe Zeichnung 3.5).

Zeichnung 3.5. Projekt speichern unter

Beim ersten Speichern oder beim Umbenennen einer Projekdatei müssen Sie einen Namen und einen Speicherort für die Datei angeben.


3.3. Öffnen eines vorhandenen Projektes

Ein vorhandenes Projekt kann über den Button "Projekt öffnen" auf der Symbolleiste oder über "Datei > Projekt öffnen" geöffnet werden. Anschließend kann diese Datei in der Programmieroberfläche bearbeitet und die Änderungen gespeichert werden.


3.4. Simulation des Projektes

Die Prüfung des erstellten Projektes wird mithilfe des Simulationsmodus durchgeführt. Hierbei können die Ausangszustände in Abhängigkeit der Eingangssignale betrachtet werden. Weiterhin lassen sich auch die Signalzustände innerhalb des Projektes an jedem Funktionsbaustein analysieren.

Um die Simulation zu starten, klicken Sie bitte auf «Simulationsmodus". Nach dem Starten des Simulationsmodus wird das Bedienfeld Simulation geöffnet (siehe Zeichnung 3.7).

Zeichnung 3.7. Bedienfeld Simulation

  • Button (1) um den Echtzeit-Simulationsmodus zu starten ( [image]);

  • Button (2) für die schrittweise Simulation ( [image]);

  • Button (3) für eine Pause im Echtzeit-Simulationsmodus;

  • Button (4) zum Beenden des Echtzeit-Simulationsmodus;

  • Eingabefeld (5) um die Zeitperiode für die Aktualisierung der Informationen im Projekt festzulegen;

  • Eingabefeld (6) für die Festlegung der Zykluszeit für die folgenden Funktionsblöcke– «TON», «TOF», «BLINK».

Das Bedienfeld Simulation enthält folgende Steuerelemente: Für die Geräteausführungen mit der Funktion Echtzeituhr (RTC) öffnet sich ein zusätzliches Feld, mit dessen Hilfe das Zeit-Verhalten der Funktionsblöcke "CLOCK" und "CLOCK WEEK» (siehe Zeichnung 3.8) simuliert werden kann.

Zeichnung 3.8. Bedienfeld Kalender

Nach dem Starten des Simulationsmodus kann die Simulation des Projektes wie folgt ausgeführt werden:
1) Start der Simulation in der Variante – «Echtzeit-Modus» Button ( [image] ) oder schrittweise Simulation Button ( [image] );
2)

Der Wert der Eingangssignale kann durch Betätigen der Eingangsschaltflächen verändert werden (siehe Zeichnung 3.9);

Zeichnung 3.9. Änderung der Eingangssignale

3) Einstellung der Parameter «Zeit, ms» und «Zykluszeit, ms»;

4) Beenden des Simulationsmodus um eventuelle Korrekturen im Projekt vorzunehmen

Anmerkung. Die Simulation des Projektes (Registerkarte "Programmieroberfläche") und der Makros (Registerkarte Makro-Editor) werden getrennt ausgeführt.


3.5. Kommunikation über das Netzwerk


3.5.1. Arbeiten mit Netzwerkvariablen

Bei der Programmierung des Geräts können auch Netzwerkvariablen definiert werden (siehe Zeichnung 3.10)

Zeichnung 3.10. Netzwerkvariablen

Der Verwendungszweck jeder Netzwerkvariable wird vom Nutzer während der Erstellung des Projekts definiert. Zum Beispiel kann eine Netzwerkvariable verwendet werden, um die Einstellparameter der Funktionsblöcke "TOF ", "CT", etc. zu definieren oder um den aktuellen Zustand des Ausgangs vom Funktionsblock "CTN" auszulesen.

Variablen, die über das Netzwerk an das Anwenderprogramm im Gerät übertragen werden, sind die sogenannten Netzwerkeingänge. Variablen, die vom Gerät in das Netzwerk übertragen werden, heißen Netzwerkausgänge.

Um Netzwerkvariablen im Projekt zu definieren, müssen folgende Schritte ausgeführt werden:

Schritt 1 - auf die Schaltfläche N klicken, Cursor an eine Stelle auf der Programmieroberfläche, wo die Variable platziert werden soll, bewegen und linke Maustaste erneut drücken.

Schritt 2 - Über die Registerkarte "Eigenschaften" das Eingabefeld "Variablenaddresse" auswählen (siehe Zeichnung 3.11)

Zeichnung 3.11. Auswahl der Netzwerk-Variablenadresse
Schritt 3 - In dem sich neu öffnenden Dialogfeld die richtige Adresse auswählen (siehe Zeichnung 3.12). Zusätzlich können an dieser Stelle auch ein Name für die Variable und ein Kommentar eingefügt werden.

Zeichnung 3.12. Auswahl der Netzwerkvariable aus der Modbus-Adresstabelle

Schritt 4 - Verbinden Sie den Ausgang / Eingang der Netzwerkvariable mit einem Funktionsblock (siehe Zeichnung 3.13)

Zeichnung 3.13. Verwendungsbeispiel Ausgangs-Netzwerkvariable: Übertragen des aktuellen Wertes des Funktionsbocks "CTN"

Die oben beschriebene Arbeitsweise mit Netzwerkvariablen ist vorteilhaft, wenn der Anwender bei einem neuen Projekt mit der Programmierung des PR startet.Sofern die Parameterliste des Modbus Master bekannt ist, sollte bei einem neuen Projekt mit der Definition der Netzwerkvariablen begonnen werden, da dies die Programmierung um einiges vereinfacht.
Der Aufruf der Modbus-Adresstabelle erfolgt wie auf der Zeichnung 3.14 dargestellt.

Zeichnung 3.14. Schaltfläche Modbus-Adresstabelle


3.5.2. Parameter der Schnittstelle RS-485 konfigurieren

Um die Parameter der Kommunikationsschnittstelle RS-485 zu konfigurieren, muss das entsprechende Dialogfenster im Hauptmenü über „Gerät > Netzwerkparameter RS-485 …“ aufgerufen werden (siehe Zeichnung 3.15)

Die eingestellten Parameter werden erst wirksam, wenn das Gerät neu gestartet oder das Projekt in das Gerät übertragen wird.

Zeichnung 3.15. Netzwerkparameter RS -485


3.6. Projekt in das PR-Gerät übertragen

3.6. Projekt in das PR übertragen

Ein im PC erstelltes Projekt wird in den nicht flüchtigen Speicher des PR übertragen:
1) Das PR über den Programmieradapter PR-KP20 an den PC anschließen;
2) Die Spannungsversorgung des PR erfolgt gemäß der Bedienungsanleitung für das PR;
3) Parameter der Verbindung, wenn nötig, einstellen (siehe Kapitel 2.3 Verbindung zwischen PC und PR herstellen);
4) Das Projekt kann in das PR, über den Button”Programm in das Gerät übertragen“ ( [image] ) auf der Symbolleiste oder über "Gerät> Programm in das Gerät übertragen“ übertragen werden.
Bemerkung: Unmittelbar nach der Projektübertragung in das PR wird das Anwenderprogramm automatisch im Arbeitsmodus gestartet.

Achtung! Falls im PR schon ein Anwenderprogramm vorhanden ist, wird es mit dem neuen Projekt überschrieben.


3.7. Bedienung

Beim Erstellen bzw. Bearbeiten eines Projektes können folgende Optionen verwendet werden:

1)

 Möglichkeiten für die Darstellungsänderung in den Ansichten „Funktion“ und „Funktionsblock“ im Bedienfeld «Komponenten-Bibliotek», (siehe Zeichnung 3.16). Ähnliche Möglichkeiten der Darstellungsänderung sind auch für das Bedienfeld «Eigenschaften» vorgesehen.

Zeichnung 3.16. Änderung der Darstellung des Bedienfeldes Komponenten-Bibliothek

2)

 Änderung der Größe und Position des Bedienfeldes: mithilfe der Maus kann das Bedienfeld von Benutzer erweitert, an eine beliebige Stelle auf dem Bildschirm verschoben oder ausgeblendet (geschlossen) werden.

3)

 Skalierung der Programmieroberfläche: Der Anwender kann die Größe der Darstellung mit Hilfe von folgenden Schaltflächen anpassen: , [image] , [image] , [image] .

4)

 Weiterhin kann der Anwender bei Bedarf z. B. um die Platzierung von Funktionsblöcken zu erleichtern, die Größe der Programmieroberfläche und den Rasterabstand (vertikal und horizontal) über die Dokumenteigenschaften einstellen (siehe Zeichnung 3.17).

Zeichnung 3.17. Fenster "Dokumenteigenschaften"

5)

 Eine automatische Umnummerierung der Funktionsblöcke kann der Anwender über den Button "Komponenten umnummerieren"( [image] ) auf der Symbolleiste durchführen.

6)

 Der Anwender kann über das Bedienfeld „Eigenschaften“ zu jeder Projektkomponente Kommentare hinzufügen. Diese werden dann als Pop-up beim Bewegen des Cursors über die Projektkomponente angezeigt.
7) Es kann auch ein Kommentarblock im Projekt hinzugefügt werden. Dieser wird über den Button( [image] ) auf der Symbolleiste ausgewählt. Anschließend kann der Kommentarblock an einer beliebigen Position auf der Programmieroberfläche platziert werden (siehe Zeichnung 3.18). Die Schriftart,-farbe, Größe und der Hintergrund kann über das Fenster „Eigenschaften“ eingestellt werden.

Zeichnung 3.18. Kommentarfeld

8)

 Die Ein- und Ausgänge der Funktionsblöcke werden mithilfe von Verbindungslinien untereinander verbunden. Markierte Verbindungslinien können jederzeit verschoben werden.

9)

 Die Position der vorgegebenen Ein- und Ausgänge in der Programmieroberfläche kann vom Anwender ebenfalls verschoben werden.

10)

Alle Informationen über den Typ des angeschlossenen PR und über die Firmwareversion können über den Button ( [image] ) auf der Symbolleiste aufgerufen werden (siehe Zeichnung 3.19).

Zeichnung 3.19. Fenster mit Information zum PR und Firmware
11) | Die Parameter der verwendeten Funktionsblöcke können über das Bedienfeld "Eigenschaften" geändert werden. Hierzu wird der Funktionsblock markiert und in dem Bedienfeld „Eigenschaften“ der richtige Parameter ausgewählt.
12) | Da es vereinzelt zu Abweichungen zwischen der Echtzeit und der Gerätezeit kommen kann, wird eine Korrektur über die Auswahlmöglichkeit „Datum und Zeit des Geräts einstellen“ vorgenommen. Für eine genauere Simulation ist die Möglichkeit der automatischen Wertkorrektur vorgesehen, wofür im Feld "Abweichung" der Unterschied zwischen der Echtzeit und der Gerätezeit eingegeben wird. Wenn z. B. die Gerätezeit nach einem Monat im Betriebszustand um 15 s nachgeht, dann wird im Feld „Korrektur – Abweichung“ der Wert „-15“ eingetragen (siehe Zeichnung 3.20).

Zeichnung 3.20 Fenster "Datum und Zeit des Geräts einstellen"

13)

 Die Verwendung von Eingangs- und Ausgangsvariablen gestattet es, die einzelnen Funktionsblöcke auf der Programmieroberfläche bei sehr komplexen Aufgabenstellungen, übersichtlicher zu gestalten. Die Verbindung zwischen diesen Variablen ist nicht sichtbar und wird nur über den gleichen Variablennamen dargestellt.

Beim Hinzufügen von Variablen in das Projekt sollte folgende Reihenfolge beachtet werden:

Schritt 1. Auswahl der Ausgangsvariablen über den Button ( [image] ) auf der Symbolleiste, Cursor in der Programmieroberfläche an die richtige Stelle setzen und noch mal klicken. (siehe Zeichnung 3.21).

Zeichnung 3.21. Ablauf bei der Verwendung von Variablen

Schritt 2. Über das Bedienfeld "Eigenschaften", in der Eingabezeile "Variablenname" - einen beliebigen Namen eingeben (z.B. V1); der Name wird im Ausgabeblock der Variable angezeigt.
Schritt 3. Auswahl der Eingangsvariablen über den Button ( [image] ) auf der Symbolleiste, Cursor in der Programmieroberfläche an die richtige Stelle setzen und noch mal klicken.

Schritt 4. Über das Bedienfeld "Eigenschaften", in der Eingabezeile "Variablenname" - einen Namen der Ausgangsvariable aus dem Drop-Down-Menü auswählen (in diesem Fall - V1)

14)

 Die Verwendung einer Konstanten wird über den Button ( [image] )ausgewählt. Hierüber können Sollwerte an Eingängen bestimmter Funktionsblöcke vorgegeben werden (siehe Anlage A und B).

15)

 Um einen Sollwert in einem Funktionsblock zu definieren wird der Button ( [image] ) ausgewählt. Diese Komponente kann für die Übergabe von Werten einzelner Parameter an bestimmte Funktionsblöcke benutzt werden. (siehe Beispiel in der Zeichnung 3.22. Hier wird der Sollwert vom Ausgang der Funktion „SEL“ auf den Eingang „TI“ des Funktionsblocks „BLINK“ übergeben).
Achtung! Sollwerte die auf der Registerkarte "Eigenschaften" des jeweiligen Funktionsblocksdefiniert sind, werden bei der Nutzung der Komponente „Erstellung eines Eintrages in FB“ ignoriert.

Zeichnung 3.22. Verwendung von "Eintrag in FB erstellen"

Bei Verwendung von Funktionsblöcken, die als Sollwert eine Zeitangabe benötigen, überträgt die Komponente " Erstellung eines Eintrages in FB " den Wert in Millisekunden (siehe Zeichnung 3.23).

Zeichnung 3.23 - Beispiel eines Sollwert-Eintrags für FB "TON"

16)

 Bei der Verwendung von Makros bitte folgende Reihenfolge beachten:

а) Auswahl über "Datei" > "Makro erstellen". Im neuen Dialogfenster kann die Anzahl der Ein - und Ausgänge für das Makro definiert werden (siehe Zeichnung 3.24).)

Zeichnung 3.24. Dialogfenster zur Eingabe der Ein- und Ausgänge für das Makro.

Anmerkung: In der derzeitigen Version von akYtec ALP kann man die Anzahl der Ein - und Ausgänge für das Makro nach der Erstellung nicht mehr ändern. b) Erstellung des Makros erfolgt über den Reiter "Makro -Editor" (siehe Zeichnung 3.25).

Zeichnung 3.25. Bedienfeld "Makro-Editor"

Die Erstellung des Makros erfolgt analog zur Erstellung des Anwenderprogramms.

c) Eingabe des Namens und der Beschreibung des Makros (siehe Zeichnung 3.26); d) Definition der Ein - und Ausgänge (Typ und Bezeichnung) (siehe Zeichnung 3.27);

e) Eingabe der "Sichtbarkeit" der Sollwerte der Funktionsblöcke im Makro für weitere Verwendung im Projekt (siehe Zeichnung 3.28);

Wenn der Parameter "In einem Makro verwenden" für FB gewählt ist, werden Sollwerte des Funktionsblöckes, bei seiner Verwendung im Projekt, analog zu ähnlichen Sollwerte FB TON, TOF, etc. verfügbar.

Zeichnung 3.26. Eingabe des Namens und der Beschreibung des Makros.

Zeichnung 3.27. Beispiel für die Definition eines Ausgangs.

Zeichnung 3.28. Eingabe der "Sichtbarkeit" der Sollwerte der Funktionsblöcke im Makro für weitere Verwendung im Projekt

f) Speichern des Makros über "Datei" > "Makro speichern", durch die Tastenkombination "Strg+Alt+S" oder den Button „Speichern“ links unten auf der Programmieroberfläche.
g) Die Benutzung des Makros im Anwenderprogramm erfolgt durch die Auswahl der Bedienfelds "Projektmakros" in der Systemleiste "Komponentenbibliothek" (siehe Zeichnung 3.29) und der Platzierung des Makros auf die Programmieroberfläche des Hauptanwenderprogramms.

Zeichnung 3.29. Bedienfeld "Makros" Es existieren zusätzliche Funktionen für die Verwendung von Makros: "Makro aus Datei importieren" (Menübefehl "Datei" > "Makro aus Datei importieren") und "Makro in Datei exportieren" (Menübefehl "Datei" > "Makro in Datei exportieren"). Beim Verwenden dieser Funktionen kann man die Makros speichern und in anderen Projekten wieder verwenden.


3.8. Projektablauf

Um die unterschiedlichen Aufgaben, die der Anwender mit seinem Programm erledigen möchte, zu programmieren, muss als Erstes der gesamte Ablauf geplant werden. Dies kann in verschiedenen Formen geschehen. Hierbei ist es dem Anwender überlassen, die für ihn am besten geeignete Methode zu verwenden.

Anschließend wird ein Programm auf der Grundlage der Funktionen (Logikelemente) und Funktionsblöcke erstellt (Siehe Anhänge A und B).

1)

Erstellung eines neuen Projekts (siehe Abschnitt 3.2).
2)

Bildung der Struktur des aktuellen Projekts. Es wird die folgende Vorgehensweise empfohlen:

a) Aus der "Komponenten-Bibliothek" werden die erforderlichen Blöcke ("Funktionen" oder "Funktionsblöcke") auf die Programmieroberfläche gezogen.
b) Einstellung bestimmter Parameter der ausgewählten Funktionsblöcke (siehe Zeichnung 3.30).

Zeichnung 3.30. Einstellung der Funktionsblock-Parameter c) Verbindung der Programmkomponenten miteinander, sowie mit den notwendigen Ein - und Ausgängen des PR.
3) Anschließend wird das Anwenderprogramm im Simulationsmodus überprüft. Hierbei können die Ausgangszustände in Abhängigkeit der Änderungen an den Eingängen getestet werden.
4) Laden des Projekts in das PR und Überprüfung des Programms.
5) Nach der Behebung aller Fehler wird die Vorbereitung des Projekts mit Speichern in Datei beendet.

In Abschnitt 4 wird in einigen Beispielen die Erstellung eines Anwenderprogramms erklärt.


4. Schnellstart. Erstellung von Steuerungsprogrammen

In diesem Abschnitt wird durch Beispiele einfacher Aufgaben erklärt, wie Steuerungschaltprogramme in der Programmierumgebung akYtec ALP erstellt werden. Alle Beispiele sind auch auf der CD-ROM (Ordner "Beispiele für PR114") enthalten.

4.1. Lichtsteuerung mit automatischer Abschaltung

4.2. Automatische Steuerung eines Mischers


4.1. Lichtsteuerung mit automatischer Abschaltung

In Nebenräumen und Treppenhäusern wird das Licht häufig nur für eine begrenzte Zeit benötigt. Nach dem Einschalten der Beleuchtung, wird es oft vergessen, das Licht wieder auszuschalten, was zu erhöhten Kosten führt.

Eine Lichtsteuerung mit automatischer Abschaltung am Beispiel einer Eingangsbeleuchtung soll nach folgendem Algorithmus erfolgen:

1)

Vor der Eingangstür sind der Beleuchtungssensor (F1) und der Taster (Timer SB1) installiert;
2)

Bei kurzzeitigem Drücken auf den Taster und bei nicht ausreichender natürlicher Beleuchtung soll die Lampe eine 1 Minute lang leuchten – diese Zeit reicht aus, um die Tür mit dem Schlüssel zu öffnen;

3)

Taster 2 Sekunden lang gedrückt halten, dann wird die Lampe 3 Minuten lang - unabhängig vom Tageslicht - leuchten – zum Beispiel bei der Treppenhausreinigung;
4) Zusätzlich wird eine parallele Steuerung des Lichts über weitere Steuerelemente oder mit Hilfe des Schalters (SA1) vorgesehen. Dieser Modus ist nützlich bei einem Besuch oder für die weitere Automatisierung der Wohnung;
5) Das Einschalten der Lampe zu bestimmten frei wählbaren Zeiten soll ebenfalls berücksichtigt werden.

Die Auswahl des Gerätes

Um diese Aufgabe zu erfüllen, muss das auszuwählende Gerät eine eingebaute Echtzeituhr, drei Eingänge und einen Ausgang haben.Daher kommen nur Geräte aus der Serie PRXXX in Betracht, die als letzte Buchstaben "RTC" in ihrer Bezeichnung haben.

Für diese Steuerung kann daher z. B. das Gerät (PRXXX-RTC ) eingesetzt werden (siehe Zeichnung 4.1).

Erstellung des Anwenderprogramms

Die Planung des Projektes erfolgt aufgrund der logischen Elemente und Funktionsblöcke (siehe Anhang A und Anhang B ).

Das Projekt ist auf der Zeichnung 4.2 dargestellt. Der Ausgang Q2 im Schaltplan wird für Kontroll- und Prüfungszwecke der logischen Ausgänge (Funktionsblöcke D1–D6) verwendet. Der Hauptausgang Q1 wird nur in den von der Zeitschaltuhr D7 vorgegebenen Zeitintervallen unter Beachtung der logischen Bedingungen, die mit den Funktionsblöcken D1-D6 generiert werden, eingeschaltet.

Zeichnung 4.1. Schaltplan

Zeichnung 4.2. Anwenderprogramm für eine Lichtsteuerung mit automatischer Abschaltung

1) Bei kurzzeitigem (weniger als 2 Sek.) Betätigen des Tasters "Timer" (SB1) liegt das logische Signal "1" am Eingang des logischen Elementes "UND" (D2). Da auch am zweiten Eingang von D2 eine logische "1" anliegt, wird am Ausgang von D2 eine logische "1" weiter geschaltet, die den "TP" (D3) für die Dauer von 1 Minute startet. Dieser Impuls wird über das Element "ODER" (D6) auf den Ausgang Q2 geschaltet.
2) Bei ausreichendem Tageslicht schließt der Kontakt des Sensors "F1“.Dadurch wird eine logische "1" am Eingang des Elementes "D1" in eine logische "0" umgewandelt. Das nachgeschaltete "UND" (D2) liefert daher am Ausgang immer eine logische "0" und der "TP" (D3) wird nicht gestartet.
3) Bei längerem (min. 2 Sek.) Betätigen des Schalters "Timer" (SB1), wird der Ausgang des Funktionsblocks "TON" (D4) auf das logische Signal "1" geschaltet. Der nachgeschaltete Impulsformer "TP" (D5) startet dadurch für die Dauer von 3 Minuten und gibt diesen Dauerimpuls über das Element „ODER“ (D6) auf den Ausgang Q2 (dieser Impuls ist vom Zustand des Sensors F1 unabhängig).
4) Beim Einschalten des Schalters "Licht" (SA1) wird das logische Signal "1" über das Element "ODER" (D6) auf den Ausgang Q2 durchgeschaltet.
5) Das logische Signal "1" vom Ausgang Q2 liegt gleichzeitig auch am Eingang des Elements "UND" (D8) an. Sofern auch am zweiten Eingang (angesteuert von "CLOCK WEEK" (D7)) eine logische "1" anliegt, wird der Ausgang Q1 angesteuert (das Ausgaberelais am Ausgang Q1 wird eingeschaltet).
Die Programmieroberfläche für dieses Anwenderprogramm ist auf der Zeichnung 4.3 dargestellt.

Zeichnung 4.3. Lichtsteuerung mit automatischer Abschaltung (mit dem geöffneten Fenster "CLOCK WEEK")


4.2. Automatische Steuerung eines Mischers

Bei der Herstellung von Lebensmitteln werden häufig Zutaten in einer vorgegebenen Zeit miteinander vermischt (z.B. Milch oder Sahne bei der Milchverarbeitung). Hierbei sind die folgenden Randbedingungen zu beachten:
1) Es sind zwei Arbeitsmodi notwendig: "Automatisch" und "Manuell", die über den Schalter "Modus" (SA1) ausgewählt werden können;
2) Im Modus "Automatisch" bewirkt das Betätigen der Taste "START" (SB1), das automatische Ein- und Ausschalten des Elektromotors (M1) in vorgegebenen Zeitintervallen (15sek -an; 10sek-aus).Der Elektromotor wird automatisch nach 5 Minuten oder durch Betätigen der Taste “STOP“ (SB2) ausgeschaltet;
3) Im Modus "Manuell" wird der Elektromotor über die Tasten “START“ und “STOP“ direkt angesteuert (ohne zeitliche Intervalle);
4) Bei einer Überlastung des Elektromotors (Sensor (F1)) wird der Motor automatisch abgeschaltet. Dies wird durch die Lampe (HL1) und einem speziellen akustischen Signal (HA1) signalisiert (Intervall der Wiederholung 3 sek).
5) Das akustische Signal kann mit der Taste "Reset" (SB3) ausgeschaltet werden;
6) Mit Hilfe des Tasters “Kontrolle“ (SB4) kann die Funktionalität der Lampe und des akustischen Signals überprüft werden.

Auswahl des Gerätes

Um diese Aufgabe zu erfüllen, muss das auszuwählende Gerät sechs Eingänge (entspricht der Anzahl von Steuersignalen) und drei Ausgänge haben (siehe Zeichnung 4.4).

Zeichnung 4.4. Schaltplan

Die logische Darstellung des Anwenderprgrammes ist in Zeichnung 4.5 dargestellt.(die Ausgänge Q1–Q3 entsprechen zwei Kontakten an der
Klemmenleiste).

Zeichnung 4.5. Anwenderprogramm für die automatische Steuerung eines Mischers

Eingang I2 (Einschalten der Anlage): Beim Betätigen des Tasters “START“ (SB1) wird auf den Eingang “S“ (D1) eine logische "1" geschaltet – am Ausgang des RS-Triggers (D1) liegt dann ebenfalls eine logische "1" an. Dieses Signal wird in Abhängigkeit vom Zustand des Schalters “MODUS“ (SA1) weitergeschaltet:

  • In der Schalterstellung “Manuell“ (offener Schalter) wird eine logische "1" über die Funktionselemente D6, D7 und D8 auf den Ausgang Q1 geschaltet (der Elektromotor M1 wird über die Kontakte desAusgangsrelais eingeschaltet).
  • In der Schalterstellung “Automatisch“ (geschlossener Schalter) wird eine logische "1" über das Funktionselement D3 auf die Blöcke D4, D5 geschaltet. Über das Element D8 wird dann wiederum der Elektromotor M1 angesteuert.

Eingang I3 (Abschalten der Anlage): Beim Betätigen des Tasters “STOP“ (SB2) oder beim Auslösen des Sensors F1(Eingang I6) wird auf den Eingang “R“ (D1) eine logische "1" geschaltet – am Ausgang des RS-Triggers (D1) liegt dann eine logische "0" an. Dadurch wird auch auf den Ausgang Q1 eine logische “0“ geschaltet und der Elektromotor (M1) wird abgeschaltet.

Eingang I1 (Zeitliche Steuerung des Elektromotors im Modus "Automatisch"):
  • Die logische “1“ vom Schalter SA1 wird über das Element D3 auf den Impulsformer D4 (Zeitverzögerung 5 Minuten) geschaltet. Nach 5 Minuten wird dieser Impuls über das Element “ODER“ (D2.2) auf den Reset-Eingang des Triggers D1 geschaltet. Die Anlage wird abgeschaltet.
  • Die logische “1“ vom Schalter SA1 wird über das Element D3 auf den Impulsgenerator D5 geschaltet. Der Generator hat die folgenden Parameter: logisch "1" – 15 Sek., logisch "0" – 10 Sek. Diese Impulse werden über das Element “ODER“ (D8) auf den Ausgang Q1 zur Ansteuerung des Elektromotors M1 geschaltet.
  • Beim Ausschalten von SA1 (Modus - Manuell) ist das logische Element D3 gesperrt und das Element D7 wird über D6 angesteuert. Sofern auch der Trigger D1 eine logische "1" liefert, wird dies über die Elemente D7 und D8 auf den Ausgang Q1 geschaltet. Dadurch kann der Elektromotor M1 direkt über den Trigger D1 angesteuert werden.

Eingang I6 (Sensor F1): Beim Auslösen des Sensors F1 (geschlossener Schalter) wird eine logische "1" auf den Eingang "S" (D9) geschaltet – vom Ausgang des RS-Triggers D9 wird diese logische "1" auf den Impulsgenerator D10 geschaltet. Der Generator hat die folgenden Parameter: logisch "1" – 3 sek logisch "0" – 3 sek Diese Impulse werden über das Element ODER (D11) auf den Ausgang Q2 zur Ansteuerung der Klingel HA1 geschaltet. Weiterhin wird die logische "1" des Eingangs I6 auch auf das Element “ODER“ (D12) geschaltet, über den Ausgang von D12 wird der Ausgang “Q3“ und somit die Lampe (HL1) angesteuert.

Eingang I7 (Abschaltung der akustischen Signalisierung): Beim Betätigen des Tasters "RESET" (SB3) wird eine logische "1" auf den Eingang "R" (D9) geschaltet. Die logische "0" vom Ausgang des RS-Triggers wird über den Impulsgenerator (D10) und dem Element “ODER“ (D11) auf den Ausgang Q2 geschaltet. Die Klingel HA1 wird abgeschaltet.

Eingang I8 (Funktionskontrolle der visuellen und akustischen Signalisierung): Beim Betätigen des Tasters "KONTROLLE" (SB4) wird eine logische "1" über das Element "ODER" (D12) auf den Ausgang Q3 geschaltet und die Lampe HL1 wird ununterbrochen angesteuert. Gleichzeitig wird auch eine logische “1“ über das Element "ODER" (D11) auf den Ausgang Q2 geschaltet und die Klingel HA1 wird ununterbrochen angesteuert.

Die Programmieroberfläche dieses Anwenderprogrammes ist in Zeichnung 4.6 dargestellt.
1) Die freien Ein- und Ausgänge können für zusätzliche Funktionen verwendet werden (z. B. um weitere Zeitintervalle für den Elektromotor zu definieren).
2) Der Arbeitsablauf der Anlage kann vollständig automatisiert werden, wenn das Programm z. B. um einen Abwärtszähler (Count Down) (CT) ergänzt wird, mit dessen Ausgangssignal der Trigger D1 ausgeschaltet werden kann.

Zeichnung 4.6. Programmieroberfläche für die automatische Steuerung eines Mischers


Anhang A. Funktionen der logischen Programmelemente

А.1 Bit Operatoren

А.2 Arithmetische Operatoren

А.З Vergleichsoperatoren


А.1 Bit Operatoren

Funktion "NICHT" (NOT)
Funktion "UND" (AND)
Funktion "ODER" (OR)
Funktion "Exklusives ODER" (XOR)

Bei Verwendung der Funktionen “UND“ und “ODER“ können die Eingänge dieser logischen Elemente, die nicht mit den Eingängen des PR oder anderen Elementen des Programms verbunden sind, folgende logische Zustände annehmen:
  • für die Funktion "UND" (AND) – logisch "1";
  • für die Funktion "ODER" (OR) – logisch "0".
Um die Anzahl der Eingänge zu erhöhen, wird bei diesen logischen Elementen eine Kaskadierung verwendet (siehe Zeichnung A.1.):

Zeichnung А.1. Kaskadierungsbeispiel der Funktion “UND“


Funktion "NICHT" (NOT)

Dieses Element wird für das Invertieren des Eingangssignals verwendet:

Am Ausgang liegt eine logische "1" (Ausgang eingeschaltet) an, wenn der Eingang mit einer logischen "0" angesteuert wird (Kontakt geöffnet).

Wahrheitstabelle für die Funktion “NOT“:

I1 | Q
0 | 1
1 | 0

Wenn auf den Eingang ganzzahlige Werte geschaltet werden, wird die Operation für jedes Bit einzeln durchgeführt.


Funktion "UND" (AND)

 Anang Vorherige Nächste

Am Ausgang liegt eine logische "1" (Ausgang eingeschaltet) an, wenn alle Eingänge auch mit einer logischen "1" angesteuert werden (alle Kontakte geschlossen).

Wahrheitstabelle für die Funktion "AND":

I1 | I2 | Q
0 | 0 | 0
0 | 1 | 0
1 | 0 | 0
1 | 1 | 1

Wenn auf den Eingängen ganzzahlige Werte geschaltet werden, wird die Operation für jedes Bit einzeln durchgeführt.


Funktion "ODER" (OR)

Am Ausgang liegt eine logische "1" (Ausgang eingeschaltet) an, wenn einer oder beide Eingänge auch mit einer logischen “1“ angesteuert werden (Kontakte geschlossen).

Wahrheitstabelle für die Funktion "ODER":

I1 | I2 | Q
0 | 0 | 0
0 | 1 | 1
1 | 0 | 1
1 | 1 | 1

Wenn auf den Eingängen ganzzahlige Werte geschaltet werden, wird die Operation für jedes Bit einzeln durchgeführt.


Funktion "Exklusives ODER" (XOR)

Am Ausgang liegt eine logische "1" (Ausgang eingeschaltet) an, wenn nur einer der beiden Eingänge auch mit einer logischen "1" angesteuert wird.

Wahrheitstabelle für die Funktion "XOR":

I1 | I2 | Q
0 | 0 | 0
0 | 1 | 1
1 | 0 | 1
1 | 1 | 0

Wenn auf den Eingängen ganzzahlige Werte geschaltet werden, wird die Operation für jedes Bit einzeln durchgeführt.


A.2 Arithmetische Operatoren

А.2 Arithmetische Operatoren

Addition(ADD)

Subtraktion (SUB)

Multiplikation (MUL)

Division (DIV)

Division mit Rest (MOD)


Addition (ADD)

Das Ergebnis der Operation “Addition“ am Ausgang ist gleich der Summe der Eingangswerte.

Wenn bei der Ausführung der Operation das Ergebnis grösser als 4294967295 (32 Bits) ist, dann werden die Bits, die über die Länge von 32 Bits hinausgehen, abgeschnitten.

Beispiel für die Addition 24 + 2 + 2 + 7 = Varl:


Subtraktion (SUB)

Das Ergebnis der Operation “Subtraktion“ am Ausgang ist gleich der Differenz der Eingangswerte.

Wenn beim Ausführen der Operation auf dem ersten Eingang (V1) der Zahlwert kleiner ist als der zweite (V2) , so wird das Ergebnis die Zahl, die aus der Addition der kleineren Zahl Plus 0x100000000
(4294967296) Minus den Wert der größeren rauskommt: [(V1 + 0x100000000) – V2] = Q.

Beispiel für die Subtraktion der Zahlen 24 – 2 = Var1 = 22:

Beispiel für die Subtraktion der o. a. Zahlen, wobei V1 kleiner ist als V2:

2 – 24 = Var1 = 4294967274.


Multiplikation (MUL)

Das Ergebnis der Operation “Multiplikation“ am Ausgang ist gleich dem Produkt der Eingangswerte..

Wenn das Ergebnis der Multiplikation größer ist als 429496729(32 Bit), dann werden die Bits, die über die Länge von 32 Bits hinausgehen, abgeschnitten.

Beispiel für die Multiplikation der Zahlen 24 * 2 * 2 * 7 = Varl:


Division (DIV)

Das Ergebnis der Operation “Division“ am Ausgang ist gleich dem Quotienten aus der Division der Eingangswerte.

Wenn sich infolge der Division Anteile der ganzen Zahl ergeben, so werden am Ausgang die Nachkommastellen des Ergebnisses abgeschnitten.

Bei der Division durch 0 wird am Ausgang der Wert OxFFFFFFFF ausgegeben.


Division mit Rest (MOD)

Beispiel für die Division der Zahlen 24 / 2 = Var1:
Das Ergebnis der Operation “MOD“ am Ausgang ist gleich dem Rest einer Division der Eingangswerte.

Beispiel für die Berechnung eines ganzzahligen Restes aus der Division der Zahlen 9 durch 2 (Var1 = 1):


А.3 Vergleichsoperatoren

Gleichheit (EQ)

Größer als (GT)

Binäre Selektion (SEL)


Gleichheit (EQ)

Das Ergebnis der Operation “EQ“ am Ausgang ist gleich logisch "1", wenn die Eingangswerte identisch sind:

V1 = V2; Q = 1

V1 > V2; Q = 0

V1 < V2; Q = 0

Beispiele:


Größer als (GT)

Das Ergebnis der Operation “GT“ am Ausgang ist gleich logisch "1", wenn der Eingangswert am Eingang “V1“ größer ist als der Eingangswert am Eingang “V2“:

V1 = V2; Q = 0

V1 > V2; Q = 1

V1 < V2 ; Q = 0

Beispiele:


Binäre Selektion (SEL)

Das Ergebnis der Operation “SEL“ am Ausgang ist gleich dem Eingangswert “V2“ , wenn V1 eine logische "0" ist, und gleich dem Eingangswert “V3“, wenn V1 eine logische "1" ist:

V1 = 0; Q = V2

V1 = 1; Q = V3

Beispiele:


А.4 Bit-Shift und Konverter Operatoren

Schieberegister Links (SHL)

Schieberegister Rechts (SHR)

Bit auslesen (EXTRACT)

Bit einfügen (РUTBIT)

Decodierer (DC32)

Codierer (CD32)


Schieberegister Links (SHL)

Q:= SHL (x, n) x wird um n Bits nach links verschoben und von rechts mit Nullen aufgefüIIt.

Beispiel für die Zahl 38 (dezimal) = 00100110 (binär):


Schieberegister Rechts (SHR)

Q:= SHR (x, n) x wird um n Bits nach rechts verschoben und von links mit Nullen aufgefüIIt.

Beispiel für die Zahl 152 (dezimal) = 10011000 (binär):


Bit auslesen (EXTRACT)

Eingänge dieser Funktion sind ein DWORD “X“, sowie ein BYTE “N“. Ausgegeben wird ein boolescher Wert, der den Inhalt des N-ten Bits der Eingabe X enthält, wobei mit dem nullten Bit zu zählen begonnen wird.

Beispiel für das Lesen des 5 Bits von der Zahl 81 (dezimal) = 1010001 (binär):


Bit einfügen (PUTBIT)

Die Eingabe dieser Funktion besteht aus einem DWORD “X“, einem BYTE “N“ und einem booleschen Wert “B“. PUTBIT setzt das N-te Bit von X auf den Wert B, wobei mit dem nullten Bit zu zählen begonnen wird.

Beispiel für das Überschreiben des 4. Bits mit einer logischen “1“ für die Zahl 38 (dezimal) = 100110 (binär):


Decodierer (DC32)

Dieses Element wird für die Konvertierung eines binären Codes am Eingang in Position Code am Ausgang verwendet. Vor der Ausführung der Operation wird eine logische Verknüpfung (UND) mit dem Operand 0x1F (11111b) am Signaleingang durchgeführt.

Die Vorgehensweise der Decodierung ist in der folgenden Tabelle dargestellt:

Binär Code |  |  |  |  | Position Code
5 | 4 | 3 | 2 | 1 | 32 | 31 | . . . | 6 | 5 | 4 | 3 | 2 | 1
0 | 0 | 0 | 0 | 0 | 0 | 0 |  | 0 | 0 | 0 | 0 | 0 | 1
0 | 0 | 0 | 0 | 1 | 0 | 0 |  | 0 | 0 | 0 | 0 | 1 | 0
0 | 0 | 0 | 1 | 0 | 0 | 0 |  | 0 | 0 | 0 | 1 | 0 | 0
0 | 0 | 0 | 1 | 1 | 0 | 0 |  | 0 | 0 | 1 | 0 | 0 | 0
 |  | 1 | 0 | 0 | 0 | 0 |  |  | 1 |  |  |  |
… |  |  |  |  | … |  |  | …
1 | 1 | 1 | 0 | 1 | 0 | 0 |  | 0 | 0 | 0 | 0 | 0 | 0
1 | 1 | 1 | 1 | 0 | 0 | 1 |  | 0 | 0 | 0 | 0 | 0 | 0
1 | 1 | 1 | 1 | 1 | 1 | 0 |  | 0 | 0 | 0 | 0 | 0 | 0

Beispiel:


Codierer (CD32)

Dieses Element wird für die Konvertierung eines Position Codes am Eingang in einen binären Code am Ausgang verwendet.

Fails der Binärwert an Eingang mehr als eine logische "1" im Register hat, wird nur das oberste erste Register für die Bearbeitung genommen..

Die Vorgehensweise der Codierung ist in der Tabelle auf der Seite Decodierer dargestellt.


Anhang B. Funktionsblöcke

RS-Trigger mit RESET-Priorität (RS)

SR-Trigger mit SET-Priorität (SR)

Detektor für eine ansteigende Flanke (RTRIG)

Detektor für eine fallende Flanke (FTRIG)

D-Trigger (DTRIG)

Impulse mit vorgegebener Dauer (ТР)

Verzögerte Einschaltimpulse (TON)

Ver zögerte Ausschaltimpulse (TOF)

Impulsgenerator (BLINK)

Abwärtszähler (Count Down) (СТ)

Universalzähler (Count Up/Down) (CTN)

Aufwärtszähler (Count Up) (CTU)

Zeitschaltuhr (Timer) (CLOCK)

Zeitschaltuhr (Timer) mit Auswahl der Wochentage (CLOCK WEEK)


RS-Trigger mit RESET-Priorität (RS))

Dieser Funktionsblock wird zur Umschaltung des Ausgangssignals "Q“ verwendet. Bei einem Impuls am Eingang "S“ wird das Ausgangssignal "Q“ auf logisch "1“ gesetzt.

Dieses Ausgangssignal bleibt bis zu einem Impuls am Eingang "R“ bestehen. Die Umschaltung erfolgt jeweils mit der Flankenauswertung.

Bei gleichzeitigen Eingangssignalen hat das Signal am Eingang "R" Priorität.


SR-Trigger mit SET-Priorität (SR)

Dieser Funktionsblock wird zur Umschaltung des Ausgangssignals “Q“ verwendet. Bei einem Impuls am Eingang “S“ wird das Ausgangssignal “Q“ auf logisch “1“ gesetzt.

Dieses Ausgangssignal bleibt bis zu einem Impuls am Eingang “R“ bestehen. Die Umschaltung erfolgt jeweils mit der Flankenauswertung.

Bei gleichzeitigen Eingangssignalen hat das Signal am Eingang “S“ Priorität.


Detektor für eine ansteigende Flanke (RTRIG)

Dieser Funktionsblock wird für eine Reaktion auf die Änderung des digitalen Eingangssignals verwendet. Am Ausgang wird ein einzelner Impuls auf die ansteigende Flanke des Eingangssignals generiert.

Die Vorgehensweise des Funktionsblocks wird in dem Diagramm erklärt.


Detektor für eine fallende Flanke (FTRIG)

Dieser Funktionsblock wird für eine Reaktion auf die Änderung des digitalen Eingangssignals verwendet. Am Ausgang wird ein einzelner Impuls auf die fallende Flanke des Eingangssignals generiert.

Die Vorgehensweise des Funktionsblocks wird in dem Diagramm erklärt.


D-Trigger (DTRIG)

Dieser Funktionsblock wird für die Erzeugung von Ausgangsimpulsen in Abhängigkeit eines Eingangssignals (Eingang "D") und einer Taktfrequenz (Eingang "C") verwendet.

Am Ausgang "Q" wird eine logische "1" gesetzt, wenn am Eingang "D" ebenfalls eine logische "1" und die ansteigende Flanke der Taktfrequenz am Eingang "C" anliegen. Dieser Zustand bleibt erhalten bis das Signal am Eingang „D“ wieder auf logisch “0“ springt und die nächste ansteigende Flanke der Taktfrequenz am Eingang "C" anliegt.

Die Vorgehensweise des Funktionsblocks wird in dem Diagramm erklärt.

Über ein Signal am Eingang "S" wird der Ausgang "Q" zwangsweise auf logisch "1" gesetzt.

Ein Signal am Eingang "R" hat Priorität und setzt den Ausgang "Q" zwangsweise auf logisch "0".


Impulse mit vorgegebener Dauer (ТР)

Der Funktionsblock wird für die Erzeugung eines in der Länge definierten Ausgangsimpulses verwendet.

Der Ausgang “Q“ wird für die Dauer des Parameters “TImp“ auf logisch “1“ gesetzt, wenn am Eingang “I“ eine ansteigende Flanke anliegt. Nach Ablauf des Intervalls wird der Ausgang “Q“ wieder auf logisch “0“ gesetzt.

Für die Dauer des Intervalls haben weitere Änderungen am Eingang “I“ keine Auswirkungen auf den Ausgang “Q“.

Die Funktionsweise ist im Diagramm dargestellt.

Zulässiger Wertebereich von TImp: 0 bis 4147200000 ms, oder 48 Tage


Verzögerte Einschaltimpulse (TON)

Der Funktionsblock wird für die verzögerte Erzeugung eines Ausgangsimpulses verwendet.

Der Ausgang “Q“ wird auf logisch “1“ gesetzt, wenn am Eingang “I“ ein Signal anliegt und die definierte Zeit des Parameters “T“ abgelaufen ist.

Nach Rückgang des Eingangssignals wird der Ausgang “Q“ wieder auf logisch “0“ gesetzt.

Die Funktionsweise ist im Diagramm dargestellt.

Zulässiger Wertebereich Т: 0 bis 4147200000 ms, oder 48 Tage


Verzögerte Ausschaltimpulse (TOF)

Der Funktionsblock wird für die verzögerte Abschaltung des Ausgangsimpulses verwendet.

Der Ausgang “Q“ wird auf logisch “1“ gesetzt, wenn am Eingang “I“ ein Signal anliegt. Nach Rückgang des Eingangssignals wird mit der fallenden Flanke die Ausschaltverzögerung “Tang“ gestartet.

Nach Ablauf dieser Zeit wird der Ausgang “Q“ wieder auf logisch “0“ gesetzt.

Sofern während der Ablaufzeit von “Tang“ ein neues Signal am Eingang “I“ anliegt, startet die Ausschaltverzögerung “Tang“ erneut mit der nächsten fallenden Flanke.

Die Funktionsweise ist im Diagramm dargestellt.

Zulässiger Wertebereich “Tang“: von 0 bis 4147200000 ms, oder 48 Tage


Impusgenerator (BLINK)

Der Funktionsblock wird für die Erzeugung von Impulsen verwendet.

Die Parameter “Tein“ und “Taus“ werden festgelegt.

Der Ausgang “Q“ wird zwischen “Tein“ (logisch “1“) und “Taus“ (logisch “0“) für die Dauer eines Signals am Eingang “I“ hin und her geschaltet.

Die Funktionsweise ist im Diagramm dargestellt.

Zulässiger Wertebereich “Tein“ und “Taus“: 0 bis 4233600000 ms, oder 49 Tage


Abwärtszähler (Count Down) (CT)

Der Funktionsblock wird für die Zählung der anliegenden Impulse X am Eingang “I“ verwendet und mit dem Sollwert am Eingang “T“ verglichen.

 Am Ausgang Q des Zählers wird der Impuls logisch "1" mit der Dauer des Arbeitszyklus des Gerätes (TZykl) ausgegeben, wenn die Zahl der Eingangsimpulse von “I“ den Sollwert N erreicht hat. Die Funktionsweise des Abwärtszählers ist im Diagramm dargestellt.

Zulässiger Wertebereich der Impulszahl N: 0 bis 65535.


Universalzähler (Count Up/ Down) (CTN)

Der Funktionsblock wird als Auf- und Abwärtszähler verwendet. Die Aufwärtszählung wird bei ansteigenden Flanken der Impulse am Eingang “U“(Count Up) durchgeführt. Dadurch wird der Ausgang “Q“ um den Wert 1 erhöht. Bei ansteigenden Flanken der Impulse am Eingang “D“ (Count Down) wird der Ausgangswert “Q“ um 1 verringert.

Bei gleichzeitigen Impulsen an den Eingängen “U“ und “D“ hat der Eingang “U“ Priorität.

Wenn am Eingang “R“ eine logische “1“ anliegt, wird der Ausgangswert “Q“ gleich dem voreingestellten Wert am Eingang “N“ gesetzt.

Die Funktionsweise des Universalzählers ist im Diagramm dargestellt.

Zulässiger Wertebereich für N: 0 bis 65535.


Aufwärtszähler (Count Up) (CTU)

Der Funktionsblock wird für die Zählung der anliegenden Impulse X am Eingang "C" verwendet und mit dem Sollwert am Eingang "N" verglichen.Am Ausgang Q des Zählers wird der Impuls logisch "1" ausgegeben, wenn die Zahl der Eingangsimpulse von "C" den Sollwert N erreicht hat.

Bei der ansteigenden Flanke eines Impulses am Eingang "R" wird der Ausgang "Q" auf Null zurückgesetzt. Das Signal am Eingang "R" hat Priorität.

Die Funktionsweise des Aufwärtszählers ist im Diagramm dargestellt.

Zulässiger Wertebereich der Impulszahl N: 0 bis 65535.


Zeitschaltuhr (Timer) (CLOCK)

Der Funktionsblock wird für die Erzeugung eines zeitlich definierten Ausgangsimpulses verwendet. Hierzu werden die beiden Parameter “Tein“ und “Taus“ festgelegt. Zum vordefinierten Zeitpunkt wird dann mittels der internen Echtzeituhr (RTC) der Ausgang auf logisch “1“ gesetzt.

Die Funktionsweise des Timers ist im Diagramm dargestellt.

Zulässiger Wertebereich "Tein" und "Taus": 0,00 Sek. bis 24 Std.
Sofern die Ausschaltzeit früher als die Einschaltzeit definiert ist (siehe Zeichnung B1), so wird der Ausgang Q, wie in Zeichnung B2 dargestellt, geschaltet.

Zeichnung B1. Fenster "Eigenschaften" zur Einstellung der Parameter

Zeichnung B2. Diagramm des Ausgangsimpuls


Zeitschaltuhr (Timer) mit Auswahl der Wochentage (CLOCK WEEK)

Der Funktionsblock wird für die Erzeugung eines zeitlich definierten Ausgangsimpulses unter Berücksichtigung der Wochentage verwendet. Zum vordefinierten Zeitpunkt wird dann mittels der internen Echtzeituhr (RTC) der Ausgang auf logisch “1“ gesetzt.

Die Funktionsweise ist im Diagramm dargestellt.

Die innere Struktur des Funktionsblocks sieht folgendermaßen aus:

Die Zeiten für “Tein“ und “Taus“ sowie die erforderlichen Wochentage werden als Parameter festgelegt.

Zulässiger Wertebereich "Tein" und "Taus": 0,00 Sek. bis 24 Std.


Änderungsliste der Dokumentenversionen

 Anfang Vorherige

Versionsnummer | Datum der Ausgabe | Inhalt der Hauptveränderungen
01 | Mai 2013 | Online-Hilfe optimiert.