meta data for this page
  •  

uPLC Funktionale Beschreibung

Das uPLC-Programm wird alle 6 Millisekunden gescannt. In jedem Scan wird zuerst der Eingang gelesen, die beiden Timer aktualisiert, das Benutzerprogramm gescannt und der Ausgang aktualisiert. Aus diesem Grund kann das Lesen des Eingangs und das Setzen des Ausgangs um bis zu 6 ms relativ zum physischen Ereignis variieren. Wenn der Mikroprozessor überlastet ist (der Betriebsmodus ist aktiv, es gibt häufige serielle Anfragen und das SPS-Programm ist lang), kann es mehr als 6 ms dauern, um das gesamte Programm zu scannen.

Alle Pico-SPS-Anweisungen, mit Ausnahme der arithmetischen Anweisungen, sind Einzelbit-Anweisungen. Der Stack hat eine Tiefe von nur einem Bit.

Die LD- (LDN-) Anweisung lädt das als Operand definierte Bit auf den Stack, während alle anderen logischen Anweisungen auf dem Stack selbst arbeiten. Die arithmetischen Anweisungen werden nur ausgeführt, wenn das Stack-Bit auf 1 gesetzt ist.

Die Wahrheitstabelle für die logischen Operationen ist unten zur Bequemlichkeit des Benutzers angegeben.

UND-Logikoperation
Bit ABit BErgebnis
000
010
100
111
ODER-Logikoperation
Bit ABit BErgebnis
000
011
101
111

Die negierten Operationen ANDN und ORN folgen derselben Logik, außer dass der negierte Wert des angegebenen Bits verwendet wird. Sie werden immer auf 0 gesetzt, wenn der Umrichter eingeschaltet wird.

Das Pico-SPS umfasst 9 Konstanten für arithmetische Operationen. Dies sind die Konstanten, die von typischen Anwendungen am häufigsten verwendet werden. Zusätzlich sind 17 Wortparameter reserviert — insbesondere von 8683 bis 8700 — die gespeichert und als SPS-Parameter verwendet werden können. Diese Parameter werden bei jedem SPS-Start auf null gesetzt.

Wenn die arithmetischen Operationen (ADD, SUB, MUL, DIV) verwendet werden, werden die Operanden als vorzeichenbehaftete Wörter behandelt. Für Doppelwort-Operationen sind die Operanden und das Ergebnis wie folgt definiert: Der Parameter des Operanden definiert den niederwertigsten Teil, während der höchstwertigste Teil durch das nächste Wort dargestellt wird.

Nach jeder arithmetischen Operation wird Bit 2 von 8671 auf 0 gesetzt, wenn das Ergebnis positiv ist, und auf 1, wenn es negativ ist. Ebenso wird Bit 3 von 8671 auf 1 gesetzt, wenn das Ergebnis 0 ist, und auf 0, wenn es nicht 0 ist. Diese Einstellungen bleiben aktiv, bis die nächste arithmetische Operation ausgeführt wird.

Eine mathematische Operation wird ausgeführt, indem das Ergebnis in einen der freien Parameter (Parameter 8674…8682) gelegt wird.