Array: ST -> AWL

the

Level-1
Beiträge
20
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
hallo,

vll vorweg: Ich bin Anfänger in Sachen Strukturiertem Text und bin dabei mich dort einzuarbeiten.

Es geht darum ein in ST geschriebenes Programm in AWL zu übersetzen. Das Programm sieht folgendermaßen aus:

Code:
var i:int;
     L:array[0..10] of bool; end_var;
....
....
....
for i:=0 to 10 do
  if (i<%MW8) then G[i]:=1; else G[i]:=0; end_if;
end_for;
Hinweis: MW8 hat einen beliebigen Dezimalwert zwischen 1 und 4000.

1. fehlt in der for-Schleife nicht ein "by..."?? So läuft die Schleife ewig rund?!
2. Wie sieht die Schleife in AWL aus?

Danke schonmal
Gruß
Thomas
 
...
1. fehlt in der for-Schleife nicht ein "by..."?? So läuft die Schleife ewig rund?!
...

Das by ist optional und ermöglicht es die Schrittweite zu beeinflussen wenn es nicht verwendet wird ist die Schrittweite automatisch 1 (default-Wert).
 
Vielen Dank schonmal.
So weit so logisch.

Und wie sehen die Anweisungen aus??
Mein Problem ist es hauptsächlich, wie ich dem i'ten Element von G ( --> G ) in AWL Werte zuweise..^^

Gruß
 
Mein Problem ist es hauptsächlich, wie ich dem i'ten Element von G ( --> G ) in AWL Werte zuweise..^^

Gruß


Geht leider in AWL nur mit indirekter Adressierung. (Siehe FAQ hier im Forum und im Forum selbst). In SCL (ST bei Step7) geht das so, wie in deinem Code.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi Thomas,

wenn das Problem noch besteht dann:

Code:
      i:INT;
      G: ARRAY[1..10] OF BOOL;
 
      L #i
      SLD 3
      LAR1
 
      L    10
next: T    #iLoopNumber
 
      L #i   
      L MW8
      <I
      = #G[AR1, P#0.0]
      +AR1, P#0.1
 
      L    #iLoopNumber
      LOOP next

Hab's aber nicht getestet (ohne Gewähr)
i musst natürlich auch noch in der Schleife erhöhen, aber dir gings ja um die Zuweisung des Arrys of Bool in AWL
 
Zurück
Oben