Herunterladen Diese Seite drucken

Siemens SIMATIC S7-200 Systemhandbuch Seite 43

Vorschau ausblenden Andere Handbücher für SIMATIC S7-200:

Werbung

Beispielprogramm für den Zugriff auf Daten im Variablenspeicher mittels Versatz
In diesem Beispiel wird LD10 als Pointer auf die Adresse VB0 verwendet. Sie inkrementieren den Pointer dann um den in VD1004
gespeicherten Versatz. LD10 zeigt dann auf eine andere Adresse im Variablenspeicher (VB0 + Versatz). Der in der Adresse im
Variablenspeicher gespeicherte Wert, auf den LD10 zeigt, wird dann in VB1900 kopiert. Wenn Sie den Wert in VD1004 ändern,
können Sie auf alle Adressen im Variablenspeicher zugreifen.
Beispielprogramm für den Zugriff auf Daten in einer Tabelle mittels Pointer
In diesem Beispiel wird LD14 als Pointer auf ein Rezept verwendet, das in einer Tabelle mit Rezepten gespeichert ist, die an VB100
beginnt. In diesem Beispiel speichert VW1008 den Index auf ein bestimmtes Rezept in der Tabelle. Wenn jedes Rezept in der Ta-
belle 50
Bytes lang ist, multiplizieren Sie den Index mit 50, um den Versatz auf die Anfangsadresse eines bestimmten Rezepts zu erhalten.
Indem Sie den Versatz zum Pointer addieren, können Sie auf jedes einzelne Rezept in der Tabelle zugreifen. In diesem Beispiel wird
das Rezept in die 50 Bytes kopiert, die an VB1500 beginnen.
Netzwerk 1 //Lesen eines Werts einer beliebigen VB-Adresse mittels Versatz:
//
//1. Anfangsadresse des Variablenspeichers in einen Pointer laden.
//2. Versatzwert zum Pointer addieren.
//3. Wert aus der Adresse im Variablenspeicher (Versatz) in VB1900
//
kopieren.
LD
SM0.0
MOVD &VB0, LD10
+D
VD1004, LD10
MOVB *LD10, VB1900
Netzwerk 1 //Übertragen eines Rezepts aus einer Tabelle mit Rezepten:
// - Jedes Rezept ist 50 Bytes lang.
// - Der Index-Parameter (VW1008) identifiziert das Rezept,
//
das geladen werden soll.
//
//1. Pointer auf Anfangsadresse der Rezepttabelle erstellen.
//2. Index des Rezepts in einen Doppelwortwert umwandeln.
//3. Versatz multiplizieren, um die Größe des Rezepts unterzubrin
//gen.
//4. Geänderten Versatz zum Pointer addieren.
//5. Gewähltes Rezept VB1500 bis VB1549 übertragen.
LD
SM0.0
MOVD &VB100, LD14
ITD
VW1008, LD18
*D
+50, LD18
+D
LD18, LD14
BMB
*LD14, VB1500, 50
SPS-Grundlagen
Kapitel 4
33
4

Quicklinks ausblenden:

Werbung

loading