Startseite > Forum > Controller SlimLine e Netsyst (LogicLab) > E / A-Aktualisierung über FB oder Prozessabbild
- Dieses Thema hat 4 Antworten, 3 Teilnehmer und wurde zuletzt aktualisiert 9 Jahre, 10 Monate da Sergio Bertana.
-
AutorPost
-
April 26, 2011 bei 10: 38 #35000AnonymLeerlauf
Ich arbeite mit einer Slim Line und einem Weintek-Terminal, die über Modbus-Ethernet verbunden sind.
Bei der Arbeit an meinem Projekt bin ich mit diesem Zweifel konfrontiert, was sich zwischen der Verwaltung der E / A des Systems über das Prozessabbild und dem anschließenden Zeigen der Eingabevariablen als% IX3.1 und der Ausgabevariablen als% QX1.0 ändert. XNUMX, und verwalten Sie sie stattdessen über die E / A-Funktionsblöcke get / set?
Vielleicht besteht der Unterschied darin, dass ein Ausgang, der über den Funktionsblock aktiviert wird, sofort aktiviert wird (abgesehen von 300us, um den Befehl auszuführen). Wenn ich ihn im Prozessabbild verwalte, wird er am Ende der SPS-Aufgabe aktiviert.
Wenn ja, auf welche Aufgabe beziehen sich die Prozessbilder, auf die langsame oder auf die hintere?
April 26, 2011 bei 10: 45 #36714Sergio BertanaAdministrator des ForumsDie Frage ist interessant und bietet eine Möglichkeit zu klären, wie das Slim Line-System die E / A aktualisiert.
Alle an das CPU-Modul angeschlossenen logischen E / A-Module werden automatisch aktualisiert (Prozessabbild) und in der Tabelle% IX und% QX in der Tabelle zugeordnet langsame Aufgabe. Die Eingaben werden vorher erfasst und die Ausgaben werden nach der Ausführung des Anwenderprogramms verwaltet. Das Image des Status einer E / A gilt also für die gesamte Ausführung der langsamen Aufgabe.
Für Aufgabe zurückwird ein "paralleles" Prozessabbild erstellt, das den Status der Eingaben vor der Ausführung meldet und die Ausgaben nach der Ausführung des Anwenderprogramms verwaltet. Dieses "Abbild" des Status einer E / A gilt auch für die gesamte Ausführung der Rückenaufgabe. Achtung! Die Verwaltung des gleichen Logikausgangs sowohl in der langsamen als auch in der hinteren Aufgabe führt zu Fehlausrichtungen zwischen den beiden Aufgaben und è da evitare.
in Aufgabe schnell Wenn Sie die E / A mit der Ausführungsgeschwindigkeit der Aufgabe verwalten möchten, müssen Sie ihren Wert erfassen und ihre Aktivierung mit den entsprechenden FBs verwalten. Wenn Sie die in den Tabellen% IX und% QX zugeordneten Elemente verwenden, werden sie weiterhin mit der Ausführungsgeschwindigkeit der langsamen Aufgabe aktualisiert. Achtung! Die Ausführung der schnellen Aufgabe unterbricht die Ausführung der langsamen Aufgabe, wodurch das Prozessabbild der langsamen Aufgabe auf die Variablen% IX und% QX "verschmutzt" wird.
Durch die Verwendung der E / A-Verwaltungs-FBs, wie Sie sagten, können Sie die E / A-Module unabhängig vom Prozessabbild direkt erfassen und verwalten. Achtung! Die Verwaltung eines Ausgabemoduls muss unter Berücksichtigung der Tatsache erfolgen, dass die langsame Task das Prozessabbild verwaltet. Daher kann in den Ausgängen ein anderer Wert als der vom FB festgelegte Wert festgelegt werden, wodurch die Ausgänge blinken.
April 26, 2011 bei 1: 26 pm #36715Sergio BertanaAdministrator des ForumsFür die Verwaltung der analogen E / A müssen die entsprechenden FBs verwendet werden. Es ist möglich, die FBs in allen Aufgaben gleichgültig einzufügen, aber wenn nicht in Ausnahmefällen, ist mein Rat, den Aufruf in die einzufügen Aufgabe zurück.
Es ist auch möglich, einen Eingang und / oder einen Ausgang eines Analogmoduls in einer Aufgabe zu erfassen und einen anderen Eingang zu erfassen und / oder einen anderen Ausgang desselben Moduls in einer anderen Aufgabe zu verwalten.
Wenn ein analoger Eingangswert in mehreren Tasks verwendet wird, wird er in der schneller ausgeführten Task erfasst und der in der anderen Task erfasste Wert wird verwendet, ohne dass der FB erneut ausgeführt wird.
Juni 27, 2014 bei 11: 27 pm #38296FabioPartecipanteIch verstehe nicht, warum die Beispiele wie FBOnOffCycle die sich ändernden Eingänge weder in der Simulation noch beim Versuch, den DI00-Anschluss der CPU mit Spannung zu versorgen, zeigen. Ich dachte, durch Deklarieren von% XI0.0 würde es ausreichen, dass die Eingabe gelesen wird, ohne dass geeignete Lese-FBs hinzugefügt werden müssen. Mache ich etwas falsch ?
Juni 28, 2014 bei 6: 20 am #38297Sergio BertanaAdministrator des ForumsDa 16 Module an den Erweiterungsbus des CPU-Moduls angeschlossen werden können (Adressen 0 bis 15), werden die E / A des CPU-Moduls mit der Moduladresse 255 adressiert. Wenn Sie also die Prozessabbildzuordnung verwenden, müssen Sie die Eingänge als zuordnen % IX255.0,% IX255.1,… und Ausgänge wie% QX255.0,% QX255.1,… Wenn Sie die E / A direkt mit den entsprechenden Funktionsblöcken verwalten, müssen Sie die Moduladresse 255 definieren.
Achtung, diese Regel gilt nicht für CPU-Module NetlogIII, in diesem Fall werden die E / A des CPU-Moduls der Adresse 0 zugeordnet.
Der Grund für diesen Unterschied ist, dass die Form NetlogIII basiert auf a OEM-CPU-Modul, die bereits E / A verdrahtet hat (Moduladresse 255). Der physische Hardwareteil von I / O ist nichts anderes als a 20 E / A-Erweiterungsmodul (Mit Adresse 0) an den Erweiterungsbus des CPU-Moduls angeschlossen. Alle anderen an den Bus angeschlossenen Erweiterungsmodule nehmen automatisch Adressen von 1 bis 15 an.
-
AutorPost
- Sie müssen angemeldet sein, um auf dieses Thema antworten zu können.