Array beschreiben

focus81

Level-1
Beiträge
22
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

Ich habe ein Array mit [5,10] int Feldern.
Wie kann ich die Felder variabel aufrufen und dann mit int werten beschreiben in AWL?

Ich habe keine Ahnung wie das bei Siemens funktioniert.
Bei anderen Steuerungen kann ich normal einen Index anlegen denn z.B hochzählen und dann auf die Variable schreiben.
Kann ich so was ähnliches auch bei Siemens machen?


Ich hoffe es kann mir jemand helfen.
 
Hallo

Also mit Indexen direkt zu Adressieren „z.B. Array [x,y]“ ist bei S7 AWL nicht möglich.
In einen DB kannst du nur „direkt“ Adressieren.
Aber es ist möglich sich die „Index“ Adressierung selber zu basteln.

Adresse = ((x * “größe“ y) + Y)*2

Und hier das ganze als AWL Code

L „X“ //x
L 10 //größe y in deinen beispiel
*I
L „Y“ //y
+I
L 2 //INT => 2 Byte
*I
T #Adresse
SLD 3 // Offset auf Pointer
LAR1 // nach Adressregister laden
AUF „DB“ // DB mit array öffnen
L „wert“ // daten
T DBW [AR1,P#0.0] // Daten auf Adresse „x,y“ schreiben

So kannst du mit "Indexen" in der SPS adressieren.

Viel Spass
 
Zurück
Oben